IAdoMdCellset.Cells

Синтаксис Fore

Cells: IDalCursor;

Синтаксис Fore.NET

Cells: Prognoz.Platform.Interop.Dal.IDalCursor;

Описание

Свойство Cells возвращает курсор, содержащий информацию о наборе ячеек со значениями, которые получены в результате выполнения MDX-запроса к кубам.

Пример Fore

Для выполнения примера предполагается наличие в репозитории каталога ADOMD с идентификатором «ADOMDTest». В данном каталоге имеется куб с физическим именем «Test», в структуре этого куба имеется измерение с физическим именем «Dim_1».

Sub UserProc;
Var
    MB: IMetabase;
    Catalog: IAdoMdCatalogInstance;
    Connection: IAdoMdConnection;
    sMDX: String;
    Cellset: IAdoMdCellset;
    CellsCursor: IDalCursor;
    CFields: IDalCursorFields;
    CField: IDalCursorField;
    i: Integer;
Begin
    MB := MetabaseClass.Active;
    Catalog := MB.ItemById("ADOMDTest").Open(NullAs IAdoMdCatalogInstance;
    Connection := Catalog.Connection;
    sMDX := "SELECT ...";
    Cellset := Connection.Cellset(sMDX);
    //Курсор
    CellsCursor := Cellset.Cells;
    CFields := CellsCursor.Fields;
    While Not CellsCursor.Eof Do
        For i := 0 To CFields.Count - 1 Do
            CField := CFields.Item(i);
            Debug.WriteLine(CField.Name + " | " + CField.Value);
        End For;
        CellsCursor.Next;
    End While;
End Sub UserProc;

При выполнении примера будет получен курсор со значениями ячеек, которые являются результатом выполнения указанного многомерного запроса. Полученные результаты будут выведены в консоль среды разработки.

Пример Fore.NET

Для выполнения примера предполагается наличие в репозитории каталога ADOMD с идентификатором «ADOMDTest». В данном каталоге имеется куб с физическим именем «Test», в структуре этого куба имеется измерение с физическим именем «Dim_1». Указанный пример является точкой входа для .NET-сборки.

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

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Catalog: IAdoMdCatalogInstance;
    Connection: IAdoMdConnection;
    sMDX: String;
    Cellset: IAdoMdCellset;
    CellsCursor: IDalCursor;
    CFields: IDalCursorFields;
    CField: IDalCursorField;
    i: Integer;
Begin
    MB := Params.Metabase;
    Catalog := MB.ItemById["ADOMDTest"].Open(NullAs IAdoMdCatalogInstance;
    Connection := Catalog.Connection;
    sMDX := "SELECT ...";
    Cellset := Connection.Cellset(sMDX);
    //Курсор
    CellsCursor := Cellset.Cells;
    CFields := CellsCursor.Fields;
    While Not CellsCursor.Eof() Do
        For i := 0 To CFields.Count - 1 Do
            CField := CFields.Item[i];
            System.Diagnostics.Debug.WriteLine(CField.Name + " | " + CField.Value);
        End For;
        CellsCursor.Next();
    End While;
End Sub;

При выполнении примера будет получен курсор со значениями ячеек, которые являются результатом выполнения указанного многомерного запроса. Полученные результаты будут выведены в консоль среды разработки.

См. также:

IAdoMdCellset