Имя: Пароль:
1C
1С v8
83 Создание и заполнение документа на сервере
0 mxs089
 
27.08.14
10:08
создаю документ на сервере (ПТУ), заполняю реквизиты, после хочу, чтобы отработали типовые механизмы, ПоступлениеТоваровУслугФормы.ДоговорКонтрагентаПриИзменении(ЭтаФорма);
где мне взять ЭтаФорма?
1 Maxus43
 
27.08.14
10:10
нигде, надо дублировать код из кнопки в свою процедуру. Это клиентские вещи, с сервера не вызвать
2 mxs089
 
27.08.14
10:15
&НаСервере
Процедура ДоговорКонтрагентаПриИзмененииНаСервере()

    ПоступлениеТоваровУслугФормы.ДоговорКонтрагентаПриИзменении(ЭтаФорма);

КонецПроцедуры

это вызов в модуле документа, форма же создается на сервере?
3 Maxus43
 
27.08.14
10:20
(2) форма тебе зачем? что хочешь то объясни. Просто "хочу чтобы отрабатывала" - не аргумент
4 Господин ПЖ
 
27.08.14
10:22
>ПоступлениеТоваровУслугФормы.ДоговорКонтрагентаПриИзменении(ЭтаФорма);

так пишут .удаки...
5 mxs089
 
27.08.14
10:26
в документе заполнил договор контрагента, после необходимо проставить тип цен, валюту и т.д., все это уже описано в типовых процедурах (ПоступлениеТоваровУслугФормы.ДоговорКонтрагентаПриИзменении(ЭтаФорма);)
6 Maxus43
 
27.08.14
10:30
(5) смотри в ту процедуру, и переноси важные места, без обращений к форме
7 hhhh
 
27.08.14
10:31
(5) ну скопипасть кусок оттуда - это займет 4 секунды.
8 mxs089
 
27.08.14
10:35
хотелось бы использовать типовые механизмы, чтобы в будущем не править код после каждого обновления конфигурации
9 hhhh
 
27.08.14
10:38
(8) ну смотри, тебе нужно для этого инициализировать форму, создадутся штук триста элементов и реквизитов, табличные поля всякие, отборы. И для чего? Чтобы запустить десять строчек кода, заполнить 2 поля? В общем согласен с (4).
10 Maxus43
 
27.08.14
10:40
(8) Когда программист сам заполняет документ программно - считается что он заполнит его правильно, не используя костыли для пользователей. Ты внутрь процедуры то смотрел? Там может реально 4 строчки. Как правило процедуры заполняющие Реквизиты и влияющие на форму разнесены, т.е. тебе придётся вызвать просто другие процедуры
11 hhhh
 
27.08.14
10:41
(8) и вот с параметром реальный бред:

ДоговорКонтрагентаПриИзменении(ЭтаФорма)

вы туда пишите ЭтаФорма, а там ведь должно быть поле ввода договора из формы.
12 mxs089
 
27.08.14
10:56
(11) да я согласен, что передавать этаформа - бред, логичнее было бы передавать объект
13 mxs089
 
27.08.14
10:57
(11) нет, не поле договора