Ограничения данной реализации
- Не строит дерево для исходных комплектующих с типом узел
Введение
В процессе построения дерева изделия программными средствами было обнаружено, что 30% времени затрачивается на рекусривное выполнение запроса(запрос в цикле) и 30% времени тратится на построение дерева. В попытке избавиться от обоих недостатков была разработана схема компоновки данных, которая строит свою иерархию
Реализация
Суть обработки заключается в использовании схемы компоновки данных(СКД) состоящей из одного набора данных, который связывается сам с собой для построения иерархии.
Для того чтобы добавить в корень дерева само разворачиваемое изделие пришлось доработать сгенерированное СКД дерево - это своеобразный костыль, как сделать по-другому пока не знаю.
Все необходимые для работы процедуры и функции находятся в модуле обработки(их там совсем немного)
К публикации прикреплено два файла:
Построить дерево спецификаций(по номенклатуре) - для построения дерева необходимо указать номенклатуру-корень дерева и дату получения ВСЕХ спецификаций. Это бывает не очень удобно
Построить дерево спецификаций(по спецификации номенклатуры) - необходимо указать номенклатуру, спецификацию номенклатуры и дату получения спецификаций номенклатуры, входящей в корень дерева
Выводы
Достаточно быстро(в течение 3-х секунд) удается построить дерево из ~1000 срок с помощью СКД