IBM Support

Checkbox marks become slow if clicked multiple times quickly

Troubleshooting


Problem

This document will cover the scenario when assigning permissions would become a slow task when you click several times on a checkbox for granting some signature option to a security group.

Symptom

In Security Groups app, when assigning actions/granting access to multiple signature options, the check boxes refresh/un-check and require multiple checks before saving.

You can test even with both settings in System Properties app :

1. With mxe.webclient.async=1 (default), this enable you to check multiple check boxes without having to wait for sync for each check box before updating the next check box. When you check/uncheck multiple
check boxes you see check boxes refresh with check/uncheck. If you wait for a few seconds you can actually see all updated with your chosen value. The check box refresh with check/uncheck but at the end it will be updated with the chosen value.

2. With mxe.webclient.async=0, once you update a check box, you need to wait for it to refresh before you can update the next check box (which is slower). In this scenario, you won't see the issue reported but you need to 'wait' every time you updated a check box before moving to next one.

With mxe.webclient.async=1, you should be able to reproduce the issue.

Steps :


1. Go To -> Security -> Security Groups
2. Filter e.g. 'maxadmin' and open the record.
3. Go to 'Applications' tab .
4. Filter e.g. Work Order Tracking and click on the record.
5. In the list of sigoptions with check boxes
6. Check / uncheck continuously several different check boxes, one after another (assuming you are assigning/revoking permission).
7 .You will see check boxes refresh and after few seconds, check box are reflecting correction <-- The performance is poor from end user perspective . (The issue).


*With mxe.webclient.async=0, you won't be able to check / uncheck continuously (at step 6).

You will need to wait for the check box to be updated before you can click on the next one.

Resolving The Problem

What happens in this case is that the information being cached in the browser is posted to the server at each 1 or 2 events. (depending on how Maximo property below is set to).

These events will not be sent to the server immediately, instead, these events will be buffered on the browser until an event occurs that requires a request to the server.

In Maximo there is a property called mxe.webclient.ClientEventQueue.threshold , and its purpose is to control the maximum number of events in the client event queue before the queue is sent to the server.

The max number (default is 2) of events are buffered in browser, if this value is 1, the queue is disabled and all events are immediately sent.

You can try increasing the mxe.webclient.ClientEventQueue.threshold system property.

However, the property will effect all Maximo applications. Otherwise, it is behaving as expected. There will be a small pause when the data is posted to the server.

After you change that property to a value like 5 or 10, for example, just make sure you do a Live Refresh, and Log-out and Log-in back to Maximo.

[{"Product":{"code":"SSLKT6","label":"IBM Maximo Asset Management"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"--","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.5;7.6","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Document Information

Modified date:
17 June 2018

UID

swg22004082