![]() |
|
Откат транзакции | ☑ | ||
---|---|---|---|---|
0
Sasha_uu
20.03.12
✎
05:41
|
Проблема в следующем: При проведение реализации в событии ОбработкаПроведения проверяются взаиморасчеты, и если проверка не прошла то документ не проводится, но должен создаваться другой документ "Претензия". В итоге т.к. транзакция у реализации откатывается то и документ "Претензия" не создается.Как решить эту проблему?
1С 8.2 УПП |
|||
1
ZanderZ
20.03.12
✎
05:47
|
проверять до обработки проведения
|
|||
2
Sasha_uu
20.03.12
✎
05:51
|
пробывал делать в событие "ПередЗаписью","ПриЗаписи" - не получается. Везде проходит откат транзакции
|
|||
3
Галахад
гуру
20.03.12
✎
05:57
|
(2) Слабо вериться.
|
|||
4
Sasha_uu
20.03.12
✎
07:35
|
не кто не сталкивался с таким?
|
|||
5
БибиГон
20.03.12
✎
07:54
|
(1) а где это?
|
|||
6
katc
20.03.12
✎
08:11
|
запускай создание документа в фоновом задании.
|
|||
7
Sasha_uu
20.03.12
✎
08:11
|
(6) это как? можно пример?
|
|||
8
katc
20.03.12
✎
08:13
|
МассивПараметров = Новый Массив;
МассивПараметров.Добавить(ЭтотОбъект.Ссылка); ФоновоеЗадание = ФоновыеЗадания.Выполнить("ТехнологическиеОперацииСервер.ФоновоеЗавершениеБизнесПроцесса",МассивПараметров, Номер,"Фоновое завершение " + ЭтотОбъект.Ссылка) ; |
|||
9
katc
20.03.12
✎
08:14
|
фоновое задание будет работать вне этой транзакции уже
|
|||
10
Sasha_uu
20.03.12
✎
08:15
|
(9) т.е в процедуре приЗаписи документа написать код для выполнения фоновогоЗадания?
|
|||
11
Sasha_uu
20.03.12
✎
08:16
|
сначало выполнится фоновое задание, после него начнется процедура "ОбработкаПровведения"?
|
|||
12
katc
20.03.12
✎
08:16
|
почему приЗаписи? , ПриПроведении тебе надо же.
|
|||
13
katc
20.03.12
✎
08:17
|
нет, фоновое задание запуститься паралельно, "ОбработкаПроведения" не будет дожидаться его завершения.
|
|||
14
Sasha_uu
20.03.12
✎
08:17
|
т.е. в процедуре "ОбработкаПроведения" запускаю фоновое задание, оно выполняется, в ней создается необходимый мне документ и после этого происходит дальнейшии процедуры проведения?
|
|||
15
Fish
гуру
20.03.12
✎
08:18
|
(14) Не после, а параллельно
|
|||
16
Sasha_uu
20.03.12
✎
08:18
|
мне надо что бы обработкапроведение дождалось результатов этого проведения, или фоновое задание выполнилось сразу по завершению обработки проведения
|
|||
17
Fish
гуру
20.03.12
✎
08:21
|
(16) Сделай подписку на событие тогда
|
|||
18
katc
20.03.12
✎
08:22
|
(16) в чем проблема то? запускаешь фоновое задание в последней строчке своей процедуры проведение.
И так дали наводку - как программист ты должен додумать детали сам. Разжеванное никогда не интересно |
|||
19
Sasha_uu
20.03.12
✎
08:26
|
(18) это не вариант. по результатам фонового задания, программа должна или провести документ или отказать в проведение. Если фоновое задание делается параллельно то как программа дождется ответа от процедуры???
|
|||
20
katc
20.03.12
✎
08:30
|
вот ты трудный какой:
роблема в следующем: При проведение реализации в событии ОбработкаПроведения проверяются взаиморасчеты, и если проверка не прошла то документ не проводится, но должен создаваться другой документ "Претензия" в запущеном фоновом задании . Не документ проводить в фоновом задании, а создавать новый документ. Что бы при откате транзакции с твоей "Претензией" ничего не случилось |
|||
21
Vovan1975
20.03.12
✎
08:40
|
у вас неверно сформулирована задача.
Например, что вы будете делать если пользователи проведут две реализации но вторая будет по дате раньше первой? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |