ERP 2.4 Установка действия для программно добавленных реквизитов на форме

1. gonnahard 24.09.21 03:06 Сейчас в теме
Добрый день,

Есть ли программный способ установки действий для событий реквизитов, если обработчик находится вне формы?
Или может быть кто-то знает как прописать путь к данным поля формы, к константе из набора, если не стоит галка "Использовать Всегда"?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Neuroproton 18 24.09.21 06:42 Сейчас в теме
А обработчик экспортный? В общем модуле?
3. FatPanzer 24.09.21 07:11 Сейчас в теме
Обработчиком события формы, её элементов или её команды можно назначить только процедуру модуля этой же формы. И это одна из самых больших претензий к платформе.
DJ_Codebase; Anchoret; EVKash; +3 Ответить
4. DBV 24.09.21 08:05 Сейчас в теме
В ERP в формах модуля есть процедура Подключаемый_ВыполнитьПереопределяемуюКоманду можно через него в принципе дойти до необходимой процедуры в другом модуле - Это для команд

А для обработки событий других элементов можно через процедуру ПриСозданииНаСервере в нем вызывается СобытияФорм.ПриСозданииНаСервере и так же дойти до необходимого модуля

Только я не знаю в каком релизе это появилось или было всегда
5. SlavaKron 24.09.21 08:13 Сейчас в теме
(4)
Это для команд
Можно использовать и для обработчиков событий, но тема уже не актуальна благодаря расширениям.
6. DBV 24.09.21 08:16 Сейчас в теме
(5) мне не нравится добавлять форму в расширение, иногда форма ломается при обновлении или по какой то другой причине, да и отследить изменения сложнее.
По возможности стараюсь программно изменять
Anchoret; +1 Ответить
7. SlavaKron 24.09.21 08:23 Сейчас в теме
(6)
иногда форма ломается при обновлении
Если вы вручную на форме ничего не меняете, то по сути в расширении у вас только модуль формы.Там спокойно можете изменять программно.
8. DBV 24.09.21 08:26 Сейчас в теме
(7) А если конфигурация обновится и основная форма изменится, то как будет выглядеть форма в итоге для пользователя?
9. SlavaKron 24.09.21 08:36 Сейчас в теме
(8) Форму в расширении надо будет обновить, там всё просто, но в целом, могу понять ваши доводы.
10. gonnahard 24.09.21 08:54 Сейчас в теме
У меня форма - форма обработки "ПанельАдминистрированияБСП", не хотелось бы вообще трогать обработку.
11. DBV 24.09.21 09:04 Сейчас в теме
(10) в модуле формы в процедуре ПриСозданииНаСервере есть какой нибудь вызов метода типа "НастройкиПрограммыПереопределяемый.ПечатныеФормыОтчетыИОбработкиПриСозданииНаСервере(ЭтотОбъект)"?
Или как то по другому мб называется.
12. gonnahard 24.09.21 09:12 Сейчас в теме
(11) Тут есть две перспективные процедуры:
1) В при создании на сервере :
НастройкиПрограммыПереопределяемый.ОбщиеНастройкиПриСозданииНаСервере(ЭтотОбъект);


Где я создаю свои реквизиты.

2) Единственная клиентская процедура формы:
Подключаемый_ПриИзмененииРеквизита(Элемент, ОбновлятьИнтерфейс = Истина)


Которая мне не подходит, потому что служит для протягивания констант из набора к полям формы.
13. FatPanzer 24.09.21 09:33 Сейчас в теме
(12)
Которая мне не подходит, потому что служит для протягивания констант из набора к полям формы.
ТЫЖПРОГРАММИСТ! Используй расширение, перехвати этот обработчик с директивой &Вместо, проверь название элемента: если это твой элемент - запускай свой алгоритм, если не твой - пусть идет дальше богом через ПродолжитьВызов()...
15. gonnahard 24.09.21 09:41 Сейчас в теме
(13)
Мне бы не хотелось использовать расширение. Весь функционал разрабатываемой подсистемы не получится запихнуть в расширение.
Делать его "Неотключаемым" - религия не позволяет.
16. FatPanzer 24.09.21 09:51 Сейчас в теме
14. DBV 24.09.21 09:39 Сейчас в теме
(12) Вижу единственный вариант - это добавить форму в расширение и обработчик события
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот