Показать сообщение отдельно
Старый 12.09.2011, 15:14   #2  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,971 / 3267 (116) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Просмотрели весь код на наличие непарных ttsbegin / ttscommit
Скорее всего в них все дело и есть. Причины обычно такие:
1. Открывается форма из кода внутри начатой транзакции. После этого Аксапте обычно сносит крышу могут быть описанные вами эффекты. Я раньше боролся на проекте с такими багами, ставил ловушки. Например, можно написать в глобале метод, который проверяет если транзакция открыта, то пишет в отдельном соединении к БД в специальный лог стек вызова. И поставить вызов этого метода в \Classes\SysSetupFormRun\init и во все методы класса BOX. Тогда гарантировано вы поймаете в логе все стеки вызовов которые приводят к таким проблемам и сможете вылечить.

2. Просто в коде есть непарные ttsbegin / ttscommit - как ловить - затрудняюсь описать. Для начала на основных табличках проверить нет ли return или break или continue внутри ttsbegin / ttscommit
За это сообщение автора поблагодарили: denni (1).