|
Как узнать про отмену транзакции в ПриЗаписиНаСервере в модуле формы?
| ☑ |
0
ssalikoff
25.06.22
✎
21:47
|
Здравствуйте. Нужно отработать событие проведения документа. Документ может проводиться как интерактивно, так и неинтерактивно. Можно сделать подписку на событие ОбработкаПроведения, и в ней обработать проведение.
Но проблема в том, что в случае интерактивного проведения возникает событие ПриЗаписиНаСервере в модуле формы, в котором можно выставить Отказ в Истину, и вызвать откат транзакции записи. А подписка уже отработала и никогда не узнает, что транзакция отменена.
Подскажите, как правильно обработать событие проведения документа
|
|
1
ДедМорроз
25.06.22
✎
21:55
|
А в чем проблема ?
Если подписка что-то поменяла в базе,то это в рамках той же транзакции и откатится вместе с ней.
Если же в подписке стартовали фончик,то в нем неплохо бы проверить версию объекта,что не натворить дел.
|
|
2
ssalikoff
25.06.22
✎
22:33
|
(1) я в подписке отправляю сообщение в Телеграм ответственному пользователю о том, что появился (провёлся) новый документ.
|
|
3
ДедМорроз
25.06.22
✎
22:46
|
(2)в подписке создавай фоновое,в фоновом выполняй блокировку записываемого объекта - рна пройдет дальше кпк только транзакция завершится и проверяй версию объекта с той,которая была в транзакции - нсли такая же,то транзакция завершилась успешно и можно слать по всем каналам.
|
|
4
ssalikoff
25.06.22
✎
22:48
|
(3) Отлично, спасибо за совет!
|
|
5
ДедМорроз
25.06.22
✎
22:52
|
Если документов много и могут проводиться параллельно,то план обмена с авторегистрацией для данного документа,а уже в регламентном задании делать рассылку с удалением регистрации из плана обмена.
|
|
6
ssalikoff
25.06.22
✎
22:53
|
(5) Да, тоже вариант, спасибо!
|
|