Для того, чтобы компоновщик настроек мог понять, с каким типами данных из временной таблицы он имеет дело, желательно прописать это в тексте запроса, используя выражения языка запросов ВЫРАЗИТЬ(ВТ.ЗначениеПоля КАК <Описание типа>) или ЕСТЬNULL(ВТ.ЗначениеПоля, <Пустое значение такого же типа>). Для составных типов можно будет использовать выражение ВЫБОР КОГДА с последовательным описанием типов.
ВЫБОР КОГДА Ложь Тогда ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка)
КОГДА Ложь ТОГДА ЗНАЧЕНИЕ(Справочник.МестаХранения.ПустаяСсылка)
ИНАЧЕ вт.пп
ВЫБРАТЬ РАЗРЕШЕННЫЕ
Начисления.Сотрудник КАК Сотрудник,
Начисления.НачислениеУдержание КАК ВидРасчета,
Начисления.Сумма КАК Сумма,
ЕСТЬNULL(КадровыеДанные.Подразделение, ЗНАЧЕНИЕ(Справочник.ПодразделенияОрганизаций.ПустаяСсылка)) КАК Подразделение,
ЕСТЬNULL(КадровыеДанные.Должность, ЗНАЧЕНИЕ(Справочник.Должности.ПустаяСсылка)) КАК Должность,
ЕСТЬNULL(КадровыеДанные.ГрафикРаботы, ЗНАЧЕНИЕ(Справочник.ГрафикиРаботы.ПустаяСсылка)) КАК ГрафикРаботы,
ЕСТЬNULL(КадровыеДанные.ВидЗанятости, ЗНАЧЕНИЕ(Перечисление.ВидыЗанятости.ПустаяСсылка)) КАК ВидЗанятости
ИЗ
РегистрНакопления.НачисленияУдержанияПоСотрудникам КАК Начисления
ЛЕВОЕ СОЕДИНЕНИЕ ВТКадровыеДанныеСотрудников КАК КадровыеДанные
ПО Начисления.Сотрудник = КадровыеДанные.Сотрудник
И Начисления.Период = КадровыеДанные.Период
ГДЕ
Начисления.Период = &МесяцНачисления
Затем в предопределенной процедуре ПриКомпоновкеРезультата модуля отчета, инициализируем менеджер временных таблиц с требуемыми данными. В результате инициализации в МВТ должа быть сформирована временная таблица с именем, идентичным объявленному в наборе данных.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Настройки = КомпоновщикНастроек.ПолучитьНастройки();
МесяцНачисления = Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("МесяцНачисления")).Значение;
// Создаем МВТ
МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
// Здесь наполняем МВТ данными
КадровыеДанные = КадровыйУчет.КадровыеДанныеСотрудников(Истина,, "Подразделение, Должность, ГрафикРаботы, ВидЗанятости", МесяцНачисления);
ЗарплатаКадры.СоздатьВТПоТаблицеЗначений(МенеджерВременныхТаблиц, КадровыеДанные, "ВТКадровыеДанныеСотрудников", Истина);
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.ПолучитьНастройки(), ДанныеРасшифровки,, Тип("ГенераторМакетаКомпоновкиДанных"));
// Здесь его используем
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных,, ДанныеРасшифровки, Истина,, МенеджерВременныхТаблиц);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
КонецПроцедуры
Добавить таблицу в менеджер временных таблиц
ПриОпределенииГруппИсполнителей (БСП)
Ищет по имени временную таблицу в менеджере
СоздатьВТРасписанияРаботыНаПериод (БСП)