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