VariableRubricatorDescriptor: IMetabaseObjectDescriptor;
VariableRubricatorDescriptor: Prognoz.Platform.Interop.Metabase.IMetabaseObjectDescriptor;
The VariableRubricatorDescriptor property returns the description of internal time series database for the metamodel.
The metamodel contains the internal time series database if IMsMetaModelVisualController.HasVariableRubricator = True.
Executing the example requires a modeling container with the MS identifier containing a metamodel with the META identifier. This metamodel must contain the internal time series database.
Add links to the Metabase, Ms, Ui system assemblies.
Sub RubricatorDescriptor;
Var
mb: IMetabase;
MsObj: IMetabaseObjectDescriptor;
Meta: IMsMetaModel;
MetaVisual: IMsMetaModelVisualController;
Target: IUiCommandTarget;
Begin
mb := MetabaseClass.Active;
MsObj := mb.ItemById("MS");
Meta := mb.ItemByIdNamespace("META", MsObj.Key).Bind As IMsMetaModel;
MetaVisual := Meta.VisualController;
If MetaVisual.HasVariableRubricator Then
Target := WinApplication.Instance.GetObjectTarget(MetaVisual.VariableRubricatorDescriptor);
Target.Execute("Object.Open", Null);
End If;
End Sub RubricatorDescriptor;
Example execution result: the internal time series database for the META metamodel is opened.
The requirements and result of the Fore.NET example execution match with those in the Fore example.
Imports Prognoz.Platform.Interop.Ms;
Imports Prognoz.Platform.Interop.Ui;
…
Public Shared Sub Main(Params: StartParams);
Var
mb: IMetabase;
MsObj: IMetabaseObjectDescriptor;
Meta: IMsMetaModel;
MetaVisual: IMsMetaModelVisualController;
Target: IUiCommandTarget;
Wa: IWinApplicationClass;
Begin
mb := Params.Metabase;
MsObj := mb.ItemById["MS"];
Meta := mb.ItemByIdNamespace["META", MsObj.Key].Bind() As IMsMetaModel;
MetaVisual := Meta.VisualController;
If MetaVisual.HasVariableRubricator Then
Wa := New WinApplicationClassClass();
Target := Wa.Instance[Null].GetObjectTarget(MetaVisual.VariableRubricatorDescriptor);
Target.Execute("Object.Open", Null, Null);
End If;
End Sub;
See also: