Closing tab does not trigger dirty check confirm

Hi guys,

Our application is built on Customer Service foundation, and we were also asked to have tabs functionality, so we needed to implement the legacy Tab Group layout control to achieve this. However, in one of our cases that uses a screen flow to implement his functionality, closing a tab does not trigger the dirty check confirm, so the tab closes without asking the user to save his work:

I tried embedding a JS script –mentioned in this post How to specify some actions on Tab close event | Support Center (pega.com)– in the harness used by the Screen flow, and it shows the confirmation, however either selecting Ok or cancel, the tab continues to close.

I know the issue is related to the Dirty Check Confirm built in functionality, I guess the screen flow harness might not be coordinated with the close Tabs functionality, so is like the tab is not aware that the current screen is dirty (or have client validation errors).

Thanks for any thoughts on this,

-Jose

Just an update to this issue, I noticed the dirty check confirm works well if the inner harness is a Perform one. I think the issue is related as I mentioned earlier, if the inner harness is a screen flow one (TabbedScreenFlow7).

@josenavas I checked to see if I could find anything similar. Some discussion about the DirtyCheck can be found [here](http://Ability to navigate to harness instead of dirty Unsaved Changes check happening), but it does not include the deails about screenflow processes.

Another client has the following issue in an earlier release:

  • Configure a screen flow with TabbedScreenFlow7 and enable the ‘Save on Last Step’ and ‘Allow Errors’.
  • After the screen flow , have a process flow with one assignment.
  • User is able to submit the next assignment after screenflow without filling any mandatory data.
  • As a workaround the suggestion is to add Validate condition on Flow action and stop the Assignment from submission.

Functionality works like this: Locally the scope of Allow errors ends at the screenflow completion.

See the forum post Allow errors on screen flow skipping client validation for other flows in the same case and

Case Management documentation ( Point 6,): Pegasystems Documentation

We are aware of the following BUG-741133 but this was resolved in 8.8

Ensure field level server side validation messages cleared
A validation message was retained when not required. This was traced to a scenario where there were two server side validation messages on the decimal field in addition to a required client side validation condition; on text change of the decimal field, the server side validation persisted and client side validation replaced only the first message. This has been resolved with an update which will remove field level server side validation messages after client side validation on an event trigger.

** Additional info added *******

I can see that there have been further discussions with the engineering team regarding the ‘Save’ and ‘Discard’ buttons not working correctly in 8.6 and 8.7 versions. Essentially the Save does save the changes, but the UX is confusing since Edit Details screen is not where the end user is taken after clicking Save button on pyDirtyCheckConfirm

Launch case manager, New>Process Flow>click Submit>type some text in the description field>click Actions>click Edit Details>click Save button>observe that you are not directed to being on the Edit Details screen (instead you are on the Dashboard- or somewhere else like Recently visited or the beginning of Assignments ) Not the Edit Details screen. Now launch the Screen Flow Case type>click Submit>enter some text>click Actions>Select Edit Details, Observe that you might not navigated anywhere, you just stay on the same screen or that you are taken somewhere else on the UI like Recently opened which is confusing UX.

Conclusion:

DirtyCheck modal Save button doesn’t work as expected (BUG-802403)

Target release: Pega 8.7.6


If you believe to have found a new issue could I ask that you log a support incident for this and let us know the INC reference to help us track it?