Express > Интерфейсы сборки Express > IEaxDataArea > IEaxDataArea.InitMetabase
InitMetabase(pMetabaseObj: IMetabaseObject;
pMetabaseObjectDescriptor: IMetabaseObjectDescriptor;
pMetabase: IMetabase);
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.
Для выполнения примера предполагается наличие экспресс-отчета с идентификатором «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.
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;
См. также: