One of the under-appreciated functions in Maximo is the ability to create custom value lists for a field using a Domain. The use of a Domain value list helps guide a Maximo user to use a specific set of choices to align the data choices used on a given field.
![](http://share.mygeekdaddy.net/Screen_Shot_2021-06-27_at_9.47.41_AM.png)
Maximo sorts the dialog box displaying the Domain value list in descending order by default. However, for some fields in Maximo this won't make sense - e.g. WO Priority.
![](http://share.mygeekdaddy.net/621_mx_ug_pdf.jpg)
Work Order priority by design is a descending value list, meaning the lower the number, the lower priority.
But when viewing a WO Priority value in Maximo, the sort order defaults to an ascending order.
![](http://share.mygeekdaddy.net/Work_Order_Tracking_priority_asc.jpg)
This sort order places the highest priority at the bottom and contradicts the concept that the WO priority should be highest to lowest value.
Adding a new VALUELIST lookup
In Application Designer, the way a Domain value list is associated with a field is by setting the look up to VALUELIST
.
![](http://share.mygeekdaddy.net/Screen_Shot_2021-06-27_at_10.15.50_AM.png)
The dialog box for the VALUELIST
is set in the system XML file LOOKUPS.XML
. To get the dialog box to sort in another order we need to add a new entry to the LOOKUPS.XML
design file.
Open up Application Design and export the LOOKUPS.XML
to your desktop.1 Open the file in a text editor and search for the text string table id="valuelist"
. You will find an entry for the Domain value list dialog box like this:
</table>
<table id="valuelist" inputmode="readonly" selectmode="single" >
<tablebody displayrowsperpage="20" filterable="true" filterexpanded="true" id="valuelist_lookup_tablebody">
<tablecol dataattribute="value" id="valuelist_lookup_tablebody_col_5" mxevent="selectrecord" mxevent_desc="Go To %1" sortable="true" type="link"/>
<tablecol dataattribute="description" id="valuelist_lookup_tablebody_col_6" mxevent="selectrecord" mxevent_desc="Go To %1" sortable="true" type="link"/>
</tablebody>
</table>
Copy the entry above to a new document in your text editor and use the replace function to replace entries valuelist
with valuelist_desc
. Then add orderby="value desc"
to the end of the first line. Your code snippet should look like this:
<table id="valuelist_desc" inputmode="readonly" selectmode="single" orderby="value desc">
<tablebody displayrowsperpage="20" filterable="true" filterexpanded="true" id="valuelist_desc_lookup_tablebody">
<tablecol dataattribute="value" id="valuelist_desc_lookup_tablebody_col_desc5" mxevent="selectrecord" mxevent_desc="Go To %1" sortable="true" type="link"/>
<tablecol dataattribute="description" id="valuelist_desc_lookup_tablebody_col_desc6" mxevent="selectrecord" mxevent_desc="Go To %1" sortable="true" type="link"/>
</tablebody>
Copy the code snippet and paste it below the original valuelist
code. Save the XML file and re-import the LOOKUPS.XML
file into Maximo.
With the new dialog box in Maximo, you can update the lookup on a field in Application Designer. In the example below I updated the look up for the WOPRIORITY
field in the WO Tracking app.
![](http://share.mygeekdaddy.net/Screen_Shot_2021-06-27_at_10.26.08_AM.png)
With the new value list look up, Maximo will set the sort order of the dialog box to have the key values sorted in descending order.
![](http://share.mygeekdaddy.net/Work_Order_Tracking_priority_desc.jpg)
Now the value list Maximo users interact with match the top down concept of work order priorities.
-
Make a back up copy of the XML file in case you make a mistake. ↩