Добрый день!
Подскажите пожалуйста, как получить путь к макету внешнего отчета.
Так - "ОбщийМакет.ПФ_MXL_РасчетныйЛистокНастраиваемый" путь к общему макету
"Отчет.ПечатнаяФормаТ11.ПФ_MXL_Т11а" путь к макету отчета
А как к внешнему отчету?
"ВнешнийОтчет.АнализНачисленийИУдержаний.ПФ_MXL_РасчетныйЛисток" - не работает!
Подскажите пожалуйста, как получить путь к макету внешнего отчета.
Так - "ОбщийМакет.ПФ_MXL_РасчетныйЛистокНастраиваемый" путь к общему макету
"Отчет.ПечатнаяФормаТ11.ПФ_MXL_Т11а" путь к макету отчета
А как к внешнему отчету?
"ВнешнийОтчет.АнализНачисленийИУдержаний.ПФ_MXL_РасчетныйЛисток" - не работает!
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) А где он нужен? Если в модуле самого отчета, то просто Макет = ПолучитьМакет("ИмяМакета").
Если в Форме отчета, то типа того
Если вне отчета, то сложнее.
Если в Форме отчета, то типа того
&НаСервере
Функция ПолучитьМакетНаСервере()
ОтчетОбъект = РеквизитФормыВЗначение(«Отчет»);
Макет = ОтчетОбъект.ПолучитьМакет(«Макет»);
Возврат Макет;
КонецФункции
Если вне отчета, то сложнее.
(5) А пути, аналогичного вышеперечисленным, нет, только относительный от самого внешнего отчета, т.е. по сути само имя макета. Далее при получении самого макета в коде уже либо вызывается макет по полному пути, либо создается объект внешнего отчета и макет тащится оттуда
(5) Простого пути у внешних отчетов в принципе нет. Внешние отчеты находятся в хранилище.
Путь к хранилищу в Справочник.ДополнительныеОтчетыИОбработки.
Получив отчет из хранилища, вы можете получить из него макет.
Если нужен только макет, то можно его создать в расширении в общих макетах.
Путь к хранилищу в Справочник.ДополнительныеОтчетыИОбработки.
Получив отчет из хранилища, вы можете получить из него макет.
Если нужен только макет, то можно его создать в расширении в общих макетах.
Вот смотрите что сделал. сделал внешнюю обработку, добавил макет. через метаданные получил полное имя
ЭтотОбъект.Метаданные().Макеты.ИмяМакете.ПолноеИмя() - вернуло "Макет.ИмяМакета"
То есть если имя макета будет РасчетныйЛист, то для внешней обработки вернет Макет.РасчетныйЛист
Может это поможет
ЭтотОбъект.Метаданные().Макеты.ИмяМакете.ПолноеИмя() - вернуло "Макет.ИмяМакета"
То есть если имя макета будет РасчетныйЛист, то для внешней обработки вернет Макет.РасчетныйЛист
Может это поможет
(11)Создал внешний отчет РасчетныйЛист, там есть код:
МакетыВариантовОтчетовПечатныхФорм() это соответствие, которое выглядит так:
хотел сюда вставить путь к макету внешней обработки.
В общем решил по другому.
Спасибо
МакетыВариантовОтчетов = МакетыВариантовОтчетовПечатныхФорм();
ПолноеИмяОбъекта = ЭтотОбъект.Метаданные().ПолноеИмя();
ПутьКМакету = МакетыВариантовОтчетов.Получить(ПолноеИмяОбъекта + "." + РезультатКомпоновкиМакета.КлючВарианта);
МакетПечатнойФормы = УправлениеПечатью.МакетПечатнойФормы(ПутьКМакету);
ПоказатьМакетыВариантовОтчетовПечатныхФорм() это соответствие, которое выглядит так:
МакетыВариантовОтчетов.Вставить("Отчет.ПечатнаяФормаТ1.Т1", "ОбщийМакет.ПФ_MXL_Т1");
МакетыВариантовОтчетов.Вставить("Отчет.ПечатнаяФормаТ5.Т5", "ОбщийМакет.ПФ_MXL_Т5");
МакетыВариантовОтчетов.Вставить("Отчет.ПечатнаяФормаТ6.Т6", "ОбщийМакет.ПФ_MXL_Т6");
МакетыВариантовОтчетов.Вставить("Отчет.ПечатнаяФормаТ8.Т8", "ОбщийМакет.ПФ_MXL_Т8");
// и т д
Возврат МакетыВариантовОтчетов;
хотел сюда вставить путь к макету внешней обработки.
В общем решил по другому.
Спасибо
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот