0
aleksejafonkin
12.11.19
✎
14:12
|
Добрый день!
В СКД создал набор данных, который бежит по документам и собирает информацию. Автоматически создал форму отчета. Кнопка "сформировать" создалась автоматически. Нажимаю сформировать все вывелось отлично и если навести курсор мышки, то отображается лупа и даже по нажатию проваливается в справочники, ссылки и т.д.
Теперь хочу программно поработать с отчетом, создал команду "СформироватьОтчет", нажав на неё исполняется этот код:
&НаСервере
Процедура СформироватьОтчетНаСервере()
СхемаКомпоновки = РеквизитФормыВЗначение("Отчет").ПолучитьМакет("Макет");
НастройкиКомпоновки = СхемаКомпоновки.НастройкиПоУмолчанию;
//ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновки, НастройкиКомпоновки);
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки);
Результат.Очистить();
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(Результат);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
КонецПроцедуры
&НаКлиенте
Процедура СформироватьОтчет(Команда)
СформироватьОтчетНаСервере();
// Чтобы не писалось "Отчет не сформирован..."
Элементы.Результат.ОтображениеСостояния.Видимость = Ложь;
Элементы.Результат.ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.НеИспользовать;
КонецПроцедуры
Отчет формируется отлично, но возникает проблема с расшифровкой, лупа исчезает. Если установить 3-й параметр "ДанныеРасшифровки"
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновки, НастройкиКомпоновки, ДанныеРасшифровки);
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ,ДанныеРасшифровки); - то тут при открытии отчета возникает ошибка.
Может этого достаточно, что бы мне объяснить, где я сошел с правильной дороги и подскажет?
|
|
1
mzelensky
12.11.19
✎
14:50
|
(0)
//ФОРМИРУЕМ ОТЧЕТ
КомпановщикМакета = новый КомпоновщикМакетаКомпоновкиДанных;
ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
МакетКонпановки = КомпановщикМакета.Выполнить(СхемаКомпоновкиДанных,ТекНастройки,ДанныеРасшифровки);
ПроцессорКомпановкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпановкиДанных.Инициализировать(МакетКонпановки,,ДанныеРасшифровки);
ПроцессорВывода = новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпановкиДанных);
ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
|
|