|
09.07.2003, 19:13 | #1 |
Гость
|
TTS и try..catch
почему try..catch не работает внутри ttsbegin..ttscommit ?
|
|
14.02.2009, 03:16 | #2 |
Участник
|
Правильно. То есть exception будет обработан первым блоком catch после последнего (внешнего) ttscommit;
Исключением, как вы уже сказали, является UpdateConflict |
|
|
За это сообщение автора поблагодарили: alex55 (1), Товарищ ♂uatr (1). |
14.02.2009, 14:19 | #3 |
MCITP
|
Не совсем понятна только фраза:
Цитата:
перехват ошибки в try/catch подразумевает неявный вызов ttsabort
........... catch //implicit ttsabort Хотя вероятно, вы именно это и имели ввиду.. А так вообще всё верно. Дополню цитатами из Inside Microsoft Dynamics AX 4.0: Цитата:
Исключение (кроме конфликта обновления), генерируемое внутри транзакции, останавливает исполнение этого блока, после чего происходит откат всех вставок и обновлений, выполненных после первого оператора ttsBegin.
........... Исполнение кода не может продолжаться внутри области действия транзакции, поэтому среда времени выполнения игнорирует операторы try и catch внутри транзакции. Это означает, что исключение, сгенерированное внутри транзакции, может быть перехвачено только за пределами транзакции. ........... Исключение UpdateConflict - это единственное исключение, которое может быть перехвачено и внутри и снаружи действия транзакции.
__________________
Zhirenkov Vitaly |
|
|
За это сообщение автора поблагодарили: alex55 (1). |
14.02.2009, 15:52 | #4 |
MCTS
|
|
|
|
Похожие темы | ||||
Тема | Ответов | |||
ChangeCompany Try...Catch | 10 | |||
staticsax: Real world processing: TTS and exceptions | 0 | |||
catch | 3 | |||
try...catch при операциях с таблицей | 1 | |||
Глупый вопрос про try .. catch | 6 |
|