IEaxAnalyzeCore.OpenCubeEx

Синтаксис Fore

OpenCubeEx(CubeInstance: ICubeInstance; Options: EaxOpenCubeOptions);

Синтаксис Fore.NET

OpenCubeEx(CubeInstance: Prognoz.Platform.Interop.Cubes.ICubeInstance; Options: Prognoz.Platform.Interop.Express.EaxOpenCubeOptions);

Параметры

CubeInstance. Куб, являющийся источником данных;

Options. Режим открытия куба.

Описание

Метод OpenCubeEx открывает куб (с расширенными параметрами), на базе которого строится экспресс-отчет.

Комментарии

Доступные режимы:

Пример Fore

Для выполнения примера в репозитории предполагается наличие куба с идентификатором «CUBE_SEP».

Добавьте ссылки на системные сборки «Metabase», «Cubes», «Express».

Sub UserProc;
Var
    MB: IMetabase;
    CreateInfo: IMetabaseObjectCreateInfo;
    MObj: IMetabaseObject;
    Expr: IEaxAnalyzer;
    Cube: ICubeInstance;
Begin
    MB := MetabaseClass.Active;
    CreateInfo := MB.CreateCreateInfo;
    CreateInfo.Id := MB.GenerateId("EXPR_REP");
    CreateInfo.ClassId := MetabaseObjectClass.KE_CLASS_EXPRESSREPORT;
    MObj := MB.CreateObject(CreateInfo).Edit;
    Expr := MObj As IEaxAnalyzer;
    Cube := MB.ItemById("CUBE_SEP").Open(NullAs ICubeInstance;
    Expr.OpenCubeEx(Cube, EaxOpenCubeOptions.DefaultView);
    MObj.Save;
End Sub UserProc;

После выполнения примера будет создан экспресс-отчет на базе сохранённого представления для куба «CUBE_SEP». Идентификатор созданного отчёта выводится в окно консоли.

Пример Fore.NET

Для выполнения примера в репозитории предполагается наличие куба с идентификатором «CUBE_SEP».

Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Express;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    CreateInfo: IMetabaseObjectCreateInfo;
    MObj: IMetabaseObject;
    Expr: IEaxAnalyzer;
    Cube: ICubeInstance;
Begin
    MB := Params.Metabase;
    CreateInfo := MB.CreateCreateInfo();
    CreateInfo.Id := MB.GenerateId("OBJ_EXPR_REP"0);
    CreateInfo.ClassId := MetabaseObjectClass.KE_CLASS_EXPRESSREPORT As integer;
    CreateInfo.Parent := MB.ItemById["OBJ23722"];
    MObj := MB.CreateObject(CreateInfo).Edit();
    Expr := MObj As IEaxAnalyzer;
    Cube := MB.ItemById["CUBE_SEP_COPY7"].Open(NullAs ICubeInstance;
    Expr.OpenCubeEx(Cube, EaxOpenCubeOptions.eocoDefaultView);
    MObj.Save();
    System.Diagnostics.Debug.WriteLine(CreateInfo.Id);
End Sub;

После выполнения примера будет создан экспресс-отчет на базе сохранённого представления для куба «CUBE_SEP». Идентификатор созданного отчёта выводится в окно консоли.

См. также:

IEaxAnalyzeCore