Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.07.19;
Скачать: CL | DM;

Вниз

Любопытная работа с деревом   Найти похожие ветки 

 
tesseract ©   (2009-05-18 11:48) [0]

Туплю как валенок. Для кросс-отчета нужен алгоритм постоения и обхода дерева. Из доступных типов данных только переменные, ассоциативные массивы и не-динамические массивы.  На вход подается несортированное нечто из которого можно выцепить только вид родителя.


 
Palladin ©   (2009-05-18 11:57) [1]

В каком смысле только вид родителя? Имется ввиду какая то ссылка на самого родителя?


 
clickmaker ©   (2009-05-18 12:08) [2]

> ассоциативные массивы

а в качестве значения может быть массив?
ключ = родитель, значение = массив детей


 
tesseract ©   (2009-05-18 12:08) [3]


> Имется ввиду какая то ссылка на самого родителя?


Точно. Пока работаю выводом из таблиц с фильтром по родителю. Типо  в одном месте структура иеррархии, а по таблице бегаем и прыгаем с фильтром.


 
tesseract ©   (2009-05-18 12:10) [4]


> а в качестве значения может быть массив?


Да но поиск только в одном выходит, обратный порядок работает, а вот прямой как-то не очень, контекст сбивается. 1С как бы нам говорит.....


 
Palladin ©   (2009-05-18 12:34) [5]

Когда то я для Сергея эМ. делал демонстрацию загрузки дерева из БД в один проход. )
Если до вечера не додумаешься, повторю сей подвиг...


 
tesseract ©   (2009-05-18 12:59) [6]


> Если до вечера не додумаешься,


Да работает пока. Просто как-то некрасиво.


 
Медвежонок Пятачок ©   (2009-05-18 13:01) [7]

А сразу то дерево из БД не вытянуть? Или там желтая программа не на mssql?


 
tesseract ©   (2009-05-18 13:04) [8]


> Или там желтая программа не на mssql?


Да можно. Но через два половых отверстия + итоги по вложенности придётся рассчитывать как-нить хитро.


 
Cobalt ©   (2009-05-19 11:57) [9]

Я сейчас пытаюсь сделать так: к узлу добавляю поле Level (которое считаю хранимкой без рекурсии), и по нему сортирую выборку.
Т.о. я выбираю все высокоуровневые, затем их детей, затем внуков и прочих до 7-го колена.


 
tesseract ©   (2009-05-19 14:45) [10]


> Я сейчас пытаюсь сделать так: к узлу добавляю поле Level
> (которое считаю хранимкой без рекурсии), и по нему сортирую
> выборку.


Nested Sets в SQL изложены и изжованы лучше некуда. А ты вот в 1с попробуй :-)



Страницы: 1 вся ветка

Текущий архив: 2009.07.19;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.011 c
2-1242931001
Newss
2009-05-21 22:36
2009.07.19
Flash-анимация в Delphi


15-1242645688
Василий Жогарев
2009-05-18 15:21
2009.07.19
ZEOSDBO-6.6.1-beta


3-1223979385
lod
2008-10-14 14:16
2009.07.19
cxGrid


15-1242483476
@!!ex
2009-05-16 18:17
2009.07.19
Как сделать Shared секцию в dll на дельфи?


3-1224155308
Николай2008
2008-10-16 15:08
2009.07.19
Переопределить условие на значение (Delphi, ADO, Access)