Conditional user interface
Conditions are clauses or classes that evaluate to true or false when they are evaluated against an object. Conditions can be applied to user interface (UI) controls to control how the UI is shown to users and to support your business processes. You can apply conditional data restrictions, signature options to conditionally control access to controls, or conditional control properties to configure the UI.
- Configure its behavior by setting a data restriction or conditional data restriction in Security Groups
- Grant the option in the Security Groups application
- Configure conditional properties in the Application Designer
Example: Showing status options based on the status of the current record
XYZ Corporation requires that the work order status that is available to work order dispatchers is based on the current work order status. For this company, when a work order status is Waiting on Approval, only the values Approved and Canceled are available to the dispatchers.
To implement this business process, in the Condition Expression Manager, create the following conditional expression:
WOSTATUSAPPR :status = ‘WAPPR’
Then in the Application Designer application, apply that condition to the domain values WOSTATUS|APPR and WOSTATUS|CAN. The status options shown on the UI reflect the status of the current work order.
Example: Changing historical data to read-only
ABC Inc. requires that all users see completed work orders from previous financial accounting periods as read-only. To implement this behavior, the application developer creates a condition that is true if the date checked is in the past. The date condition is evaluated against the date on completed work order records. The developer applies the condition to work order data in the Security Groups application for the security group that contains all users.
When the condition is evaluated, it returns a value of true if the work order date is from a previous financial period. All users see work order records from previous financial periods as read-only on the UI.