0
DomovoiVShoke
15.10.20
✎
11:09
|
Попросили написать несколько строк на УФ БП. Нужно было создать документ из обработки. Мне понадобились процедуры ПриИзмененииВидаОперации(ЭтотОбъект), ПриИзмененииКонтрагента(ЭтотОбъект) и т.д. В обычных формах эти процедуры были в модуле объекта, я устанавливал значение реквизита, вызывал потом нужную такую процедуру и все необходимые реквизиты дозаполнялись. На УФ как я увидел все аналогичные процедуры хоть и пишется что на сервере, но в них передается форма а не объект. Тогда я полез в процедуру "Обработка заполнения" и удивился: прописано заполнение каждого реквизита. Я конечно в УФ ничего не понимаю. Где теперь модульные процедуры заполнения реквизитов документа? Или теперь их нет, или есть какая-то своя фишка тут? Как мне при программном указании реквизита, например, ДоговораКонтрагента из другого объекта сразу заполнить все необходимые реквизиты и сделать необходимые пересчеты невникая в них?
|
|
1
Жан Пердежон
15.10.20
✎
14:59
|
Правильно будет (кстати, так же как и в ОФ):
НовыйОбъект.Заполнить(ДанныеЗаполнения);
А кто что в конкретной конфе накодил - тут уже вникать, скорее всего, придётся
|
|
3
fisher
15.10.20
✎
15:25
|
(0) Нет фишки. В ОФ модуль объекта просто тоже был на клиенте при работе формы, что давало дополнительное удобство программисту.
В УФ это, естественно, уже не канает. Нет теперь такого удобного места у объекта, где можно прописать общий для клиента и сервера код.
Только в общие модуля выносить. Но так как проблема стоит не слишком остро (малое количество программных заполнений), то проще дублировать логику.
|
|