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