IsFiltrationMatrix: Boolean;
IsFiltrationMatrix: boolean;
The IsFiltrationMatrix property determines whether metahierarchy dimension is filtered in virtual cube.
Available values:
True. Default. Metahierarchy dimension is filtered in virtual cube.
False. Metahierarchy dimension is not filtered in virtual cube.
To determine whether metahierarchy dimension is used, use IVirtualCube.IsMeta.
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.
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: