IEtlPlainDataProvider.PlainOutput

Синтаксис

PlainOutput: IEtlPlainOutput;

Описание

Свойство PlainOutput определяет список полей выхода.

Пример

Для выполнения примера в репозитории необходимо наличие задачи ETL с идентификатором ETL и таблицы с идентификатором TABLE, которая будет источником данных.

Sub UserProc;
Var
    Metabase: IMetabase;
    MObj: IMetabaseObject;
    EtlTask: IEtlTask;
    EtlProvider: IEtlPlainDataProvider;
    MBProvider: IDtMetabaseProvider;
    Tab: IDatasetModel;
    Fields: IEtlPlainFields;
    Field: IEtlPlainField;
Begin
    Metabase := MetabaseClass.Active;
    MObj := Metabase.ItemById("ETL").Edit;
    EtlTask := MObj As IEtlTask;
    Tab := Metabase.ItemById("Table").Bind As IDatasetModel;
    // Создание объекта «Источник репозитория»
    EtlProvider := EtlTask.Create(EtlObjectType.PlainDataMetabaseProvider) As IEtlPlainDataProvider;
    EtlProvider := EtlProvider.Edit;
    EtlProvider.Id := "MB_Provider";
    EtlProvider.Name := "Источник данных репозитория";
    // Настройка источника данных
    MBProvider := EtlProvider.Provider As IDtMetabaseProvider;
    MBProvider.Dataset := Tab;
    Fields := EtlProvider.PlainOutput.Fields;
    Fields := Fields.Edit;
    Field := Fields.Add;
    Field.Id := "Name";
    Field.Name := "Name";
    Field.DataType := DbDataType.String;
    Field := Fields.Add;
    Field.Id := "Id";
    Field.Name := "Id";
    Field.DataType := DbDataType.Integer;
    Fields.Save;
    EtlProvider.Save;
    // Cоздание визуального объекта
    CreateWX(EtlProvider, EtlTask);
    MObj.Save;
End Sub UserProc;

Sub CreateWX(CopyObj: IEtlPlainDataProvider; etltask: IEtltask);
Var
    WxDataTrans: IWxRectangle;
    WxETLDataTrans: IWxEtlObject;
Begin
    WxDataTrans := EtlTask.Workspace.CreateRectangle;
    WxDataTrans.Id := CopyObj.Id;
    WxETLDataTrans := New WxEtlObject.Create;
    WxETLDataTrans.EtlObject := CopyObj;
    WxDataTrans.Style.TextPosition := WxTextPosition.Bottom;
    WxDataTrans.Style.PictureMarginTop := -10;
    WxDataTrans.PinPosition := New GxPointF.Create(2020);
    WxDataTrans.Extension := WxETLDataTrans As IWxShapeExtension;
End Sub CreateWX;

После выполнения примера (UserProc) для задачи ETL будет создан источник данных репозитория с двумя полями на выходе.

См. также:

IEtlPlainDataProvider