Команда ShowConsumerData

Назначение

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

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

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

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

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

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

Пример Fore

Для выполнения примера предполагается наличие в репозитории задачи ETL с идентификатором «ETL». В задаче создан приёмник с идентификатором «METABASECONSUMER». Добавьте ссылки на системные сборки «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("METABASECONSUMER"As IEtlPlainDataConsumer).Consumer;
    CommandTarget.Execute("ShowConsumerData", 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("METABASECONSUMER"As IEtlPlainDataConsumer).Consumer;
    CommandTarget.Execute("ShowConsumerData", Context, Null);
End Sub;

См. также:

IUiCommandTarget.Execute | Приёмники задачи ETL