GetDimension(DimensionObj: IMetabaseObject): IDimInstance;
GetDimension(DimensionObj: Prognoz.Platform.Interop.Metabase.IMetabaseObject): Prognoz.Platform.Interop.Dimensions.IDimInstance;
DimensionObj. Справочник репозитория.
Метод GetDimension возвращает данные указанного справочника из кэша.
Для выполнения примера предполагается наличие в репозитории справочника с идентификатором «D_FACTS».
Добавьте ссылки на системные сборки: Cubes, Dimensions. Metabase.
Sub UserProc;
Var
Mb: IMetabase;
MObj: IMetabaseObject;
InMem: IInMemManager;
DimInst: IDimInstance;
Begin
Mb := MetabaseClass.Active;
MObj := Mb.ItemById("D_FACTS").Bind;
InMem := New InMemManager.Create;
If InMem.CheckHasDimension(MObj) Then
DimInst := InMem.GetDimension(MObj);
Debug.WriteLine("Количество элементов: " + DimInst.Elements.Count.ToString);
End If;
End Sub UserProc;
Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Dimensions;
Imports Prognoz.Platform.Interop.Metabase;
Public Shared Sub Main(Params: StartParams);
Var
Mb: IMetabase;
MObj: IMetabaseObject;
InMem: InMemManager = New InMemManagerClass();
DimInst: IDimInstance;
Begin
Mb := Params.Metabase;
MObj := Mb.ItemById["D_FACTS"].Bind();
If InMem.CheckHasDimension(MObj) Then
DimInst := InMem.GetDimension(MObj);
System.Diagnostics.Debug.WriteLine("Количество элементов: " + DimInst.Elements.Count.ToString());
End If;
End Sub;
При выполнении примера будет осуществлена проверка на наличие в кэше данных указанного справочника. Если данные в кэше имеются, то в консоль среды разработки будет выведено количество кэшированных элементов справочника.
См. также: