IAdoMdAxis.Dim

Fore syntax

Dim(Index: Integer): IAdoMdAxisDim;

Fore.NET syntax

Dim[Index: Integer]: Prognoz.Platform.Interop.AdoMd.IAdoMdAxisDim;

Parameters

Index. Dimension index.

Description

The Dim property returns information about the specified dimension.

Fore example

Executing the example requires that the repository contains an ADOMD catalog with the ADOMDTest identifier.

Sub UserProc;
Var
    MB: IMetabase;
    Catalog: IAdoMdCatalogInstance;
    Connection: IAdoMdConnection;
    sMDX: String;
    Cellset: IAdoMdCellset;
    AxisInfo: IAdoMdAxisInfo;
    Axis: IAdoMdAxis;
    Dim: IAdoMdAxisDim;
    i, j: Integer;
Begin
    MB := MetabaseClass.Active;
    Catalog := MB.ItemById("ADOMDTest").Open(NullAs IAdoMdCatalogInstance;
    Connection := Catalog.Connection;
    sMDX := "SELECT ...";
    Cellset := Connection.Cellset(sMDX);
    AxisInfo := Cellset.AxisInfo;
    Debug.WriteLine("Axes number: " + AxisInfo.Count.ToString);
    For i := 0 To AxisInfo.Count - 1 Do
        Debug.WriteLine("Axis: " + i.ToString);
        Axis := AxisInfo.Item(i);
        Debug.WriteLine("Dimensions number: " + Axis.DimCount.ToString);
        For j := 0 To Axis.DimCount - 1 Do
            Dim := Axis.Dim(j);
            Debug.Indent;
            Debug.WriteLine("Dimension: " + Dim.Name + "; (Number of attributes: " + Dim.Cols.ToString + ")");
            Debug.Unindent;
        End For;
    End For;
End Sub UserProc;

A multidimensional query is executed for the cubes of the given ADOMD catalog when executing the example. The information about the axes, on which the data is formed, is obtained from execution result. Information about all axes is displayed in the development environment console: number and names of dimensions, that are used to form axis coordinates, and number of attributes for each dimension, that describe each coordinate.

Fore.NET example

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

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

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Catalog: IAdoMdCatalogInstance;
    Connection: IAdoMdConnection;
    sMDX: String;
    Cellset: IAdoMdCellset;
    AxisInfo: IAdoMdAxisInfo;
    Axis: IAdoMdAxis;
    Dim: IAdoMdAxisDim;
    i, j: Integer;
Begin
    MB := Params.Metabase;
    Catalog := MB.ItemById["ADOMDTest"].Open(NullAs IAdoMdCatalogInstance;
    Connection := Catalog.Connection;
    sMDX := "SELECT ...";
    Cellset := Connection.Cellset(sMDX);
    AxisInfo := Cellset.AxisInfo;
    System.Diagnostics.Debug.WriteLine("Axes number: " + AxisInfo.Count.ToString());
    For i := 0 To AxisInfo.Count - 1 Do
        System.Diagnostics.Debug.WriteLine("Axis: " + i.ToString());
        Axis := AxisInfo.Item[i];
        System.Diagnostics.Debug.WriteLine("Dimensions number: " + Axis.DimCount.ToString());
        For j := 0 To Axis.DimCount - 1 Do
            Dim := Axis.Dim[j];
            System.Diagnostics.Debug.Indent();
            System.Diagnostics.Debug.WriteLine("Dimension: " + Dim.Name + "; (Number of attributes: " + Dim.Cols.ToString() + ")");
            System.Diagnostics.Debug.Unindent();
        End For;
    End For;
End Sub;

See also:

IAdoMdAxis