Пример программного кода
// имеется форма списка заказов покупателей
// необходимо сделать отбор по нескольким значений (несколько состояний заказа)
// программный код можно добавить как событие при изменении табличной части "Фильтры"
// имеется табличная часть "Фильтры" - список значений по которому будем делать отбор
// в динамическом списке
// "Список" - динамический список
Список.Отбор.Элементы.Очистить();
СписокДляОтбора = Новый СписокЗначений;
Для каждого Стр Из Фильтры Цикл
Если Стр.УстановитьОтбор Тогда
СписокДляОтбора.Добавить(Стр.Состояние);
КонецЕсли;
КонецЦикла;
Если СписокДляОтбора.Количество() = 0 Тогда
Список.Отбор.Элементы.Очистить();
Возврат;
КонецЕсли;
Отбор = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("СостояниеЗаказа");
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
Отбор.Использование = Истина;
Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
Отбор.ПравоеЗначение = СписокДляОтбора;
Элементы.Список.Обновить();
Оставить комментарий