![]() |
|
v7: метод ПринадлежитГруппе() в 1С сделан на хранимке или чем ? | ☑ | ||
---|---|---|---|---|
0
Холст
16.11.13
✎
22:41
|
может кто-то изучал, как работает в SQL базе 7.7 метод ЭтоГруппа() и, может быть, можно обратиться к соответствующей SQL функции/хранимке из прямых запросов ?
|
|||
1
0wl
16.11.13
✎
22:54
|
Под рукой базы нет, но вроде это поле IsFolder. Но могу с 8 путать
|
|||
2
Холст
16.11.13
✎
23:21
|
(1) блин, не ЭтоГруппа(0), а ПринадлежитГруппе() конечно же !!!
модераторы, прошу поправить заголовок ! |
|||
3
Холст
16.11.13
✎
23:22
|
ЭтоГруппа()
|
|||
4
Torquader
16.11.13
✎
23:26
|
А там разве вообще хранимки есть - там запросы, что в dbf, что в SQL - просто выполняется перебор, также как и в ПолучитьПолныйКод() - то есть по шагам выбираем родителя.
|
|||
5
be-may
16.11.13
✎
23:33
|
Самое простое это открыть профайлер и посмотреть что делает 1С при вызове ПринадлежитГруппе().
Насколько я помню, там была рекурсия, временные таблицы и конструкция if exist select ..... |
|||
6
be-may
16.11.13
✎
23:36
|
оу. поиск как обычно, рулит..
ADO : как кто реализует условие запроса ПринадлежитГруппе(Гр1)=1 ? |
|||
7
КонецЦикла
17.11.13
✎
01:03
|
Рекурсивный запрос скорее всего, так как вложенность может быть хз какая
Пройдись профайлером штоле |
|||
8
КонецЦикла
17.11.13
✎
01:08
|
Сцуко тупо перебор, облажался
|
|||
9
Злопчинский
17.11.13
✎
01:10
|
(8) хм.. а как неперебором в скуле сделать..? есть элемент - может входить в группу на любом уровне иерархии...
. ? |
|||
10
Злопчинский
17.11.13
✎
01:12
|
(9) херню какую-то написал...
|
|||
11
КонецЦикла
17.11.13
✎
01:12
|
(10) ага :)
|
|||
12
Злопчинский
17.11.13
✎
01:13
|
берем элемент и строим рекурсивно набор родителей. ищем среди набора родителей заданную группу...?
. или рекурсивно получаем родителя и каждого полученногородителя сравниваем с заданной группой - сошлось - готово! . или как-то иначе ПО ПРАВИЛЬНОМУ? |
|||
13
Холст
17.11.13
✎
01:13
|
(9) на 1С++ форуме терли помоему об этом, можно не перебором
подзапросами с уровня вложенности элемента который сравнивают до уровня с которым сравнивают ну и вьюху походу дела под это забацать |
|||
14
Злопчинский
17.11.13
✎
01:14
|
911) заметь. мне понадобилось всего 2 минуты, чтобы понять что облажался, а тебе - пять..! ;-)
|
|||
15
Злопчинский
17.11.13
✎
01:15
|
у Тейлора в Скуле для чайников рекурсивный запрос мну понравился...
|
|||
16
Холст
17.11.13
✎
01:17
|
изначально поднял тему в предположении, что сама 1С делает ПринадлежитГруппе(Гр1) достаточно оптимально и чтобы 1С++ запрос использовал созданный самой 1С функцию поиска принадлежности, а 1С походу динамически создает эту функцию а потом ее стирает
|
|||
17
КонецЦикла
17.11.13
✎
01:26
|
Нет, все же не перебор. Просто что-то в кишках ворочает своих. Кол-во итераций не увеличивается. Значит не все так плохо.
|
|||
18
КонецЦикла
17.11.13
✎
01:30
|
||||
19
Злопчинский
17.11.13
✎
01:30
|
чисто интересно было бы посмотреть на этот скульный запросик
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |