CubeInstance: ICubeInstance;
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(Null) As 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 будет создан экспресс-отчет.
Для выполнения примера предполагается наличие в репозитории каталога 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(Null) As 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 будет создан экспресс-отчет.
См. также: