Передача таблицы значений в СКД (Набор данных – объект)

Добрый день.
Появилась необходимость передачи тблицы значений в СКД. В СКД добавил Набор данных – объект.
Но встала проблема как в коде передать эту таблицу, не формируя отчет вручную. Всюду описаны методы, в которых для передачи ТЗ приходится перетерать функцию формирования отчета . Такой метод не подходит.

Подписаться
Уведомить о
guest
2 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
also
12 лет назад

По другому никак

Александр Днестрян
Александр Днестрян
12 лет назад

Тоже пришел к такому выводу.
Но я не хотел вручную заполнять отчет так как во всех примерах не прикручивались настройки (или только одна, фиксир, польз – не прикручивались) , не учитывался вариант отчета и т.д.
Вот код который обходит все это, т.е. аналогичный встроенному обработчику, используем событие ПриКомпоновкеРезультата модуля отчета
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
//Связь между таблицей значений и именами в СКД ВнешниеНаборыДанных = Новый Структура;
ВнешниеНаборыДанных.Вставить(“ТаблицаНабораДанных”, ТаблицаНабораДанных);
//Макет компоновки КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(ЭтотОбъект.СхемаКомпоновкиДанных, ЭтотОбъект.КомпоновщикНастроек.ПолучитьНастройки(), ДанныеРасшифровки);
//Компоновка данных ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных, ДанныеРасшифровки);
//Вывод результата ДокументРезультат.Очистить();
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
КонецПроцедуры