1С 8.x Управляемое приложение 1С 7.7. Бухучет Статьи Ссылки
1С 8.x arrow 1С 8.x arrow СКД arrow Как программно установить отбор в СКД
Как программно установить отбор в СКД Печать

1) Отбор "Организация" уже есть в схеме компановки, нам его нужно инициализировать программно

 

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

 Если СписокОтбора.Количество() = 0 Тогда
  ЭлементОтбора.Использование = Ложь;
 КонецЕсли;

КонецПроцедуры