ExecutionMode: UiCommandExecutionMode;
The ExecutionMode property determines the mode of command execution.
Executing the example requires a form with the Button1 button and a repository object with the Query identifier that supports command of object opening. The object includes an advanced parameter.
Add links to the Forms, Metabase, and Ui system assemblies.
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
Mb: IMetabase;
ObjDes: IMetabaseObjectDescriptor;
Target: IUiCommandTarget;
Context: IUiCommandExecutionContext;
Params: IMetabaseObjectParamValues;
Param: IMetabaseObjectParamValue;
i: Integer;
Begin
MB := MetabaseClass.Active;
ObjDes := MB.ItemById("Query");
Target := WinApplication.Instance.GetObjectTarget(ObjDes);
Context := Target.CreateExecutionContext;
Context.ExecutionMode := UiCommandExecutionMode.PromptUser;
Context.Silent := True;
Params := Target.Execute("Object.Open", Context) As IMetabaseObjectParamValues;
If Params <> Null Then
For i := 0 To Params.Count - 1 Do
Param := Params.Item(i);
Debug.WriteLine("Parameter: " + Param.Name + "; Value:" + Param.Value);
End For;
Else
Debug.WriteLine("Setting parameter values canceled");
End If;
End Sub Button1OnClick;
Executing the example and clicking the button initializes a dialog box for setting parameter values, which is used at object opening. Object is not opened. After clicking the OK button in the dialog box, the list of parameters and their values are shown in the development environment console.
See also: