Technical Blog Post
Abstract
Creating a sig option as a solution to prevent users from selecting "All Records"
Body
Maximo SysAdm Times
Welcome to the Sysadm Times !!!!!!
Introduction:
There is a drop down menu "All Records" on the side navigation toolbar in Maximo and sometimes users ending up clicking on this option which could impact performance seriously if there are millions of records to be returned.
'All Records' query option is hardcoded in the menu.java to always be displayed. You are unable to disable it without a framework code change. Making a code change to achieve this would be an unsupported customization of platform code.
Here is code from menu.java
item = new HashMap<String,String>();
item.put("KEY", "useAllRecsQuery"); // key will become mxevent
item.put("TEXT", wcs.getMaxMessage("jspmessages", "ALL_RECORDS").getMessage()); // set text directly - not through a query name
item.put("ELEMENTTYPE","OPTION");
options.put("item_QUERY_ALL",item);
When chosen it simply runs this:
setUserWhere("");
resetQbe();
reset();
The purpose of this article is to present a technical solution using sig option to prevent users from performing the query. You can create a sig option for each app you want this disabled.
In this example , Asset application will be used:
1. Login as MAXADMIN --> Go to Application Designer -->Select Add/Modify Signature Options--> Select New Row
Add the option _USEALLRECSQUERY
2. Save change and log out of Maximo
NOTE:
You have to make sure the user you are about to log in as does not have any active sessions. Any easy way to insure this would be to restart MxServer or check Manage Sessions in the Users app.
End Results:
Log in, go to Asset, select the All Records query and you should see below message.
This is not the best message for this situation (it's used for other actions that can be performed on records) but it still prevents users from performing the query and that's the important part.
UID
ibm11130565