пятница, 14 февраля 2014 г.

Пример: Програмная установка параметров СКД

Этот пример обработки, "КомпоновщикНастроек" - это реквизит обработки - Тип "КомпоновщикНастроекКомпоновкиДанных"

Функция Сформировать(МассивОбъектов)
    Ссылка = МассивОбъектов[0];
    ТабДок = Новый ТабличныйДокумент;
    Схема = ПолучитьМакет("Схема");


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

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