Показать сообщение отдельно
Старый 01.08.2011, 07:57   #16  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2161 (81) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Цитата:
Сообщение от mazzy Посмотреть сообщение
Поясняю:
В частности ОЛАП не проверяет глубину дерева (если ему скормить parentID, ChildID). Что чревато отказами при обходе в глубину.

ОЛАП не будет проверять, что ему подсунули граф, а не дерево. В лучшем случае он просто будет агрегировать (суммировать) несколько раз. В худшем - зациклится.

Следовательно валидация - задача программиста.
Я повторю свою мысль: Как правило, наличие дерева означает что есть очень жесткие ограничения, которые скорее всего противоречат реальной жизни.
1. Мне кажется отказ при обходе из-за глубины чем-то напоминает ограничение Excel ..2003 в 64 тыс. строк. Есть такое ограничение, его просто надо иметь в виду. Также как и другие ограничения любой платформы для построения отчетности.
2. Не допускайте графа при создании дерева, вот и вся задача. Понятно, что это надо программировать. Но при этом и понятна выгода от использования агрегированных аналитических отчетов.


Цитата:
Сообщение от mazzy Посмотреть сообщение
Во-вторых, "первый родительский объект" не решает проблему.
Предположим, что установили на первый родительский объект. Значит ли это, что все найденные "*пальто*" принадлежат родительскому объекту?
Тут зависит от реализации. Мне кажется достаточно интуитивным что в таком случае я вижу все *пальто* из справочника. См. скриншот - выбран единственный первый уровень "Ассортиментный классификатор". Выбор его равнозначен отсутствию дерева. Товары могут принадлежать только корневым уровням которые, принадлежат "Ассортиментному классификатору".
__________________
Ivanhoe as is..