Люди добрые, прошу помощи, второй день ломаю голову и ничего на ум не приходит.
Нужно сформировать дерево значений из отчёта СКД Анализ начислений и удержаний, но вывод постоянно пустой. Вот код:
СхемаКомпоновкиДанных = Отчеты.АнализНачисленийИУдержаний.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
КомпоновщикНастроекДанныхОтчета = Новый КомпоновщикНастроекКомпоновкиДанных;
КомпоновщикНастроекДанныхОтчета.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных (СхемаКомпоновкиДанных));
КомпоновщикНастроекДанныхОтчета.ЗагрузитьНастройки(СхемаКомпоновкиДанных.ВариантыНастроек.Найти("РасчетныйЛисток").Настройки);
ПараметрыДанных = КомпоновщикНастроекДанныхОтчета.Настройки.ПараметрыДанных.Элементы;
ЭлементПериода = ПараметрыДанных.Найти("Период");
ЭлементПериода.Использование = Истина;
ЭлементПериода.Значение = Период;
ОтборКомпоновщика = КомпоновщикНастроекДанныхОтчета.Настройки.Отбор;
Для Каждого ЭлементОтбора ИЗ ОтборКомпоновщика.Элементы Цикл
Если Строка(ЭлементОтбора.ЛевоеЗначение) = "Организация" Тогда
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Организация;
КонецЕсли;
Если ЗначениеЗаполнено(Подразделение) Тогда
Если Строка(ЭлементОтбора.ЛевоеЗначение) = "ПодразделениеГоловногоСотрудникаНаКонецПериода" Тогда
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Подразделение;
КонецЕсли;
ИначеЕсли Строка(ЭлементОтбора.ЛевоеЗначение) = "ПодразделениеГоловногоСотрудникаНаКонецПериода" Тогда
ОтборКомпоновщика.Элементы.Удалить(ЭлементОтбора);
КонецЕсли;
Если ЗначениеЗаполнено(Должность) Тогда
Если Строка(ЭлементОтбора.ЛевоеЗначение) = "Должность" Тогда
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Должность;
КонецЕсли;
ИначеЕсли Строка(ЭлементОтбора.ЛевоеЗначение) = "Должность" Тогда
ОтборКомпоновщика.Элементы.Удалить(ЭлементОтбора);
КонецЕсли;
Если Строка(ЭлементОтбора.ЛевоеЗначение) = "ФизическоеЛицо" Тогда
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ЭлементОтбора.ПравоеЗначение = Сотрудник;
КонецЕсли;
КонецЦикла;
ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроекДанныхОтчета.Настройки, ДанныеРасшифровки, , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
Если КомпоновщикНастроекДанныхОтчета.Настройки.ДополнительныеСвойства.Свойство("ДанныеДокумента") Тогда
НаборыВнешнихДанных = КомпоновщикНастроекДанныхОтчета.Настройки.ДополнительныеСвойства.ДанныеДокумента;
Иначе
НаборыВнешнихДанных = ЗарплатаКадрыОтчеты.НаборыВнешнихДанныхАнализНачисленийИУдержаний();
КонецЕсли;
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, НаборыВнешнихДанных, ДанныеРасшифровки);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
ДеревоДанных = Новый ДеревоЗначений;
ПроцессорВывода.УстановитьОбъект(ДеревоДанных);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
Показать
Код отрабатывает, структура отчета в дереве, но значения нулевые
(3) не до конца понимаю как собрать запрос зарплаты общий, сказали с скд скопировать, но там внешние наборы данных есть и в ошибку запрос падает, если сможешь подсказать как собрать, буду благодарен