INC-161214 · Issue 640892
Push notification of shape-created child case opens correct case
Resolved in Pega Version 8.5.4
In a scenario with two cases, CaseA and its child case, CaseB, when CaseB was created from CaseA with a standard shape and a push notification was sent right after creation, the "Custom message" notification received on a mobile device opened CaseA instead of CaseB. If CaseB was created as a standalone case, the push notification opened it properly. This was traced to an edge case where the Primary.pzInsKey was empty because the child case was not available in database when the push notification payload was created by push shape, leading to the CaseID retrieved by getInstanceHandleFromPage to fetch the parent Case ID instead. This has been resolved by modifying the process to get the pzInsKey from the step page.
INC-161398 · Issue 639854
DataSync SynchronizationResponseStreamer logging enhancements
Resolved in Pega Version 8.5.4
The PegaRULES log contained "Response page does not match request, will generate failure response" errors even though no functional impact was observed. In order to enhance troubleshooting, additional DEBUG logs have been to DataSyncHandler, SynchronizationResponseStreamer is now logged on INFO level and contains more detail, and the error message has been modified to "Cannot prepare continuation response because offline package was stale. Will generate reset schedule response." to be more informative.
INC-164532 · Issue 635299
Correct context set for offline chat email processing
Resolved in Pega Version 8.5.4
After configuring "Allow end-customers to submit an email when chat is unavailable", the options for email and message were presented in the chat window and an item was queued for the queue processor cyCreateOfflineEmailMessage, but the queue processor became stuck on the queue item. Investigation traced this to the configuration causing the pyShouldExtensionBeLoaded activity to run under the incorrect context, which prevented it from accessing the needed workparty and goal values. This has been resolved by adding the pyShouldExtensionBeLoaded class to the pages to ensure the correct context.
INC-164947 · Issue 639861
Handling added for missing div when opening work object
Resolved in Pega Version 8.5.4
In mobile offline app, opening a work object in a specific scenario for the second time resulted in an endless busy indicator. It was not possible to navigate away, and the app had to be closed and reopened to continue. Investigation showed that some app sections had an action that tried to load a harness section where one specific div was missing, and this has been resolved by updating reloadSectionOSCOHandler to handle the missing div in the failure callback. Additionally a console.error() will appear for the missing section.
INC-165779 · Issue 641974
SQL query handling updated for mobile
Resolved in Pega Version 8.5.4
When the check box in mobile channel "Disclose application size when users log in for the first time" was enabled it produced the error "There was a problem getting a list: SQLState: Message: ERROR: relation "pr_data_full_sync_stats" does not exist". Investigation showed that all SQL queries passed to *getDb().executeRDB(...)* method were using the SQL table directly, ignoring any customizations to table mapping or database prefixes. This has been resolved by replacing the table name with a class reference ("Class: Pega-OfflineFullSyncSizeStatistics") so that table mapping can replace the reference with a proper table name and proper database prefix.
INC-167388 · Issue 650951
Values treated as strings for offline data transform concatenate
Resolved in Pega Version 8.5.4
When using a Data Transform to construct a URL using multiple properties that contain values with a leading or trailing "0", the "0" was trimmed when the corresponding mobile JS code was generated using pega.process.expression.getValue("pyWorkPage.PlanData.SegmentID", "pyWorkPage.PlanData") . This was traced to the offline property type assuming that any numbers-only string should be treated as a number, so the data transform concatenate was converting “0001” to 1. To resolve this, the value will be treated as a string when being evaluated in an offline data transform.
INC-168483 · Issue 644321
RemoveAssociation cleanup modified
Resolved in Pega Version 8.5.4
Step 8 of @baseclass.pxRemoveAssociation called an Obj-Delete method with the Remove parameter checked which was prematurely removing the page from the Clipboard when it was needed for further processing. This has been resolved by updating pxRemoveAssociation to uncheck the remove option for obj-delete, and cleanup will be handled by the Page-Remove in step 16.
INC-168935 · Issue 645395
CalendarGadget updated to display events in Saudi locale
Resolved in Pega Version 8.5.4
When using the pxCalendar section with the locale setting ar_SA, the calendar was correctly converted to a Saudi calendar but the events which were showing in the English version of the calendar were not showing up in in the Saudi Calendar. This was caused by the CalendarGadget page not populating properly due to the localized Hijri calendar failing a datetime check that was looking for a Gregorian calendar with time in GMT format, and has been resolved by updating the when rule "pzShouldDisplayEvent " to use the proper function for the localized calendar.
INC-173633 · Issue 650277
Google Key security updated
Resolved in Pega Version 8.5.4
Cross-site scripting protections have been added for Google Key.
INC-151293 · Issue 630346
Out of memory condition resolved for BIX extraction
Resolved in Pega Version 8.5.4
A node was going down automatically during execution of a BIX Extract rule when working with old objects. Investigation showed this was related to an out of memory error: the work object had nested page lists, and when one of the page lists contained a propertylist which contained more records, the system was trying to add entries to the LinkedList if any properties were missing the reference during extraction. Because LinkedList allowed duplicates, it filled with enough errors to cause the out of memory condition. To resolve this, LinkedList has been replaced with LinkedHasSet, which does not allow duplicates.