IVirtualCube.IsFiltrationMatrix

Fore Syntax

IsFiltrationMatrix: Boolean;

Fore.NET Syntax

IsFiltrationMatrix: boolean;

Description

The IsFiltrationMatrix property determines whether metahierarchy dimension is filtered in virtual cube.

Comments

Available values:

To determine whether metahierarchy dimension is used, use IVirtualCube.IsMeta.

Fore Example

Executing the example requires that the repository contains a virtual cube with the VIRT_CUBE identifier, which data source is a time series database.

Add links to the Cubes, Dimensions and Metabase system assemblies.

Sub UserProc;
Var
    MB: IMetabase;
    Cube: IVirtualCube;
    CDim: ICompoundDimension;
    Params: IMetabaseObjectParamValues;
    CDimInst: ICompoundDimensionInstance;
Begin
    // Get repository
    MB := MetabaseClass.Active;
    // Get virtual cube
    Cube := MB.ItemById("VIRT_CUBE").Edit As IVirtualCube;
    // Enable composite metahierarchy dimension
    If Not Cube.IsMeta Then
        Cube.IsMeta := True;
    End If;
    // Filter composite metahierarchy dimension by virtual cube flag
    If Not Cube.IsFiltrationMatrix Then
        Cube.IsFiltrationMatrix := True;
    End If;
    // Get composite dimension data
    CDim := Cube.FactDimension As ICompoundDimension;
    Params := (CDim As IMetabaseObject).Params.CreateEmptyValues;
    CDimInst := (CDim As IMetabaseObject).Open(Params) As ICompoundDimensionInstance;
    Select Case (CDimInst.Type As Integer)
        Case 1: Debug.WriteLine("Composite dimension type - standard");
        Case 2: Debug.WriteLine("Composite dimension type - metahierarchy");
    End Select;
End Sub UserProc;

After executing the example the console window displays composite dimension type.

Fore.NET Example

The requirements and result of the Fore.NET example execution match with those in the Fore example.

Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Dimensions;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Cube: IVirtualCube;
    CDim: ICompoundDimension;
    Paramss: IMetabaseObjectParamValues;
    CDimInst: ICompoundDimensionInstance;
Begin
    // Get repository
    MB := Params.Metabase;
    // Get virtual cube
    Cube := MB.ItemById["VIRT_CUBE"].Edit() As IVirtualCube;
    // Enable composite metahierarchy dimension
    If Not Cube.IsMeta Then
        Cube.IsMeta := True;
    End If;
    // Filter composite metahierarchy dimension by virtual cube flag
    If Not Cube.IsFiltrationMatrix Then
        Cube.IsFiltrationMatrix := True;
    End If;
    // Get composite dimension data
    CDim := Cube.FactDimension As ICompoundDimension;
    Paramss := (CDim As IMetabaseObject).Params.CreateEmptyValues();
    CDimInst := (CDim As IMetabaseObject).Open(Paramss) As ICompoundDimensionInstance;
    Select Case (CDimInst.Type As Integer)
        Case 1: System.Diagnostics.Debug.WriteLine("Composite dimension type - standard");
        Case 2: System.Diagnostics.Debug.WriteLine("Composite dimension type - metahierarchy");
    End Select;
End Sub;

See also:

IVirtualCube