INC-155813 · Issue 629504
SAML SSO redirects to correct URL when application and authentication aliases match
Resolved in Pega Version 8.4.5
Whenever there was a match in the authentication service alias and the application alias, the application alias was replaced with empty after logoff instead of making the authentication service alias empty. For example, given an authentication service with the alias XYZ ("login with XYZ" alias option) and an application name XYZMyOps, the application alias was being changed from XYZMyOps to appMyOps after logoff. As a result, a blue screen error resulted when clicking on button "login with XYZ" again because it redirected to appMyOps, which didn't exist. This has been resolved by removing authservicealias and modifying AuthServiceAliasHelper.adjustPathIfAuthServiceAliasPresent() to change the method for calculating the pathinfo to string tokenizing.
SR-C84361 · Issue 437601
Added handling for better recovery and reset when using 'When' conditional row deletion
Resolved in Pega Version 8.1.5
Given a 'When' condition configured so that a specific row could be deleted, trying to delete another row resulted in the expected error indicating it was not possible to delete that particular row. However, attempting to then delete the row with the 'When' condition caused the same failure error to appear which could not be cleared through clicking on the Refresh button for the section. In order to resolve this, handling has been added for a scenario where Obj-Delete fails and the record is marked for deferred commit. In this situation, the system will revert Obj-Delete by way of Obj-Save-Cancel in @baseclass.pzDeleteRecord so that a subsequent Obj-Delete does not pick up the previous record and fail again.
INC-170423 · Issue 648982
Added catch for SAML WebSSO duplicate key exception
Resolved in Pega Version 8.4.5
After logging in from SSO, closing the Pega window and opening it again resulted in the error "Unable to process the SAML WebSSO request : Violation of PRIMARY KEY constraint. Cannot insert duplicate key in object." This has been resolved by updating the session index handling and adding a catch for the duplicate key exception.
SR-C93726 · Issue 435287
Work status icons work correctly when using localization
Resolved in Pega Version 8.1.5
The pyWorkAssignmentStatus control was not displaying the status flags/icons for localized work status values due to a match failure caused by the system using the localized text for the pyAssignmentStatus to perform a string comparison against the hard-coded English values. To correct this, the control pyWorkAssignmentStatus has been modified to run the comparisons with the new string "assignmentStatus" instead of with the localized text.
SR-C97873 · Issue 437282
Added check to maintain key value when using collapseAllMenu in child navigation menu
Resolved in Pega Version 8.1.5
After a navigation menu had a child added as reference navigation menu that used the function collapseAllMenus, the screen was freezing if a link was clicked in the added child navigation and a javascript error appeared on the console screen. This was traced to an improper key being set in sessionStorage object in setItem due to the nesting, and has been corrected by adding a check in sessionstorage setitem to maintain the proper key value.
SR-C91220 · Issue 430364
Modified pzpega_ui_dynamiccontainer to resolve issue with editing the Operator rule form when using IE
Resolved in Pega Version 8.1.5
The Operator rule form was not opening a second time after being updated in IE. The form worked as expected with other browsers. This has been resolved by modifying the openRuleByKeys function in pzpega_ui_dynamiccontainer to pass a new cloned object to the JSON.stringify function instead of the embedded object.
INC-163452 · Issue 631831
Validation correctly triggered when skipping flows
Resolved in Pega Version 8.4.5
When using a screen flow which allowed users to navigate the flow freely, validation was not triggered on submission. In addition the server or client side validation was being cleared when the case used optimistic locking. Investigation showed that pzShowConflicts was called for optimistic locking on FinishAssignment, which was clearing off the messages and allowing the flow submission. To correct this, a check has been added to pzShowConflicts to check for defer errors in screenflow while clearing page messages.
INC-164311 · Issue 635784
Correct datetime target property used
Resolved in Pega Version 8.4.5
When using a declare expression for a datetime property to get its value from another datetime property, attempting to change the source datetime later resulted in the error "28-mar-2021 is not a valid date/time value". This occurred when the source datetime property had display readonly formatting, and was traced to the formatted value being sent in the callGetTargets API instead of the selected date value, which caused the function to be returned as empty because there was no target property in the same page before submission. To correct this, a check has been added which will get the value from data-value instead of element.value and will skip callGettragets if the target is empty.
INC-175630 · Issue 653865
Application selections only announced when visible
Resolved in Pega Version 8.4.5
The elements of the application switcher were being announced by the NVDA screen reader even when toggled off, i.e. not visible. The issue was occurring because the focus was remaining at the search bar even after closing the app switcher window, and has been resolved by adding the necessary logic to switch the focus.
SR-D564 · Issue 438147
Removed job for column population when it is not needed
Resolved in Pega Version 8.1.5
While optimizing the data type class properties, the column population job failed with the exception "ERROR - Exception in column population ... column pc1.pzinskey does not exist". Although there was no impact from this error, the SQL exceptions in logs could cause confusion. This has been resolved by updating the system so that if the table has no pzinskey or stream columns, no job will be queued for column population.