Команда ShowProviderData

Назначение

Вызов диалога просмотра данных в источнике задачи ETL.

Параметры использования

Параметры команды передаются в свойстве Data. Для работы команды в данном свойстве необходимо указать следующие значение:

Тип значения Описание
IDtProvider Источник, данные которого необходимо просмотреть.

Особенности применения

Команда может применяться только для источника данных, который реализует интерфейс IDtProvider. При работе с задачей ETL параметры источника можно получить в свойстве IEtlPlainDataProvider.Provider. Также источник может быть создан динамически с помощью классов сборки Dt.

Пример Fore

Для выполнения примера предполагается наличие в репозитории задачи ETL с идентификатором «ETL». В задаче создан источник с идентификатором «METABASEPROVIDER». Добавьте ссылки на системные сборки «Etl», «Metabase», «Ui».

Sub UserProc;
Var
    MB: IMetabase;
    ETL: IEtlTask;
    CommandTarget: IUiCommandTarget;
    Context: IUiCommandExecutionContext;
Begin
    MB := MetabaseClass.Active;
    ETL := MB.ItemById("ETL").Bind As IEtlTask;
    CommandTarget := WinApplication.Instance.GetPluginTarget("Etl");
    Context := CommandTarget.CreateExecutionContext;
    Context.Data := (ETL.FindById("METABASEPROVIDER"As IEtlPlainDataProvider).Provider;
    CommandTarget.Execute("ShowProviderData", Context);
End Sub UserProc;

При выполнении примера на экран будут выведены данные, имеющиеся в указанном источнике задачи ETL.

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Etl;
Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Ui;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    ETL: IEtlTask;
    WinApp: WinApplication = New WinApplicationClass_2();
    CommandTarget: IUiCommandTarget;
    Context: IUiCommandExecutionContext;
Begin
    MB := Params.Metabase;
    ETL := MB.ItemById["ETL"].Bind() As IEtlTask;
    CommandTarget := WinApp.GetPluginTarget("Etl");
    Context := CommandTarget.CreateExecutionContext();
    Context.Data := (ETL.FindById("METABASEPROVIDER"As IEtlPlainDataProvider).Provider;
    CommandTarget.Execute("ShowProviderData", Context, Null);
End Sub;

См. также:

IUiCommandTarget.Execute | Источники задачи ETL