0
StillEnough
02.04.15
✎
17:15
|
8,3 обычное приложение. Открыта форма заказа покупателя. На основании заказа создается новый договор, указываются необходимые в нем данные, договор записывается. При записи проверяется, если новый и указан документ основание тогда в соответствующий заказ в поле "Договор" устанавливается ссылка на документ.
// П+
Если ЭтоНовыйЭлемент И ЗначениеЗаполнено(ДокОсн) и ТипЗнч(ДокОсн) = Тип("ДокументСсылка.ЗаказПокупателя") Тогда
ЗаказОб = ДокОсн.ПолучитьОбъект();
ЗаказОб.ДоговорКонтрагента = ЭтотОбъект.Ссылка;
ЗаказОб.Записать();
КонецЕсли;
Код отрабатывает, но форма заказа не отображает внесенных данных по договору, и кидается Операция не может быть выполнена из-за несоответствия версии или отсутствия записи базы данных (возможно, запись была изменена или удалена)!.
Как можно реализовать задумку?
|
|
2
Лефмихалыч
02.04.15
✎
17:21
|
хотя нет, на самом деле надо Оповестить() в ПослеЗаписи() договора, а потом в форме заказа обработать это оповещение, перечитав объект.
Но это (0) плохое решение в принципе. Если пользователь внес изменения в документ, не записал, потом принялся создавать договор, то он потеряет внесенные ранее изменения, что бы ты ни делал. То есть надо перед созданием договора заставлять записать заказ, Если Модифицированность(). Что тоже не есть гуд. В общем - хреновое решение
|
|