IDtDocument.Document

Синтаксис Fore

Document: IMetabaseObjectDescriptor;

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

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

Описание

Свойство Document определяет объект репозитория «Документ», из которого будет производиться импорт данных.

Комментарии

В качестве источника для импорта данных из объекта репозитория «Документ» можно выбрать:

Пример Fore

Для выполнения примера предполагается наличие задачи ETL с идентификатором «ETL» и документа с идентификатором «DOCPROVIDER», являющегося источником данных.

Для вывода в окно консоли процесса и результата импорта данных используется класс CallBack, описанный в примере метода IEtlExecutionCallback.OnObject.

Добавьте ссылки на системные сборки «Metabase», «ETL», «Dt».

Sub UserProc;
Var
    mb:IMetabase;
    EtlTask: IEtlTask;
    EtlProvider:IEtlPlainDataProvider;
    CB: CallBack;
    TextProvider : IDtTextProvider;
    DocumentProvider : IDtDocument;
Begin
    mb:=MetabaseClass.Active;
    EtlTask:=mb.ItemById("ETL").Edit As IEtlTask;
    //Создание объекта "Импорт из текста"
    EtlProvider := EtlTask.Create(EtlObjectType.PlainDataTextProvider) As IEtlPlainDataProvider;
    EtlProvider := EtlProvider.Edit;
    EtlProvider.Id := "Text_Provider";
    EtlProvider.Name := "Импорт из текста";
    EtlProvider.Description := "Импорт из текста";
    //Настройка источника данных
    TextProvider := EtlProvider.Provider As IDtTextProvider;
    CB:=New CallBack.Create;
    EtlTask.Execute(CB);
    DocumentProvider := TextProvider As IDtDocument;
    If DocumentProvider <> Null Then
        DocumentProvider.Document := MB.ItemById("DOCPROVIDER");
    End If;
    (EtlTask As IMetabaseObject).Save;
End Sub UserProc;

В результате выполнения примера будет выполнена выгрузка данных из указанного документа.

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Etl;
Imports Prognoz.Platform.Interop.Dt;

Public Shared Sub Main(Params: StartParams);
Var
    mb:IMetabase;
    EtlTask: IEtlTask;
    EtlProvider:IEtlPlainDataProvider;
    CB: CallBack;
    TextProvider : IDtTextProvider;
    DocumentProvider : IDtDocument;
Begin
    mb:=Params.Metabase;
    EtlTask:=mb.ItemById["ETL"].Edit() As IEtlTask;
    //Создание объекта "Импорт из текста"
    EtlProvider := EtlTask.Create(EtlObjectType.eotPlainDataTextProvider) As IEtlPlainDataProvider;
    EtlProvider := EtlProvider.Edit();
    EtlProvider.Id := "Text_Provider";
    EtlProvider.Name := "Импорт из текста";
    EtlProvider.Description := "Импорт из текста";
    //Настройка источника данных
    TextProvider := EtlProvider.Provider As IDtTextProvider;
    CB:=New CallBack.Create();
    EtlTask.Execute(CB);
    DocumentProvider := TextProvider As IDtDocument;
    If DocumentProvider <> Null Then
        DocumentProvider.Document := MB.ItemById["DOCPROVIDER"];
    End If;
    (EtlTask As IMetabaseObject).Save();
End Sub;

См. также:

IDtDocument | Источник данных «Репозиторий»