Цитата:
Сообщение от
blokva
Да напрямую нет такой возможности, но на сколько я помню, в 3-ке любое изменение БД обрамляется парой, ttsBegin-ttsCommit, что автоматом вызывает методы:
application.ttsNotifyBegin()
и
application.ttsNotifyCommit()
вставляем соответствующую обработки и-и-и, чем не система событий?
Верно. Только как определить из какой таблицы и из какой записи пришло событие? Проблема в том, что Axapta не позволяет перекрывать глобально xRecord\Update(). Есть \Classes\ClassFactory\createRecord(), но он срабатывает только при вставке, когда автоматически или принудительно был вызван метод initValue(), но не при обновлении.
На самом деле, довольно интересно, как незаметный архитектурный недостаток ядра системы затрудняет построение важных блоков приложения.
Цитата:
Как я понимаю, это механизм alert-ов? Кстати, не знаешь, как они влияют на производительность?
Да, я о нем. Не знаю, как оно на производительность влияет. Меня больше интересовало бы, не пошли ли разработчики по пути наименьшего сопротивления и не сынтегрировали ли alerts с протоколом БД, как это я в своем решении сделал (в качестве hook используются методы \Classes\Application\logUpdate, logInsert). Такое решение работает, но забивает базу бессмысленными логами.