Document: IMetabaseObjectDescriptor;
Свойство Document определяет объект репозитория «Документ», из которого будет производиться импорт данных.
В качестве источника для импорта данных из объекта репозитория «Документ» можно выбрать:
документы MS Excel (xlsx, xls);
текстовые документы (txt, xml);
веб-страницы (html);
базы данных Microsoft Access, Visual FoxPro, Dbase.
Для выполнения примера предполагается наличие задачи 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;
В результате выполнения примера будет выполнена выгрузка данных из указанного документа.
См. также:
IDtDocument | Источник данных «Репозиторий»