Имя: Пароль:
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
Пока единственный найденный вариант - частичное решение в управляемом приложении - найти отчет со статической связью с нужной общей формой отчета (программная сборка внешнего отчета, если отсутствует в конфигурации) и затем грубая подмена в ней объекта после создания формы.
2 Ёпрст
 
гуру
03.02.26
09:46
(0)
ПолучитьОбщуюФорму (GetCommonForm)
Синтаксис:
ПолучитьОбщуюФорму(<Форма>, <Владелец>, <КлючУникальности>)
3 Ёпрст
 
гуру
03.02.26
09:47
Не ?
4 Ёпрст
 
гуру
03.02.26
09:47
А тонкий, там хз.
5 Ёпрст
 
гуру
03.02.26
09:55
А ОткрытьФорму("Отчет.Отчет1.Форма.ОтчетОбщая") работает хоть ?
6 Ёпрст
 
гуру
03.02.26
10:10
И ... что не так ? Всё же работает:
7 TormozIT
 
гуру
03.02.26
22:53
Сделал (1) в анализаторе кода ИР
https://www.hostedredmine.com/issues/1007964
8 Ёпрст
 
гуру
03.02.26
22:55
(7) а в (6) не оно ?
9 Волшебник
 
03.02.26
23:39
(0) 💖 Давайте все поблагодарим Сергея за весь его комплект инструментов, которые он сделал для 1С.
И ничего там не тормозИТ и всё работает!

Молодец, Сергей! Силища!
10 Ёпрст
 
гуру
04.02.26
09:48
(0)
Всё, я добил, вот так работает:

Форма  = ПолучитьФорму("Отчет.Отчет1.Форма");
11 Ёпрст
 
гуру
04.02.26
10:02
ФормаОтчета1 - общая форма без галки основная форма конфигурации (эта галка вообще не влияет на получение формы)
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший