IMetabaseObjectInstance

Сборка: Metabase;

Описание

Интерфейс IMetabaseObjectInstance содержит базовые свойства и методы для работы с открытым экземпляром объекта репозитория.

Иерархия наследования

          IMetabaseObjectInstance

Комментарии

Для открытия объекта репозитория выполните метод IMetabaseObjectDescriptor.Open или IMetabaseObjectDescriptor.OpenWithParam. Полученный объект, описываемый интерфейсом IMetabaseObjectInstance, позволяет получить базовую информацию об экземпляре объекта (исходный объект, который был открыт; параметры, которые были использованы при открытии).

Для полноценной работы с определенным видом открытого объекта предназначены специфические интерфейсы, например IDatasetInstance - для работы с наборами данных, IDimInstance - для работы со справочниками, ICubeInstance - для работы с кубами и другие. Приведите к необходимому интерфейсу открытый экземпляр объекта для работы с его данными и прочих доступных специфических действий.

После открытия для полученного экземпляра объекта выделяется память, также экземпляр помещается в кэш репозитория. При повторном открытии объекта будет получен экземпляр из кэша репозитория. Если при работе с экземпляром объекта осуществляется изменение данных, то экземпляр извлекается из кэша и используется отдельно. При этом повторное открытие приведёт к созданию нового экземпляра объекта с выделением для него памяти и помещением в кэш. Необходимо учитывать данное поведение при разработки прикладного кода с целью избежания открытия лишних экземпляров объектов и, как следствие, чрезмерного расхода оперативной памяти. Неиспользуемые экземпляры объектов будут удалены сборщиком мусора в моменты простоя прикладной системы. Также для удаления экземпляра объекта в соответствии с прикладной логикой может применяться оператор Dispose.

Свойства

  Имя свойства Краткое описание
Data Свойство Data определяет данные объекта репозитория,  с открытым экземпляром которого осуществляется работа.
Key Свойство Key возвращает ключ объекта репозитория, с открытым экземпляром которого осуществляется работа.
Object Свойство Object возвращает объект репозитория, с открытым экземпляром которого осуществляется работа.
ParamValues Свойство ParamValues возвращает коллекцию значений параметров объекта, которые были указаны при открытии.
ThisObject Свойство ThisObject возвращает структуру объекта, если открываемый объект является ярлыком для объекта из другого репозитория.

Методы

  Имя метода Краткое описание
Flush Метод Flush осуществляет очистку кэша экземпляра объекта репозитория.
GetExtensionDispatch Метод GetExtensionDispatch осуществляет преобразование к общей форме объекта, от которой в дальнейшем можно перейти к необходимому классу объектов.
InitControlledParams Метод InitControlledParams осуществляет вычисление выражений управления параметрами вложенного объекта.

См. также:

Интерфейсы сборки Metabase