ПараметрыЗаписи = Новый Структура("РежимЗаписи",РежимЗаписиДокумента.Запись); // сугубо тест
Записать(ПараметрыЗаписи);
Для каждого Тек Из Объект.ЗапчастиЗаказ Цикл
Если Тек.СостояниеСтрокиЗаказа = ПредопределенноеЗначение("Перечисление.ЭА_СостояниеСтрокиЗаказа.НаСкладе")
Или Тек.СостояниеСтрокиЗаказа = ПредопределенноеЗначение("Перечисление.ЭА_СостояниеСтрокиЗаказа.Выдана") Тогда
Тек.СостояниеСтрокиЗаказа = ПредопределенноеЗначение("Перечисление.ЭА_СостояниеСтрокиЗаказа.Аннулирована");
ДобавитьУточнениеПоСтрокеНаСервере(Тек.ИдентификаторСтроки,"Аннулирована при закрытии направления");
Если ЗначениеЗаполнено(Тек.ПоступлениеТоваровУслуг) Тогда
УдалитьИзРезерва(Тек.Номенклатура,Тек.КодЗаказа,Тек.ПоступлениеТоваровУслуг);
КонецЕсли;
Тек.ПоступлениеТоваровУслуг = "";
КонецЕсли;
КонецЦикла;
ПараметрыЗаписи = Новый Структура("РежимЗаписи",РежимЗаписиДокумента.Запись);
Записать(ПараметрыЗаписи);
Все выполняется на сервере. При это первая запись происходит нормально. А вторая выдает ошибку из сабжа.
Как этого избежать?
(1) Как вы лихо его раскусили?
Можете поделиться конкретнее, в порядке флуда. Хотя, сомневаюсь, что вы сможете мне помочь в других отношениях.
В первую очередь интересует, почему после изменений на сервере, я не могу изменить документ.
(3) Придется вводить в вас в курс дела, объяснять, что и почему я так сделал, и прочие аспекты.
(4) В какой момент? Он тогда удалит изменения типа " Тек.ПоступлениеТоваровУслуг = "";"?
Мда, разобрался.
(1) Прав, но он еще остального там не видел. А я не покажу, т.к. стыдно.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший