|
УФ : Программное добавление/ изменение реквизитов для различных форм в одном модуле | ☑ | ||
---|---|---|---|---|
0
bvb
26.01.23
✎
14:06
|
Добрый день
Покритикуйте меня, ибо нет уверенности что делаю правильно. Мне нужно в расширении в различных формах документах и списках документов добавлять / менять внешний вид реквизитов. Для этого ранее я добавлял форму в расширении и в процедуре добавлял &НаСервере Процедура Расш_ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка) НовыйЭлемент = Элементы.Вставить…… Это не удобно : Нужно добавлять все изменяемые формы в расширении (а их много), а так как они меняются почти с каждым обновлением, то в расширении тоже нужно жать кнопку обновить. И я решил сделать это все в одно месте : При создании на сервере всегда вызывается ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект); Я добавил в расширение модуль “Подключаемые команды” Добавил в нем к ПриСозданииНаСервере &После("ПриСозданииНаСервере") Процедура Расш_ПриСозданииНаСервере(Форма, ПараметрыРазмещения) Если Форма.ИмяФормы = "Документ.ГТДИмпорт.Форма.ФормаДокумента" Тогда НовыйЭлемент = Форма.Элементы.Вставить… правильно ли я сделал ? |
|||
1
Fedor-1971
26.01.23
✎
14:20
|
(0) А что смущает?
|
|||
2
Мультук
гуру
26.01.23
✎
14:59
|
(0) Все зависит от конфигурации
Например в УТ почти в каждой "ФормаДокумента" есть вызовы СобытияФорм.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка); ПодключаемыеКоманды.ПриСозданииНаСервере(...) А вот в форме документ.КассоваяСмена.ФормаДокумента этих вызовов нет. Печаль. В остальном -- "все так делают". |
|||
3
mistеr
26.01.23
✎
15:26
|
(0) Случайно не аналог допреквизитов из БСП велосипедишь?
Кстати, можно туда встроиться. |
|||
4
bvb
26.01.23
✎
15:30
|
(1) Перованачальная была задумка использовать подписку на события.
|
|||
5
bvb
26.01.23
✎
15:31
|
Теперь бы вот как то перехватить обработчики события реквизитов
без затаскивания формы в расширения &НаКлиенте Процедура Расш_ТоварыНоменклатураНачалоВыбораПосле(Элемент, ДанныеВыбора, СтандартнаяОбработка) |
|||
6
Мультук
гуру
26.01.23
✎
15:52
|
(5)
Это не про 1С Ты можешь программно подменить обработчик реквизита на другой обработчик, но лежать он должен в модуле формы, увы. |
|||
7
FIXXXL
26.01.23
✎
17:02
|
(5) сейчас нет ЕРП под рукой, насколько помню делал что-то типа:
Обработчиком назначал процедуру родной формы Подключаемый_ЧегоТоТам, она заходила в переопределяемый модуль, далее перенаправление в мой общий модуль, где уже парсил через попытку кто пришел и откуда и вызывал уже нужную процедуру моего модуля |
|||
8
bvb
27.01.23
✎
11:03
|
(8)Звучит очень круто но непонятно ничего
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |