Здравствуйте. Нужно получить результат варианта внешнего отчета. Сейчас выгружает в табличный документ основой результат, а не вариант.
ВнешнийОтчетОбработкаДляОткрытияСсылка = ПолучитьСсылкуНаВнешнийОтчетОбработкуПоИмениНаСервере("Отчет по оформленным поставкам");
ИмяОбработкиСлужебное = ДополнительныеОтчетыИОбработкиВызовСервера.ПодключитьВнешнююОбработку(ВнешнийОтчетОбработкаДляОткрытияСсылка);
ВнешниеОтчеты.Создать(ИмяОбработкиСлужебное);
СсылкаВарианта = Справочники.ВариантыОтчетов.НайтиПоНаименованию("Отчет по оформленным поставкам - основной", Истина);
Настройки = СсылкаВарианта.Настройки.Получить();
Отчет = ВнешниеОтчеты.Создать(ИмяОбработкиСлужебное);
СхемаКомпоновкиДанных = Отчет.ПолучитьМакет("Макет");
//СхемаКомпоновкиДанных.ВариантыНастроек.Основной.Настройки = Настройки;
КомпоновщикНастроекДанныхОтчета = Новый КомпоновщикНастроекКомпоновкиДанных;
КомпоновщикНастроекДанныхОтчета.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
КомпоновщикНастроекДанныхОтчета.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
ПараметрыДанных = Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы[0];
ПараметрыДанных.Использование = Истина;
ПараметрыДанных.Значение = НачалоДня(НачалоДня(ТекущаяДата())-1);
Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства.Вставить("КлючВарианта", "fdbf8732-97bb-48d1-978d-b2b08c3773c9");
КомпоновщикНастроекДанныхОтчета.ЗагрузитьПользовательскиеНастройки(Отчет.КомпоновщикНастроек.ПользовательскиеНастройки);
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
Макет = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроекДанныхОтчета.ПолучитьНастройки());
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(Макет);
// Выведем полученные данные в табличный документ
Таб1 = Новый ТабличныйДокумент;
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(Таб1);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
ИмяФайла = ПолучитьИмяВременногоФайла("xlsx");
//
Таб1.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.XLSX);
Показать
Если попробовать передать настройки вариант через:
СхемаКомпоновкиДанных.ВариантыНастроек.Основной.Настройки = Настройки;
получаю ошибку "Поле объекта недоступно для записи (Настройки)".
Как сделать правильно?