ICubeInstanceDestinationExecutor.Matrix

Syntax

Matrix: IMatrix;

Description

The Matrix method returns output matrix with data.

Example

Executing the example requires that the repository contains a time series database with the OBJ_RUBRICATOR identifier. This database must include a unique attribute that refers to the dictionary with the DICT_IND identifier stored in the MDM repository with the MDM_REPO identifier.

Sub Main;

Var

MB: IMetabase;

RubDesc: IMetabaseObjectDescriptor;

RubrIn: IRubricatorInstance;

Cub: ICubeInstance;

Dest: ICubeInstanceDestination;

Sels: IDimSelectionSet;

Sel: IDimSelection;

DictDescr: IMetabaseObjectDescriptor;

DictInst: IDimInstance;

Exec: ICubeInstanceDestinationExecutor;

Mat: IMatrix;

Ite: IMatrixIterator;

Begin

MB := MetabaseClass.Active;

RubDesc := MB.ItemById("FC_RUBRICATOR");

RubrIn := RubDesc.Open(Null) As IRubricatorInstance;

Cub := RubrIn As ICubeInstance;

Dest := Cub.Destinations.DefaultDestination;

Sels := Dest.CreateDimSelectionSet;

Sels.Clear;

Sel := Sels.Add(RubrIn.CalendarLevelsDimension);

Sel.SelectAll;

DictDescr := MB.ItemByIdNamespace("DICT_IND", MB.ItemById("RDS_REPO").Key);

DictInst := DictDescr.Open(Null) As IDimInstance;

Sel := Sels.Add(DictInst);

Sel.SelectElement(0, False);

Exec := Dest.CreateExecutor;

Exec.ScenarioKey := -1;

Exec.PrepareExecute(Sels);

Exec.PerformExecute;

Mat := Exec.Matrix;

Ite := Mat.CreateIterator;

Ite.Move(IteratorDirection.First);

While Ite.Valid Do

Debug.WriteLine(Ite.Value);

Ite.Move(IteratorDirection.Next);

End While;

End Sub Main;

After executing the example data of the time series database is represented as data of a cube instance. The console window displays output matrix with data by indicated selection.

See also:

ICubeInstanceDestinationExecutor