0
Bibr
24.12.12
✎
18:52
|
Обновляю нетиповую бух с релиза 2.0.35.9 на 2.0.42.6.
В новом релизе во многих документах (Поступление, реализация и иже..) в обработке проведения в конце появились строки:
Если НЕ Отказ Тогда
Движения.Записать();
УчетНДС.ПроверитьСоответствиеРеквизитовСчетаФактуры(ЭтотОбъект);
КонецЕсли;
Раньше обработка проведения заканчивалась строками:
// Движения по документу
Если Не Отказ Тогда
ДвиженияПоРегистрам(
РежимПроведения, СтруктураШапкиДокумента,
ТаблицаПоТоварам, ТаблицаПоТаре, ТаблицаПоУслугам, ТаблицаПоАгентскимУслугам, ТаблицаЗачетаАвансов,
Отказ, Заголовок);
КонецЕсли;
Проблема возникает в следующем. У меня есть подписка на событие "ПриПроведении", в которой используется Объект.Движения.Хозрасчетный.
Раньше всё было ок, а теперь после Движения.Записать() там в реквизитах везде Null.
Для пробы закомментировал текст
Если НЕ Отказ Тогда
Движения.Записать();
УчетНДС.ПроверитьСоответствиеРеквизитовСчетаФактуры(ЭтотОбъект);
КонецЕсли;
Всё провелось:)
Вопросы следующие.
Кто-нибудь сталкивался с этим?
Нафига оно нужно?
Как это корректно обойти?
|
|
2
Bibr
25.12.12
✎
13:31
|
(1) честно - не знаю.
Смотрю отладчиком.
Есть модуль набора записей регистра бух "Хозрасчётный"
В процедуре ПередЗаписью - Всё норм, Null_ов нету.
В процедуре ПриЗаписи - уже Nullы.
В подписках на событие, которые относятся к событию ПередЗаписью регистра бух - всё норм.
Подписки ПриЗаписи - позже, уже после процедуры ПриЗаписи модуля набора записей.
Где ещё копать?
|
|
3
Bibr
25.12.12
✎
13:40
|
А кто-нибудь знает, зачем вообще в процедуру "обработка проведения" добавили "Движения.Записать();" ???
КоллекцияДвижений (RegisterRecordsCollection)
Записать (Write)
Синтаксис:
Записать()
Описание:
Выполняет запись движений при проведении в единой последовательности, т.е. делает то же самое, что делает документ после окончания обработчика ОбработкаПроведения, включая снятие признака Записывать у наборов записей.
|
|