SR-D26223 · Issue 502751
Corrected viewing of sorted drill-down spreadsheet-style summary reports
Resolved in Pega Version 8.2.4
When using a report with a summarized column and the 'Do not display group headings' grouping option checked, drill down was not working when the report was primarily sorted by default on any column other than the first one. This manifested as either no results returned by the drill down report or an error message related to invalid filter values. This was traced to the unique column ordering logic for non-spreadsheet-style summary reports being applied to the drilldown of spreadsheet-style summary reports due to the logic for creating the drilldown filters using the != operator to compare the spreadsheet flag string to the string constant "true". This previously worked as expected because this string was interned in the engine, but these string internments have since been removed. To correct this, pzPopulateReport has been updated to appropriately recognize spreadhseet-style summary reports as they used to.
SR-D33135 · Issue 502274
Handling added for newline in a cell exported to Excel
Resolved in Pega Version 8.2.4
It was reported that new lines (br) were not displayed in exported Excel even after adding the control format with style tag <br style="mso-data-placement:same-cell;" />. This was due to a missed use case when Export to Excel was revised; as a necessity, the new Export to Excel does not support HTML as the old one did, and handling for line breaks in a cell was missed in this implementation. To correct this, wrapping has been enabled on AutoGenReportUIField and NonAutoGenReportUIField and ReportUIUtils.stripHtmlFromValue() has been updated to convert tags to line breaks.
SR-D33832 · Issue 503957
Configurability added to SLA Timeliness to allow either 0 or NULL for Unqualified records
Resolved in Pega Version 8.2.4
When using a Report Definition where the count (aggregate function) was used for both the WithinSLA and Past Deadline columns, the correct value was not getting displayed. The correct value was displayed when the sum function was used instead of the count function, but clicking 'value' returned all values despite what value was displayed on the screen. This was a behavior change related to performing a drill down action on a report definition. As per the older behavior, drill down relies on a specific value (NULL) to determine whether a record is a candidate to be shown in the drill down report. From 7.2.1 forward, drilldown relies on value 0 instead of NULL to make the average summarize function work properly, which led to a change in behavior when used with other summarize functions like sum and count. To resolve this, SLA Timeliness related RAFs have been modified to conditionally return either 0 or NULL for Unqualified records based on a DASS config.
SR-D36372 · Issue 504746
Force order added to inner join when running a Rules Resolution filter
Resolved in Pega Version 8.2.4
After upgrade, D_getResolvedWorkStatuses was not loading properly due to a Report Definition that used a Filter by Rule Resolution option timing out on the SQL Server. When the Filter by Rule Resolution option is selected in RD, it will generate a rule resolution query with an inner join which can cause a time out on the SQL Server while it tries to find out the join order for tables with multiple joins. To resolve this, the SQL server will provide a Force order, merge inner join hint option by way of an added DSS reporting/useForceOrderHint. Additionally, reporting/useMergeHintForRRquery should be set on Pega-Reporting to set things up for using the Merge Inner join hint in the query.
SR-D37943 · Issue 505735
Corrected Export to Excel after adding custom DateTime field
Resolved in Pega Version 8.2.4
An issue with exporting report definition results to Excel after adding a custom date field column through the edit report option of the report in report viewer was traced to the processing of the controls backing a cell in a report when exporting to Excel. For controls like "Date Only" DateTime (non-autogenerated) control, the code was not returning a string the way it should. To resolve this, NonAutoReportUIField has been updated to always treat all Non-auto Controls as strings.
SR-D28060 · Issue 505637
Cross-site scripting protection added to Pega App Studio Spaces
Resolved in Pega Version 8.2.4
Ajax Request's callback success method has a mechanism to process the response object's HTML responseText, initiate and modify the changeTracker changes, and eventually call renderUI to render the DOM. However, the response object sometimes may return a different type (JSON) that may expose cross-site scripting vulnerabilities. To improve security for the Pega App Studio, the system will process the Ajax request's response text only if the response date type is not JSON by accepting a flag in the callback object passed by the caller.
SR-D26244 · Issue 504223
Label control cross-site scripting protection added
Resolved in Pega Version 8.2.4
cross-site scripting protection has been added to label control.
SR-D30215 · Issue 503682
cross-site scripting protection added to ClientDynamicData
Resolved in Pega Version 8.2.4
Cross-site scripting protection has been added to the "DesignViewIframe" & "pzHarnessID" parameters in the pzClientDynamicData HTML rule.
SR-D25972 · Issue 501482
Handling added for custom error message in post-authentication activity
Resolved in Pega Version 8.2.4
The error message in post authentication activity was always appearing as 'Login terminated because a post-authentication activity or policy failed' irrespective of the actual message being conditionally set in the activity based on post authentication logic. Investigation showed that the parameter page in the SSO post-authentication activity was not being passed to the 'pzShowAuthPolicyError' activity due to the post-authentication activity executing in authenticated context whereas the HTML fragment executed in the un-authenticated context. In order to support this use, post-authentication activity will set the error message on a predefined property and propagate that to the HTML fragment by appending the error message as a query parameter in the redirect exception URL post-authentication failure.
SR-D23862 · Issue 503896
Corrected test connection for LDAP AuthService using keystore
Resolved in Pega Version 8.2.4
When using a AuthService rule defined for LDAP using ldaps:// and a KeyStore rule that was defined to reference a local file in the server, the Test Connection button on the AuthService rule did not work and generated the following exception: "com.pega.apache.commons.httpclient.contrib.ssl.AuthSSLInitializationError: I/O error reading keystore/truststore file: null". Investigation showed that file reference keystore did not work with an LDAPS test connection because while run time used the LDAPVerifyCredentials activity, the design time validation used the activity “ValidateInfrastructure” which did not have the required code to support file reference keystore. This has been corrected.