Как вывести данные расшифровки на макет

Добрый день.

Для решения определенной задачи мне потребовалось хранить запрос в общем модуле. Затем он используется для нескольких отчетов.

Далее при программном выводе отчета происходит подключение внешней таблицы значений. Все получилось и вывелось, но расшифровки у записей нет. Никак не могу понять почему. Смотрел в автоматически созданной форме. Там используется реквизит формы “ДанныеРасшифровки”. Как я понял это ссылка на какое-то временное хранилище с данными. Поясните, пожалуйста, эту тонкость.

Ниже привожу пример программного вывода СКД:

“&НаСервере
Процедура ФормированиеСКД(Таб, ТипПрогноза=Неопределено)

//Получаем схему из макета
Если ФильтрПоказыватьТекущееМестоположение Тогда

СхемаКомпоновкиДанных = Отчеты.ПрогнозНаличияТСТЕ.ПолучитьМакет(“ТекущееМесторасположение”);

КонецЕсли;

Если ФильтрПоказыватьПрогнозМестоположения Тогда

СхемаКомпоновкиДанных = Отчеты.ПрогнозНаличияТСТЕ.ПолучитьМакет(“Прогноз”);

КонецЕсли;

//Из схемы возьмем настройки по умолчанию
Если ТипПрогноза = Неопределено Тогда

Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию;

Иначе

Если ТипПрогноза = “ТЕ” Тогда

Настройки = СхемаКомпоновкиДанных.ВариантыНастроек.ПрогнозПоТЕ.Настройки;

ИначеЕсли ТипПрогноза = “ТС” Тогда

Настройки = СхемаКомпоновкиДанных.ВариантыНастроек.ПрогнозПоТС.Настройки;

КонецЕсли;

КонецЕсли;

//Помещаем в переменную данные о расшифровке данных
Расшифровка = Новый ДанныеРасшифровкиКомпоновкиДанных;

//Формируем макет, с помощью компоновщика макета
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;

//Передаем в макет компоновки схему, настройки и данные расшифровки
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, Расшифровка);

ВнешниеПараметры = Новый Структура;
Если НЕ ТипПрогноза=Неопределено Тогда

Если ТипПрогноза=”ТЕ” Тогда
Таб.Колонки.Добавить(“ТипТС”);
Таб.Колонки.Добавить(“ТС”);
ИначеЕсли ТипПрогноза=”ТС” Тогда
Таб.Колонки.Добавить(“ТипТЕ”);
Таб.Колонки.Добавить(“ТЕ”);
КонецЕсли;

КонецЕсли;
ВнешниеПараметры.Вставить(“Таб”, Таб);

//Выполним компоновку с помощью процессора компоновки
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешниеПараметры, Расшифровка);

//Выводим результат в табличный документ
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(Результат);

ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина);

КонецПроцедуры”

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