|
Вызвать процедуру модуля формы из внешней обработки |
☑ |
0
romaku
27.01.12
✎
20:50
|
Есть документ "Операция". У этого документа в модуле формы есть процедура ПередЗаписью().
Что написать во внешней обработке, чтобы перезаписать все документы "Операция" с вызовом процедуры из модуля формы?
опер = документы.Операция;
выборка = опер.Выбрать();
Пока Выборка.Следующий() Цикл
// обработка записи выборки
док = выборка.ПолучитьОбъект();
док.Записать();
КонецЦикла;
Таким кодом не получается. :(
|
|
1
НуВотКак
27.01.12
✎
20:52
|
А групповой обработкой отобрать и ...
|
|
2
romaku
27.01.12
✎
20:55
|
2(1) это как?
|
|
3
romaku
27.01.12
✎
20:56
|
конфа не стандартная, самописная
|
|
4
romaku
27.01.12
✎
21:00
|
Если это на что-то влияет, то в свойствах операции стоит Проведение: Запретить.
|
|
5
kotletka
27.01.12
✎
21:02
|
скопируй код из ПередЗаписью() в обработку и не парься
|
|
6
romaku
27.01.12
✎
22:52
|
так код из ПередЗаписью работает с реквизитами документа, ссылается на другие процедуры и функции, описанные в модуле формы документа.
Как их вызывать?
|
|
7
YF
27.01.12
✎
22:58
|
В связи с тем, что (3) придется сделать как в (5) :-)
Вообще, в модуле формы нет смысла обрабатывать перед записью что-то не относящееся к записи именно в форме ...
+
Ты же разово это делаешь => один-то раз процедуры перепишешь ...
|
|
8
Serg_1960
27.01.12
✎
23:01
|
|
|
9
aleks-id
27.01.12
✎
23:03
|
перенеси все процедуры/функции из модуля формы в модуль объекта
|
|
10
aleks-id
27.01.12
✎
23:04
|
ох ты ё... а ЗаписатьВФорме уже не катит?
|
|
11
romaku
28.01.12
✎
01:58
|
(10) спасибо. вот так вроде работает:
опер = документы.Операция;
выборка = опер.Выбрать();
Пока Выборка.Следующий() Цикл
// обработка записи выборки
докссылка = выборка.Ссылка;
докформа = докссылка.ПолучитьОбъект().ПолучитьФорму();
докформа.Открыть();
докформа.записатьВФорме();
докформа.Закрыть();
КонецЦикла;
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший