|
"В данной транзакии уже происходили ошибки" при ОтменитьТранзакцию() |
☑ |
0
Fragster
гуру
15.07.13
✎
14:57
|
Ошибка из сабжа при (было большое, сократил код, все равно ошибка):
НачатьТранзакцию();
Попытка
мОбъект.Записать(РежимЗаписиДокумента.Проведение);
ЗафиксироватьТранзакцию();
Исключение
ИнформацияОбОшибке = ИнформацияОбОшибке(); // тут в причине - Не удалось провести...
Если ТранзакцияАктивна() Тогда
ОтменитьТранзакцию(); // тут ошибка про "в данной транзакции"
КонецЕсли;
КонецПопытки;
|
|
1
Fragster
гуру
15.07.13
✎
14:57
|
что-то начинаю в себе сомневаться :(
|
|
2
Fragster
гуру
15.07.13
✎
14:58
|
в конце процедуры проведения - отказ = ложь
|
|
3
mikecool
15.07.13
✎
14:59
|
пошаговую отладку не предлагать?
|
|
4
Fragster
гуру
15.07.13
✎
15:00
|
(3) ты не поверишь...
|
|
5
acsent
15.07.13
✎
15:01
|
транзакция на 1 документ?
|
|
6
Fragster
гуру
15.07.13
✎
15:01
|
(5) сейчас - да
|
|
7
acsent
15.07.13
✎
15:01
|
может быть внутри проведения нельзя отменять транзакцию1?
|
|
8
Maxus43
15.07.13
✎
15:01
|
а так?
Попытка
Исключение
ЕстьОшибки = Истина
....
Если ЕстьОшибки Тогда
ОтменитьТранзакцию()
Иначе зафиксировать
|
|
9
Fragster
гуру
15.07.13
✎
15:02
|
(8) т.е. отменять не в попытке? сейчас попробую.
|
|
10
Fragster
гуру
15.07.13
✎
15:07
|
(7) это не внутри проведения, это внутри внешней обработки (т.е. на момент начала кода ТранзакцияАктивна() = Ложь)
|
|
11
Maxus43
15.07.13
✎
15:08
|
(9) я всегда так делаю, внутри попытки это несколько неэстетично на мой взгляд
|
|
12
acsent
15.07.13
✎
15:08
|
так транзакция уже отменена обработкой проведения
|
|
13
Fragster
гуру
15.07.13
✎
15:09
|
(12) когда нет транзакции ошибка "Транзакция не активна"
|
|
14
Fragster
гуру
15.07.13
✎
15:11
|
блин. (8) работает. вопрос - какого фига??
|
|
15
Ёпрст
гуру
15.07.13
✎
15:12
|
Можешь еще фиксировать и отменять в своей попытке..
|
|
16
Ёпрст
гуру
15.07.13
✎
15:13
|
в другой, отличной от попытки проведения
|
|
17
Поросенок Петр
15.07.13
✎
15:18
|
Вероятно в проведении тоже есть попытка, обработанная через задницу.
|
|