Assembly: Metabase;
The IMetabaseObjectInstance interface contains properties and methods that are used to work with an opened instance of repository object.
IMetabaseObjectInstance
Perform the IMetabaseObjectDescriptor.Open or IMetabaseObjectDescriptor.OpenWithParam method to open a repository object. The obtained object described by the IMetabaseObjectInstance enables the user to get basic information about an object instance (a source object that was opened; parameters that were used on opening).
Full features of working with a specific type of opened object are available by using specific interfaces, for example, IDatasetInstance - for working with data sets, IDimInstance - for working dictionaries, ICubeInstance - for working with cubes, and so on. Cast the opened object instance to the required interface to work with its data and perform other available specific actions.
After opening, memory is allocated for the obtained object instance, and the instance is moved to repository cache. On repeated object opening, the instance will be obtained from repository cache. If data is changed when working with object instance, the instance is obtained from cache and is used separately. In this case, repeated opening will cause creation of a new object instance with memory allocation for it and moving to cache. Take into account this behavior when developing application code to avoid opening extra object instances and, as a result, excessive use of RAM. Unused object instances will be deleted by garbage collector during application system downtime. Instances can also be deleted, according to the application logic, using the Dispose statement.
Property name | Brief description | |
Data | The Data property determines data of the repository object, the opened copy of which is worked. | |
Key | The Key property returns a key of the repository object, with the opened instance of which, the work is implemented. | |
Object | The Object property returns an object of the repository, with the opened instance of which, the work is implemented. | |
ParamValues | The ParamValues property returns a collection of values of the object parameters which were specified during the opening. | |
ThisObject | The ThisObject property returns the structure of the object, if the opened object is the shortcut for the object from another repository. |
Method name | Brief description | |
Flush | The Flush method clears cache of the repository objects instance. | |
GetExtensionDispatch | The GetExtensionDispatch method performs conversion to common object form, from which it is possible to move to the required object class. | |
InitControlledParams | The InitControlledParams method calculates the expressions of the nested object parameters management. |
See also: