IEaxDataArea.InitMetabase

Синтаксис Fore

InitMetabase(pMetabaseObj: IMetabaseObject;

pMetabaseObjectDescriptor: IMetabaseObjectDescriptor;

pMetabase: IMetabase);

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

InitMetabase(pMetabaseObj: Prognoz.Platform.Interop.Metabase.IMetabaseObject;

pMetabaseObjectDescriptor: Prognoz.Platform.Interop.Metabase.IMetabaseObjectDescriptor;

pMetabase: Prognoz.Platform.Interop.Metabase.IMetabase);

Параметры

pMetabaseObj. Объект репозитория;

pMetabaseObjectDescriptor. Описание объекта репозитория;

pMetabase. Коллекция объектов репозитория.

Описание

Метод InitMetabase инициализирует работу с объектами репозитория.

Комментарии

Для получения параметров аналитической области данных используйте свойство IEaxDataArea.Params.

Пример Fore

Для выполнения примера предполагается наличие экспресс-отчета с идентификатором «EAX_DATAAREA».

Добавьте ссылки на системные сборки «Metabase», «Express».

Sub UserProc;
Var
    mb: IMetabase;
    mbObj: IMetabaseObject;
    mbObjDesc: IMetabaseObjectDescriptor;
    Expr: IEaxAnalyzer;
    DArea: IEaxDataArea;
Begin
    mb := MetabaseClass.Active;
    mbObjDesc := mb.ItemById("EAX_DATAAREA");
    mbObj := mbObjDesc.Bind;
    Expr := mbObj As IEaxAnalyzer;
    DArea := Expr.DataArea;
    DArea.InitMetabase(mbObj, mbObjDesc, mb);
    Debug.WriteLine("Количество срезов: " + DArea.Slices.Count.ToString);
    DArea.Execute;
End Sub UserProc;

После выполнения примера будет произведена инициализация заданного объекта репозитория (экспресс-отчета), в окно консоли будет выведено количество срезов, которое было использовано в качестве источников данных для экспресс-отчета.

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.Express;

Public Shared Sub Main(Params: StartParams);
Var
    mb: IMetabase;
    mbObj: IMetabaseObject;
    mbObjDesc: IMetabaseObjectDescriptor;
    Expr: IEaxAnalyzer;
    DArea: IEaxDataArea;
Begin
    mb := Params.Metabase;
    mbObjDesc := mb.ItemById["EAX_DATAAREA"];
    mbObj := mbObjDesc.Bind();
    Expr := mbObj As IEaxAnalyzer;
    DArea := Expr.DataArea;
    DArea.InitMetabase(mbObj, mbObjDesc, mb);
    System.Diagnostics.Debug.WriteLine("Количество срезов: " + DArea.Slices.Count.ToString());
    DArea.Execute();
End Sub;

См. также:

IEaxDataArea