Имя: Пароль:
1C
1С v8
СКД. Процессор вывода не видит ТЗ
0 Puzoter
 
06.05.15
18:00
Простой отчет, источник данных  - ТЗ

В модуле отчета выполняется код:

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

СформироватьОсновныеТЗ() возвращает структуру с таблицей значений с именем совпадающим в источником даннвх СКД, но процессов вывода при .ЗакончитьВывод() ругается, что ТЗ не найдена, в чем может быть дело? Где она потерялась, может осталась на клиенте и не видна на сервере?
1 Fram
 
06.05.15
18:50
а если убрать ЗакончитьВывод?
2 Puzoter
 
07.05.15
09:25
(1) Убрал, назначил остановку по ошибке в отладчике  - теперь отчет выполняется без ошибок, но в конце выводится сообщение

Ошибка выполнения отчета
по причине:
Ошибка исполнения отчета
по причине:
Ошибка инициализации
по причине:
Ошибка создания набора данных "ТЗ"
по причине:
Не найден внешний набор данных "ТЗ"
3 Puzoter
 
07.05.15
09:32
Функция возвращает вот такую структура таблиц значений

Функция СформироватьОсновныеТЗ() Экспорт

//
//
//

Возврат Новый Структура("ТЗ,ТЗ1", ТЗ,ТЗ1);

КонецФункции
4 Puzoter
 
07.05.15
09:38
Разобрался - мешала стандартная обработка