IAdoMdCubeInstance.CubeInstance

Синтаксис Fore

CubeInstance: ICubeInstance;

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

CubeInstance: Prognoz.Platform.Interop.Cubes.ICubeInstance;

Описание

Свойство CubeInstance возвращает экземпляр куба, описываемый интерфейсом ICubeInstance.

Пример

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

Sub UserProc;
Var
    MB: IMetabase;
    Cube: IAdoMdCubeInstance;
    CrInfo: IMetabaseObjectCreateInfo;
    Expr: IEaxAnalyzer;
Begin
    MB := MetabaseClass.Active;
    //Открытие куба
    Cube := MB.ItemByIdNamespace("Cube_1", MB.GetObjectKeyById("ADOMDTest")).Open(NullAs IAdoMdCubeInstance;
    //Информация для создания экспресс-отчета
    CrInfo := MB.CreateCreateInfo;
    CrInfo.ClassId := MetabaseObjectClass.KE_CLASS_EXPRESSREPORT;
    CrInfo.Id := MB.GenerateId("ADOMDReport");
    CrInfo.Parent := MB.Root;
    //Создание экспресс-отчета на базе куба ADOMD
    Expr := MB.CreateObject(CrInfo).Edit As IEaxAnalyzer;
    Expr.OpenCube(Cube.CubeInstance);
    (Expr As IMetabaseObject).Save;
End Sub UserProc;

При выполнении примера на базе экземпляра куба ADOMD будет создан экспресс-отчет.

Пример Fore.NET

Для выполнения примера предполагается наличие в репозитории каталога ADOMD с идентификатором «ADOMDTest». В каталоге имеется куб ADOMD с идентификатором «Cube_1». Указанный пример является точкой входа для .NET-сборки.

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

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Cube: IAdoMdCubeInstance;
    CrInfo: IMetabaseObjectCreateInfo;
    Expr: IEaxAnalyzer;
Begin
    MB := Params.Metabase;
    //Открытие куба
    Cube := MB.ItemByIdNamespace["Cube_1", MB.GetObjectKeyById("ADOMDTest")].Open(NullAs IAdoMdCubeInstance;
    //Информация для создания экспресс-отчета
    CrInfo := MB.CreateCreateInfo();
    CrInfo.ClassId := Convert.ToInt32(MetabaseObjectClass.KE_CLASS_EXPRESSREPORT);
    CrInfo.Id := MB.GenerateId("ADOMDReport"0);
    CrInfo.Parent := MB.Root;
    //Создание экспресс-отчета на базе куба ADOMD
    Expr := MB.CreateObject(CrInfo).Edit() As IEaxAnalyzer;
    Expr.OpenCube(Cube.CubeInstance);
    (Expr As IMetabaseObject).Save();
End Sub;

При выполнении примера на базе экземпляра куба ADOMD будет создан экспресс-отчет.

См. также:

IAdoMdCubeInstance