Call Function

Top  Previous  Next

This it one of the basic action types used in LinkServer. The primary objective of this action is to allow user to perform an operation with the hardware device or system object by calling a single function from the corresponding context.

Action Flow

1. [Optional] User is prompted to confirm the execution using the Confirm UI Procedure.
2. [Optional] User is prompted to edit input parameters of a function to be called using an Edit Data UI Procedure. If the user cancels this UI Procedure (i.e. by clicking Cancel in the Data Table Editor dialog), the action is aborted.
3. The function specified by the Call action is now invoked, and the server performs all necessary operations (like creating a new Alert, or reading a list of all <%DS%s and returning it as its output). If function input parameters were not specified on step 2, the function is called using its default parameters.
4. If the function returns an error, it is shown to the user using a Show Error UI Procedure. If the user was prompted for input parameters on step 2, the flow now returns back to step 2 so that the user could specify different parameters.
5. [Optional] If the function returned any data, it may be shown to the user using an Edit Data UI Procedure in read-only mode.
6. [Optional] In some cases, a "Successfully Completed" or other message may be shown to the user using a Show Message UI Procedure to indicate that the function has been successfully called.

Grouping Support

This action supports action grouping.

If confirmation is required, it may be applied to all actions in the group.
The same input parameters may be applied to all actions in the group.
All "Successfully Completed" messages for the actions in the group are shown in a single window.

Examples:

Connect Device Server to LinkServer in External Device Server context (prompts for input parameters, has "Successfully completed" message)

cl_dlg_ds_connect

View Users Summary in Users context (doesn't prompt for input, shows output)

cl_pane_usersummary

Delete Query in Query context (doesn't prompt for input and output, requires confirmation)

cl_dlg_confirmdelete

Buzz in Device Server context (no user interaction at all, just performs the requested operation)

cl_context_ds