Рекурсивный вывод строк в дерево значений #735969


#0 by ddron7
Добрый день! Есть у кого-нибудь пример вывода строк из запроса в дерево значений  для обычной формы. Спасибо
#1 by ДенисЧ
Что именно не получается? Показывай код
#2 by Wobland
есть. на здоровье. и формы здесь ни при чём
#3 by chelentano
например: Дерево = Запрос.Выполнить.Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкам)
#4 by ddron7
код только в процессе созидания. Вопрос вызывает добавление в иерархию новой строки. Или я туплю...
#5 by fisher
Пример рекурсии для вычисления факториала из плохих учебников уже осилил?
#6 by ddron7
интересует рекурсия...
#7 by fisher
Если в запросе используешь ИТОГИ, то обход результатов - это уже обход дерева. Тупо копирование одного дерева в другое.
#8 by Wobland
чо?
#9 by ddron7
нужен пример рекурсивного создания дерева значений, т.к. первоначально количество полей в запоросе неизвестно (набор полей меняется от условия).... во загнул...
#10 by Ёпрст
запрос выгрузить в дерево значений не предлагать ?
#11 by fisher
Не. Уже предлагали в :)
#12 by ddron7
нет. Уже так делал.
#13 by Крошка Ру
Сюда заходил?
#14 by Ёпрст
а чего не устраивает ? Ну.. можешь еще выборку с запроса обойти рекурсивно и слепить дерево ручонками.. так что ле хочешь ?
#15 by fisher
Что-то типа такого (за работоспособность не ручаюсь, набросал на коленке):
#16 by fisher
Тьфу, дерево вернуть забыл :)
#17 by GANR
Пост №22 в ветке
#18 by GANR
А вот это Если Выборка = Неопределено Тогда                 Запрос = Новый Запрос;         .................... надо вынести ЗА рамки рекурсивной процедуры.
#19 by Ёпрст
зачем ?
#20 by fisher
С одной стороны как бы да. Так типа логичней и читабельней. А с другой, если это монолитный логический блок без переиспользования, то разнесение его по нескольким процедурам тоже снижает читабельность.
#21 by fisher
Годная тема. Но на практике размеры деревьев ограничены, а рекурсия красивше и лаконичнее. Вот всякие факториалы считать рекурсивно - это да, смерти подобно. А во "взрослых" языках хвостовая рекурсия заменяется на циклы автоматически на этапе компиляции.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С