OperationsVisibility: DynamicInstanceOperationsVisibility;
OperationsVisibility: Prognoz.Platform.Interop.Dimensions.DynamicInstanceOperationsVisibility;
The OperationsVisibility property returns information which dictionaries will display changes.
Executing the example requires that the repository contains MDM table dictionary with set dynamic loading of elements and with the DYNDIM identifier.
Add links to the Dimensions and Metabase system assemblies.
Sub UserProc;
Var
MB: IMetabase;
Dim: IDynamicInstance;
i: Integer;
Begin
MB := MetabaseClass.Active;
Dim := MB.ItemById("DYNDIM").Open(Null) As IDynamicInstance;
// Display names of child dictionaries
For i := 1 To Dim.ChildrenInstancesCount Do
Debug.WriteLine("Child dictionary name: " + Dim.ChildInstance(i - 1).DimInstance.Name);
End For;
// Display information about main dictionary changes application
Select Case Dim.OperationsVisibility
Case DynamicInstanceOperationsVisibility.Local:
Debug.WriteLine("Changes of principle dictionary are not applied to other dictionaries");
Case DynamicInstanceOperationsVisibility.Global:
Debug.WriteLine("Changes of principle dictionary are applied to child dictionaries");
Case DynamicInstanceOperationsVisibility.PreSet:
Debug.WriteLine("Changes of principle dictionary are applied to dictionaries of the set "
+ Dim.PreSetMark);
End Select;
End Sub UserProc;
After executing the example the console displays names of child dictionaries and information whether changes of main dictionary are applied to other dictionaries.
The requirements and result of the Fore.NET example execution match with those in the Fore Example.
Public Shared Sub Main(Params: StartParams);
Var
MB: IMetabase;
Dim: IDynamicInstance;
i: Integer;
Begin
MB := Params.Metabase;
Dim := MB.ItemById["DYNDIM"].Open(Null) As IDynamicInstance;
// Display names of child dictionaries
For i := 1 To Dim.ChildrenInstancesCount Do
System.Diagnostics.Debug.WriteLine("Name of child dictionary: " +
Dim.ChildInstance[i - 1].DimInstance.Name);
End For;
// Display information about main dictionary changes application
Select Case Dim.OperationsVisibility
Case DynamicInstanceOperationsVisibility.diovLocal:
System.Diagnostics.Debug.WriteLine("Changes of principle dictionary are not applied to other dictionaries");
Case DynamicInstanceOperationsVisibility.diovGlobal:
System.Diagnostics.Debug.WriteLine("Changes of principle dictionary are applied to child dictionaries");
Case DynamicInstanceOperationsVisibility.diovPreSet:
System.Diagnostics.Debug.WriteLine("Changes of principle dictionary are applied to dictionaries of the set "
+ Dim.PreSetMark);
End Select;
End Sub;
See also: