gifts2017

Иерархия справочника (определение верхней родительской группы для всех элементов справочника + формирование текста запроса)

Опубликовал Юрий Кизеев (compreSSor) в раздел Обработки - Обработка справочников

На разработку подтолкнуло обсуждение в http://forum.infostart.ru/forum26/topic108819/

Обработка формирует запрос ТОЛЬКО к иерархическим справочникам (вид иерархии = иерархия групп и элементов) и, независимо от количества уровней иерархии, получаем готовый запрос, который можно использовать как независимый или "скормить", например, СКД.

на выходе получим таблицу (Построитель) вида:


СамыйВерхнийУровень (папка) / ЭлементСправочника

В окно сообщений выводится сам текст запроса, который в дальнейшем можно использовать в других обработках или отчётах.

P.S. для справочников, у которых количество уровней иерархии не указано (неограничено), количество уровней определяется автоматически.

Скачать файлы

Наименование Файл Версия Размер
ИерархияСправочника.epf 16
.epf 8,17Kb
16.04.14
16
.epf 8,17Kb Скачать

См. также

Contragent+ 5.0 от 2 500
Подписаться Добавить вознаграждение
Комментарии
1. Алексей Шиманов (MarchTomCat) 16.04.14 11:08
А результат работы обработки можно выложить? Скриншотом например.
2. Юрий Кизеев (compreSSor) 16.04.14 11:19
добавил ещё один скриншот - текст запроса
3. Сергей (ildarovich) 16.04.14 13:10
В статье Уровни, глубина, прародители, циклы и аналоги запросом тоже рассматривается эта задача. Пример 3 "Прародители". При значительном количестве уровней итоговый запрос получается короче. Возможно, и быстрее. Интересно было бы сравнить. Также можно вывести получившийся текст запроса, чтобы использовать без функции в других запросах или СКД.
Особенно выигрыш в быстродействии будет заметен, если пытаться определить реальную максимальную глубину иерархии справочника. Это довольно затратная операция. В той же статье об этом также говорится.
4. Юрий Кизеев (compreSSor) 16.04.14 13:50
(3) ildarovich, я понимаю, что это Ваша статья и я повторился - просто наткнулся на форуме на статью http://forum.infostart.ru/forum26/topic108819/ и решил реализовать задачу своим способом.

на самом деле моя реализация нужна только для формирования текста запроса. вывод данных на экран - это уже как "плюшка".

максимальный уровень вложенности вычисляется.
текст запроса формируется около 2 сек. на справочнике Номенклатура с кол-вом записей ~ 13000
5. mikhailovaew (mikhailovaew) 15.05.14 17:12
можно было бы условия рассматриваемой задачи (определение верхней родительской группы для всех элементов справочника) включить в текст публикации, чтобы по ссылке на лазить
6. Юрий Кизеев (compreSSor) 15.05.14 21:35
(5) mikhailovaew, добавил в заголовок.
спс за замечание