IEtlTask.EventsAssembly

Синтаксис Fore

EventsAssembly: IMetabaseObjectDescriptor;

Синтаксис Fore.NET

EventsAssembly: Prognoz.Platform.Interop.Metabase.IMetabaseObjectDescriptor;

Описание

Свойство EventsAssembly определяет объект репозитория, который будет использоваться для обработки событий.

Комментарии

Для использования данного свойства определите класс обработчика событий через свойство IEtlTask.EventsClass.

Обработчиками событий для задачи ETL могут являться объекты Fore и Fore.NET.

Пример Fore

Для выполнения примера в репозитории необходимо наличие:

Добавьте ссылки на системные сборки: Metabase, Etl.

Sub UserProc;
Var
    MB: IMetabase;
    Etltask: IEtlTask;
    Object: IMetabaseObjectDescriptor;
Begin
    // Получим репозиторий
    MB := MetabaseClass.Active;
    // Получим задачу ETL
    Etltask := MB.ItemById("ETL_TASK").Edit As IEtlTask;
    // Получим и установим модуль-обработчик событий
    Object := MB.ItemById("IEtlTaskExecutionEvents"As IMetabaseObjectDescriptor;
    Etltask.EventsAssembly := Object;
    Etltask.EventsClass := "EventsClass";
    // Сохраним изменения
    (Etltask As IMetabaseObject).Save;
End Sub UserProc;

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

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.Etl;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Etltask: IEtlTask;
    Object: IMetabaseObjectDescriptor;
Begin
    // Получим репозиторий
    MB := Params.Metabase;
    // Получим задачу ETL
    Etltask := MB.ItemById["ETL_TASK"].Edit() As IEtlTask;
    // Получим и установим модуль-обработчик событий
    Object := MB.ItemById["IEtlTaskExecutionEvents"As IMetabaseObjectDescriptor;
    Etltask.EventsAssembly := Object;
    Etltask.EventsClass := "EventsClass";
    // Сохраним изменения
    (Etltask As IMetabaseObject).Save();
End Sub;

См. также:

IEtlTask