О выполнении пакета оповещений

Применимо к: Microsoft Dynamics AX 2012 R3, Microsoft Dynamics AX 2012 R2, Microsoft Dynamics AX 2012 Feature Pack, Microsoft Dynamics AX 2012

Оповещения обрабатываются при помощи функции пакетной обработки в Microsoft Dynamics AX. Пакетная обработка должна настраиваться доя того, как можно доставлять оповещения.

Microsoft Dynamics AX поддерживает два типа событий:

  • События, запускаемые событиями на основе изменений. Эти события также называются событиями создания-удаления и обновления.

  • События, запускаемые по датам.

Можно настроить пакетную обработку для каждого типа событий.

Обработка пакетов для событий на основе изменений

Microsoft Dynamics AX считывает все события на основе изменений, которые произошли после последней пакетной обработки. События на основе изменений включают обновления полей, удаление записей, а также создание записей. Эти события сравниваются с условиями, настроенными в правилах оповещения. Если событие соответствует условиям правила, процесс пакетной обработки создает оповещение.

Aa570106.collapse_all(ru-ru,AX.60).gifНастройка частоты пакетной обработки для событий на основе изменений

Для событий на основе изменений можно настроить пакетное задание, запускающее обработку события вскоре после регистрации его системой. Если настроить пакетное задание на более частое повторение, пользователи получат оповещения раньше после внесения изменений. Однако высокая частота пакетной обработки может негативно повлиять на производительность системы.

С другой стороны, пакетное задание, которое выполняется менее часто и запланировано на время низкой загрузки системы, может помочь улучшить производительность системы. Однако низкая частота пакетной обработки может не соответствовать требованиям пользователей по своевременному оповещению.

Таким образом, при настройке частоты пакетной обработки для событий, связанных с изменениями, необходимо позаботиться о балансе между интервалами между оповещениями и производительностью системы в целом.

Чем больше число пользователей, создающих правила оповещений, тем более важны эти закономерности. Частота не влияет на количество событий, которые должны быть обработаны. Однако если большее число пользователей создает правила, требуется большее число проверок. Обмена данными такого типа может влиять на производительность системы.

Примечание

Время до получения пользователями оповещений также контролируется интервалом времени, с которым проводятся опросы Microsoft Dynamics AX о новых оповещениях. Этот интервал задается в минутах. Минимальное значение равно 1 минуте, а максимальное — 1440 минутам (одни сутки).

Aa570106.collapse_all(ru-ru,AX.60).gifНастройка интервала, с которым Microsoft Dynamics AX проводит проверку новых оповещений

  1. В меню Файл щелкните Сервис > Параметры, чтобы открыть форму Параметры.

  2. В поле Получать уведомления каждые (мин) на вкладке Уведомления введите значение интервала.

Aa570106.collapse_all(ru-ru,AX.60).gifПроверка рисков при низкой частоте пакетной обработки

Настройка частоты пакетной обработки на основе изменений на низкий уровень может привести к потере оповещений, так как данные, которые соответствуют условиям оповещения, изменяются до того, как завершается обработка пакета.

Например, настроено правило оповещения, запускающее оповещение при событии "изменение контактов клиента", если условие равно "клиент = BB". Поэтому если контактные данные клиента BB изменятся, событие будет зарегистрировано в журнале. Однако система пакетной обработки настроена так, что пакетная обработка будет происходить реже, чем ввод данных. Если имя клиента изменится с BB на AA раньше, чем событие будет обработано, данные в базе данных больше не будут соответствовать условию в правиле, "клиент = BB". Следовательно, когда событие будет наконец обработано, никакое оповещение не создается.

Обработка пакетов для событий срока выполнения

Microsoft Dynamics AX определяет все события, причиной которых стал срок выполнения, эти события сопоставляются с условиями, настроенным в правилах оповещения. Если событие соответствует условиям правила, процесс пакетной обработки создает оповещение.

Aa570106.collapse_all(ru-ru,AX.60).gifНастройка частоты пакетной обработки для событий срока выполнения

Для событий срока выполнения может понадобиться настроить пакетные задания, которые выполняются ночью или в определенное время дня, для балансировки загрузки системы. Рекомендуется настроить пакетное задание, которое будет выполняться как минимум один раз в день. Если оповещения должны отправляться как можно раньше, настройте пакетную обработку на выполнение сразу после изменения даты в системе. Если необходимо создавать оповещения для событий срока выполнения, происходящих после того, как пакетное задание обработало оповещения, можно запустить пакетное задание еще раз в тот же день.

Например, пакетное задание выполнено в определенный день. Затем вы создаете заказ на покупку, для которого дата оплаты должна запустить оповещение в тот же день. Чтобы получить оповещение в тот же день, необходимо снова запустить пакетное задание после создания заказа на покупку. Однако если не запустить пакетное задание повторно в тот же день, на следующий день пакетное задание обнаружит события срока выполнения, не обработанные в предыдущие дни.

Примечание

Даже если пакетная обработка запускается чаще, чем раз в день, оповещения не создаются дважды для одних и тех же условий и одного события срока выполнения. Оповещения создаются только для тех дат, которые стали сроками выполнения из-за изменений в системе, произошедших после выполнения последнего пакетного задания.

Aa570106.collapse_all(ru-ru,AX.60).gifНастройка гибких сроков выполнения

Обработка правил оповещения в компании может быть остановлена по нескольким причинам. Эти причины включают отпуска, ошибки системы или другие проблемы, которые приводят к тому, что какое-то время пакетные задания не выполняются.

Чтобы оповещения срока выполнения не устаревали, когда пакетное задание не выполняется несколько дней, можно настроить окно пакетной обработки. Окно пакетной обработки позволяет не выполнять пакетное задание в течение определенного количества дней.

Если окно пакетной обработки настроено, оповещение отправляется после обработки правила оповещения, даже если оповещение превышает лимит времени, определенный в критериях срока. Оповещение продолжает отправляться, если не превышен этот лимит плюс окно пакетной обработки.

Однако если период, определенный этим лимитом времени плюс окно пакетной обработки, истек, оповещение больше не отправляется.

Aa570106.collapse_all(ru-ru,AX.60).gifпример

Создается правило оповещения, при помощи которого вы получаете оповещение о том, что день рождения сотрудника был два дня тому назад.

Интервал окна пакетной обработки установлен на 10 дней.

Пакетное задание будет выполняться в день 1.

Вы получаете оповещения обо всех сотрудниках, чьи дни рождения были 2 дня тому назад.

Пакетное задание выполняется не в день 1, а только в день 2.

Вы получаете оповещения обо всех сотрудниках, чьи дни рождения были 2 или 3 дня тому назад.

Пакетное задание выполняется не в день 1 или 2, а только в день 3.

Вы получаете оповещения обо всех сотрудниках, чьи дни рождения были 2, 3 или 4 дня тому назад.

Пакетное задание не выполняется в дни с 1 по 9, но только в день 10. Другими словами, пакетное задание будет выполняться в 10 суточном окне.

Вы получаете оповещения обо всех сотрудниках, чьи дни рождения были 2, 3, 4, 5, 6, 7, 8, 9, 10 или 11 дней назад.

Примечание

Созданы все оповещения.

Пакетное задание не выполняется в дни с 1 по 10, но только в день 11.

Вы получаете оповещения обо всех сотрудниках, чьи дни рождения были 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 или 12 дней назад.

Примечание

Теперь вы не получаете оповещения о сотрудниках, чьи дни рождения были 13 дней назад.

Пакетное задание не выполняется в дни с 1 по 11, но только в день 12.

Вы получаете оповещения обо всех сотрудниках, чьи дни рождения были 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 или 13 дней назад.

Примечание

Теперь вы не получаете оповещения о сотрудниках, чьи дни рождения были 14 дней назад.

Как видно из этого примера, если окно пакетной обработки установлено на 10, самый длительный период, в течение которого пакетное задание не выполняется, равен 10 дням. Пакетное задание должно быть выполнено по крайней мере на 10 день, чтобы оповещение было создано.

Если окно пакетной обработки установлено на 0, вы получаете оповещения только в том случае, если пакетное задание будет выполнено через 2 дня после дня рождения. В этом случае чтобы гарантировать, что ни одно оповещение не потеряно, пакетное задание должно запускаться каждый день.

Удаление очереди сообщений

При активации пакетного задания, обрабатывающего события на основе изменений для компании, рекомендуется проверять очередь событий и определять, будут ли все события в очереди отправлены как оповещения. Если необработанные или устаревшие события не удаляются из очереди, пакетное задание создает оповещения и может рассылать множество бесполезных сообщений или "спама".

Старые, необработанные и устаревшие события могут накапливаться в очереди по нескольким причинам. Например, пользователи могли настроить правила оповещений задолго до того, как был запущен процесс пакетной обработки, и созданные события могли вызвать создание большого количества устаревших оповещений. Кроме того, пользователи имели разрешения на создание правил перед активацией пакетного задания, чтобы события, запущенные правилами пользователей, вносились в журнал системой, даже если пакетное задание не было активировано.

Если вы решили, что события в очереди событий устарели и не должны отправляться в виде оповещений, можно удалить очередь событий.

  1. Нажмите CTRL+D, чтобы открыть Application Object Tree (AOT). Выберите Словарь данных > Таблицы.

  2. Выберите таблицу EventCUD, найдите события, которые необходимо удалить, и удалите их соответствующим образом.

См. также

Настройка выполнения пакета оповещений