Имя: Пароль:
1C
 
Получить конкретную общую форму отчета для конкретного отчета
0 TormozIT
 
гуру
03.02.26
08:17
В конфигурации 1С есть общая форма отчета "ОтчетОбщая", не назначенная в качестве основной формы отчета конфигурации. Как без изменения конфигурации для конкретного отчета Отчет1 программно получить эту форму?

ф = ПолучитьФорму("Отчет.Отчет1.Форма.ОтчетОбщая");
Ошибка: Неизвестное имя формы. Имя: "Отчет.Отчет1.Форма.ОтчетОбщая"

ПолучитьФорму("ОбщаяФорма.ОтчетОбщая", Новый Структура("ИмяОтчета", "Отчет1"))
Ошибка: Получать форму объекта - отчета возможно только для конкретного отчета
Но в документации похожего нет. Перебрал уже много имен параметра (вместо "ИмяОтчета").

И даже через подписку ОбработкаПолученияФормы тут https://partners.v8.1c.ru/forum/topic/1399038 пишут, что не работает.
Зеркало вопроса https://partners.v8.1c.ru/forum/t/2271039/m/2271039
1 TormozIT
 
гуру
03.02.26
08:16
Пока единственный найденный вариант - частичное решение в управляемом приложении - найти отчет со статической связью с нужной общей формой отчета (программная сборка внешнего отчета, если отсутствует в конфигурации) и затем грубая подмена в ней объекта после создания формы.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший