SR-D41984 · Issue 510014
Added handling to correct '&' displayed as '&' in custom tab name
Resolved in Pega Version 8.1.7
When using a data transform and custom properties to set the tab title, clicking on a link containing "&" in the label opened a tab name which included "&" instead of "&". This has been resolved by modifying the handleGadgetLoad method in the pzpega_ui_dynamiccontainer file to handle the Cross Scripting FIlter and display the character.
SR-D42583 · Issue 514488
Label of a field is correctly rendered when a section is re-used with a visiblity condition
Resolved in Pega Version 8.1.7
The label of a field was not being rendered/visible when a section with a 'visible when' condition was re-used in different Page Contexts. The label was displayed correctly if 'Run visibility condition on client' was checked. As part of performance improvements made in a previous version, label generation was moved under the dlcellvisibility flag. Because of this, if a section was re-used at multiple places with different contexts and one place had visibility false and another had visibility true, the labels were not getting generated for the visible section. To resolve this, Label Generation has been moved out of dlcellVisibility to ensure label metadata will always be generated. Updated performance improvements have been made instead by way of a DSS setting (generateCellMetadata) so that when generateCellMetadata is true, the label generation will honor dlcellvisibility to generate the label metadata.
SR-D42701 · Issue 510924
Cross-site scripting security added for Case Manager
Resolved in Pega Version 8.1.7
Cross-site scripting security has been added to the Document features in the Case Manager portal.
SR-D45360 · Issue 510101
Support added for non-decimal currency notation
Resolved in Pega Version 8.1.7
Previously in the pxCurrency control, the options allowed either specifying Decimal places (2 by default) or using the locale to decide decimal places when "Use currency standard" was selected (creating the default for 2 for en_US, 0 for jp_JP and 3 for ar_JO.) However, this did not account for currencies like JPY, TWD, and HUF, which do not use decimal precision. In order to support these currencies, handling has been added to formatNumaber js and pxFormatNumber for locales which do not have decimal precision in their currency.
SR-D48887 · Issue 512947
Read-only text inputs remain read-only after browser refresh
Resolved in Pega Version 8.1.7
Read-only text inputs were changing to editable after a browser refresh. This was traced to work done to better handle a displayOnPage GET request that was sent with all of the parameters in the parameter page (data-model) that was causing a 400 Bad Request due to the browser URL length limitations. That issue was resolved by removing the parameters which are not actually required for the displayOnPage GET call during the refresh case; to resolve this issue, the readonly parameter for displayOnpage action has been restored and will be passed.
INC-203994 · Issue 698853
DSS added to handle merges with lower versions of Postgres
Resolved in Pega Version 8.7.1
After update, executing the batch campaign with volume constraint resulted in the second data flow DF_Wait failing with error message "ERROR: number of columns (1844) exceeds limit (1664)". This was due to the database set’s change (in 8.5) to use the database layer’s merge statement. Prior to that, the logic used "deletes and inserts". Depending on the version of Postsgres, the generated SQL statement for a merge statement is different. The “INSERT … ON CONFLICT … UPDATE” syntax is generated for Postgres 9.5+ AND when there is a PK constraint defined for the DB table. Otherwise, the complex UPSERT statement (old syntax) is generated, as was the case in this issue. This is a known issue in the Postgres server software where it mis-interprets the number of columns involved. i.e., it mistakenly counts the number of columns twice. As a result, the actual maximum columns allowed is only half of the official limit (1664). The same UPSERT statement does not cause the “exceeds limit” exception if there are 832 or fewer columns in the statement. To resolve this, an option has been provided to select between the “original logic” (deletes and inserts) and the “merge statements” logic by way of the DSS “decision/datasets/db/useMergeStatementForUpdates”. Setting “true” will use the merge statement logic, and setting “false” will use deletes and inserts. When the DSS is not defined, the default is "true" and the system will use merge statements in the form preferred by Postgres 9.5+.
INC-
196961 · Issue 693473
Iteration method updated for SetRequiredSkillsCountColumn
Resolved in Pega Version 8.7.1
After update, database utilization spiked and did not drop. Investigation traced this to the use of Local.totalCount in pzSetRequiredSkillsCountColumn, which caused the iteration loop to run more times than necessary. This has been resolved by replacing Local.totalCount with Local.iterationsCount in the iteration.
INC-184040 · Issue 688256
Improved accessibility for Disclosable Documents/attach files/auto selection dropdowns
Resolved in Pega Version 8.7.1
When using Dragon for accessibility, issues were seen when trying to select different options in the dropdowns related to attaching multiple files. This was caused by the legacy grids being used not supporting this type of accessibility functionality, and has been resolved by updating pzAttachFileDDFileList to use an optimized table instead.
INC-186036 · Issue 685370
Field Level Audit updated to handle hierarchical properties
Resolved in Pega Version 8.7.1
Field Audit was not working for the first change of the data selected/provided for a field. The audit was only reflected after the second change was made. When the property involved a series of hierarchies, for example pageprop.pagelist(1).pageprop, the FLA objects will initially use deferred saves and the generated pzinskeys will be added to a savedFLAMap object. However, when the last pageprop was not eligible to save, all the deferred saves of earlier records were cancelled but the inskeys were not removed from the savedFLAMap object. Because of this, the parent FLA records were assumed to have been saved already when those saves were actually deferred. This was a missed use case for hierarchical properties, and has been resolved by adding an update to remove the inskeys from the savedFLAMap object so that in the subsequent property change the audit's FLA records for the parent properties (pageprop.pagelist(1)) will be saved again.
INC-194180 · Issue 701664
GetChildcases handling updated for large numbers of cases
Resolved in Pega Version 8.7.1
When a very high number of child cases being processed contained a wait shape that was dependent on the movement of a parent case, some of the cases were moved to the next step of the flow automatically while others required a manual command to ResumeFlow. In extreme cases where many child cases were waiting, a node crash could occur. This was traced to the pzGetChildcases report having a maximum value of 500 lines, and has been resolved by increasing the maximum number of rows to retrieve to 9999 in the Data Access Tab of the pzGetChildCases report definition. In addition, the pxCheckFlowDependencies activity has been modified to perform with a higher number of cases, and DSS(MaxRecords) logic has been added to split the child cases into multiple queue items for each access group to decrease load on each thread process.