0
dexter_86
27.10.20
✎
11:42
|
Доброго времени.
Хочу получить результат отчета СКД в виде таблицы значений.
В схеме СКД 4 запроса, которые связаны между собой.
Код:
ТаблицаИтог = Новый ТаблицаЗначений;
Схема = Отчеты.бит_ОтчетПоЗПРС.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Настройки = Схема.НастройкиПоУмолчанию;
//Далее идет установка параметров
ЗначениеПараметра = Настройки.ПараметрыДанных.Элементы.Добавить();
ЗначениеПараметра.Параметр = Новый ПараметрКомпоновкиДанных("Парам1");
ЗначениеПараметра.Значение = ЗначениеПараметра1;
ЗначениеПараметра.Использование = Истина;
//и так параметров 10, все сделаны по аналогиии с тем, как они заданы в форме отчета.
//Далее отбор
Отбор = Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Организация");
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.Использование = Истина;
Отбор.ПравоеЗначение = Организация;
//Сам вывод в ТЗ
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(Схема, Настройки,,, Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных,,, Истина);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
ПроцессорВывода.УстановитьОбъект(ТаблицаИтог);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
Скрыть
В итоге в ТЗ данные выводятся, но не попадают показатели в разрезе дней. Данные показатели - это вычисляемые поля в СКД.
Если формировать отчет в режиме пользователя, то все выходит как надо.
Почему могут не попадать данные в разрезе дней?
Настройки отладкой смотрел, там все значения выставлены.
Вариант в отчете 1.
|
|
2
dexter_86
27.10.20
✎
15:30
|
Разобрался в общем, в последней группировке по дня, выбранные поля были указаны не все, видимо дополняли их пользовательскими настройками. В итоге влез программно в последнюю группировку в СКД и добавил поля выбора. После этого расчет пошел.
|
|