Add(DataSource: IMatrixDataSource): IEaxDataSource;
DataSource. Многомерный источник данных, который необходимо добавить в экспресс-отчет.
Метод Add осуществляет добавление источника данных в экспресс-отчет и возвращает объект, содержащий добавленный источник.
При добавлении в экспресс-отчет более одного источника данных будет создан виртуальный куб, который объединит эти источники. Данный куб будет являться скрытым дочерним объектом экспресс-отчета. Для работы с его данными используйте свойство IPivot.DataSource.
Для выполнения примера предполагается наличие в репозитории экспресс-отчета с идентификатором «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(Null) As ICubeInstance;
MatrDS := Cube.Destinations.DefaultDestination As IMatrixDataSource;
//Добавление в коллекцию исходного источника данных
ExprDS.Add(Expr.Pivot.DataSource);
//Добавление второго источника в коллекцию
ExprDS.Add(MatrDS);
(Expr As IMetabaseObject).Save;
End Sub UserProc;
При выполнении примера в экспресс-отчет будет добавлен источник данных. Исходный источник экспресс-отчета также будет включен в коллекцию источников данных для корректного создания виртуального куба.
Для выполнения примера предполагается наличие в репозитории экспресс-отчета с идентификатором «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(Null) As ICubeInstance;
MatrDS := Cube.Destinations.DefaultDestination As IMatrixDataSource;
//Добавление в коллекцию исходного источника данных
ExprDS.Add(Expr.Pivot.DataSource);
//Добавление второго источника в коллекцию
ExprDS.Add(MatrDS);
(Expr As IMetabaseObject).Save();
End Sub;
При выполнении примера в экспресс-отчет будет добавлен источник данных. Исходный источник экспресс-отчета также будет включен в коллекцию источников данных для корректного создания виртуального куба.
См. также: