Имя: Пароль:
1C
1С v8
Как программно создать вариант отчета
0 0level
 
14.09.17
18:15
Программно формирую типовой отчет(изменить его нельзя), полученные данные нужно вывести в ТЗ для дальнейшей обработки.
Как программно настроить вариант отчета с выводом детальных записей по всем полям?

Если формировать с типовым вариантом, выводит ошибка "Не поддерживается вывод таблиц и диаграмм в универсальную коллекцию значений"

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

    //КомпоновщикНастроекНастройки.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("КонецПериода", КонецМесяца(МесяцРасчета));
    
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаОст, КомпоновщикНастроекНастройки.Настройки, , , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
    
    //МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаОст, КомпоновщикНастроекНастройки.Настройки);
    ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных);
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
     //ПроцессорВывода = Новый  ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ДанныеТЗ = Новый ТаблицаЗначений;
     //   ДанныеТЗ = новый ТабличныйДокумент;
    ПроцессорВывода.УстановитьОбъект(ДанныеТЗ);
    //ПроцессорВывода.УстановитьДокумент(ДанныеТЗ);
    ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
    //  ТЗ= обМакетВТаблицуЗначений(ДанныеТЗ);
    
    //ДанныеТЗ.Показать();
    Возврат  ДанныеТЗ;
1 Parenek_88
 
14.09.17
19:22