Запись документа при ошибке проведения в транзакции... как? #682117


#0 by romantc
Всем привет. Собственно, сабж. В Бизнес процессе создал параллельно несколько задач. при выполнении очередной задачи (это даже не важно, в любом обработчике старта, завершения или задачи) необходимо создать и провести документ. Если документ не сможет провестись его необходимо ЗАПИСАТЬ. Делаю так: ... Если документ проводится все ОК. Если есть ошибки, то: Во-первых, не выполняется задача(бизнес процесс) Во-вторых, НЕ записывается документ, вообще... И выдает, как все догадались, "В этой транзакции уже происходили ошибки". Наличие или отсутствие Попытки или использование разных обработчиков не приводит к положительным результатам. Я полагаю, что ВСЕ обработчики, касающиеся бизнес процессов, выполняются в транзакции. как можно решить проблему?
#1 by romantc
Скажу сразу, всю проблематику изучил, на сколько смог. Основной вопрос, откуда можно проводить документ, чтобы не попасть в транзакцию бизнес процесса.
#2 by ptiz
Делать только .Записать + ставить признак в документ "надо провести" (или в РС какой писать). И проводить отдельно.
#3 by Maxus43
зачем в одной транзакции и Запись и Проведение отдельно?
#4 by Лефмихалыч
а на какой болт при завершении задачи БП проводить документы? уж есл невтерпёж и жжет огонь внутрях, добавил бы в карту маршрута блок "Обработка" и в ней бы проводил, хотя и это не ком иль фо
#5 by romantc
Пробовал добавить Обработку. Однофигственно, выполнение ее обработчика происходит в транзакции. Судя по всему, транзакция начинается при выполнении очередной задачи и заканчивается когда отработают все последующие обработчики, в т.ч. и Обработки. Спасибо, думаю прибегну к этому варианту. Но если вдруг кто-то знает возможность обхода... чтобы документ записался независимо от того, сможет он провестись или возникнут ошибки при проведении
#6 by romantc
ЗЫ: Документ создается с нуля...
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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