Нужно ли отмена проведения в транзакции 1с 8 #790905


#0 by DmitriyDI
нужна ли в этой конструкции отмена проведения, может в ней есть какой-то смысл, держит накладную пока происходят изменения чтобы ее никто не мог изменить или что-то еще?
#1 by elCust
держит накладную пока происходят изменения чтобы ее никто не мог изменить Этим занимается блокировка, транзакция немного другое делает
#2 by Лефмихалыч
смотря что в обработке проведения написано. Если там написано прямыми руками, то - не нужна. А, если кривыми и вызов Записать(РежимЗаписиДокумента.Проведение) завершится неудачей по причине того, что документ именно проведен, то - обязательно. Но это надо очень кривые и злые руки иметь
#3 by H A D G E H O G s
Этим нанимается блокировка, накладываемая на время действия транзакции. Все автор правильно рассуждает.
#4 by Heckfy
Нужна. А если сбой аппаратный например? Без транзакции часть движений может остаться.
#5 by H A D G E H O G s
Ты для себя (и нас) ответь на вопрос - зачем тебе транзакция. - Чтобы никто не успел залезть между ДокОбъект.Записать(РежимЗаписиДокумента.ОтменаПроведения); и ДокОбъект.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.неОперативный); в этот документ? - Чтобы, если не удалось перепровести - вернуть к исходному положению?
#6 by DmitriyDI
если он ее не перепроведет он и так вернется к исходному положению, без транзакции, я так понимаю так как в базе много других регламентных заданий, думаю нужно чтобы в момент когда она изменяет документ никто его не трогал, код этот изначально не мой
#7 by DmitriyDI
да я думал об этом, если там только написано, что-то типа того , если проведен то отказ = истина, но такого не нашел там..
#8 by Serg_1960
Если это типовая конфигурация, то ни отмена проведения, ни транзакции, в принципе, не нужны.
#9 by youalex
при записи - возникает неявная транзакция, при ошибке (или явном указании Отказ = Истина) - вызывается исключение, которое откатывает эту транзакцию (и данные документа, и его движения, и вообще все, что было изменено в этой транзакции) Точнее, то что было изменено - не фиксируется в случае отмены
#10 by DmitriyDI
а разве они зафиксируются в случае отмены, если не написать вначале:
#11 by Вафель
в ерп например некоторые документы проводятся по разному с отменой и без
#12 by Вафель
чистое перепроведение может сохранять результаты закрытия месяца
#13 by DmitriyDI
Конфигурация комплексная 1.1, документ реализация
#14 by DmitriyDI
и сразу второй вопрос, если это не влияет и я уберу отмену проведения, то это по идее должно ускорить данный кусок кода, или нет?
#15 by Serg_1960
Отмена проведения - не самоцель, она не нужна как таковая для перепроведения документа. Но: если перед проведением документа анализируется состояние регистров, и в этих алгоритмах не предусмотрено учитывать движения этого документа, то документ требуется снимать с проведения. Нужно или не нужно отменять проведение - смотреть в конфигурации.
#16 by Serg_1960
+ В моей, например, конфигурации движения документа удаляются автоматически при проведении документа.
#17 by DmitriyDI
согласен, тут такого нет
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С