Имя: Пароль:
1C
1С v8
Как передать параметр в отчет, построенный в системе компоновки данных?
0 distorter
 
03.09.12
09:55
Требуется программно открыть форму отчета. Отчет создан в СКД. Требуется передать параметр(ы). В форме элемента справочника пишу код:

П = Новый Структура("Абонент", Объект.Ссылка);
Форма = ПолучитьФорму("Отчет.КарточкаРасчетовСАбонентом.Форма", П);
Форма.Открыть();

Форма открывается, а параметры не передаются.
1 666 Devil
 
03.09.12
10:15
Смотри как в типовых внешние открываются,
в УТ 11  так
Процедура ВыполнитьОткрытиеФормыОбработки(
                           ВнешняяОбработка,
                           ВидОбработки,
                           ИдентификаторКоманды,
                           БезопасныйРежим,
                           ОбъектыНазначенияМассив)
   
       ИмяОбработки = ДополнительныеОтчетыИОбработки.ПодключитьВнешнююОбработку(ВнешняяОбработка, БезопасныйРежим);
       
       ПараметрыОбработки = Новый Структура("ИдентификаторКоманды,ДополнительнаяОбработкаСсылка");
       ПараметрыОбработки.ИдентификаторКоманды = ИдентификаторКоманды;
       ПараметрыОбработки.ДополнительнаяОбработкаСсылка = ВнешняяОбработка;
       
       Если НЕ ЭтоГлобальнаяОбработка(ВидОбработки) Тогда
           ПараметрыОбработки.Вставить("ОбъектыНазначения", ОбъектыНазначенияМассив);
       КонецЕсли;
       
       Если ВидОбработки = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиОтчет()
           ИЛИ ВидОбработки = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительныйОтчет() Тогда
           ОткрытьФорму("ВнешнийОтчет."+ ИмяОбработки +".Форма", ПараметрыОбработки);
       Иначе
           ОткрытьФорму("ВнешняяОбработка."+ ИмяОбработки +".Форма", ПараметрыОбработки);
       КонецЕсли;
   
КонецПроцедуры
Основная теорема систематики: Новые системы плодят новые проблемы.