Формирование списка адресатов по условию

Для формирования списка адресатов по условию:

  1. Установите переключатель «Динамический список адресатов», расположенный на вкладке «Результат» в диалоге настройки параметров задачи.

  2. В поле «Модуль» укажите объект, содержащий реализацию функции для обработки списка адресатов.

  3. В раскрывающемся списке «Функция» выберите функцию, предназначенную для обработки списка адресатов.

Примечание. В списке отображаются только функции с сигнатурой: Function <name>(<param>: IScheduledTask): IArrayList.

Пример модуля

Для выполнения примера добавьте ссылки на системные сборки Metabase, Collection, Fore.

Public Function GetRecepients(Task: IScheduledTask):IArrayList;
Var
    List: IArrayList;
    Mb: IMetabase;
    MS: IMetabaseSecurity;
    SSS: ISecuritySubjects;
    SS: ISecuritySubject;
Begin
    Mb := Metabaseclass.Active;
    MS := MB.Security;
    SSS := MS.AllUsers;
    // Пользователь платформы:
    SS := SSS.Item(9);
    Select Case (Task.State As Integer)
        // Задача выполнена удачно:
        Case 3:
            List := New ArrayList.Create;
            List.Add("user1@examle.com");
            List.Add(MS.ResolveSid(SS.Sid));
        // Задача выполнена с ошибкой:
        Case 4:
            List := New ArrayList.Create;
            List.Add("user2@examle.com");
            List.Add(MS.ResolveSid(SS.Sid));
    End Select;
    Return List;
End Function GetRecepients;

Созданный модуль укажите в поле «Модуль» на вкладке «Результат» в диалоге настройки параметров задачи. В поле «Функция» укажите «GetRecepients».

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

См. также:

Настройка обработки результата выполнения задачи