Показать сообщение отдельно
Старый 30.06.2015, 18:04   #3  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,914 / 5737 (197) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Я такие ситуации лечу дописыванием watchdog-кода в InventUpdateOnHand. Поскольку там логируется список всех измененных inventTrans, можно дописать новый тип 'как бы проверки' в inventSumDeltaDim. Потом при завершении транзакции можно написать запросик, который проверяет наличие складских журналов (конечно только по тем аналитикам и номенклатурам, которые обновлялись в текущей транзакции), у которых нету шапки. Проверка эта должна включаться/выключаться по какому-то глобальному параметру.
Потом ждем пока пользователь позвонит и пожалуется на непонятное сообщение. Дальше быстренько спрашиваем пользователя чего он такого делал и трассируем ситуацию сами. После достижения ясности можно этот watchdog отключить и попытаться исправить код, из за которого ошибка случается.

И так до следующего watchdog Можно конечно вообще в Application.ttsNotifyPreCommit поставить тупую проверку на все журналы без заголовков. Просто во многих случаях, проверка целостности вообще всех данных занимает очень много времени и нету возможности ее использовать. А при фильтрации по inventumDeltaDim для текущей сессии, все-таки удается проверяемое множество локализовать и время проверки опустить до разумных значений...
За это сообщение автора поблагодарили: Logger (3).