|
v7: Вопрос по FormEx | ☑ | ||
---|---|---|---|---|
0
e2v
01.08.12
✎
10:05
|
Не пойму как сохранить изменения в форме, сделанные процедурой.
При закрытии документа изменения пропадают. Пишу Документ.Записать - пишет документ заблокирован. Как надо ,посоветуйте 8)))) ************************************************ ОткрытьФорму(Док.ТекущийДокумент,Конт); Если Сервис.АктивныйКонтекст(Конт)=1 Тогда Сервис.ВыполнитьПроцедуру(Конт,...); ... Сервис.ВыполнитьПроцедуру(Конт,"ПриЗаписи"); Конт.Форма.Закрыть(); КонецЕсли; ************************************************** |
|||
2
ЧеловекДуши
01.08.12
✎
10:09
|
Просто, пишешь: Записать();
При этом в форме редактируемого документа :) Ты лучше скажи, мил друг, что ты хочешь, а мы порекомендуем, как лучше сделать ;) |
|||
3
ЧеловекДуши
01.08.12
✎
10:09
|
+ Если пишет, "документ заблокирован", программа не врет ;)
|
|||
4
e2v
01.08.12
✎
10:19
|
Смысл такой. Есть Документ. В форме документа есть процедура заполнения формы. Для этого открываю форму и выполняю процедуру с контекстом. Запонение происходит, все отрабатывается. Но вот закрыть форму с записью изменений не получается. Закрывается , но не записывается.
Общая идея - перезаполнить форму существующего документа не интерактивно. |
|||
5
Ёпрст
01.08.12
✎
11:03
|
(4) перенести процедуру заполнения в обработку (или вынести её в глоб. модуль) + НЕ открывать документ - это самое простое и правильное решение.
|
|||
6
e2v
01.08.12
✎
11:50
|
Что лучше так понимаю. Но процедура вызывает еще до фига чего , и все переписывать чего-то не охота. А такой способ не катит ?
Хотелось бы понять, как открывается-закрывается программно документ. |
|||
7
Ёпрст
01.08.12
✎
11:55
|
(6) "до фига чего" .. что например ?
Пересчет в табличной части ? Если типовая, то там всё в глобальник запаковано. Достаточно всё тоже сделать в своей поделке.. |
|||
8
ЧеловекДуши
01.08.12
✎
11:55
|
(6)Не как, ты его не программно открыл, а физически.
Т.е. использовал функцию "ОткрытьФорму()" Так вот. Что тебе мешает После закрытия формы обработки, где ты редактируешь документ, дать команду на запись. ... Ну и конечно, все дела делать в Модальном окне. ... Или послушать (5) и сделать, как надо. Так же можно по простому, допилить диалог документа и все что ты там навоял в обработке, перенести в документ :) |
|||
9
Ёпрст
01.08.12
✎
11:57
|
типа
Цикл ... Док.Цена = <значение>; глПересчетТаблЧасти(Док,"Цена"); ........... КонецЦикла; глПересчетСуммыВзаиморасчетов(Док); |
|||
10
e2v
01.08.12
✎
12:51
|
(7) Конф. Бухгалтерия. Документ Счетфактура. Процедура ЗаполнитьНаОсновании. Там чего то много чего. А доделывать стандартную конфу нельзя (просто на обслуживании 100 фирм) и начальствоне приемлет ничего не стандартного. только внешние обработки.
(8) Так форма закрывается и изменения пропадают. |
|||
11
Ёпрст
01.08.12
✎
12:56
|
||||
12
e2v
01.08.12
✎
14:11
|
Большое человеческое спасибо. 8)))
|
|||
13
Масянька
01.08.12
✎
14:15
|
Ёпрст4 - респект!
|
|||
14
Ёпрст
01.08.12
✎
14:22
|
только один хрен.. в бухии придётся поправить документ, на предмет заремить/заменить предупреждения в коде на сообщить хотя бы..
Слишком много их там понатыкано в вводНаОсновании |
|||
15
Ёпрст
01.08.12
✎
14:22
|
+14 желательно..
ибо будет спотыкаться на них |
|||
16
e2v
01.08.12
✎
14:39
|
(14) точно-точно. Я поэтому и часть перенес во внешнюю.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |