<< Click to Display Table of Contents >> Разработка > Элементы разработки > Модуль Фоновые процессы |
Фоновые процессы используются для выполнения работ в Directum RX, которые запускаются по заданному расписанию. Например, используются для автоматической рассылки уведомлений о завершении сроков действия договоров или периодической синхронизации данных с сервисами обмена электронными юридически значимыми документами.
Фоновые процессы настраиваются в редакторе модуля в узле «Фоновые процессы». Вы можете изменять процессы стандартного решения Directum RX, отключать и создавать свои.
Примечание. Настройки фонового процесса, заданные в среде разработки, используются в Directum RX по умолчанию. При необходимости администратор сможет изменить описание процесса и расписание запуска, а также отключить его. Таким образом если администратор отключил процесс в списке «Фоновые процессы», то при запуске из программного кода процесс не выполнится.
1.Откройте редактор модуля, в котором будет создан процесс. В узле «Фоновые процессы» нажмите на кнопку Добавить.
2.В списке элементов выберите добавленный процесс и задайте настройки:
*Имя фонового процесса. Должно быть уникальным в рамках одного модуля, состоять из букв латинского алфавита и цифр.
*Отображаемое имя. Название фонового процесса, которое будет отображаться в Directum RX.
Описание. Назначение фонового процесса. Для локализации отображаемого имени и описания перейдите по ссылке Локализовать.
Идентификатор фонового процесса.
3.Настройте расписание запуска фонового процесса.
4.Задайте обработчик события «Выполнение» для выполнения логики фонового процесса.
Все вычисления фоновых процессов выполняются на сервисе асинхронных событий. По умолчанию сервис не оборачивает вызовы обработчика в транзакцию, поэтому это можно сделать вручную с помощью класса Transactions. При возникновении ошибок в фоновом процессе транзакция позволяет откатить до исходного состояния все вычисления, которые выполняются в ней. Таким образом, ошибки в транзакции не влияют на выполнение всего фонового процесса. Например, можно сделать так, чтобы ошибки обработки одной сущности не влияли на обработку последующих сущностей. Пример. Фоновый процесс для синхронизации абонентских ящиков
|
Примечание. Для фонового процесса можно настроить запуск в Directum RX вне заданного расписания. Например, когда нужно запустить процесс после выполнения определенного события. Для этого добавьте серверную функцию модуля, которая будет запускать фоновый процесс:
Jobs.<Имя фонового процесса>.Enqueue();
5.При необходимости выполните отладку фонового процесса. Для этого на панели инструментов в выпадающем списке Запустить клиент выберите пункт Запустить фоновый процесс....
6.В открывшемся окне выберите фоновый процесс и нажмите на кнопку Отладка.
Чтобы проверить выполнение фонового процесса в системе, в открывшемся окне нажмите на кнопку Запустить.
Чтобы изменить фоновый процесс стандартного решения Directum RX, перекройте модуль, к которому он относится. В перекрытии модуля вы сможете изменить отображаемое имя, описание фонового процесса, расписание запуска, обработчик события Выполнение. Также можете отключить фоновый процесс.
В результате после публикации изменений в Directum RX:
•обновится отображаемое имя фонового процесса;
•обновится расписание запуска фонового процесса, если администратор его не изменял.
Если расписание в системе изменено, то оно не обновится. При этом администратор сможет восстановить настройки расписания по умолчанию;
•если фоновый процесс отключен администратором, то отображаемое имя и расписание обновятся, но сам процесс останется отключенным;
•если фоновый процесс отключен в среде разработки, то после публикации он больше не будет отображаться и запускаться в Directum RX.
Примечание. Описание фонового процесса синхронизируется в Directum RX только один раз при публикации. Если в дальнейшем изменить описание в среде разработки, то в Directum RX оно не изменится.
Настройка расписания фонового процесса
Чтобы настроить расписание запуска фонового процесса, укажите параметры:
Состояние фонового процесса. Возможные значения: «Включен», «Отключен».
Запускать. Период запуска фонового процесса. Возможные значения:
•«Один раз в день». Процесс запускается один раз в день в определенное время, которое задается в поле *Начало в. Например, с 6.00 один раз в день:
•«В течение дня». Процесс запускается несколько раз в течение дня через промежуток времени, заданный в поле *Период (в минутах). Например, каждые 30 минут в течение дня:
•«В указанный период». Процесс запускается в период, который указан в полях *Начало в и *До. Процесс выполнится через промежуток времени, заданный в поле *Период (в минутах). Например, с 8.00 до 18.00 каждый час:
Месяц, в котором должен выполняться процесс. Выберите необходимые месяцы из списка или установите флажок Ежемесячно.
Повторять запуск процесса по заданному расписанию. Возможные значения:
•«Каждый день». Процесс запускается каждый день;
•«Еженедельно». Процесс запускается по выбранным дням недели:
•«По числам». Процесс запускается в указанные числа месяца. Числа перечисляются через запятую, если нужно указать промежуток чисел, то через дефис.
Если нужно, чтобы процесс запускался в последний день месяца, установите флажок В конце месяца.
•«По рабочим дням». Процесс запускается по рабочим дням. Для правильного определения рабочих дней в Directum RX должен быть заполнен справочник «Календари рабочего времени».
Пример. Расписание для запуска фонового процесса
Необходимо, чтобы фоновый процесс запускался в период с 8.00 до 18.00 каждый час. Процесс должен повторяться в последний день каждого квартала.
В этом случае задайте следующие настройки:
© Компания Directum, 2024 |