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