|
v7: Запись документа из другого документа | ☑ | ||
|---|---|---|---|---|
|
0
Pacan4ik
20.08.12
✎
13:32
|
Имеется Документ ОсновнойДокумент, у него реквизит шапки ВспДокумент имеет тип значения Документ.Служебный. При проведении документа не могу получить ВспДокумент.Реквизит5, записанные в ВспДокумент ранее, в процедуре ПриЗаписи(). Попробую кратко описать
В процедуре ПриЗаписи() основного документа записано Процедура ПриЗаписи() ДокСлужеб = СоздатьОбъект("Документ.Служебный"); ДокСлужеб.НайтиДокумент(ВспДокумент); ДокСлужеб.ВыбратьСтроки(); Пока ДокСлужеб.ПолучитьСтроку() = 1 Цикл ДокСлужеб.Реквизит5 = "5"; конецЦикла; докСлужеб.Записать(); конецПроцедуры Далее в процедуре обработка проведения основного документа Процедура ОбработкаПроведения() ВспДокумент.ВыбратьСтроки(); Пока ВспДокумент.ПолучитьСтроку() = 1 Цикл Сообщить(ВспДокумент.Реквизит5); конецЦикла; конецПроцедуры |
|||
|
1
miki
20.08.12
✎
13:38
|
вот почему ты в ПриЗаписи создаешь объект вспомогательного документа, а при проведении нет?
|
|||
|
2
Pacan4ik
20.08.12
✎
13:42
|
Уже сам нашел, спасибо за ответ
|
|||
|
3
NS
20.08.12
✎
13:44
|
(1) Потому как известный глюк. Объект создает потому что записать можно только объект созданный при помощи "СоздатьОбъект", а глюк в том, что данные в ВспДокумент при этом не обновляются. Чтоб обновились достаточно в призаписи() добавить строку в конец
ДокСлужеб = СоздатьОбъект("Документ.Служебный"); ДокСлужеб.НайтиДокумент(ВспДокумент); ДокСлужеб.ВыбратьСтроки(); Пока ДокСлужеб.ПолучитьСтроку() = 1 Цикл ДокСлужеб.Реквизит5 = "5"; конецЦикла; докСлужеб.Записать(); ВспДокумент=докслужеб.текущийдокумент(); |
|||
|
4
miki
20.08.12
✎
13:51
|
(3)То, что писАть надо в объект, а не в реквизит это понятно (в коде записи нет, но есть в сабже).
Что агрегатный реквизит при изменении программно не обновляется (визуально) - знал, но что он и в при проведении остается "старый" не знал (не сталкивался). Буду знать. |
|||
|
5
aka AMIGO
20.08.12
✎
14:00
|
интересный факт.. Просится в Базу знаний, добавил-бы , да Асмоди что-то хитрое мне подстроил: могу только извлекать из БД, но не впихивать туда..
зы. Тоже полезная функция.. |
| Форум | Правила | Описание | Секции | Поиск |