INFOSTART EVENT 2018 EDUCATION

Второй тур голосования за доклады.
Окончание 5 сентября.

Харитонов Михаил | Директор | 2iS

«Управленческий учет и Интеграция – близнецы-братья. Опыт проектов»

- Как быстро с нуля организовать полноценный УУ в любой конфигурации 1С? - Секреты эффективной архитектуры Плана счетов и Регистра бухгалтерии - Как получить Баланс и P&L без программирования? - Приёмы и примеры эффективного сбора данных для УУ из разных систем - Оптимизируй это… Взгляд на рабочую базу УУ клиента через 10 лет. Приёмы и решения. - Распараллеливаем потоки загрузки, приемки, обработки и расчета итогов - Декларативные описания и конструкторы или «разработчик больше не нужен» - Автоматическая документация без «писателей»

Условное оформление дерева значений на управляемой форме

Программирование - Практика программирования

-1
Пример использования условного оформления дерева значений для создания красивого фильтра на форме.

Предположим, мы создали некую обработку, которая выполняет те или иные действия над каталогом товаров. При этом у пользователя должна быть возможность выбирать категории товаров, для которых будут применяться эти действия. Логичным выбором будет выведение на форму иерархического списка категорий, где пользователь сможет галочками выбирать необходимые категории. Если пользователь отмечает галочкой категорию верхнего уровня, то подразумевается, что все вложенные категории также будут обработаны. Логично будет закрыть вложенные строки для редактирования и как-то пометить их, чтобы пользователю было понятно, что они будут обработаны вместе с родительской категорией. Вот здесь нам и пригодится условное оформление.

Предлагаемая обработка демонстрирует управление доступностью отдельных строк в дереве значений (кстати, аналогичный метод можно использовать и для таблицы значений). Вот как это выглядит:

Работа с условным оформлением хорошо описана здесь:

Единственное, столкнулся с интересным нюансом. В отборе компоновки (который используется, чтобы нам оформить именно нужные строки) и в оформляемых полях (которые указывают колонки, которые мы будем оформлять) имена полей разные, хотя тип один и тот же - ПолеКомпоновкиДанных.

При отборе мы указываем путь к данным:

ЭлементОтбора = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоКаталог.Категория");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ЭлементОтбора.ПравоеЗначение = СписокОтб;
ЭлементОтбора.Использование = Истина;

А в полях оформления мы указываем путь к полю формы:

ПолеОформления = ЭлементОформления.Поля.Элементы.Добавить();
ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("ДеревоКаталогКатегория");
ПолеОформления.Использование = Истина;

Протестировано на платформе 1С 8.3.11.3034

-1

Скачать файлы

Наименование Файл Версия Размер
Условное оформление дерева значений на управляемой форме:
.epf 10,32Kb
29.04.18
5
.epf 10,32Kb 5 Скачать

См. также

Сортировка: Древо
В этой теме еще нет сообщений.
Оставьте свое сообщение