Умеет:
- Отмечать строки в переданном дереве флажками (флажок выводится в первой колонке, имя колонки флажка передаётся, если колонки нет - добавляется);
- Возвращать результат отметки в виде:
- Дерева значений
- Таблицы значений
- Списка значений
- Только "концевые" строки или все; только отмеченные или все - в любых комбинациях.
Для вызова: Отмеченное=ПолучитьОбщуюФорму("ФормаОтметкиДерева").ОтметитьСтрокиДерева(ТвоеДерево,"КолонкаПометки"[,Новый Структура("флТолькоОтмеченные,флТолькоКонцевые,ЧтоВозвращать,флПоказВозвращаемогоЗначения,КолонкаПредставления,ЗаголовокФормы,Таймаут",Истина,Истина,"Дерево,Список,Таблица",Истина,ТвоеДерево.Колонки[1].Имя,"Поставьте флажки, где успеете:",10)])[.Дерево/Список/Таблица];
Результат вызова - структура; можно обращаться сразу к результатному дереву/списку/таблице, по ключу структуры (Дерево,Таблица,Список). Если от выбора отказались или не успели - возвращает Неопределено.
Форма для тестирования открывается уже максимально настроенной.
Форму отметки можно сразу перетаскивать в общие, дополнительной настройки не требует.
Зачем: кроме того, что обработка содержит примеры разнообразных трансформаций дерева путём рекурсивных обходов (и только их!), в ней же - обработка установки "серого" флага на родителей, отметки дочерних строк, пример полной инкапсуляции обработки (вызов одной строкой). И простейший таймер :)
Ну и не всегда можно обойтись отметкой варианта/вариантов из списка, бывают и сложные ситуации :)
Файлы обработки:
- OtmetkaStrokDereva.epf Для скачивания нужна регистрация
В этой группе 1С
- Склонение ФИО
- Набор универсальных функций для 1С77
- Форма редактирования списка значений
- Смена раскладки клавиатуры из 1С
- Сортировка табличной части строк документа в соответствии с иерархией справочника Номенклатура
- Вывод таблицы значений на СКД
- Расчет CRC32
- Две Процедуры Автосохранения и Автовосстановления реквизитов Объекта
- Как открыть форму внешней обработки из другой формы внешней обработки. 8.2. Управляемый режим.