IDtUserConsumer.ForeModule

Синтаксис

ForeModule: IModule;

Описание

Свойство ForeModule определяет модуль, в котором содержится класс, реализующий приемник пользователя.

Пример

Для выполнения примера предполагается наличие в репозитории задачи ETL с идентификатором "Etl" и модуля "ModuleConsumer", содержащего класс "MyConsumer" реализующий приемник пользователя. Данный приемник рассчитан на работу с массивом, содержащим символьные и вещественные значения.

Sub Main;

Var

MB: IMetabase;

MObj: IMetabaseObject;

EtlTask: IEtlTask;

EtlConsumer: IEtlPlainDataConsumer;

UserConsumer: IDtUserConsumer;

WxConsumer: IWxRectangle;

WxETLConsumer: IWxETLObject;

Fields: IDtFieldDefinitions;

Field: IDtFieldDefinition;

Begin

MB := MetabaseClass.Active;

//Поиск задачи ETL. Объект репозитория с идентификатором "ETL"

MObj := MB.ItemById("Etl").Edit;

EtlTask := MObj As IEtlTask;

//Начало создания приемника

//Создание объекта "Приемник пользователя"

EtlConsumer := EtlTask.Create(EtlObjectType.PlainDataUserConsumer) As IEtlPlainDataConsumer;

EtlConsumer := EtlConsumer.Edit;

EtlConsumer.Id := "User_Consumer";

EtlConsumer.Name := "Приемник пользователя";

EtlConsumer.Description := "Приемник пользователя";

//Настройка приемника данных

UserConsumer := EtlConsumer.Consumer As IDtUserConsumer;

UserConsumer.ForeModule := MB.ItemById("ModuleConsumer").Bind As IModule;

UserConsumer.ForeClass := "MyConsumer";

Fields := UserConsumer.Fields;

Field := Fields.Add;

Field.DataType := DbDataType.String;

Field.Name := "Код";

Field := Fields.Add;

Field.DataType := DbDataType.Float;

Field.Name := "Значение";

EtlConsumer.FillDefault;

//Сохраняем приемник

EtlConsumer.Save;

//Конец создания приемника

//Начало создания визуального объекта

WxConsumer := EtlTask.Workspace.CreateRectangle;

WxETLConsumer := New WxETLObject.Create;

WxETLConsumer.ETLObject := EtlConsumer;

WxConsumer.Style.TextPosition := WxTextPosition.Bottom;

WxConsumer.Style.PictureMarginTop := -10;

WxConsumer.PinPosition := New GxPointF.Create(50, 50);

WxConsumer.Extension := WxETLConsumer As IWxShapeExtension;

//Конец создания визуального объекта

//Сохранение задачи Etl

MObj.Save;

End Sub Main;

После выполнения примера в задаче ETL будет создан объект «Приемник пользователя». Данный приемник будет экспортировать данные в соответствии с алгоритмом пользователя, реализованным в переопределенном методе Put в классе "MyConsumer".

См. также:

IDtUserConsumer | IDtRecordsetConsumer.Put