| 
    0
    
        kozhem1990    
       
    
    26.10.18 
            ✎
    09:15 
 | 
         
        Здравствуйте! Такой вопрос: как передать программно в отчет один из нескольких макетов СКД? В зависимости от того, какой пользователь запускает отчет, необходимо выбирать определенную схему компоновки данных. Заранее благодарю.     
         | 
 | 
    
    
        | 
    2
    
        Пробел    
       
    
    26.10.18 
            ✎
    09:22 
 | 
         
        Придется полностью программно формировать отчет в обработчике события ПриКомпоновкеДанных
 
  СхемаКомпоновкиДанных = Обработки.ОбработкаВводаПоказанийСчетчиков.ПолучитьМакет("Макет");
     Настройки = КомпоновщикНастроек.ПолучитьНастройки();
     
     ПараметрыДанных = Настройки.ПараметрыДанных.Элементы;
     
     ЭлементПериод = ПараметрыДанных.Найти("Период");
     ЭлементПериод.Использование = Истина;
     ЭлементПериод.Значение = КонецМесяца(Объект.ОкончаниеПериода);
     
     КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
     
     МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,
     //КомпоновщикНастроек.Настройки, , ,
     Настройки, , ,
     Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
     
     ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
     ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных);
     
     ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
     
     Результат = Новый ТаблицаЗначений;
     
     ПроцессорВывода.УстановитьОбъект(Результат);
     ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);     
         | 
 |