SR-D75097 · Issue 539515
Improved handling against formula injection attacks in Export to ExcelJJ
Resolved in Pega Version 8.3.3
Every time a possibly vulnerable cell value was found during Export to Excel, the value on that cell was modified to prevent a formula injection attack. If the value was non numeric, it would still render an apostrophe, although it should be hidden. Previous work on this issue involved the addition of a DSS which allowed this security to be disabled if the Excel was going to be consumed by an external tool, but the security implementation used to protect against calculation injection has reworked the ExcelSecurity utility function to allow the ability to change the cell style of a cell that is potentially vulnerable to formula injection attacks. This change no longer changes the cell value but instead applies a new cell style that has quotePrefix enabled.
SR-D83060 · Issue 547918
Repaired History class report column sorting
Resolved in Pega Version 8.3.3
Attempting to sort any of the columns in a report using the History class did not render the results and the error "Cannot render the section" appeared. Tracer showed a Fail status for some out-of-the-box activities with the message "java.lang.StringIndexOutOfBoundsException". Investigation showed the logic in pzMergeAutoGenForProp activity was failing because the pyIsFunction property was not set on the UIField pages for function columns. To resolve this, the logic for pzMergeAutoGenForProp has been modified to get pyIsFunction from the field name.
SR-D83373 · Issue 545750
Stage Label name displayed in chart
Resolved in Pega Version 8.3.3
When pyCaseStatusControl was used, the cases label was displayed as $label instead of the Case Name. This was related to the version of Fusion Charts included, and has been resolved for this release by modifying library code in fusioncharts.js to fix the issue in datasetrollover listener code. Fusion Charts will be upgraded in v8.5 for a more complete solution to this issue.
SR-D79796 · Issue 544947
Updates made for deprecated Fusion chart styles
Resolved in Pega Version 8.3.3
Trying to change the background colors or font sizes for the values on the x-axis and y-axis in a report was not working. This was traced to Fusion deprecating the use of `<styles>` definitions with the introduction of JavaScript charts, and has been resolved by updating the code to compensate for this change.
SR-D86864 · Issue 548092
Very long auto-generated index trimmed for use in Report Browser
Resolved in Pega Version 8.3.3
The creation of a new report via the user report browser failed if there was an index with a long name (over 30 characters). The out-of-the-box method automatically generated the prefix, but the Report editor could not handle the very long declare index name and as a result did not consider properties from the embedded pages. To resolve this, pzUpdateAssociation and pzInsertNewReportColumn have been updated to trim the prefix for the declare index to 30 characters and allow for adding a new column to the report. This work does not cover adding a new filter to the report, as that fix would require substantial changes to reporting logic.
SR-D53176 · Issue 541796
Error when adding function filter will persist
Resolved in Pega Version 8.4.1
When an exception occurred while adding a filter in the report viewer, the error was shown but cleared due to an immediate refresh of the parent section. Analysis found that step2 of pzGetFiltersFromContent was failing, after which the error was shown, the section reload happened, and the error disappeared. To resolve the error being cleared prematurely, the pzOnLoadReloadReport control has been modified so that when there are messages on the top level page (pyReportContentPage), a parameter will be set on HarnessContextMgr to not to clear them during the next refresh call.
SR-D64231 · Issue 539235
Export to Excel cell style control added
Resolved in Pega Version 8.4.1
If a column was formatted with an auto generated numeric control, a new cell style was generated for every row during the export to Excel process. Since there is a limit on the amount of cell styles, once the number of rows in the file was greater than 64000 an error was generated. To resolve this, the system will disable the creation of a new cell style for every instance when an auto-generated numeric control is used.
SR-D65327 · Issue 534572
Backspace keydown handler updated for all textinput modes
Resolved in Pega Version 8.4.1
Attempting to use the Backspace key to remove input from a number cell (either Integer or Decimal) did not work. When the action was performed by a Manager, the Backspace key works as expected. Investigation showed the logic in the keydown handler for the backspace key in pega_report_events.js was only ignoring the e.preventDefault() call when the textinput node type was text, not number or other input types. To correct this, the keydown handler has been updated so the backspace key in pega_report_events.js maintains the default backspace functionality for all textinput modes, not just those of type 'text'.
SR-D69098 · Issue 534043
Export to Excel works for for report definition with duplicate columns
Resolved in Pega Version 8.4.1
After adding a date column to a report definition (2nd column in the report), the data displayed correctly in the UI but Export to Excel failed with the error "Section 'pzRDExportWrapper' execution error on page '' of class 'Rule-Obj-Report-Definition'. : The Reference .pyDateValue(2) is not valid." This was traced to an out of bounds exception thrown if there were two or more columns with the same calculation. When preparing for export, the column with the duplicate calculation would not get added to the map of report UI fields. To resolve this, the system has been updated to allow report definition columns with the same calculation to be properly mapped to a UI field.
SR-D69108 · Issue 543847
Handling added for drag-and-drop with deleted report templates
Resolved in Pega Version 8.4.1
After adding a new report, an error appeared when trying to use drag-and-drop to add a column (Page List) from the Data Explorer in the report browser. This was traced to refactor work done to use the Record API throughout reporting: the ruleset on new reports was not being reset from a Pega- ruleset to an application ruleset, causing columns the referenced properties defined outside the platform to be rejected. This use case was missed because case types define their own report templates on creation, but in this scenario those had been deleted. To resolve this, the system has been updated to call pxChooseBestRuleset from pxShowReport in order to enable the use of properties defined in the application prior to saving the report.