Ошибки в настройке оповещений и журнала БД
Dynamics AX 4.0
Kernel 4.0.2503.560
Application 4.0.2501.347
Проблема:
Настроено оповещение на удаление записи в таблице. Через некоторое время правило оповещения удаляется за ненадобностью (или выключается). При этом всё равно формируются записи EventCud и при попытке сформировать оповещение (периодическое операцией) выдается ошибка.
Выяснилось:
1. При создании правила заполняется таблица DatabaseLog (которая используется для настройки журнала базы данных), при этом используются типы:
EventInsert 4
EventDelete 5
EventUpdate 6
EventRenameKey 7.
2. При удалении (или снятии галки "Включено") правила оповещения вышеуказанная таблица никак не меняется, т.е. настройка остается. Я так понимаю, это ошибка - создаются лишние строки в EventCUD.
3. Если после настройки оповещения создать настройку журнала базы данных на ту же таблицу (при этом в мастере таблица уже будет отмечена галкой в общем списке, а в списке настройки событий для записи все галки будут сняты), то запись от правила оповещения будет обновлена (изменен тип) на:
Insert 0
Delete 1
Update 2
RenameKey 3.
Это ошибка, т.к. после этого оповещения перестанут создаваться, будет только запись в журнале базы данных.
Как обойти проблемы:
1. Если нужны одновременно и журнал базы данных, и оповещение - создавать сначала первое, потом второе.
2. Если нужно выключить (отменить) оповещение - нужно создать настройку в журнале базы данных (если она уже есть - сначала удалить), потом удалить.
Все вышенаписанное протестировано на типе события "удаление записи", для других, возможно, будет аналогично.
__________________
Ivanhoe as is..
|