Pega Infinity™ includes an industry-standard patch release process to simplify and maintain high-quality releases. Several cumulative patches are released a year for each release stream. The Resolved Issues page contains information about client-reported issues that have been addressed for the specific release.
For a formatted complete set of the Resolved Issues for this release, download the PDF attachment at the bottom of this page. (Note that you must be logged in to access the attachment.)
Ticket # | Issue # | Title | Description |
---|---|---|---|
SR-C74652 SR-C74650 |
422902 422908 |
Grid alignment and headers corrected for Opportunities screen in RTL locale | When using the RTL locale, the Opportunity detail screen and search screen had grid alignment and header issues. This has been resolved by updating the py-portal-stages css attached to the enduser skin. |
SR-C74677 | 414445 | ADM pulse timing changed to inprove performance on very large clusters | ADM uses a pulse that checks if any models need to be updated. This uses a Cassandra query which has no "where" clause, causing poor performance for very large clusters. For immediate relief of this issue, the pulse configuration has been updated to increase the timing from 30 to 300 seconds so it fires less often. Model updates typically happen every x hours and often the pulse will not detect any models that would need to be updated. Further improvements in this process will be available in a future release. |
SR-C77121 | 423113 | Looping issue with CyberArk resolved | In order to avoid looping issues when using CyberArk integration, the reference to PRMiniLoader has been removed from PRBaseLoader. |
SR-C79851 | 430384 | Filter logic updated for Warning Summary guardrail report | After scheduling a Guardrail report for Warning Summary, the warning summary reports received in email were blank irrespective of the filter criteria. The logic filters have been modified to resolve this issue. |
SR-C80129 | 425387 | Enhancement added to hide class join warning from end user | An enhancement has been added to hide the joined class warning message at the end user portal if the section pzManageRecords is delegated to the user. This is done by by checking pxLimitedAccess on the pxThread clipboard page. |
SR-C81185 | 427993 | Accessibility enabled Layout group tabs browsing corrected | When using Layout group (Tab) or a Tabbed Layout for viewing client information in Tabs with Accessibility enabled, the system was reading each tab and its content but then focus was returning to the browser and tracing through all elements before moving on to the next tab. This was traced to an incorrect tabindex setting in the pzpega_ui_template_layout_header file, and has been fixed. |
SR-C84033 | 422745 | Added handling for legacy page adaptors to get all messages | If a validation message was present on the Clipboard, the front-end screen was turning blue and displaying the error "There has been an issue, please consult with administrator". This happened when getMessagesAll was called for pyWorkPage and an auto-populate property was present in the embedded pages/properties. To resolve this, cast has been removed when getting all messages and a new API has been added for legacy page adapters to get all messages. |
SR-C84361 | 437600 | Added handling for better recovery and reset when using 'When' conditional row deletion | 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. |
SR-C84384 | 430963 | Logoff control for Sales Automation case worker portal updated to clear states | After logging in to the Sales Automation case worker portal and clicking a menu item other than dashboard, the link was properly highlighted in the navigation menu and the appropriate data was loaded in the harness. However, after logging out of the application and logging again as the same user, the portal opened to the dashboard page and the previously clicked link was highlighted instead of the dashboard link in the left navigation menu. While it was possible to reset the menu state by closing the browser and starting a new session, the issue has been resolved by updating the logoff control for this portal to use the general system control_logoff which clears states on exit. |
SR-C86138 | 431776 | Security updates for avatar upload function | Updates have been made to enhance security around the avatar upload function. |
SR-C86457 | 482083 | Handling added for identifying and passivating disconnected Requestors | An issue was seen with restarted nodes where disconnected Requestors were not being properly passivated due to Passivation Blocker permissions persisting with a non-zero value. Requestors are passivated only if permissions are zero. To correct this, code has been added to identify and correctly reset permissions for Requestors that have not been properly decremented to zero. |
SR-C86589 | 436266 | Added explicit thread cleanup to resolve case worker portal UI rendering problem | Creating a case in the case worker portal was resulting in the respective screen being rendered with a distorted UI. This was traced to an issue in topnavigation where the thread was being changed to a base thread and skipping the FlowModalProcess thread removal when the new DC action was triggered. To resolve this, the system has been modified to append "$FlowModalProcess" in harnessOnBeforeUnload if it is missing to make sure the FlowModalProcess thread is removed. |
SR-C86607 | 436441 | getProperty API updated to use the pega.ctx.dom API for get element by name | When multiple tasks (S- Cases) were added from an interaction (I- Case) and the Service Cases had three auto complete controls which were sourced by parameterized data pages, it was expected that upon selection of the first auto complete, the second and third auto complete values would be populated. However, parameters passed to the Data Pages from the second and third S- Cases, had the same value as the first S- Case even though the clipboard was correct. Investigation showed that with MDC, the pega.util.dom API was failing to get the correct dom element and the needed data pages were not called. This has been corrected by updating the getProperty API to use the pega.ctx.dom API instead of the ega.util.dom API to get element byname. |
SR-C86952 | 428815 | Viewing screen capture attchments no longer requires Microsoft Internet Explorer/Silverlight | Previous versions of the Pega Platform required the use of the Microsoft Internet Explorer browser with Silverlight to access old attachments added using the screen capture feature. In order to support multibrowser compatibility, the system has been updated to use javascript functions to display these images so IE/Silverlight are not required. |
SR-C87463 | 432614 | Required image replacing Mandatory Asterisk displays correctly | After creating a mandatory text input field in a section and uploading the required image in place of the default image, the previous default image was still displayed in the portal even after clearing the browser cache and /temp folder on the app server. This was caused by the CSS rule 'pzbase-div-layouts' using specific selectors that had a hard-coded content hash for the image, which has been corrected. |
SR-C87757 | 431644 | Country Code for Austria saved correctly | When trying to save an address with CountryCode=AT, the code was saved as "at" instead. This was caused by a temporary field value not being correctly cleared, and has been resolved. |
SR-C87986 | 428571 | Resize handle correctly changed for RTL locale | When the locale was set to RTL, dragging sections to the left caused a resize and dragging sections to the right moved them to the left. This has been resolved by ensuring the resizable handle for workarea is correctly changed when the locale is RTL. |
SR-C88178 | 429526 | docx4j jar updated for compatibility with Office365 | After generating a docx file with Office365, an error appeared indicating the document had invalid XML data and couldn't be opened. Once the error message was dismissed, the file could be opened normally. This was caused by an incompatibility between Office365 and the Plutext docx4j jar, and the Plutext jar has now been updated to version 6.1.1 to resolve this issue. |
SR-C88711 | 439596 | Handling added for exception caused by empty page list | Attempting to map an auto-populated pageList property in a data transform was throwing a java IndexoutofBoundException. Investigation showed that the system was trying to access the second element of an empty Page List. To resolve this, the system has been updated to use a flat list DataProvider which will return null if the list does not exist rather than return a list that is not associated with the parent page. |
SR-C88776 | 428378 | Added check for blank Value List Property referenced in Dropdown Control | When a value list property was referred in the Dropdown control, the dropdown was shown as empty. This was traced to a property of type value list / value group, ClipboardProperty.getName() api returning as empty. To resolve this, a check has been added to ensure the value is populated with the correct property name if it is blank. |
SR-C88882 | 431068 | External mapping definitions will be used for exported property names | Under the "External Mapping" tab on the class definition, if the property names specified were not the exact format as the column names defined in the database table, an exception was generated when using the "Export" feature. For this functionality, the system was generating an SQL which used the property names instead of column names. This resulted in an invalid column exception and the export did not work. To correct this, updates have been made to NativeSqlApiResolver in the function resolver to check for the property name and replace it with mapping defined in external mapping. |
SR-C88948 | 426225 | Command-line BIX extract properly exits with failure status if the rule is not found | Running a BIX extract from the command line was returning 0 for both success and failure. This was caused by the error message in this scenario not properly setting the flag if an extract rule did not exist, and has been corrected to ensure the command exits with status code 1 if it is not able to get the list of extract rules. |
SR-C89040 | 438828 | Calling flow correctly resumed after sub-process completes | If a case was processed via Operator1 and passed as an assignment to a workbasket where Operator2 picked it up and performed a Reject case on it, the process in Flow1 correctly called Flow2, but once Flow2 was processed Flow1 was not resumed. If Operator2 only performed the Reject processing, Flow1 was resumed. To to ensure the correct flow resumption, the location of the pyFirstRun setting in flowMethodBody FUA has been updated. |
SR-C89135 | 434747 | Formatting tag updated to ensure skin rule styles are correctly applied | After a style was configured in the skin rule for TABS laouts -> Repeating Formats, the configured style was not being correctly applied to the skin. This was related to the anchor tag not picking up the changes, and has been resolved by replacing that with a span tag. |
SR-C89156 | 429484 | Blank paramter passed as inshandle invokes NoWorkID harness instead of exception | In releases prior to 8.1, the Obj-Open-By-Handle method was used to set an ActivityStepStatus error if a blank parameter was passed as inshandle. The activity step 8 would show as failed and invoke the NoWorkID harness. As of Pega 8.1, the code was refactored and modified to throw an InvalidArgumentException and quit the activity. In order to ensure better backwards compatibility, the error handling has been reset to show the NoWorkID harness when instanceHandle is empty. |
SR-C89250 | 429742 | Guardrail score ignores test rulesets | Test rulesets for a branch were unexpectedly being considered when calculating the Guardrail score. This has been corrected. |
SR-C89463 | 433821 | Corrected tab name handling in Report Browser | When using the report browser, refreshing the page after subscribing and unsubscribing to a report changed the tab name to the task id (eg. "PX-ST-123") and an extra tab appeared. This has been corrected. |
SR-C89482 | 427889 | ReportBrowser export to Excel or PDF retains chart | Clicking on "Export to PDF" or "Export to Excel" caused the chart image in the report browser to become blank on the screen and the image was not included in the exported file. Hitting refresh or reruning the report displayed the chart again. This was caused by the chart being unloaded whenever any form was submitted due to the way caching was handled, and has been corrected with the addition of a check that will ensure included charts are preserved. |
SR-C89504 | 435566 | Multi-Select values visible in read-only | The Selected Multi-Select values were not seen on the read-only review screen. This has been corrected. |
SR-C89541 | 430729 | Case Manager email correspondence opens when encryption and obfuscation are used | If the urlEncryption (true) and submitURLObfuscation(required) settings were enabled, it was not possible to open correspondence emails sent in Case Manager portal. No issue was seen when submitURLObfuscation was set to "optional" (which allows the server to accept URLS with either clear-text or obfuscated strings). Investigation showed the obfuscated values for pyActivity were not part of the HTTP request generated when the Data-Corr-Email attachment is clicked, leading to the system blocking the pop-up window request. Because bEncryptURLs, which is being set in the fragment DesktopWrapper_Variables, is not available in the harness context, the SafeURL method toURL therefore was not encrypting the URL. This has been resolved by setting both bEncryptURLs and pega.ctx.bEncryptURLs to true in the HTML fragment. |
SR-C89619 | 429574 | Custom section filters retained during refresh | Filtered values were not retained on refresh when filtered using a custom section. This has been resolved. |
SR-C89628 | 430885 | Correct values are selected in auto-complete in list configuration after scrolling | When a value from the second page of the source list in the auto-complete was selected, the prior value was getting selected and posted. As an example, if the (n)th value was selected by scrolling down the results in the list, the (n-1) value was getting selected and posted to clipboard. Investigation showed this occurred if autocomplete was configured with allow free form input ' no', and that results were not getting selected properly after first scroll when using list configuration. This has been corrected. |
SR-C89954 SR-C89716 |
431931 431991 |
Rule-Connect-SOAP error fixed for WAS/JBOSS environments | After upgrade, SOAP webservice was failing with the error “Couldn't create OMElement from string value for the activity InvokeAxis2 in class Rule-Connect-SOAP". This occurred on sites using a WebSphere/JBoss environment, and was traced to an issue where the WAS classloader was loading its default jar at the same time the Pega classloader was loading the same jar into JVM. This has been resolved. |
SR-C89969 | 431207 | Webchat error fixed for Operator Template with User access role | While running Webchat in an external application where the interface had any operator selected as an "Operator Template" with a User access role, the error "The chatbot is experiencing problems; If the issue is related to your current case, you can withdraw it by typing cancel" appeared. This was traced to an issue with creating/modifying instances of the class Data-NLP-Report-Summary, which is done in the Interaction API via pxSaveNLPSummary. To resolve this, the class has been added to the PegaRULES:User4 role so that any user access group can have write access to this class. |
SR-C89985 | 435724 | pzEmailActions button colors correctly reflect styling | The default Styling for the buttons defined in pzEmailActions was not taking effect as expected to show an "APPROVE" button as green and a "REJECT" button as red in an email body with attachments. This was traced to the 'if' condition not being satisfied for the color change due to the UIkit handling the evaluation via the pyApproveInternal flow action instead of pzApproveInternal. This has been corrected. |
SR-C90358 | 433296 | Updated Attach Content Control for use in repeat grid | When using Attach Content Control in a repeat grid, selecting a file via attachcontent control and submitting the page resulted in the message "The operation completed successfully, but returned no content". This was traced to the newassignPage being removed after closing the modal, causing finishassignment to fail. To resolve this, the Attach Content Control function has been modified to set the needed grid attributes for desktop implementation to ensure newAssignPage will be available to the attach content modal action. |
SR-C90418 | 436017 | Exception handling improved for pxAdjustSLA, pxAdjustSLATimes, and pzAdjustSLATimesInBulk functions | If the SLA Deadline days were updated from 0 to 1, the SLA agent did not trigger the deadline escalation activity and the error "com.pega.pegarules.pub.context.PRQueueException: Instance of class Queue not found: SYSTEM-QUEUE-SERVICELEVEL.SYSTEM-QUEUE-SERVICELEVEL" was generated. This has been resolved with the addition of better failure handling to the pxAdjustSLA, pxAdjustSLATimes, and pzAdjustSLATimesInBulk functions for cases where an exception is generated. |
SR-C90467 | 429608 | Validations are correctly run on rescheduled reports | When using the OOTB schedule report functionality, UI validations were bypassed if the existing schedule was deleted and the report was rescheduled. This has been corrected by updating the Review harness to display the Perform harness when clicking Update. |
SR-C91121 | 430389 | Data Page seatch results have expanded data available to view | It was not possible to expand a search result and see Ruleset, Updated by, etc, for Data Pages. This was traced to the Layout Properties of section pzSearchDrilldown having a visibility condition of .pzCategoryActionKeys != 'Rule-Declare-Pages' after being reconfigured during prediction studio implementation for rule transition. To resolve this, the necessary related table for data pages has been added to the pzSearchDrilldown section. |
SR-C91156 | 429629 | Autocomplete Menu Selection for privileges tab Role updated | When a few characters were typed in the autocomplete for "Role" in the privileges tab and the desired value was selected, the selection did not stick. The second time the value was selected it was retained. Investigation showed that the post value source element had a stale reference after section reload, and this has been resolved by adding code to re-initialise the reference with the latest element. |
SR-C91220 | 430363 | Modified pzpega_ui_dynamiccontainer to resolve issue with editing the Operator rule form when using IE | 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. |
SR-C91264 | 433439 | Localization fixed for dropdown sourced with pystate | When pystate was used to source a dropdown, the options were all uppercase but in the review harness used lower case for IN and OR. This difference caused a failure in localization. This was caused by the Field value instance being defined in lowercase in PyCaption while the UI was treating the active value as an instance of pyCaption, leading to instances of both "in" and "IN" being present. This has been resolved by consolidating the field value to use a single case in the pega-eventprocessing ruleset. |
SR-C91274 | 481698 | Corrected Base64Decode calculations | Testing indicated that a file encoded using Base64Encode generated the error "The Operation completed successfully, but returned no content" when decoding with Base64Decode. Validating the content of the text file via a JSON validator using text formatted as JSON worked as expected. Investigation showed that extra padding characters were being appended due to calculations around CRLF characters, and this has been corrected. |
SR-C91370 | 429579 | System updated to jackson-databind-2.9.8.jar | The jackson-databind jar has been upgraded to v2.9.8. |
SR-C91501 | 428971 | Support added for base64Binary type in the SOAP envelope | In order to support the sending of files more than 10 MB in size as a SOAP attachment, a condition has been added to populate base64Binary type as a multipart message in the SOAP envelope. This allows a text node with binary content to be optimized for xop/MTOM. |
SR-C91750 | 429616 | Summarized report after editing shows Count as expected | When creating a report with a number of fields and summarizing it in the report browser, the summary gave proper counts. However, after clicking on "edit report" and then running summarize on the same column, the generated report gave the Sum of the number column instead of the Count. To resolve this, the implementation used to update a hidden value for the dropdown has been set to initialize to the Count option. |
SR-C91898 | 435422 | Resolved Rich Text Editor display in popup windows | The Rich text editor was not displaying in popup windows although it did display otherwise. Investigation traced this to the harness context APIs used in "pega.contro.IRTE.init" (pzpega_control_richtexteditor.js rule) returning rteTextArea as null, leading to the RTE scripts failing to bind the ckeditor dom. This has been fixed by replacing the harness context APIs with ones better suited to this use. |
SR-C91907 | 433771 | Thread context preserved when processing a case in interaction | Thread context was not being preserved correctly when a case was opened from an interaction. This has been corrected. |
SR-C91927 | 431509 | ValidateSurveyStream updated to ensure validation runs on a named page | After creating new survey rules, trying to re-validate and save in survey-specific rules was failing to re-validate in standard/personal edition. This was an issue with the ValidateSurveyStream activity running on an unnamed page: in this activity, the stepPage name is set to a parameter and passed to datatransform for the processing of the rule. Since the steppage was unnamed, an exception was thrown. To resolve this, steps have been added in the ValidateSurveyStream activities for question, question group, and survey that will copy the primary page into the named page and pass it as a parameter. |
SR-C92171 | 445300 | Updated unique ID hashing to account for extended class names | Multiple history classes were pointing to one database table because the historical hash method only used the the first 32 characters of a class name to create a unique identifier. This created duplicates if the class extended past this limit. To correct this, the unique ID hashing has updated in SQLGenerator to account for long identifier names: if the supplied name is greater than 32 chars, the system will hash the entire name to create a unique identifier. |
SR-C92195 | 431137 | Corrected harness for webchat console in mobile and incognito StartCase | After configuring a webchat and using the mashup code to load the chat interface, refreshing and starting a new chatbot session caused the wrong harness to be rendered. This was also seen in an incognito window. To correct this,the New and Perform harnesses in Work-Channel-Chat.pyStartCase have been updated. |
SR-C92202 | 430395 | Improved error handling and logging added for null partitions encountered in VBD aggregation | A NPE was thrown during VBD aggregation when a partition was found with no data, a condition likely created by a failed insert or failed replication. To better handle this scenario, code has been added for better error handling and more informative logging. |
SR-C93079 | 430561 | Action queue explicitly cleared in closeAllDocuments method | After logging in to the app studio and performing some changes in the case designer, attempting to switch to data explorer or other tabs generated an alert indicating "Remaining tabs have unsaved work". After the alert was generated and closed, a "Maximum limit of opens tabs is reached" popup was then displayed even when there were no open tabs. This was traced to a change in the event handler for "DesktopAction" which caused the system to immediately move from the alert to triggering createNewWork, which then used the same dynamic document as the original alert. To resolve this, the system will clear the action queue pega.c.actionSequencer.clearQueue() in the closeAllDocuments method. |
SR-C93264 | 437310 | Inference engine enabled to resolve JourneyManager data flow exception | Customer environments were intermittently seeing an exception with the error "Could not get ultimate primary destination for data flow .DF_JourneyManager" when trying to compile an activity that ran a dataflow that ultimately called the DF_JourneyManager data flow. This error was traced to the Inference engine being in a disabled state so the system was not able to get the dataflow output class via declare expressions. The Inference engine has now been enabled to resolve this issue. |
SR-C93341 | 433630 | Hash handling security updates | Several updates have been made to improve hash handling security. |
SR-C93344 | 431348 | Bcrypt password hash increased to 2^12 | Bcrypt password hashes have been increased to 2^12 iterations for new passwords. |
SR-C93555 | 431599 | BulkMover updated to not treat Numerics as strings | When attempting to update Pega platform 8.1.1 to 8.1.3 with Oracle on a Windows machine with German locale using the out-of-place upgrade of the rules schema, the migration failed at the migration step with the error message "ORA-01722: Ungültige Zahl". This was traced to BulkMover failing when trying to convert a string to a Numeric due to the locale using commas as the decimal separator, and has been resolved by updating BulkMover to not treat Numerics as strings. |
SR-C93572 | 440079 | Search initialization logic updated to ensure consistent node member information | The search function was intermittently failing across nodes after restart. Investigation showed that this was due to inconsistent results from search initialization cluster logic using Hazelcast APIs to tell whether or not a given node was part of a Pega cluster. To resolve this, the logic has been updated to rely on ES APIs instead of Hazelcast cluster membership to determine offline nodes. |
SR-C93726 | 435286 | Work status icons work correctly when using localization | 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-C93802 | 445245 | Rounding added to avoid exception for ADM number too small to save to Oracle | An exception was thrown when trying to save ADMSnapshot agent predictor bin data that was too small (below 1 x 10-130) for the Oracle Number column it was written into. This blocked up-to-date reporting on adaptive models. To resolve this issue, the code has been modified to round the double type numbers to an acceptable scale before writing to the database. |
SR-C93873 | 436424 | BigDecimal division API updated | A difference in strategy output was seen after upgrade due to a particular HFix regarding decimal values in strategy calculations not being previously installed on the system. To resolve this, updates have been made to the BigDecimal division API that specifically addresses Group By shape. |
SR-C94047 | 432968 | Updated Static Progress Bar Control to resolve parse error | When configured in a section with no parameters, the Static Progress Bar control was refreshing every second. After 5-10 seconds, a parse error appeared. This has been resolved by updating the value of bUseProcess to check for both string and boolean. |
SR-C94914 | 436301 | Cursor position retained after password field refresh | If a section was created which contained a Password control with an "Any Key" event that included "Post value" and "Refresh-Other section" actions, the cursor always stayed at the beginning of the line. This has been resolved by adding code to ensure the caret position is retained after a refresh for the password field. |
SR-C94950 | 433175 | Rule lock is released after alternate approved operator rejects it | When using the rule check-in approval process, if a rule check-in candidate was rejected by an approved operator other than the one who checked it in, the lock on the original rule was not released. This has been corrected so the lock is released after the rule is rejected in the case worker portal. |
SR-C95187 | 433824 | IO exception logging enhanced | In order to improve diagnosing problems such as DDS nodes not joining a cluster despite Cassandra nodes being run successfully, logging enhancements have been added that include details about IO exceptions. |
SR-C95532 | 435980 | Improved handling for deleting dedicated index instances | If the dedicated index instance was deleted from the ‘Custom search properties’ tab rather than from the dedicated tab of the search tab, then that instance was unexpectedly deleted from the instances of custom search properties and resulted in a blank row with the re-index button disabled and delete button enabled. This was a missed usecase related to handling the deletion of a dedicated index created from D-CP-S on a class whose immediate parent class is an abstract class or class that doesn't have a dedicated index, and has been resolved by setting the pySaveFromUI Flag when delete is invoked from the Data-CustomProperties-Search instance. |
SR-C95667 | 438854 | Corrected UI distortion for the errors container format | After upgrade, using pydisplay to case stages in a harness resulted in misalignment issues in the UI. Investigation showed that this issue was due to an incorrect margin value for the errors container format following recent redesign work in the UI Kit, and has been resolved by correcting the value. |
SR-C96001 SR-C95840 |
436368 434790 |
Independent query logic inserted for non-resolved rules to avoid non-applicable columns | Nothing was displayed under "Revalidate and save" for Rule-Ruleset-Name and Rule-Ruleset-Version. In Tracer there was an error message saying that "There was a problem getting a list: code: 207 SQLState: S0001 Message: Invalid column name 'pyRuleAvailable'. " Investigation showed that because the system was using the same logic for resolved and non-resolved rules, Rule-Ruleset-Name and Rule-Ruleset-Version were looking for the column pyRuleAvailable which was not applicable because non-resolved rules don't have this column. To resolve this issue, a separate query executor has been added for non-resolved rules as there are a few columns related to resolved rules that are not applicable for those that are not resolved. |
SR-C96035 | 434731 | Write and Delete restrictions added to the RoboticAdministrator role | The security configuration for the PegaRULES:RoboticAdministrator role has been updated with the 'when' rule condition pzModifyAllowed for Write and Delete access. |
SR-C96291 | 445254 | ADM initialization modified to eliminate unnecessary keyspace creation triggers | On startup, ADM issues a Cassandra query to create one of its keyspaces if it doesn't already exist. To do this, it was set to require creation level permissions whether it created the keyspace or not, but those permissions may be considered a potential security violation if the Cassandra instance is shared with other teams. If permissions were restricted to only below key spaces used by Pega, then the ADM node would not start up. To resolve this, the way ADM initializes its keyspaces and tables has been modified so that queries requiring 'create keyspace' permissions are not triggered if the keyspace already exists. These changes also include code that ensures that keyspace and table creation can only happen on one node in the cluster at a time. |
SR-C96297 | 433776 | Enhancements added in support of AES/PDC integration | The following enhancements have been added in support of AES/PDC integration: - QueueStatistics for Oracle and multi-tenant environments -Postgres statistics are reset after every push (this can be disabled by changing the DSS ResetTableStats) -Enabled Debug statements before all connect-rest/connect-soap calls -Handling for Listener Information issues -Elastic search updates -The connect timeout has been enhanced from 30 sec to 60 sec for all REST connectors. -Data pages can be used for picking the End point URL -Elastic Search Count details can be pushed to PDC |
SR-C96362 | 433332 | XSS filter added to API form handling | An XSS scripting filter has been added for properties that can be changed via API. |
SR-C96394 | 438671 | Report data query updated to better handle exceptionally large queues | If the database queue was exceptionally large (more than 3.5 million items), the report data query aggregating the results was timing out and showing 0 items queued on the management landing page. To resolve this, the summary view has been changed to rely on the data pages of the detailed view instead of aggregating the results by firing another query with RD. |
SR-C96406 | 482945 | Corrected default parameter passing to fetch childcases audit details | After upgrade, Child case audit details in a Parent Case were not visible even after checking the Show Subcases option. This was traced to refactoring work done in an earlier version; in earlier releases, the parameter ShowSubCases defaulted to true if it was not already present. Later during refactoring, a call to pzFetchCaseStatusUpdate was added but did not include support for passing the parameter page if the parameter had been set by default instead of explicitly being included. Since the parameter was missed, the subcase audit details would not be fetched. This has been corrected so the parameter needed will be passed and fetch the subcases. |
SR-C96456 | 436307 | Autocomplete grid scroll bar fixed for large DataPage results | When autocomplete (default setting) was present inside a grid and the result popup had < 20 results, the scrollbar was not coming up in Google Chrome. This has been resolved by modifying the fixGridWidthIfRequired API to set set vertical scroll to auto. |
SR-C96571 | 435175 | Added check for visible SmartInfo so focus is maintained | After setting up a harness that displayed page-level messages at the top and bottom with "info" icons in a grid that displayed SmartInfo, hovering on one of the "info" icons when a page-level message was displayed caused the page to scroll up to the page-level message at the top of the harness instead of displaying the SmartInfo popup. This has been resolved with the addition of a check for visible SmartInfo in pzpega_ui_doc_errors.js so the focus is properly set. |
SR-C96703 SR-D1441 |
435742 438906 |
CMIS Timestamp function updated to support more timezones | When trying to edit any attachment , a null pointer exception was generated from the out of the box activity pygetobjectfromAPPCMISConnector by the pzFormatCMISTimestamp function in the class PRDateFormat.java. This was traced to CMIS using a library that did not support all the possible timezones for a timestamp. To resolve this, the RUF pzFormatCMISTimestamp has been updated to use java.text.SimpleDateFormat as it currently supports the highest number of timezones and permutations in the CMIS timestamp format. A check has also been added so that if a timezone cannot be found, the date is simply not converted and a warning is logged. |
SR-C96786 | 438850 | Controls updated to handle hidden values in finishassignment submission | A SECU0001 alert was thrown from the out-of-the-box function finishassignment upon the submit of assignments. This was traced to an alert generated while attempting to post the feed even though there was no Pulse gadget used in the work object, and was due to the handling of hidden fields as read-only. Since the read-only values were not editable, they should not be submitted with the request body; this has been corrected by modifying the hidden control entry handle such that hidden property is considered as editable-filled. Controls have also been added to pxHidden to prevent potential misuse. |
SR-C97207 | 435772 | ModalCancelAction activity clipboard removal updated | Clicking on the jump/when button on the activity step and then trying to expand any step in the Rule-Obj-Activity.pyModalCancelAction activity was resulting in the error "The property RH_1.pyTempModalPage was of mode String while adoptDictionaryDefinition(ImmutablePropertyInfo, boolean, boolean) was expecting Page mode. Details: the mode has been reset to match the property's definition." This has been corrected by modifying the code to use property-remove instead of property-set to remove the clipboard page. |
SR-C97399 | 439742 | Button type added to allow grid expand in Edge | When using an expand pane grid in a modal with the Edge browser, clicking on the expand icon using the enter key was throwing an error in new window. This was traced to an issue with a hidden non-auto-generated button in the pzModalHelp control not having a default type, and has been resolved by adding type="button" in the control so Edge will treat it as a submit button. |
SR-C97479 | 439534 | Database indexes added for better performance | In order to improve performance, database indexes have been added to pegarules-master.xml. |
SR-C97610 | 435223 | Enhanced backwards compatibility for Attachment Gadget | After upgrade, information was missing from Attachments. This included the case number being absent from between the parentheses on the Attachment name; the time stamp was missing on the attachment; and checking the 'Show Subcase Attachments' checkbox did not provide the expected information for the attachment. This was traced to a reworking of the attachment gadget in Pega 7.1.5, and logic modifications have now been added to enhance backwards compatibility with the 6.x versions of Pega. |
SR-C97772 | 435630 | Fixed Export to PDF page formatting | A formatting issue was seen when using export to PDF; the first page contained only the title of the report as well as the filter, the generated date, and the number of records, and the exported data was included only from the 2nd page onwards. This has been corrected. |
SR-C97873 | 437278 | Added check to maintain key value when using collapseAllMenu in child navigation menu | 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-C98177 | 437224 | Explicit modal close added to MSOFileTransferButtons control | When using a MSOFileTransferButtons control that included buttons for Download Template and Import, clicking Import caused a popup for File Upload to appear with two options - Upload and Cancel. On clicking 'cancel', an Invalid Static Content error was thrown. This was traced to legacy code interaction issues with newer features, and has been resolved with the addition of a custom script to close the modal on click of the cancel button. |
SR-C98214 | 435684 | Decision Table keeps proper values when a column is deleted | When the first column in a Decision Table was deleted and the rule saved, the value that was in the second column was replaced in the first row. This has been corrected. |
SR-D10100 | 463307 | Bulk actions filter works properly when additional filters are added | The Bulk Actions filter was not working if other filters were used in conjunction with it. Investigation showed that when 'assigned to operator' was given a value, the values were fetched properly. When an additional condition was added, the section 'pyBulkProcessingSearchSection' activity called 'pzDefaultOperators' which then set the 'pyUserIdentifier' value to null, and no results were returned. As the activity already had a step to check if the .pyUsage!="Operator" and only then property-set, pyUserIdentifier = "", the subsequent step to set the pyUserIdentifier = "" and override the previous step has been removed. |
SR-D10171 | 482472 | Updated UtilsEmailListener to handle additional special characters in the email ID | When the Email Listener tried to map the properties from the email body and message header to the Pega Default out-of-the-box properties or user provided text properties, the mapping worked for simple alphanumeric email IDs, but mapped only the trailing part of the address if the Email ID contained an apostrophe or single quotes. For example, "toast.'[email protected]" was mapped as "[email protected]". This was due to a missed special character in the regex pattern, and UtilsEmailListener.java has been updated to correctly handle special characters in the email address as specified in RFC 5322. |
SR-D10281 | 482814 | Configuration settings introduced for VBD read/write consistency | Exports of VBD data at different consistency levels showed data inconsistency between Cassandra nodes. VBD uses the default DSM consistency level of ONE for its reads and writes, which will not automatically repair data when inconsistency exists. Data inconsistencies can lead to VBD timeouts trying to load partition data. To support VBD read/write integrity, an enhancement has been added to allow configuration of VBD read/write consistency levels by way of the following DSS properties (Owning Ruleset: Pega-DecisionEngine): vbd/readConsistencyLevel and vbd/writeConsistencyLevel. R + W > N where R is the consistency level of read operations, W is the consistency level of write operations, and N is the number of replicas. These will override the default DSM read/write consistency levels (ONE). |
SR-D10309 SR-C95253 |
482478 435787 |
Custom datetime controls correctly appended to Excel export | The timezone was not being appended to datetime when exporting to Excel if a custom control was used. This has been corrected. |
SR-D10820 | 482684 | RDL checkboxes appear properly in minimized window | Checkboxes in RDL were not appearing properly in Microsoft Internet Explorer when the window was minimized if a dynamic layout of type inline quadruple was used. This was traced to the responsive breakpoints of a format overriding the styles for custom checkboxes, and has been resolved by updating the checkbox controls for responsive breakpoints to use a min-width and min-height instead of auto. |
SR-D10966 | 475333 | IH summary behavior change reverted | Changes introduced to Interaction History aggregations in 8.1 intended to better align them with the existing behavior of the Interaction History shape in Strategy produced the unexpected side effect of lots of empty records. Based on feedback, the decision has been made to revert the IH aggregation behavior change. |
SR-D10969 | 477276 | Logic for the Materialized/Not Materialized feature updated | The Materialized/Not Materialized feature was not working properly. When there was an aggregate dataset entry in the Advance page set to use "No" for materialized, doing "Materialized" in IH Summaries LP on that dataset materialized the dataset and created a duplicate entry in the aggregation config page where one was "No" and one was "Yes'. This has been corrected. It was also observed that after an application changed its name while the access groups remained the same, changing a dataset from "Not Materialized" to "Materialized" worked, but changing from "Materialized" to "Not Materialized" did not. Instead, a warning message was posted at the top of the page indicating the problem. Investigation showed that the pzChangeStatus activity failed because the current application name did not match the application name of the access group set for the aggregation configuration record. To resolve this issue, the logic has been updated to remove the reliance on the application name. |
SR-D10970 | 476281 | Datasets created from the IH summary component correctly listed as aggregate | Attempting to create an aggregate data set from the IH Summary shape did not properly list it as aggregate due to a source dataset error. This has been corrected. |
SR-D11382 | 482269 | QP DF issues resolved for timeouts and search re-indexing | The re-index option was not available to manually trigger Search re-indexing. Investigation showed that this was related to a recent change used to hide the reindex button if the batch index queue processor was in progress. At the root of the issue, delayed items were not properly pushed to Kafka when they were eligible for processing if they were already queued when the QP DF was in a failed state or when the QP DF was not yet created. When restarted, the QP DF was only processing the messages on the Kafka topic from the end of the offset and missing the queued messages. To resolve this, the QP DFs have been modified to start processing the messages from the beginning of the topic. In addition, the DelayedQueueProcessorSchedule Job scheduler, which pushes items to Kafka, was not being executed due to a Hazelcast timeout exception caused by an inability to access the distributed map. Investigation showed this exception was related to a cluster split brain. To correct this, in cases where a distributed map is not accessible, the run will be rescheduled. As a result, there is now more robust handling for any timeout exceptions, all messages will be processed as expected, and the re-index button will be available when needed to manually trigger the process. |
SR-D114 | 435313 | Grid menu dropdown properly hidden while editing filter | After opening the filter options as if to change the filter, summarizing any of the available columns without closing the filter resulted in a screen showing a broken filter. This was traced to the implementation of the navigation menu for auto-generated grids, which was not allowing other functions while any of the "inline modals" are being used, such as editing a filter. To correct this, the grid menu dropdown will not be shown while editing a filter. This is consistent with the rest of the UI actions which are hidden while editing a filter. |
SR-D12530 | 482723 | Spinner wheel dom correctly cleared after incomplete case closure | Incorrect behavior of the spinner wheel during a case search following the browser being closed while a case was open has been resolved by updating pzpega_ui_doc_actionRouter to ensure the wheel dom is correctly cleared. |
SR-D13 | 434982 | Memory leak repaired | A server side memory leak was traced to heap utilization increasing due to a Stream control assembly problem where the CleanForReuse() function was not cleaning up pzAuto. The cleanForReuse method in generated HTML properties is used to either initialize local fields, in which case aContext will be non-null, or to clear the object for pooling, in which case aContext will be null. Because the pzAuto variable was not being properly nullified, pooled controls were retaining stale references to StreamTools, LayoutRuntime, PRThread, and others. This has been resolved by adding code to ensure the pzAuto variable is correctly nullified. |
SR-D1386 | 446262 | Warning message visibility conditions updated for Records Editor | The Report Definition Result screen was showing the message "Warning : We were unable to create columns to match the new properties added. This will cause performance problems when using this data type. Please click here to fix this." Along with the RD results screen, this particular warning message was also shown in the Records tab of the respective Datatype. Initially, the Records Editor was developed for Designer Studio and Express usage. When the delegation functionality was later given to portals, the 'when' condition for the warning message was not updated to restrict displaying it to portal users. This has been fixed by updating the pzManageRecords section to properly manage the visibility condition of the warning message. |
SR-D1458 | 437894 | Property name mapping moved to DSM side to ensure consistent results | If a Data Set rule was used to retrieve the records of the Data Class, the property names appeared to be changing randomly in the OperationResult Clipboard Page when the name exceeded 30 characters. This was traced to NativeSQL trimming and hashing any aliases that were longer than 30 characters, and has been resolved by moving the mapping back of property names to the DSM side. |
SR-D1716 | 438108 | Fixed expand when issue on dymanic layout with custom header | After upgrade, a Dynamic layout with collapsible type Container setting which included a custom section to show the text and image in place of text had an 'expand when' condition applied that caused the entire dynamic layout to be malformed and show the raw HTML code if there was an error. This was traced to the system rendering the dynamic layout in non-template form if the header has a JSP section include, leading to the expandable layout header div HTML elements getting mixed up with the custom header sections HTML code due to the aria-label attributes. This has been resolved by removing the section stream from aria-label in RUF - GridHeaderElements. |
SR-D190 | 436867 | Job Scheduler History correctly displays pyPerformer | After upgrade, the pxcreate operator value for work objects was blank when the objects were created via job schedulers, leading to the History not displaying the pyPerformer. Investigation showed that the user details in the requestor page were not being set correctly by the agent used to populate the details due to a lack of agent parity. This has been resolved by ensuring the userName and userIdentitfier properties are populated in the requestor page. |
SR-D211 | 481406 | Case Assignment issue lock corrected | After upgrade, an intermittent error was seen when browsing the screen flows of a child case type application, indicating "Users have lost the ability to make this change because a change elsewhere has taken precedence over the change you made here. Please click on the assignment again to continue". This was traced to a change made to address an issue with the Opener not properly honoring the aUnlockOnCommit flag that was passed in via the openIfStale() API: in a very specific use case following that change, the system would unlock work objects during openIfStale when it should not. This has been corrected. |
SR-D2229 | 437546 | Repository Delete API updated for better use with cloud storage | Previously, the Repository Delete API immediately checked if a file existed after attempting to delete it. When deleting files in S3, the file may not be immediately removed: due to S3's eventual consistency policy, the file could still exist at the time Pega was attempting to verify the deletion but be "deleted" according to Amazon. This caused a false alert that the file deletion was unsuccessful, leading to alert emails being sent and the Manifest file not being created, and in some cases generating an exception. To resolve this issue, the logic in Repository Delete that checked if file existed after attempting to delete it has been removed. |
SR-D2286 | 439251 | UIKit 12 updated to ensure data pages are cleared when switching applications | When using UIKit 12, switching applications without logging off resulted in the 'Recent reports' list and Public Category containing reports and folders that belonged to the previous application. Investigation showed that the pyCMReportBrowserHeader function in UIKit 12 did not include the custom control "pzRBIncludes7", which clears the data pages. This has now been added to ensure that report browser data pages are now automatically cleared on app switch. |
SR-D2296 | 436877 | Enhancement added to support multiple security certificates | When importing IDP metadata, the only the last verification certificate was imported if there were multiple certificates. This caused SAML SSO signing failures in some cases. Support has now been added for importing multiple certificates to enhance encryption security. |
SR-D2400 | 438740 | Security for ExporttoPDF tool process improved | In order to increase system security, the tool process around iframe HTML tags used in generating a PDF with chart image data has been improved. |
SR-D2530 SR-C65841 |
444564 425806 |
Added handling for cases where Microsoft Internet Explorer causes a SAXParseException | Numerous SAXParseException messages were seen in the log file, and the queryString showed the pyDeleteDocumentPg being referenced. This was traced to the method used by Internet Explorer to construct an HTTP request: Microsoft Internet Explorer sends the header and body of the request in separate TCP packets, but for an unknown reason in this case the body packet goes missing. To resolve this, a toggle has been introduced which will send the pyDeleteDocumentPg request as GET if pega.u.d.GET_REQUEST_DELETEDOCUMENT is set to true in userworkform. In a normal flow without this variable, the request will pass through the normal flow. |
SR-D2788 SR-D2457 |
438261 437345 |
Stale transaction error resolved for Robot Manager deletions | The UI was hanging and displaying a stale transaction error after multiple entities were deleted from the Robot Manager UI. This has been resolved by adding clientFrame handling for SPA cases separately in the pega_ui_modaldialog js file. |
SR-D2796 | 438393 | Corrected Recents list resize issue in IE | When using IE, opening the Pega Developer Studio to the landing page correctly resized the Recents list unless another tab was open. If there is another tab, the the resizing did not work and the scroll bar only allowed movement to the left. This has been corrected by setting the position to absolute for iframe(designer studio tabs) for IE. |
SR-D3036 | 438138 | Password change error message clarified for invalid characters | When an operator updated their password and and included special characters other than those specified in the security policies, an error appeared that was not easy to understand. This message has been updated to clearly indicate that the password attempt includes invalid characters and needs correction. |
SR-D3257 | 453290 | Database connection retry logic to class loader | In order to create a more robust environment in case of connectivity issues, an enhancement has been made to add retry logic to database connections in the class loader. |
SR-D3371 | 439506 | Association Resolver updated to handle filters created on secured properties | After creating a Report Definition in a class (Example Class A) that had an Association in that report with Class B, no results were generated from the report when an Access Control Policy and Access Control Policy Condition were created for Class A and Class B where the Class B had an ACPC with a Value field that referred to a Data Page or clipboard page property. Investigation showed the system was not able to resolve the actual value of the datapage property in the generated SQL query due to Association Resolver resetting the filter value (the Page reference in this case) of a filter that is created on a secured property. This has been corrected by updating Association Resolver to not reset the right operand for a filter that is created on a secured property. |
SR-D3405 | 439259 | URL construction logic updated for Tracer | When trying to trace a requestor from the requestor management landing page, a 400 bad request error was generated. Investigation showed that when forming the tracer URL, the pxRequestor.pxRequestorPathInfoInReal property was being appended to it. Because the property contained unencoded characters([), the request was not being processed. To resolve this, the URL construction logic has been changed to use pxThread.pxReqBaseURI. |
SR-D3494 | 439416 | Enhanced REST acceleration wizard handling of existing properties during rule generation | A resolution provided in an earlier release addressed the REST accelerator wizard failing when there was a property present in the @baseclass and that property was also present in the JSON input for data model generation. The error generated was "Cancelling rule generation. Definition required to conform to @baseclass.Name instance". This update further enhances that Rest wizard resolution to address case sensitivity issues in the naming, and adds additional support for scenarios where the property does not exist in the integration class or parent class by checking if the property exists in pyIntContextClass. |
SR-D3556 | 444612 | Requestor.OperatorID page updated to stay in sync with current OperatorID to enable post-Auth activity mapping | The systems pages were not getting updated to the right operator's context when a post-Auth activity was used for mapping. To support this use, the UpdateOperatorID trigger has been updated to keep the pxRequestor.OperatorID page in sync with the current operatorID page during SAML. The operator will also be saved during provisioning. |
SR-D3598 | 439125 | CSS updated to correct Microsoft Internet Explorer issues with Flexbox | After launching a user portal from Dev Studio in Microsoft Internet Explorer 11, the screen appeared blank. Each table column was stretched out, and a horizontal scroll bar appeared at the bottom of the screen that scrolled infinitely. Investigation revealed that this issue was caused by Internet Explorer not completely supporting FLEX containers. To resolve this, the CSS code for the screen layout region content has been updated to compensate and properly display in IE. |
SR-D3604 | 439096 | Parameter support added for openAssignment | An enhancement has been added that will allow leveraging the Associate Requestor for Chat interactions through parameter support for the openAssignment action. This will allow an activity to be called to create the interaction and pass back the assignment and open it using the openAssignment API. |
SR-D3655 | 438567 | Resolved UI issues with TextArea control | Two issues were seen with TextArea after upgrade: 1) The UI flickered when using a section where a checkbox click caused a TextArea to appear; and 2) When 'size to content' was specified for height in the TextArea, the area became unresponsive when the content was reduced. These issues have been corrected by setting height to auto instead of 0px while updating the text area height. |
SR-D3767 | 438200 | Enhancement added to track list based report definitions for statistics | In order to expand the use of pyDefaultReport for Log-ReportStatistics, an enhancement has been added to pzPopulateListReport to call the pzPopulateStatisticsInfo activity with the required parameters to enable tracking of list based report definitions so they can be included in the report statistics table. |
SR-D3788 | 437779 | Corrected temp page reference for save-as in CreateAndManageWorkFromEmail | Attempting to save-as pyCreateAndManageWorkFromEmail was failing due to a missing reference to TempCurrentPage in Pages and Classes. This has been corrected. |
SR-D392 | 438872 | Behavior reset for using getLocalizedValue with an input string containing parentheses | After upgrade, the getLocalizedValue function was not returning any value if the input string contained parentheses. This was a difference in behavior caused by a missed use case when correcting another issue, and has been resolved by resetting the system to the previous behavior of getLocalizedValue returning a localized string in cases where a Field value/Rule message is present, or otherwise returning the exact input string. |
SR-D3929 | 446437 | Auditing for automatic stage transitions improved | The logic for pzCheckForAndDoAutomaticStageTransition has been updated to provide better audits for the movements related to automatic stage transitions. |
SR-D3947 | 457300 | XSS security added to GET Request Work-DeleteAttachment activity | Security has been improved against a potential XSS vulnerablity on GET Request Work-DeleteAttachment Activity. |
SR-D4025 | 439629 | Check added to ensure interactions show ID | After creating many interactions, navigating to the interactions not visible on the screen using the "Currently open" menu displayed the interactions as New instead of the interaction ID. This has been resolved with the addition of a check for customer headers. |
SR-D4027 | 439898 | Explicit property evaluation added to correct visibility in Proposition Management sorting | After navigating to the Decisioning: Proposition Management landing page (Configure->Decisioning->Decisions-> Proposition management -> Hierarchy), opening any Decision data and then switching to the Form tab to perform any sorting on the Form fields grid caused the UI to become unresponsive and generate the error "Uncaught SyntaxError: Unexpected end of input at pega.ui.Doc.evaluateVisibleWhens". This issue was traced to a 'when' condition which demanded explicit mention of whether the property value had been evaluated as true or false, and that result has now been added. |
SR-D4304 | 444436 | Locale object handling added to SimpleDateFormat | Configuring an Authentication Service with signing certificates failed at runtime with a invalid date exception in non-English locales. This has been fixed by passing the locale object as parameter to SimpleDateFormat. |
SR-D5076 | 457318 | Table layout overflow fixed for Microsoft Internet Explorer 11 | When a table layout had more than 10 columns, the table layout was overflown to right side of screen in Microsoft Internet Explorer 11. This has been addressed with the addition of a display:inline-block. |
SR-D5079 | 438381 | Handling added for empty UILabel in grid fields | When using a Datetime property with a default format, opening the filter popup and clicking on the 'select all' check box caused the format of the values to break. This was traced to ".pyUILabel" being passed as empty, and handling has been added for that in "pzUniqueValuesGridFields". |
SR-D5196 | 446367 | Hardcoded prweb reference removed from the REST connector to enhance flexibility | The DASS for pegarobotics/RobotManagerHostDomain allows specifying the instance where Robot Manager is hosted. Previously, connect-REST pzInvokeRoboticAutomation contained a reference to the resource path {RobotManagerHostDomain}/prweb/PRRestService/robotics/v1/automations which forced the use of prweb. In order to add flexibility, the hardcoded prweb reference has been removed from the REST connector resource path, and the pegarobotics/RobotManagerHostDomain) DASS's default value has been updated to include 'prweb' in it. Local sites should update DASS accordingly to point to an updated URL with prweb if needed. |
SR-D520 | 435486 | Wait corrected for sub case after reopening | A re-opened parent case was not waiting for the sub case when a sub case was reopened, but it did wait if there was no sub case on the reopened parent case. This has been resolved by enhancing the system to better handle the reopen of activator and dependent work objects by checking the reopen time: - pzGetAllStatusforDepClass activity: added step 2 to consider activator reopen time - pzGetMessageKeysForFlowDependencies list view: added criteria to filter on reopen time |
SR-D5309 | 438879 | Merge multiple branches tool updated to resolve selection error | When an application was configured to not allow branches to be merged without being reviewed, the "Merge multiple branches" tool did not allow any branches to be selected even if they had been reviewed. This was traced to the pzLoadBranches activity using local.reviewStatus even though the local variable was not required in this case. To resolve this, the activity has been modified to use Param.reviewStatus to pass the parameter page to pzSetBranchReviewStatus activity. If the 'when' rule pyAllowMergeWhenNotReviewed is set to false, the checkbox will be enabled for branches which are reviewed. For branches which are not reviewed, the checkbox will be disabled and the message "Please review the branch before merge" will appear. |
SR-D5388 | 457347 | Corrected dropdown focus issue with dynamic layouts | The focus was not retained on the dropdown field whose property was used in the dynamic layout for the refresh condition. Investigation showed that in pzpega_ui_doc_focus.js, the function "focusNextElement" was setting pega.u.d.gFocusElement set to null after the first load. This has been corrected. |
SR-D5404 | 444566 | Support added for nested grids with child categorization | Show Details and Expand All were not working as expected in a repeat grid with a nested grid scenario where the parent grid had Show Details enabled and the child grid had categorization enabled with one column selected for categorizing. Investigation showed that a null page was being passed (final @baseclass pzGridSortPaginate activity) due to a lack of support for considering page lists that are embedded in a page different than the step page. To add this support, the activity has been modified to use tools.getProperty(...) instead of myStepPage.getProperty(...) if the data source page list is not an embedded property in the parent row page. |
SR-D564 | 438146 | Removed job for column population when it is not needed | 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. |
SR-D6265 | 475306 | Cursor action corrected for pyRecents section refresh condition | If a “Layout Group” was used to add content in the left panel of the User Portals, the inclusion of the out-of-the-box pyRecents section with the standard refresh condition resulted in incorrect cursor behavior when selecting landing page options, displaying the content in a tab while the cursor in the left hand panel jumped up or down one position. Investigation showed that the index in the bar menu was wrongly set in sessionstorage when separators were present, and the issue has been resolved by updating the setstate and maintainstate methods to not consider the menu-separator in calculating the index. |
SR-D6695 | 482517 | Predictive model now handles database oeprations progress states | When attempting to create a predictive model, the page was hanging and would not process. Investigation indicated that this was a result of a missing use case from recent changes made to the progress bar logic for termination conditions, and has been resolved by adding handling for database operations progress states. |
SR-D6769 | 471240 | Corrected tab closing issue for multiple clicks of Get Next Work | While clicking multiple times very fast on a link configured with Get Next Work action, multiple tabs were getting opened with the same work object details and were not auto closing. This was traced to Issue with a stale conflictingHost in the handleGadgetLoad function, and updates have been made to the handleGadgetLoad function so it will get a new conflictingHost if the action is getNextWorkItem. |
SR-D6947 | 444604 | Email AttachmentPage updated to support use of Data-WorkAttach | Attachments were not getting appended in the email sent by the Agent SendCorr. This was traced to a null Page that resulted if the attachment was of type custom Data-WorkAttach, and has been resolved by modifying the condition check on the objclass of AttachmentPage to change it from equalsIgnoreCase(Data-WorkAttach-File to startsWith(Data-Work-Attach-) . |
SR-D7427 | 444636 | Stack overflow error resolved for pxObjClass returned as declarative target | After installation, logging in for the first time as [email protected] with the temporary password was generating an exception. Investigation showed that the system was attempting to obtain the class name of page containing a declarative target and ended up in recursion due to pxObjClass, which was read while getting class name, being returned as a declarative target from the conclusion cache. To avoid this, the code has been modified to ensure that pxObjClass can never be a declarative target. |
SR-D7696 | 482003 | Correct very large decimal number rounding error | Rounding errors were seen in a text input field for decimal property configured to round to 2 decimal places and format with comma group separators if more than 15 digits were entered. The first time the focus moved out of the field, the rounding was correct. After clicking save, which performed a reloadSection with activity SaveAndContinue (form save), the value was rounded incorrectly. This was an issue with the ability of javascript to handle large decimal numbers as type number, and has been resolved by changing the handling to be of type string. |
SR-D7798 | 464268 | Grid reordering has correct row numbers in embedded panes | When using an expand pane grid with row numbering and row reordering enabled, normally reordering any rows handled the row numbers as expected. After a new record was added in the Embedded Pane and the rows were interchanged/reordered, the row numbers were not reordered with respect to the numbers. Expanding a row and reordering it with the previous row resulted in the numbers being correct and swapped, but collapsing that expanded row then showed its old number. Attempting to expand the above collapsed row/wrong number row instead expanded the previous row. To resolve this, the performModalAction function in ui_grid JS has been updated so the row page and primary page will be recalculated even for single expand reordering case. |
SR-D8319 | 445546 | Case name caption security inserted with XSS filtering | In order to protect against the possibility of executing malicious JavaScript code by entering an appropriately modified name while adding new case type, pyCaption in menu items has been made HTMLSafe by converting JSON through the GSON library. An additional fix has been made to use XSS filtering to ensure the script does not execute while page is loaded. Additional handling for Firefox has also been added to normalize tabName to properly display Recents. |
SR-D8467 | 456412 | Resolved false alarm exception for Cloud BIX extraction | BIX Extraction on Cloud was intermittently throwing an exception even though the BIX Extraction was successful. This false alarm was triggered by inconsistencies in an API within the BIX extraction module used to determine if files existed on a Cloud S3 location post-extraction, and has been resolved by removing the file check. |
SR-D8650 | 475300 | Handling added for null sort order in file import metadata | A NullPointerException was seen while fetching the sort order of indexes during a file import. This was caused by a null being returned for an index that did not have the sort order in the metadata, and has been resolved by adding a null check; if the metadata of the index returns "null" as sort order, then the order will be set to "A". |
SR-D898 | 435997 | Pega0069 alert accuracy resolved for UHC FinishAssignment | Pega0069 alerts were not raised for the CS commit and confirm harnesses, and the reported total duration was not always accurate. This has been resolved by capturing document busy/idle for CS harnesses. |
SR-D9119 | 481687 | Handlng improved for rollback of Hfix with dependent HFixes | Attempting to rollback an HFix with dependent HFixes resulted in a Hazelcast jar exception. Investigation showed the DL included the same jar multiple times in the dependent hotfixes, which was a result of how the DL was created via the hotfix process. In order to better handle this scenario, when there are multiples of the same entries to delete the message will be logged and the process will continue if the entry is not found in the database. |
SR-D9132 | 461283 | Performance improvements for EventStoreWriter class | The cache protocol has been modified In order to improve performance for the EventStoreWriter class. |
SR-D9160 | 446526 | Pega-RULES session decryption issue resolved | When the Pega-RULES session encryption key was updated (rotated) after 90 days by the pyValidateKMSMetadata agent, the in-memory version of the key was then corrupted leading to a failure to decrypt the session header. This had the result of preventing any users from logging into the system. Users could connect to the login page and enter their credentials, but after clicking the Login button they were redirected back to the starting login page and their credential information was cleared. This was traced to the pulse change of SystemCDK moving the encryption and decryption process to inconsistent state where the CurrentSystemEncryptKeyIDHash still contained the old CDK ID.To resolve this, the system has been updated to use only ActiveKeyID instead of the previous behavior of using both ActiveKeyID and CurrentSystemEncryptKeyIDHash. |
SR-D9242 | 483173 | Security improved for DownloadFromServiceExport | In order to improve security, the activity “DownloadFromServiceExport” now requires authentication and explicitly blocks attempts to traverse up directories. |
SR-D9511 | 465301 | pyPreTriage and pyPostTriage flows now default to Draft Mode Off | The out-of-the-box pyPreTriage and pyPostTriage flows had draft mode turned on. Due to this, Email Triage cases in production systems were sent into the problem flow. This has been corrected by turning off draft mode for pyPreTriage and pyPostTriage flows. |
SR-D9610 | 477235 | Check added for null values in boolean filter of column properties | Null values in the filter were showing as "NO" when 'Filter by Format' was enabled for filtering a boolean property (Checkbox) in the Column Properties of the table. This has been resolved by adding a check for empty values. |
SR-D9922 | 481404 | Case Notes view has proper line wrapping in Google Chrome | When case notes were opened in the Google Chrome browser, the view did not wrap. This was traced to a style attribute for white space which caused the line breaks to be collapsed in Google Chrome, and has been resolved by modifying the DisplayNote HTML to handle the wrap use case. |