Имя: Пароль:
1C
1С v8
Формирование отчета 1с8.2 упр.прилож.
0 ser-korvin
 
02.04.12
16:59
В обработке для вывода отчета применил код:

&НаКлиенте
Процедура Сформировать(Команда)
   
   ТабДок = Новый ТабличныйДокумент;
   ТабДок=ПолучитьМакетНаСервере();    
   ТабДок.ТолькоПросмотр = Истина;
   ТабДок.Защита = Истина;
   ТабДок.ОтображатьГруппировки = Ложь;
   ТабДок.ОтображатьСетку = Ложь;
   ТабДок.ОтображатьЗаголовки = Ложь;
   ТабДок.Показать("Проставленные оценки");

КонецПроцедуры

&НаСервере
Функция ПолучитьМакетНаСервере()
   
   Таб = Новый ТабличныйДокумент;
   Макет =  РеквизитФормыВЗначение("Объект").ПолучитьМакет("Макет1");
   Обл1 = Макет.ПолучитьОбласть("Шапка");
   Обл2 = Макет.ПолучитьОбласть("Строка");
   Обл3 = Макет.ПолучитьОбласть("Подвал");
   //.......
   Таб.Вывести(Обл1);    
   Таб.Вывести(Обл2);            
   Таб.Вывести(Обл3);    
   Возврат Таб;
   
КонецФункции


Все прекрасно работает. При попытки применить этот же код в отчете, система ругается:

{Отчет.ДокументыСОценками.Форма.ФормаОтчета.Форма(20)}: Ошибка при вызове метода контекста (РеквизитФормыВЗначение)
   Макет =  РеквизитФормыВЗначение("Объект").ПолучитьМакет("Макет1");
по причине:
Недопустимое значение параметра (параметр номер '1')

P.S. Отчет и обработка являются объектами конфигурации
Подскажите как решить траблу.
1 DrShad
 
02.04.12
17:04
а накуй нужна эта строчка? тупо доступа к объекту на серваке разве нет, чтоб получить макет?
2 ser-korvin
 
02.04.12
17:11
(1) Это управляемое приложение, которое работает на клиенте, и при необходимости, обращается на сервер.
3 zladenuw
 
02.04.12
17:11
4 zladenuw
 
02.04.12
17:12
Замени "Объект" на "Отчет"
5 ser-korvin
 
02.04.12
17:12
(1) делал по v8: 8.2 Внешняя обработка => Управляемая форма => ПолучитьМакет
причем в обработке все работает...
6 ser-korvin
 
02.04.12
17:14
(4) СПС понял, исправил, заработало