Rich Client Task Logic (Magic xpa 3.x)
The logic required for a Rich Client task is created by using the Magic xpa operations and functions.
Some operations and functions are supported by the client and can be executed locally. Other operations and functions can be executed on the server.
- Call – Rich Client tasks can only be called by Rich Client tasks, and they can only call Rich Client tasks or Batch tasks. When calling non-Offline tasks:
-
- A Call to a Rich Client task with a Modal interface type is considered as legal Mixed, since there is an immediate access to the client to open the task and wait until the user exits it.
- A Call to a Rich Client task using the Destination property is considered as legal Mixed, since there is immediate access to the client to close the task that currently runs in that subform.
- Other Calls (to Rich Client tasks or Batch tasks) are considered as Server, since there is access to the server to initiate the task that has been called. After the focus returns to the client, the task is drawn there.
- Invoke (UDP, Web S, Web S Lite)
- Verify
-
Call to an Offline task
- Evaluate
- Block (If, Else, End)
- Block While
- Update – According to the recompute vector of the variable. If the variable is marked as server, it will be server; otherwise it will be Neutral.
- Invoke OS Cmd
- Raise Event – The Raise event execution side is determined by the handlers' execution side of that event.
Note:
- If a Raise Event operation with Wait = No is part of a sequence of server-side operations, it is recommended to move the Raise Event operation outside of the server-side sequence to avoid multiple accesses to the server.
- When a server operation sequence contains a Raise Event which is unknown, an error may occur in runtime.
o Invoke COM
o Form (Output, Input)
-
An operation that requires both client-side handling and server-side handling is not supported in Rich Client tasks.
-
The I/O Device repository is not available for Rich Client tasks.
-
Server-side expressions and operations cannot be used in Offline tasks.