Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Save button on Modal window is disabled

SA-16579

Summary



Save button on Modal window for Repeat Grid item is disabled when the modal window is opened for the first time and the default locking timeout for case is not empty. 

Other times, the save button is enabled. This issue is linked to the default locking timeout for this case. 
If the default locking timeout has been filled, save button is disabled during the first opening of modal window, otherwise it is always enabled.
 

Error Messages



Not Applicable


Steps to Reproduce



1. Set the default locking timeout for case = 30 minutes(for example).
2. Create the following:

    1. Section with Grid Repeat Layout for items which can be edited in modal window (Local Flow Action) .
    2. The grid repeat layout settings are: row editing = master-detail, display of details = modal dialog.
    3. Create the local flow action to be used in modal window.

3. Run flow and try to modify the item in grid repeat layout. Save button is disabled.


Root Cause



A backwards compatibility defect in Pegasystems’ code or rules as locking mechanism has been changed in Pega 7 platform to provide Optimistic locking while some Default locking features seems dependent from locking duration set to any value.

Resolution



Perform the following local-change: 

1. Create a new When rule which is a Saveas of the existing pzDisableWhenLocked rule in custom ruleset.
2. Change the name of the rule from pz to your own name. The When rule should be created in DisableWhenLocked. 



3. Add one more condition which checks if the ErrorMessage is populated on the LockInfo page or not.
  1. Navigate to the Advanced tab of the When rule.
  2. Add one more condition B and select  [expression evaluates to true] condition



4. Click on expression builder and select as below.
 


5. Update the logic string in the When rule to A and B. After this the rule should look like below.



6. Open the section rule @baseclass.pyGridDetailsContent. This is an available section and one can customize it. Now Saveas the @baseclass.pyGridDetailsContent section in to your custom ruleset with same name.
7. Double click the save button to open the properties of the cell.
8. Move to the parameters tab of the Cell properties.


               
The DisabledWhen row specifies the When condition to be used to disable the button.
                Update the When rule name with the new one that was created.
The condition inside DisableWhen cell should be changed from:

"<%=new Boolean(com.pega.pegarules.jsptags.WhenTag.evaluateWhen(pega,null, \"pzDisableWhenLocked\", false) || tools.getParamValue(\"bRODetails\").equals(\"true\")).toString()  %>"
To

"<%=new Boolean(com.pega.pegarules.jsptags.WhenTag.evaluateWhen(pega,null, \"DisableWhenLocked\", false) || tools.getParamValue(\"bRODetails\").equals(\"true\")).toString()  %>"

9. Save this section and then you can get rid of this issue.

Published January 31, 2016 - Updated October 8, 2020

Was this useful?

0% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice