IEaxDataSources.Add

Синтаксис

Add(DataSource: IMatrixDataSource): IEaxDataSource;

Параметры

DataSource. Многомерный источник данных, который необходимо добавить в экспресс-отчет.

Описание

Метод Add осуществляет добавление источника данных в экспресс-отчет и возвращает объект, содержащий добавленный источник.

Комментарии

При добавлении в экспресс-отчет более одного источника данных будет создан виртуальный куб, который объединит эти источники. Данный куб будет являться скрытым дочерним объектом экспресс-отчета. Для работы с его данными используйте свойство IPivot.DataSource.

Пример Fore

Для выполнения примера предполагается наличие в репозитории экспресс-отчета с идентификатором «EXPRESS_REPORT» и куба с идентификатором «CUBE_2». Экспресс-отчет основан на одном источнике данных.

Sub UserProc;
Var
    MB: IMetabase;
    Expr: IEaxAnalyzer;
    ExprDS: IEaxDataSources;
    Cube: ICubeInstance;
    MatrDS: IMatrixDataSource;
Begin
    MB := MetabaseClass.Active;
    Expr := MB.ItemById("EXPRESS_REPORT").Edit As IEaxAnalyzer;
    ExprDS := Expr.DataSources;
    Cube := MB.ItemById("CUBE_2").Open(NullAs ICubeInstance;
    MatrDS := Cube.Destinations.DefaultDestination As IMatrixDataSource;
    //Добавление в коллекцию исходного источника данных
    ExprDS.Add(Expr.Pivot.DataSource);
    //Добавление второго источника в коллекцию
    ExprDS.Add(MatrDS);
    (Expr As IMetabaseObject).Save;
End Sub UserProc;

При выполнении примера в экспресс-отчет будет добавлен источник данных. Исходный источник экспресс-отчета также будет включен в коллекцию источников данных для корректного создания виртуального куба.

Пример Fore.NET

Для выполнения примера предполагается наличие в репозитории экспресс-отчета с идентификатором «EXPRESS_REPORT» и куба с идентификатором «CUBE_2». Экспресс-отчет основан на одном источнике данных. Указанная процедура является точкой входа для .NET сборки.

Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Matrix;
Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Pivot;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Expr: IEaxAnalyzer;
    ExprDS: IEaxDataSources;
    Cube: ICubeInstance;
    MatrDS: IMatrixDataSource;
Begin
    MB := Params.Metabase;
    Expr := MB.ItemById["EXPRESS_REPORT"].Edit() As IEaxAnalyzer;
    ExprDS := Expr.DataSources;
    Cube := MB.ItemById["CUBE_2"].Open(NullAs ICubeInstance;
    MatrDS := Cube.Destinations.DefaultDestination As IMatrixDataSource;
    //Добавление в коллекцию исходного источника данных
    ExprDS.Add(Expr.Pivot.DataSource);
    //Добавление второго источника в коллекцию
    ExprDS.Add(MatrDS);
    (Expr As IMetabaseObject).Save();
End Sub;

При выполнении примера в экспресс-отчет будет добавлен источник данных. Исходный источник экспресс-отчета также будет включен в коллекцию источников данных для корректного создания виртуального куба.

См. также:

IEaxDataSources