Эффективность методики зависит от структуры справочника и количества записей в нем. Понятное дело - что если справочник мал, и при установке в палитре свойств таблицы формы свойства НачальноеОтображениеДерева в РаскрыватьВсеУровни он открывается за секунду, то тут эффект не будет заметен. Однако все изменяется с ростом количества элементов. Ниже приведены результаты тестирования. Помимо полного разворачивания разработана и процедура для полного сворачивания.
Для тестирования старался выбирать разноплановые справочники (разные по типу иерархии, количеству элементов и групп / родителей)
Легенда:
1 колонка - наименование справочника
2 колонка - количество элементов
3 колонка - количество групп / родителей
4 колонка - время на раскрытие методом установки в палитре свойств таблицы формы свойства НачальноеОтображениеДерева в РаскрыватьВсеУровни
5 колонка - время на раскрытие с помощью моей методики
Для клиент-серверной версии:
Справочник | Элементов | Групп/родителей | Стандартно | С оптимиз. |
Контрагенты | 7809 | 6 | 27 с | 0,6 с |
Банки | 17465 | 78 | 52 с | 5 с |
Статьи движения ДС | 124 | 32 | 3 с | 2,1 с |
Подразделения организаций | 73 | 17 | 4 с | 1,5 с |
Повторные разворачивания всего дерева в течение сеанса работы происходит за доли секунды (если вы не закрывали окно справочника).
Суть оптимизации состоит в нахождении КЛЮЧЕВЫХ узлов, раскрытия которых абсолютно достаточно для полного раскрытия всего дерева. А исходя из того, что стандартным механизмом 1С раскрываются полностью все узлы, в т.ч. и подчиненные элементы, то выигрыш в количестве обращений к серверу, а соответсвенно и во времени разворачивания дерева очень существенный (особенно заметно на больших справочниках).