|
Передача данных из одного отчета в другой отчет (унивепрсальный) | ☑ | ||
---|---|---|---|---|
0
asder117
20.02.19
✎
15:36
|
Доброго времени суток.
Подготавливаю отчет. в поле результат в событии Обработка расшифровки добавляю такой код [CODE]Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) // // Вставить содержимое обработчика. Перем ВыполненноеДействие; СтандартнаяОбработка = Ложь; //Создадим и инициализируем обработчик расшифровки ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); ДоступныеДействия = Новый Массив(); ДоступныеДействия.Добавить(ДействиеОбработкиРасшифровкиКомпоновкиДанных.ОткрытьЗначение); // Добавляем собственные действия Нов = Новый СписокЗначений; Нов.Добавить("Открыть отчет по взаиморасчетам"); Настройки = ОбработкаРасшифровки.Выполнить(Расшифровка, ВыполненноеДействие, ДоступныеДействия,Нов); // Обрабатываем собственные действия Если ВыполненноеДействие = "Открыть отчет по взаиморасчетам" Тогда // ОтчетНовый = Отчеты.ВедомостьВзаиморасчетыСКонтрагентами.Создать(); // КомпоновщикНастроек=ОтчетОбъект.КомпоновщикНастроек; ЭлементыОтбора = ОтчетНовый.КомпоновщикНастроек.Настройки.Отбор.Элементы; НовыйЭлемент = ЭлементыОтбора.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); НовыйЭлемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Контрагент"); НовыйЭлемент.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; НовыйЭлемент.ПравоеЗначение = ДанныеРасшифровки.Элементы[Расшифровка].ПолучитьПоля()[0].Значение; НовыйЭлемент.Использование = Истина; ОтчетНовый.КомпоновщикНастроек.ЗагрузитьНастройки(КомпоновщикНастроек.Настройки); ФормаОтчетаН = ОтчетНовый.ПолучитьФорму(); //Попытка //ФормаОтчета.СпособОтображенияОкна = ВариантСпособаОтображенияОкна.Максимизированное; //Исключение //КонецПопытки; ////ФормаОтчета.УниверсальныйОтчет.ВариантОформления = СтандартноеОформление.Интерфейс; ////ОтчетОбъект.УстановитьНачальныеНастройки(); ////ОтчетОбъект.мВосстанавливатьНастройкиПриОткрытии = Ложь; ФормаОтчетаН.Открыть(); ФормаОтчетаН.ОбновитьОтчет(); // КонецЕсли; Если Настройки <> Неопределено Тогда //пользователь выбрал действие, для которого нужно менять настройки Если ВыполненноеДействие = ДействиеОбработкиРасшифровкиКомпоновкиДанных.Упорядочить Тогда КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); СформироватьОтчет(); Иначе //при других действиях создадим новый отчет, откроем форму, сформируем отчет в ней ЭтаФорма.Открыть(); КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); СформироватьОтчет(); КонецЕсли; КонецЕсли; КонецПроцедуры [/CODE] при этом отчет посабытию открывается формируется но отбор не встает. Что не так? Уже везде облазил, сделал по рекомендациям но никак |
|||
1
asder117
20.02.19
✎
20:12
|
получается идей никаких ни у кого?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |