Имя: Пароль:
1C
1С v8
1c 8 Модуль Объекта ПередУдалением "В данной транзакции уже совершались ошибки"
0 alexei366
 
16.10.13
14:54
У меня в Модуле Объекта Справочника ПередУдалением удаляется другой объект другого справочника. При удалении второго проверяются некие условия, и как следствие второй объект может и не удалиться. В модуле первого удаление второго завернуто в попытку, но все равно вылезает ошибка "В данной транзакции уже совершались ошибки". Через отладчик все доходит без ошибок до конца процедуры "ПередУдалением" первого объекта.

Это можно как то перебороть (сделать первый спр владельцем второго не предлагать, и как понимаю подписка на событие тоже не спасет).

8.3.4 режим Управляемый
1 alexei366
 
16.10.13
15:17
Блин((
2 vicof
 
16.10.13
15:19
Не нужно удалять другие объекты в транзацкции.
3 bolobol
 
16.10.13
15:23
Сними костыль с попыткой - увидишь реальную ошибку.

(2) Если каждый отпишется кому что не нужно - это 2906 сообщений на текущую минуту. Вопрос был не в этом))
4 vicof
 
16.10.13
15:31
(3) Этот вопрос будет возникать постоянно, пока не уберут костыль. Поэтому (2).
5 alexei366
 
16.10.13
17:44
(2) А нах тогда транзакция если нельзя удалять?
6 alexei366
 
16.10.13
17:45
(3) Ошибка и так мне известна, второй объект с Отказ=Истина возвращается из процедуры ПередУдалением.
7 bolobol
 
16.10.13
18:07
Так, значит, всё правильно, что вся процедура должна быть отменена? Раз Отказ = Истина.
Иначе, помнится, начинается транзакция, исключение ловится и отменяется транзакция, правда, повторить на последних релизах у меня не получилось (почему-то), хотя... я и не старался.
8 alexei366
 
16.10.13
22:40
(7) У меня такое ощущение что ты не совсем меня понимаешь.
В модуле объекта выполняются определенные условия, в ходе выполнения которых идет запись чтение и удаление объектов базы. И вот по каким либо условиям основной объект может возвращатьс с Отказ=Истина, но если вложенные условия были тоже Отказ=Истина то генериться ошибка транзакции.