Conditional Expressions are a powerful tool in Maximo/TPAE based products. In this article I present all the possible usages of conditional expressions and a list of small tutorials that explains how to use them in many real world scenarios.
If you think there is something missing don’t hesitate to comment this page or contact me.
There are four ways of using Conditional Expressions.
- Conditional UI: Allows to dynamically change the presentation elements for an application based on a combination of the security groups the user belongs to, and the conditional expression being used. For example, if the asset is a type=IT, then the labels will change to “IT Asset”, and if it was another type of asset, the original label will be used instead.
This can be configured in the Application Designer application through the Configure Conditional properties button of each control properties panel.
- Conditional Sigoptions: Allows to dynamically grant or revoke the user’s privilege to use a security option base on a conditional expression. For example, if the asset is a type=IT, then the user cannot delete, and if it was another type of asset they can delete the asset.
This can be configured in the Security Groups application under Applications tab.
The Sigoptions are often used in conjunction with the conditional UI to further refine rules to the behaviour of specific UI controls.
- Global Data Restrictions: Allows to dynamically hide or make readonly/required specific objects and attributes.
This can be configured in the Security Groups application Global Data Restrictions menu action.
- Group’s Data Restrictions: Allows to dynamically hide or make readonly/required specific objects and attributes for a specific security group. For example, all contractors can only see Work Order for a nominated contract and staff can see all Work Orders.
This can be configured in the Security Groups application under Data Restrictions tab.
Tutorials and HowTo guides
Conditional UI (Application Designer)
- Make a field readonly
- Make a field required
- Hide a field
- Hide a tab or control (link1, link2)
- Change the color of a control
- Activate a field lookup conditionally (link)
- Limit domain values (link)
- Highlight table rows
- Using conditional expression on child object/table (link)
- What means ‘always evaluate’?
Data Restrictions (Security Groups – Data Restrictions)
- Hide data / Limit visible data set
- Make record readonly based on an attribute’s value
- Make attribute readonly
- Make a field required
- Hide attribute (link)
- Make specific classifications attribute required (link)
Conditional Sigoptions (Security Groups – Applications)
- Grant access to an action menu or toolbar button
- Hide a field or control
Obviously the above list of tutorial and guides cannot cover all the possible customization scenarios. A big problem could be to determine what properties can be used for each UI control. Here is a document from IBM with the list of available properties for each control.
You may also could take a look at [SMPDIR]\maximo\applications\maximo\properties\control-registry.xml file. Find whichever control you want to manage and you will see all the available
properties for that control.
- Variables for Dynamic Queries in Conditional Expressions
- Find where a conditional expression is used
- Tutorial videos from IBM: part 1, part2