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 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.)
Low-code Application Development
Special Note
Ticket # | Issue # | Description |
Special Note | E-98032 | An update has been made to more accurately measure Session counts and Decision counts when the decision results in no action. As a result, an increase in metrics may be seen as Session and Decision count totals will now include these "no action" counts. |
Case Management
24.2 Resolved Issues for Case Management
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-A15775 | 829306 | Failed status correctly announced in BPNotes | JAWS was not announcing Failed status in the pzBPNotes section. This was traced to a missing focus event for the icon and has been resolved by replacing the Skipped and Failed label with a button to display pyTempText instead of the smart tooltip in the pyBPNotes Section. | Case Management |
INC-A19066 | 848293 | Corrected process model export | Exporting a process model to an external format such as XPDL or BPEL was generating an empty export.xml file. This was traced to an error in checking the type of the parameter sResultXML, and has been resolved. | Case Management |
INC-A23729 | 855365 | Dev Studio security updated | Cross-site scripting protections have been updated for Rules and Ruleforms in Dev Studio. | Case Management |
INC-A23925 | 839191 | Improved security for potential cross-site scripting | Cross-site scripting protections have been updated for the case type rule name. | Case Management |
INC-A27598 | 855364 | Attachments documentation updated | The documentation for Extension points and supporting Rules for attachments has been updated to specify that when using pzMultiFilePath control along with pyMaxDragDropAttachSizeMB setting, it is required to have section pzAttachFileDDFileList in the UI. | Case Management |
INC-A28485 | 848581 | Updated handling for pyFlowData clipboard with Tree Navigation | When using TreeNavigation7/ TreeNavigation in screenflow, navigating the case generated clipboard errors from pyFlowData. This has been resolved by updating the parameter handling in pxShowSubFlowData and adding the local variable flowStepPage. | Case Management |
INC-A28980 | 855360 | Updated logic for SaveAllAttachmentsDD | When using an Attach File button configured to call the pyAttachContent local action followed by a refresh of the current section, the optimistic locking refresh message was not shown as expected and the transaction committed stale data to the database. The section contained a table to display the attachments based on a property that refers to D_AttachmentList, and investigation showed that the file upload component pzSaveAllAttachmentsDD was updating the pxUpdateDateTime property to currentdatetime. This was traced to previous work done in pzSaveAllAttachmentsDD, and has been resolved. | Case Management |
INC-B11685 | 862941 | Pulse notification link description read by JAWS | When a JAWS user selected the notifications link on the main navigation menu using the keyboard, the notifications that were listed in the sub-menu were not read. This has been resolved by changing the role type to component/widget and the value to Link in the pzShowNotificationDefaultWrapper section. | Case Management |
INC-B1330 | 855312 | Display customized error messages on attachment widget | Support has been added to show customized error messages on the attachment widget if the upload fails. The following activities have been updated: CallVirusCheck - to include MessageOnUploadFailure parameter pySaveFileContent - to include MessageOnUploadFailure parameter pzUploadAndSaveFile [Data-WorkAttach-File-Temp] - updated to send a parameter MessageOnUploadFailure to messages pyVirusScanFail / pyUploadFailed |
Case Management |
INC-B147 | 868229 | Handling added to avoid incorrect cover count value | While working on and resolving child cases, a validation error on screen was intermittently causing the pxCoveredCountOpen value to be decremented by one. Handling has been added to address this issue and maintain the correct count. | Case Management |
INC-B1539 | 857416 | Corrected multiple SLA instances after problem flow | Given a screenflow which had a flow level SLA defined, if an error was encountered when trying to enter the final assignment step and the SLA was started, the SLA did not reset when the issue was fixed and the case restarted using the Restart flow action. After restart, the system created an additional entry for the SLA problem flow while not removing the old SLA entry. This has been resolved by updating the flowfua flowmethodbody function so that if the pyCompanionFlow property is not empty on pxFlowPage(currentFlowpage), the SLAtoUse variable will be set to null to avoid the creation of multiple SLA queue instances. | Case Management |
INC-B15400 | 866420 | Work-Cover-SimpleCase updated to use ResolveAndCloseCase | Cases were not being cleaned up as expected when using the Resolve Case action in the Actions menu. Investigation showed the flowaction was calling the UpdateStatus activity, which updates the resolution status but does not clean up the open assignments. This has been resolved by updating the case wide action in "Work-Cover-SimpleCase" case type(pyDefault) from pySetStatusResolved to pyResolveAndCloseCase. | Case Management |
INC-B17952 | 869512 | Activity and data transform rules updated for Questionnaire property handling | When a field was created for the first time under "Map Answer to Field" -> "Create New" in Questionnaire, entering a value starting with the letter "A" in the modal and submitting it set the value to "zzzz" instead. This was caused by the value not being properly appended to the pagelist, and has been resolved by updating the activity and data transform rules to correct the handling. | Case Management |
INC-B18712 | 870679 | Aria-labels updated for icons on Case Type Questions View | When creating a case type as a questionnaire, some icons were missing the accessible helper text aria-label in the edit/add questions view of App Studio. This has been resolved by updating the helper text value defined in the pzEmbeddedSurveyQuestion and pzSurveyQuestionTemplate sections. | Case Management |
INC-B18764 INC-261181 |
875350 815696 |
Designer Studio portal launch speed improved | Launching a portal from Designer Studio was very slow. This was caused by using a rule resolved report definition which was trying to get all application logos using pzLoadApplicationLogo activity, and has been addressed with an update which will switch the application context and open the binary file record, then switch to the correct application context and use efficient data page handling to fetch the application logo details. | Case Management |
INC-B1967 | 855591 | Corrected unexpected Stage rule creation | A Stage rule was incorrectly auto-created in a Production ruleset on save of a privately checked-out Case Type rule. This was traced to a previous change made in the handling for a case type rule with a Stage Rule reference, and has been resolved. | Case Management |
INC-B19766 | 873684 | Updated ReassignToWorkBasket to correct added history record | When an SLA rule to reassign an assignment after a timer expiration was applied to a case, a History type A record was incorrectly added. This has been corrected. | Case Management |
INC-B21012 | 874363 | Unchecked caching of options checkbox in Map Answer to Field | A new "Map Answer to Field" value was not available in dropdown. This was traced to "enable caching of options" being checked inside Map Answer to Field in the pzSurveyQuestionViewAside section, and has been resolved by unchecking the option. | Case Management |
INC-B21986 | 874372 | "Map Answer to Field" value retained when switching questions | After a new field was created for a question via the "Map Answer to Field" dropdown while configuring a questionnaire, switching to another question and then switching back cleared the "Map Answer to Field" value. This was traced to a data transform in pzSetQuestionAndFieldNames setting the value to null during the switch, and has been resolved by removing the step. | Case Management |
INC-B22083 | 873979 | Calendar control registered with BAC | Due to being deprecated, the pxCalendar control was not properly registered with BAC. This has been resolved. | Case Management |
INC-B23963 | 875855 | Added file upload handling for user with quote mark in name | When a user with a single quote in their name (eg Joe O'Sullivan) attached files to a case, those files were not able to be previewed or opened. This has been resolved with an update to the pyAttachmentFeedDescription and pyWorkAttachmentIcon controls which will modify the UploadedBy value to replace the single quote. | Case Management |
INC-B24138 | 877139 | Corrected file attachment error handling | When using the dragDropFileUpload page in pyUploadFile activity, an error was generated for an invalid file type but clicking submit after the error was generated still attached the file. Investigation showed that in the final activity pzSaveAttachment, messages were getting cleared off before the check for the messages was performed; this has been resolved by removing page-clear-messages from step 4 in the activity. | Case Management |
INC-B26685 | 878468 | Deleted attachments cleared on the screen | When using the delete link to remove a document, the UI did not update to reflect the document removal until a browser refresh was performed. This has been resolved by checking the "Reload once per interaction" check box in D_AttachmentFieldInfo. | Case Management |
INC-B28855 | 885744 | ocument Viewer updated for more than 50 attachments | When attempting to view a case attachment containing more than 50 documents, the 51st attachment and beyond were blank and the error "The attachment is not available" was generated. This was due to the DEFAULT_FETCH_SIZE = 50 value being hard coded, and has been resolved with the addition of the DSS "maxRecordsToPreviewAttachments" to expand the number of attachments fetched for viewing. This has been added to the Pega-EndUserUI ruleset, and has a default of 100. | Case Management |
INC-B29165 | 880855 | Improved accessibility for "Where am I" icon | The "Where am I" icon has been updated with a title attribute for accessibility by creating a field value for pyCaption which is mapped to the title in pyAssignmentsLabel for "Display Flow Location". | Case Management |
INC-B29572 | 881417 | Case status flag updated with alt text | To improve accessibility, alternative text has been added to the case status flag. | Case Management |
INC-B31136 | 882357 | Improved stage progress color contrast for accessibility | To improve accessibility, the green used to indicate the active state of the stage progress section in pyDisplayStages has been modified from # 179595 to # 127F7F to meet color contrast ratio standards. | Case Management |
INC-B31250 | 886816 | Added handling for annotating subflow | When attempting to add an annotation in a sub-flow in App Studio or Dev Studio, the error "Server response error, no update data returned." was shown in a popup. This has been resolved by adding the pyShapeType "Data-MO-Annotation-Comment" field value in the Pega-ProcessArchitect rule set to avoid the error. | Case Management |
INC-B3548 | 858165 | Corrected hint text for case lock | When using a parent and child cases structure in Constellation, if a case was locked (user 1 started an assignment in one of child case) and a second user attempted to start an assignment in another child case that belongs to same parent case but which was not opened by user 1, the error "Flow_CoverLockFail THK-XXXX [user name]" was displayed instead of the expected lock error message. This has been corrected by updating workUnlock to show the message as expected. | Case Management |
INC-B3565 | 858163 | pxIconShowReopenScreen rule deprecated | The Show Reopen control (pxIconShowReopenScreen) was generating a 403 security alert for an unregistered activity. As there are workarounds and other controls available which can be used to achieve the same functionality, the pxIconShowReopenScreen control has been deprecated. | Case Management |
INC-B36450 | 888667 | Updated accessibility for BulkActionsWrapper | In sections pzBulkAdd, pzBulkUpdate and pyBulkProcessingSearch, the headers were being added as a standalone label instead of being adding as a header on a wrapper layout. This has been resolved by adding the header title value to the sections to improve the accessibility. | Case Management |
INC-B4796 | 857205 | Repaired Disqualify this action from bulk processing | After update, using "Disqualify this action from bulk processing" was not working. This was an inadvertent side effect of work done to the pzPreBulkProcessModal activity to consider context, and was caused by the pyGetRelevantActions activity hardcoding the class as Work- when adding the Transfer Assignment flow action. This has been resolved by removing the hard-coding and modifying the pzPreBulkProcessModal activity condition to check the hierarchy of the class. | Case Management |
INC-B4827 | 857864 | GetStageList activity updated for improved backwards compatibility | After upgrading from Pega 7 to Pega Infinity '23, using the activity method@pxExecuteAnActivity(CaseTempPage,"pzGetStageList") to get a case stage list did not return all of the stages defined in a case type as expected, but instead current stages were skipped and stages were returned without the case current stage. This was traced to a difference in handling due to the introduction of the pyIsInitializationStage property in Pega 8 which is used to retrieve the stages list. In order to improve backwards compatibility, the 'when' condition param.skipCurrentStage==true has been added in step 7 of the pzGetStageList activity to check if the current stage needs to be skipped. | Case Management |
INC-B4850 | 862673 | Accessibility added for selected radio button on Question Page | When navigating the 'questions' with a screen reader, the user was not made aware of their selected radio button once they've completed the action. This has been resolved. | Case Management |
INC-B5511 | 855879 | Invalid file uploads correctly removed from server | When performing a file upload through the profile picture on the user portal configured on Theme Cosmos, the file was uploaded to the server's temporary location despite failing validation and throwing an invalid file error message on the screen. This has been resolved by passing the necessary parameter as true to the uploadFile function to remove the invalid file from static content storage once the file information is read. | Case Management |
INC-B597 | 853720 | Corrected reassignment issues for flow with dash in the name | Routing cases or assignments was not working correctly if the flow name contained a dash "-" character. This was a missed use case for SaveAs, and has been corrected. | Case Management |
INC-B8440 | 860655 | Link attachment handling updated for Constellation | The save timestamp was modified by the attachURL activity while adding a link as an attachment, causing an error when the timestamp did not match the eTag. To resolve this, a condition has been added to the skip saveAttachment activity in the AttachURL activity if the case is Constellation. | Case Management |
INC-B8651 | 863957 | Updated createdBy field handling for bot attachments | When a case was created from an email with an attachment, attempting to check the attachments section showed the file but indicated its status as "Loading..." and the attachment was not accessible. Investigation showed the DX API response for get attachments did not contain createdBy and createdByName for files which were attached by the system/bot. This meant the files were not accessible as the Attachments widget link to download the attachment is based on those two fields. To resolve this, an update has been made to set the createdBy and createdByName fields in the DX API response when the attachments are attached by system/bot. | Case Management |
INC-B9875 | 863588 | Ensured duplicate key exception for customized GenerateID | After upgrade, a customized version of the GenerateID activity reused an existing ID and overwrote an existing case. This scenario did not generate a duplicate key exception as expected during the case creation process (AddWork), which was a behavior change from Pega 7. This was traced to a difference in handling for newObject value, and has been resolved by updating the RecalculateAndSave activity to set newObject to true if pzInskey is not present on the work object. | Case Management |
Cloud Services
24.2 Resolved Issues for Cloud Services
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-B12861 | 877518 | Corrected values for PEGA0117 alerts | PEGA0117 alerts were showing incorrect values, causing alerts to be triggered with a time well above the threshold that did not match the total time. This was traced to the calculateMetrics method in QPExecutionContext.java, and has been resolved by setting the total request time to the current duration instead of the cumulative value of the total request time. | Cloud |
INC-B25421 | 876780 | Product rule loads data instance key | The data instance key was not loading in the Product rule. This was an unintended side effect of work done to enable the instance picker to work with missing columns, and has been resolved with an update to ensure the pzInsKey is populated by the query as part of the individual instances to include section. | Cloud |
INC-B26562 | 883276 | Support added for double-quoting Postgres GRANTs with special characters | Errors were seen when importing a new table on a system with a base and admin user configuration where the base user name required quoting to handle special characters. This has been resolved by adding support for quoting the user identifier when generating GRANTs with Postgres. | Cloud |
INC-B29625 | 881986 | Property optimization will skip classes mapped to non-relational tables | Attempting to optimize properties in @baseclass queried all databases mapped to by all concrete classes derived from @baseclass. One of the derived concrete classes was mapped to a Cassandra database, which is a file system instead of the expected relative database, and the inclusion generated a classcast exception. There was a workaround of manually excluding these classes via 'expose.classes.excluded', but this has been addressed with an update which will correctly identify non-relational database tables such as Cassandra or Couchbase databases as invalid for column population and skip them. | Cloud |
INC-B33933 | 885035 | prpcUtils updated to use explicit schema properties | The error 'Could not fetch code set versions from database' was generated while running the prpcUtils. This has been resolved by using explicit schema properties in generated prbootstrap.properties instead of schema-qualifying the table name property. | Cloud |
INC-B8226 | 859448 | Updated DDL generation to remove view comments | After creating a custom package and installing it to a higher environment, the DDL for automatic Installation did not work in DB2. Investigation showed that if a view is created prefaced with a comment, DB2 will return that comment as well when the view's select query is requested and the export process will include that comment in the metadata. There is a step in the export to check that the select statement includes a "create view as" statement at the beginning, and if it is missing, it is appended. This causes an invalid query as shown in the schema export. This has been resolved by filtering comments out of the view statements. | Cloud |
Conversational Channels
24.2 Resolved Issues for Conversational Channels
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-A28855 | 874604 | Corrected repeat of ConversationFlow called by Create Case Shape | When a conversation flow invoked using CreateCase shape from a conversation flow was advanced to the end, it started from the beginning of the invoked flow again. If the same flow was started and advanced without using CreateCase, the start over did not occur. This has been resolved by revising the conversational "create case" shape logic to use the create top case functionality instead of a custom function. | Conversational Channels |
INC-B11552 | 864327 | Extension added for custom triage class | After update, the SLA was not being applied to a custom class used for email-based triage cases. Investigation showed the OpenAndLockWork step was failing, causing the process to exit the Establishcontext activity and preventing the ProcessEvent activity from running. To handle this use case, the extension pyCheckAndMigrateInteractionCases_Ext has been added to set the objclass of the email triage case; this defaults to "Work-Channel-Triage" and can be modified as needed. | Conversational Channels |
INC-B12444 | 864834 | Corrected chat transcript migration for authenticated events | After update, chat transcripts for older cases were not visible. This has been resolved by updating the migration mechanism used by pyHistory for outbound authenticated events. | Conversational Channels |
INC-B14761 | 884220 | Updated CaseMappingActions handling of hidden content | When using a local action to call pzCreateLinkedCase, the case was created but a blank overlay was seen that persisted until there was a click outside of the section. This has been resolved with by updating the pzCaseMappingActions section hidden content with none function. | Conversational Channels |
INC-B15287 | 868504 | Corrected two pyEmails created on OEML cases | After creating a case and sending an email to a customer, the customer reply on the same thread created another pyEmail on OEML correspondence case. This was a missed usecase for "New outbound email" and has been resolved with an update to pzCreateInteractionReply. | Conversational Channels |
INC-B16449 | 867462 | Updated HistoryIndex property handling for migrated cases | After update, emails were not being properly attached if the related case was created before the update. This was an issue with the method used to set the pyHistoryIndex property on the workPage, and has been corrected. | Conversational Channels |
INC-B17768 | 868507 | Email bot templates include localized languages | When multiple localized email templates were configured through an email channel, the language defined on the template was not displayed when selecting the template in pyEmailReplyTemplate. This has been resolved with an update which allows the template name preview to include the language information, for example "Thankyou_English", "Thankyou_French". etc, when multiple languages are configured on email channel. | Conversational Channels |
INC-B18492 | 871374 | Time to live attribute added for Pega Digital Messaging Token | The expiry attribute was missing in the digital messaging token generated in for outbound APIs. This has been resolved by adding a time to live token for the JWT authentication method. | Conversational Channels |
INC-B21921 INC-B30324 |
880193 881067 |
Added handling to avoid duplicate queue creation | When incoming messages were sent rapidly, multiple chats with agent case types were called during the queuing process. This resulted in duplicate conversations being created in the Customer Service layer with a single customer session having multiple conversation IDs created and routed to multiple agents. Some agents received an "Assignment not found" error. To resolve this, an update has been made to suppress the duplicate escalations. The customer will see a system message such as "Your request is already under process" which can be customized in the 'cyDuplicateEscalationMessage' question rule. In addition to this, the 'cyDeleteDuplicateQueuedChat' queue processor has been added to delete the queued duplicate conversation if one is created while one is already in process. | Conversational Channels |
INC-B22367 | 878550 | Timestamp correctly localized on email conversations | The timezone configured in the operator localization section was not being honored in the email manager Constellation portal and was being rendered in GMT. This has been corrected by updating pxLoadEmailThreads to ensure the timestamps are localized on the server side. | Conversational Channels |
INC-B23417 | 873694 | Agent name correctly populated in reply | The Agent name was not populating in a reply. This was caused by the logic assuming the use of Asyncemailprocessing, causing the UserName to not be set when it was not used. This has been resolved by updating the activity with the proper sequence of logic and jump statements. | Conversational Channels |
INC-B26569 | 880139 | Resolved Email Triage cases show correct SLA details | After the email triage cases were resolved in Constellation, the SLA details showed dummy values. This was caused by the resolved case having both Goal and Deadline values as null in D_pxTriageCaseMetadata, so the CaseSummary widget displayed the date difference computed from 1970. This was a missed use case for resolved cases that has now been addressed. | Conversational Channels |
INC-B27145 | 879726 | Training recording from email made consistent | The training data was not recorded as expected if a CSR responded to an email by using the reply button instead of the suggested replies. This was due to a difference in handling: the pyReplyTemplateID was set on pyWorkPage if the template button was clicked, but selecting a template in composer used a different rule which did not set the template ID value on pyWorkPage so it was not present on the primary page. In both cases, the template value result is subsequently set on the ReplyMetadata page in pypopulateReplyMetadata, and this issue has been resolved with an update to use the this page in the 'when' rule in step 2 to submit the feedback on reply. | Conversational Channels |
INC-B30137 | 883734 | Manager key handling updated | The Manager key in Digital Messaging security and Private Key are now obfuscated. | Conversational Channels |
INC-B31710 | 886246 | Corrected br tag replacement handling | In some instances when br tags were removed (pxExtractLatestReplyFromBase64), the plain text was presented without spaces between the words. This has been corrected with an update across elements in pzTextToPropertyMapping and pyParseReplyMail to replace br tags with new line when text with br tags is sent for NLP analysis. | Conversational Channels |
INC-B32934 | 883089 | Corrected subject repeating in email thread history | When an email was forwarded to a third party, the message subject was repeating in the email body in the email thread history. This has been corrected with an update to prevent unnecessarily adding the subject to the forwarded body. | Conversational Channels |
INC-B33098 | 883560 | Updated handling for recipient view in email compose window | While performing "Reply All" on an inbound email which contained more than 15 To/CC recipients, some of the recipient email IDs were truncated when viewing the list. This has been corrected by retrieving the full recipient list on "View All" by loading the pyHistory record from the database. | Conversational Channels |
INC-B34829 | 889053 | Base 64 inline image handling updated | Illegal characters were detected during the sending of auto-acknowledgment emails, causing an exception. Investigation showed this was caused by the recent change in the pxReply activity which replaced pxPostMessage with pzUploadRTEImageFromBase64Url to handle base 64 inline images, and has been resolved by using "Image+<datetime>" instead of the alt attribute for the filename. | Conversational Channels |
INC-B35986 | 889070 | Corrected table headers in email thread | Table headers were not displayed in the email thread on a case when defer load email was set to true. This has been resolved by removing new lines from the generated email content when using the correspondence template. | Conversational Channels |
INC-B37192 | 888182 | Added handling for History Index race condition | Incorrect To/CC recipients were populated on the reply window. This was traced to a race condition related to the History Indexes, and has been resolved with an update to set the correct history index in this situation so emails are properly threaded and recipient details are shown accurately. | Conversational Channels |
INC-B4724 | 860570 | Updated CTI connection handling | A user was intermittently not automatically connected to the Computer Telephony Integration (CTI). This has been resolved with an update to add the element to activesub map if activesubscriptionnew is undefined. | Conversational Channels |
INC-B949 | 858121 | ParseReplyMail regex updated | When a plain text email reply matched the regex from ParseReplyMail in the body, the message was truncated unexpectedly from that point. This has been resolved by modifying the regex. | Conversational Channels |
Data Integration
24.2 Resolved Issues for Data Integration
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-B17344 |
875399 | Utility Method available to validate JSON against YAML Schema | The validateJSONAgainstYAML function has been made available in the Utility function of AutomationUtils to validate JSON against YAML schema and return a list of validation messages. | Data Integration |
INC-A1102 INC-B6098 |
808578 861335 |
Corrected validation behavior for append and map to step | When a new data transform was created with save as, an existing validation removed elements if a new child element was added to an append and map to step. This was a missed use case, and has been resolved with an update to the 'when' condition for the JSON data transform appendMapTo validation rule such that all elements remain intact when a new child element is added. | Data Integration |
INC-A1110 | 807373 | Corrected cache handling for link control data | Stale data was seen on the link control if it was referred from an embedded property, leading to information from one case to be carried into another. This has been resolved by updating webwb_pzpega_ui_template_link to get the correct value. | Data Integration |
INC-A12208 | 860064 | Added null pointer handling for external database table mapping | A runtime error was generated while trying to map PEGA class with view in an external database using a JDBC connection. This was traced to a null pointer exception caused by data.internal.access.mssql.SQLGeneratorMssql.getSchemaName, and has been resolved with an update which handles the null pointer exception and logs an informative error message indicating the absence of the default schema. |
Data Integration |
INC-A13631 INC-A10142 |
859231 | Additional tools added for diagnosing BLOB issues | Additional tools added for diagnosing BLOB issues In order to assist with diagnosing corrupted BLOB issues which are not recoverable with the PegaCBU tool and fixBLOB utility, additional DSS settings have been added to the Pega-Engline ruleset with default value of false: - validateOrphanPageListIndexEncoding: When true, avoid adding orphaned page list indexes which are referred from a page and print DirectStreamEncoderV7SkipTargetedEncoding. - skipTargetedEncoding: when true, skip targeted encoding. Try to re-encode if any exception is encountered during encode process and correct the issue only if the debug logger StorageStreamCommonImplDiagnosis is enabled and the DSS has the value true. Log additional information only when DirectStreamEncoderV7Diagnosis debugger is enabled. |
Data Integration |
INC-A16756 | 871239 | Added handling for pxUpdateRecord failure during save | Intermittent issues were seen with pxUpdateRecord failure when attempting to update the database table record by using a savable data page, causing cases to need reprocessing. The exception "Job Scheduler [ClaimCreation2] activity [CreateCC] execution marked as failed with message [pxResults (class:" was generated. This was traced to an invalid value for a PageList, and has been resolved by adding a retry mechanism along with a check for property mode before generating an InvalidParameterException. | Data Integration |
INC-A18369 INC-B18082 |
870412 872107 |
Case lock maintained during Connect REST | After upgrade, invoking Connect REST to fetch data from an eternal system as part of case creation resulted in the case lock being released and the database commit failing. This was traced to the getSimulationActivity rule being invoked which reset the access group and rolled back any database transactions associated with the thread. This has been corrected so the correct access context is maintained. | Data Integration |
INC-A19931 | 862362 | Handling added for tenant URLs registered with Microsoft Azure | The Multi-Tenant Hash IDs generated by the Open ID Connect Setup contained wild cards which were disallowed by Microsoft Azure during the URL registration. This has been addressed with an update to remove the '*' and '!' characters from the redirect URL based on the boolean DSS setting "ignoreAsteriskAndBangSymbolInMT". | Data Integration |
INC-A2376 | 842778 | Passivation handling updated for data page serialization | A very high count of ClassCastException errors were generated in the Pega Diagnostic Center (PDC) when trying to passivate an editable D_GetRequestType data page which has a backlink to an autopopulated property on a read-only datapage. This has been resolved. | Data Integration |
INC-A25591 | 855377 | Support added for migrating Oracle optimized index with Primary Key | When upgrading from Pega 7 to Pega Infinity '23, the error message "ORA-00955: name is already used by an existing object" was generated. This can occur when Oracle data pump is used to move the schemas in earlier versions of Oracle 18 or 19, and is caused by parallel threads optimizing the primary key (PK) index while another thread is simultaneously adding the PK index, and has been addressed by adding support for this edge case. | Data Integration |
INC-A26110 | 849725 | Corrected extra column label incorrectly shown | A delegated data type was unexpectedly displaying the "Delete" column header label. The delete functionality was correctly not shown. This has been resolved by updating pzrecordEditor to have the same condition for the Delete label as for the Delete icon. | Data Integration |
INC-A26215 | 869994 | Handling added for SP Rebuild Indexes on database name with dashes | When databases are named with dashes as per Microsoft Azure recommendations, executing the stored procedure sppr_rebuild_indexes generates the error "Unable to execute sql query: EXECUTE PegaRULES884.sppr_rebuild_indexes 'stats'; com.microsoft.sqlserver.jdbc.SQLServerException: Incorrect syntax near '-' ". This has been resolved with an update to handle the stored procedure execution error when database objects containing dashes ‘-‘ in their names are encountered. | Data Integration |
INC-A26543 | 873463 | Prepending dot to fetch non-scaler properties in pxConvertResultsToCSV | Calling auto-populated properties or embedded properties without adding "." before them was not fetching their value while preparing the CSV file in pxConvertResultsToCSV activity. While scaler properties can be fetched without the ".", auto-populate properties are not scaler in nature. This has been resolved with an update to append a "." before the properties to fetch their values from clipboard. | Data Integration |
INC-A27098 | 842792 | Corrected UI Accessibility_ Filter application with ESC key | When using a table list, clicking on the filter to investigate the required value and hitting ESC to exit resulted in unexpectedly applying the filter as if "Apply filter" had been clicked instead. This was traced to the filter popover passing 'reason' as an empty string in this scenario, and this has been resolved by adding a check. | Data Integration |
INC-A2788 | 811937 | Corrected header layout accessibility | JAWS was not reading Heading tags for the Param.ShortDescription value in pzDataTypeKeysAndDescription. This was traced to the ShortDescription being set as a label instead of part of the dynamic layout header, and this has been resolved by modifying the section to include the header with h1 tag. | Data Integration |
INC-A28040 INC-A24588 INC-B22011 INC-B29517 |
848516 847168 875274 881152 |
Corrected clipboard context for append and map | The mapping of a page list was incorrect when placed under a single page. This was traced to an error in the way the clipboard context was being formed in case of append and map to steps, and has been resolved by updating the order in which clipboard context is saved. | Data Integration |
INC-A28634 INC-B38572 |
853538 888499 |
Handling added for DateTime transform error | After update, the date was changed by one day while mapping a property of the type Date (in connectREST) into a DateTime. This was traced to the DateTime losing a day during the JSON transform and has been corrected. | Data Integration |
INC-B10053 | 860673 | Corrected ruleInsKey parameter handling for Admin studio | The rule cache API was not working when invoked from Admin studio. This was traced to the parameter value of ruleInsKey not being populated, and has been resolved by updating the rule ins key variable to camel case. | Data Integration |
INC-B10061 INC-B22579 |
870918 873351 |
Addressed ElasticSearch queue processor errors | After update, the queue processor was generating alerts for broken items. This was due to items being incorrectly queued for the embedded ElasticSearch queue processor when they should have been handled by the SRS queue processor. Alerts were also seen from the pyFTSIncrementalIndexer; it is safe to ignore these alerts as this queue processor may be expected to not be running as it is not used for the Search and Reporting Service. These issues have been addressed and corrected as part of the externalization work to remove embedded ElasticSearch. | Data Integration |
INC-B10224 INC-B27412 INC-B31085 INC-B23839 INC-B25678 INC-B30445 |
880806 | Dev Studio search updated for SRS | In order to support the change from embedded Elasticsearch to Search and Reporting Service (SRS), a new set of search capabilities has been introduced: ENGINE_WORK_ID_SEARCH_GADGET - allows for workid search in Dev Studio's search gadget ENGINE_RULE_SEARCH_GADGET - allows for rule search in Dev Studio's search gadget ENGINE_DATA_SEARCH_GADGET - allows for data search in Dev Studio's search gadget |
Data Integration |
INC-B10336 | 877134 | setSecurityEnabled defaults to false when using NativeSQL queries | Adding a security rule to the work class and trying to run an archival exclusion activity on the WO of this work class generated an error indicating pxobjclass did not exist. Investigation showed that when ABAC filters are enabled, the NativeSQL layer was adding additional filter conditions in the 'where' clause of the query which caused the queries to fail. ABAC filters are automatically added to the query by default if EnableAttributeBasedSecurity DSS is enabled and an ABAC condition is defined, and the setSecurityEnabled setting was true by default. In order to correct the added filter issue, the setSecurityEnabled setting has been changed to false to disable ABAC filters in the query. | Data Integration |
INC-B10336 | 870638 | Additional logger added for archival exclusion | Additional logging has been added to assist with diagnosing issues with ABAC security configuration filter conditions which cause classes to be mapped to a different table while running queries using nativeSQL. | Data Integration |
INC-B11228 | 871068 | Diagnostic logging added for PegaArchiver | Attempting to migrate an uploaded attachment with a name longer than 255 characters or with characters such as "[", "?", "*", "<", ">", "|", ":"] resulted in an error from the pzAttachmentMigrationProcessor queue processor. This has been resolved with the addition of a java step in pzGetAttachmentContent to remove the special characters as well as trim the attachment name to 90 characters. | Data Integration |
INC-B1130 | 861790 | Additional email processing logging added | Additional logging has been added to assist with diagnosing a NullPointer exception which was generated in a scenario where some emails were processed in the dev environment but not in the production environment. | Data Integration |
INC-B11464 | 865694 | Corrected PEGA0130 alert metrics | When examining PEGA0130 alerts for a job scheduler that was running unexpectedly long at time of server outages, the job run time did not match the metrics presented. Investigation showed the system was sending the KPI value for the current duration at every alert, and this has been resolved by changing this to use the cumulative KPI value at every alert. | Data Integration |
INC-B11885 | 862428 | Added handling for system pulse race condition on startup | A newly scaled-up batch node did not pick up new Next Best Action rules. This was traced to a race condition, and has been addressed by reloading the class map into the system pulse module. | Data Integration |
INC-B1193 | 862268 | Corrected exception generated when expanding a property | Datapages were not working correctly, causing case creation to fail. This was traced to a ReadOnlyException that was generated when opening a workobject using ReadOnly Datapage, and this has been corrected. | Data Integration |
INC-B12438 | 868451 | Updated country codes | In order to meet ISO-3166-1 standards, the following country codes have been added: AX ALA Åland Islands BL BLM Saint Barthélemy CD COD Congo (the Democratic Republic of the) CW CUW Curaçao GG GGY Guernsey IM IMN Isle of Man JE JEY Jersey ME MNE Montenegro MF MAF Saint Martin (French part) PS PSE Palestine, State of The code for Romania was previously incorrectly listed as ROM. This has been updated. RO ROU Romania |
Data Integration |
INC-B12718 | 880597 | PerformReindexing accepts parameters to limit scope | In order to facilitate reindexing on sites with a large amount of archived data, pzPerformReindexing has been updated to accept the parameters archivedZipFilePath, startResolvedDate, and endResolvedDate to constrain the targeted archived data to be reindexed. | Data Integration |
INC-B1278 | 869007 | File Listener retry logic updated | File Listener was not moving the file to the error folder as expected after failing to read it three times, but instead was continuing to retry. This has been corrected with an update to properly set the processing status error message so the process continues as configured. | Data Integration |
INC-B13020 | 865532 | Updated retry handling for file listener | After enabling Ignore Duplicate Files and Attempt Recovery for the file listener, the file listener was not correctly retrying up to the maximum number of attempts set. Investigation showed the first failure resulted in the .err file being created which was then queued for retry. However, in the second retry the file listener skipped processing the file and renamed it as a .dup file, which then caused the system to consider it a duplicate file and stop the retries. This has been resolved with an update with additional checks to reprocess unprocessed files instead of marking them as duplicate. | Data Integration |
INC-B13217 | 868743 | REST connector socket timeout made consistent | The socket timeout value given on the REST connector rule form was not consistently applied, causing the observed timeout to exceed the configured timeout in certain situations. This was due to the timeout being calculated as a max time between packets, and has been addressed by setting the timeout to be a fixed value. | Data Integration |
INC-B14091 | 872860 | Logging added for terminate requestor | Additional logging has been added for the terminate requestor function in order to assist with diagnosing problems where the queue processor becomes stuck with "Ready to process" items. | Data Integration |
INC-B14835 | 869414 | Error handling updated for connections using setClientID | The error "ConnectorException: Couldn't establish connection: Method setClientID not permitted" was generated when attempting to establish a connection using Connect-JMS. This has been resolved with additional handling for setClientID() runtime exceptions. | Data Integration |
INC-B1548 | 855344 | JavaBeanViewer updated to remove browser invocation | In order to ensure potentially sensitive information is not accessed without authorization, the 'allow invocation from browser' option for rule "RULE-OBJ-ACTIVITY DATA-ADMIN-IS-JAVABEANVIEWER" has been disabled. | Data Integration |
INC-B15614 | 865845 | Handling added for getAllMessages exception | When attempting to connect to a response queue to clean up messages which had become stuck, the queue looped itself with one error and it was not possible to receive the list of stuck responses. This resulted in a timeout which required a node restart. Investigation showed this was caused by an unhandled exception generated in the getAllMessages flow of MQMessageHandler, and has been corrected. | Data Integration |
INC-B15649 | 879221 | Handling added for mapping duplicate objects | When a JSON data transform was defined with 5 levels of embedded JSON attribute structure while not changing the clipboard context, nothing was mapped after the second page-pagelist in the JSON even though 2 or more sibling pages-pagelist were defined. This was a missed use case, and has been resolved by updating the mapping method to not use the property name as a key for mappings and instead use uniqueMappingID for duplicate properties. | Data Integration |
INC-B1584 | 864674 | en_PH locale added | The en_PH locale file has been added to support the Philippines. | Data Integration |
INC-B16148 | 867348 | Corrected handling for SLA on Assign to Robot Queue flow shape | After creating a flow and adding the "Assign to robot queue" shape, the flow could not be saved after adding SLA to the shape. Investigation showed this was caused by an incorrect property referral in the SLA, and has been resolved by updating the property used for configuring the SLA and setting SLA type as 'Use existing'. | Data Integration |
INC-B16409 | 885357 | Added re-read to correct retry failing due to clipboard corruption | After encountering a "Connection Reset" error that was interrupting the file read, the retry configured on the File listener was also failing consistently with the error "Failed with MapToParseException, Reason: reference must contain property name". This was traced to a clipboard corruption, and has been resolved with an update which will read the CSV headers again in case of error handling and recovery. | Data Integration |
INC-B16409 INC-A29847 |
869693 868407 |
Logging added for diagnosing socket timeout issues with S3 | An IOException was frequently generated when loading bulk data all at once, leading to corrupted clipboard data and a parsing exception. To assist in diagnostic work, logging has been added to track SocketTimeOut and Connection Time to Live. | Data Integration |
INC-B16594 | 870957 | Corrected label default for afternoon period of current date and time | An error in the date/time widget for the current date and time default was evaluating the period between 12:00:00 PM (12 noon) and 12:59:59 PM as AM instead of PM. This has been corrected. | Data Integration |
INC-B16627 | 868068 | Diagnostic logging added for engagement policy issues | Rule resolution tracer loggers have been added along with a check in the skipHitNotFound item PropositionFilter in order to assist with diagnosing issues with actions missing engagement policies. | Data Integration |
INC-B17158 | 867152 | Corrected duplicate data page from API | When using the v2 data_view/{data_view} API, the GetDataPage step was making two copies of the page. This has been corrected. | Data Integration |
INC-B1736 | 866064 | Updated Pega Cloud File Storage (PCFS) handling for duplicate attachments | When migrating attachments to Pega Cloud File Storage (PCFS), attempting to move a file with a duplicate name failed. This has been resolved by updating the pzuploadattachment activity to handle duplicate attachments. | Data Integration |
INC-B17414 | 875701 | Security updated for responses | Cross-site scripting (XSS) security has been updated for service request responses. | Data Integration |
INC-B1756 | 872606 | Updated Purge query handling of clipboard | The purge function was not working as expected. This was traced to queries in one of the steps in the purge activity not being handled correctly Oracle version 19 and passing empty strings as rulesetlisthashes, and has been resolved by improving the Select purge query method of storing the result to clipboard. | Data Integration |
INC-B18059 INC-B31660 |
884097 884112 |
Corrected MapInput API exception | After update, the mapInputJSON() API was generating an IndexOutOfBound exception while mapping the list data. Analysis showed the API worked if there were no new page lists in the request payload, and the issue was traced to previous work done in the PZAPPLYDATAFORPERFORMACTION activity. This has been corrected in Constellation with the use of a content section that uses embedded page list properties with declaratives. | Data Integration |
INC-B18729 INC-B17679 |
876658 871570 |
Diagnostic logging added for PegaArchiver | Additional logging has been added to assist with diagnosing issues around excessive run time for the Archive function. | Data Integration |
INC-B19006 INC-B18991 |
884107 888032 |
BLOB reindex added to clear lingering orphan data | Issues were seen with unexpectedly large database consumption, including sporadic runtime exceptions related to StorageStreamCommonImpl. Investigation showed a large segment of the database was occupied by a work table associated with pzPVStream and DirectStreamEncoder, and that space was not being released even when the objects were removed and a resave was performed. To address this, an update has been added which will forcefully reindex the BLOB during encoding to ensure the orphan data is correctly cleared. | Data Integration |
INC-B19025 | 880562 | Handling updated for TemplateInputBox property creation | After upgrade, attempting to save an instance into an existing external table(no BLOB) generated the error message "Cannot save instance of class XXXXX-Data-Address; it belongs to fully exposed table PEGADATA.YYY_ADDRESS in database PegaDATA, but the instance has properties which do not correspond to columns: pyTemplateInputBox". This was traced to the presence of a button in the section. Buttons generally add code to get the clipboard reference of getProperty for pyTemplateInputBox, and would create the property if it was not found. To ensure this property is not created for button / image / link actionable controls where there is no need of any editable properties, the handling for pyTemplateInputBox property creation has been updated. | Data Integration |
INC-B20255 | 873104 | Null ruleset handling added for Dev Studio tracer | Running the SOAP service from Dev Studio with tracer indicated a failure response when the "SOAP messages" and "Services" options in the settings were enabled. The failure was not seen when these options were disabled. Investigation traced this to the rulesets being shown as null due to the ServiceRequest not being initialized, and this has been resolved by adding handling for this scenario which will skip the event and the event will not appear on tracer. | Data Integration |
INC-B20863 | 871716 | RequestorLockException logging updated | The logging level for RequestorLockException has been changed from infoForced to debug. | Data Integration |
INC-B22062 | 876712 | Corrected null pointer error during NBA run | A null pointer error was reported during a Next Best Action (NBA) run. This was traced to the evaluation of a when rule which caused a class-level dependency property to be read multiple times, and has been resolved with a refactoring to address this. | Data Integration |
INC-B22806 | 877844 | Improved database table connection testing security | Cross-site scripting protections have been updated related to testing the connection to a database table. | Data Integration |
INC-B23163 | 877306 | Masked values made read-only | After configuring an access control policy to mask certain property values, the masking was performed as expected, but when the properties were included on an editable view they were displayed as editable. When the values were submitted without change, the literal masked value was passed rather than the actual value of the field and validation failed. This has been corrected with an update to ensure masked values are maintained as read-only. | Data Integration |
INC-B23600 | 876802 | XSD data cleared after error | To improve security, XSD data will be cleared from the Connector and Metadata Wizard if an error is encountered. | Data Integration |
INC-B24085 | 880239 | Performance improvement for BuiltOnAppRoutesReportDefinition | In order to improve the performance of database responses for pzBuiltOnAppRoutesReportDefinition, the d_pzbuiltonapproutingtable scope has been modified to "node" to avoid the multiple report definition executions which internally make heavy database query calls. | Data Integration |
INC-B24110 | 880345 | Query Runner Excel export updated | After running Query Runner with successful results and clicking Export to Excel, the generated download file was not able to be opened due to site policies which do not support the Microsoft Excel 97-2003 Worksheet (*.xls) format. To resolve this, the activity pzexportexcel in Query Runner has been updated to use the updated Excel format of .xlsx for export. | Data Integration |
INC-B24386 | 874539 | Updated property name handling for archival SRS migration | A Clipboard WrongModeException occurred during archival SRS migration, indicating the property .JobTitle was of mode Page while ClipboardPropertyImpl.getStringValue() was expecting String mode. Investigation showed the archival reindexer was skipping a loop that performs a check for Page if the property name did not contain multiple parts in the name, i.e. Case.JobTitle. This has been resolved with added checks for the property handling. | Data Integration |
INC-B25600 | 876930 | Updated response data transform empty date value for GET | If a an empty date/time property was added in in the Insights dimensions, it defaulted to 01 Jan 1970. This was traced to the default automap behavior of the pzTranslateViewPageToJSON data transform, and has been resolved by updating the response data transform for GET request to use "null" as the default. | Data Integration |
INC-B26326 | 880426 | Date handling updated for en_HK locale with Java 11 | After upgrading to Oracle Java 11, an exception in date format was seen on start up. This has been resolved by adding the en_HK.xml file to support the en_HK locale. | Data Integration |
INC-B31997 | 887730 | OpenArchivedWorkObject updated to enable opening archived parent of current case | In the Pega Smart Dispute framework, the case overview section of a dispute case refers the data from pyWorkCover (claim case). When the child case was archived and and the archived case was opened, the pyWorkCover was not populated and some fields were blank. In order to address this, a place holder activity has been added to the activity pzOpenArchivedWorkObject to open the parent case of the current case. | Data Integration |
INC-B32313 | 885757 | Removed unnecessary checkmark on MapFieldsLegend | The image being used to display the checkmark in MapFieldsLegend near the CSV import line did not contain alternate text and was causing issues on automated scans and screen readers. This image has been removed as it is not necessary and was impeding accessibility. | Data Integration |
INC-B32717 | 886204 | Archival pacing available to reduce database impact | In some system configurations, the InMemory Pipeline mode of case archival may exceed the available input/output (I/O) operations per second, resulting in socket timeouts during column population jobs. To address this, a sleepduration parameter has been added to pyPegaArchivalUsingPipeline. The SleepDuration parameter is configured in milliseconds, and applies a delay between each cycle of archival process. One cycle of archival is considered as archiving limitperpolicy DSS(default value : 1000) cases per case type which are configured for archival in the case type setting screen. | Data Integration |
INC-B35352 INC-B42455 INC-B36106 |
887068 893762 890583 |
DSS added to control "SkipHitNotFound" issue | The Next Best Action (NBA) outbound run failed with the error "IllegalArgumentException: DataFlow page has errors over overwrites applied: .pyModelProcess.pyShapes(Destination).pyRuleName: BatchOutPR4004 does not exist or is not a valid entry for this ruleset and its prerequisites". Investigation traced this to a race condition: the instance cache is dependent on the system pulse for invalidation, and if any rule is created after the instance cache initialization and the system pulse is missed or the rule is created before the system pulse module is loaded, then the event cache is not updated and there is a "hitnotfound" error for the rule. To resolve this, a DSS has been added to control the behavior when this error is encountered. Setting CACHE_RULE_INSTANCE_SKIPHITNOTFOUND_ENABLE to true will result in the change that if rule is not present in the instance cache, the system will search the database and add the entry into the alias cache and instance cache. | Data Integration |
INC-B4258 | 862214 | Child cases correctly archived when top two parents are of same type | Dynamic Hierarchy support has been added for case archival. This supports the use case of archiving an asymmetric case hierarchy where a parent case type becomes a child case type for one of the child case types in the case hierarchy. This resolves an issue where SuperParent has 4 children and Parent2 has 3 children and SuperParent and Parent2 are of same class, which had resulted in child4, child5, and child6 not being archived as expected. | Data Integration |
INC-B5284 INC-B29673 |
859689 886187 |
Corrected thread pool not terminating at shutdown | The Pega application was not shutting down gracefully following Apache Tomcat shutdown. This was traced to a thread pool that generated non-daemon threads not closing properly, preventing the JVM from termination. This has been corrected. | Data Integration |
INC-B5709 | 859360 | Corrected flow rule edit 'when' logic | The "configure view" button was unexpectedly being offered in Dev Studio after reopening a submitted screen flow, and clicking on it generated the error "Only one modal dialog can be opened at a time". This was traced to an error in the 'when' rule logic for the property panel of assignment pyOutcomes which caused it to become initialized in the flow rule form when it should only be initialized in Case Designer. This has been corrected. | Data Integration |
INC-B6365 | 860772 | Updated handling exception for QueueProcessorMessageRetryHandler | One of the queue processors in the production environment failed to run and required manual restart. Investigation showed the queue processor was calling an activity which called a REST service which then suffered a socket timeout failure. The data for that failed attempt was saved to the database, causing a BadInputException which was not properly handled and which caused the DataFlow to stop executing and stop the queue processor. This has been corrected by adding the needed retry handling for the exception to QueueProcessorMessageRetryHandler. | Data Integration |
INC-B730 | 862467 | Corrected code for dynamic operator time zone | After configuring a date control in a grid, attempting to change the operator timezone resulted in the values appearing in the filter in GMT format. This has been resolved by updating the code for Central European Standard Time (CEST) to be Central European Time (CET) as CEST represents Summer Time (Daylight Time). | Data Integration |
INC-B767 | 849391 | Extra validation check for space character added for Service REST | A 502 Bad gateway exception for third-party connectivity was traced to the response header using "request id" instead of "request-id". A validation check has now been added to ensure spaces are not allowed in Service REST response headers during save. | Data Integration |
INC-B7687 | 858569 | CountOfCases activity added to collect secondary storage statistics | The pyCountOfCases activity has been added to the Work- class of the Pega search executor to count distinct instances for archival and live data. | Data Integration |
INC-B7715 | 859126 | Accessibility corrected for using enter key to edit table | When a keyboard user navigated to a row in a delegated table and hit the enter key to edit the inputs, a new line was created instead. This has been resolved by modifying the section in such a way that pressing the enter key will edit the existing record rather than creating a new row. | Data Integration |
INC-B791 | 864555 | Updated Archived-shared records handling | Cases in Archived-Shared status were not being cleared from the pr_metadata table, increasing the table size. Investigation showed that when using the pxLinkAttachmentToCase activity, attachments were only marked as Archived-Shared status when they occurred in the same batch. This led to marking the shared attachments as regular attachments when they were not part of same batch while running the archival jobs, and caused the shared attachment to only be accessed by the case that was archived, leaving the unarchived case not able to access it. This was a missed usecase, and has been resolved. | Data Integration |
INC-B8067 | 871689 | Corrected handling for generating nested JSON elements | When using a data transform to create a REST connector in clipboard and subsequently transform it into a JSON text for Amend to Map, the JSON data transform did not work in cases where the clipboard structure was more complex (for example a pagelist containing a page list). This has been resolved by updating the logic of the mapping order of elements between clipboard and JSON. | Data Integration |
INC-B8774 | 863805 | Corrected mapping initialization for nested JSON | After update, a JSON data transform used to map a pagelist property to JSON objects was not working if it called another JSON data transform to do some of the mappings. This was caused by the rules engine looking for the data transform in the Primary Class rather than the applies-to class of the pagelist property, and has been resolved by correcting the initialization to fetch from the mapping model instead of the step page. | Data Integration |
INC-B9025 | 870967 | CreateConnection correctly passes JNDI credentials | Connection issues were seen when authentication was enabled on the JMS broker side and JNDI credentials mentioned in the JNDI server rule form were not being passed as expected. This has been corrected by updating the activities called in the JMS explorer functionality. | Data Integration |
Decision Management
24.2 Resolved Issues for Decision Management
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-B24750 |
875847 | Support added for rolling back data changes after campaign failures | A campaign run that failed in middle of execution may leave datasets in an unwanted condition. In order to facilitate restoration, this update introduces an AggregateKey setting which will roll back the changes when AggregateCount is set to a negative value. This manual process will use the generated file (created using a data file set) to stage pertinent information for records to be rolled back into a database table, decrement the counts in IH summaries, remove triggered contact policies and reset them for subsequent runs, and decrement the count in VBD reporting datasets. | Decision Management |
INC-261239 | 792281 | Check added for FontConfig | Trying to import an Excel spreadsheet in Prediction Studio to train a model resulted in an exception that prevented the import from taking place. This was caused by fontConfig not being present on the local server. To assist with diagnosing these issues, additional logging has been added which will report the message "Error while creating new sheet in ExcelWriter. Ensure that the font configuration files are available on the Unix server" if the exception is encountered. | Decision Management |
INC-A19934 | 858143 | DecisionTable made consistent after eligibility column removed from optimized strategy | After an entire column of a decision table referenced in an eligibility condition was removed because the validation was no longer required, the globally optimized strategy was not returning offers and behaved inconsistently. Investigation showed that Trigger_NBA_TopLevel had the correct results, however GOS_TOP_Level had results only in Normal execution results and not in Optimized execution. While there was a workaround of restoring the deleted column, an update has been made for the DecisionTable to take "Primary" from the calling Strategy to correct this issue. | Decision Management |
INC-A20027 INC-B22392 |
857502 876814 |
Predictive model monitoring updated | Campaign runs were failing, indicating issues utilizing data from predictive models. This was traced to issues in retrieving data from the clipboard, and has been addressed with an update to gather the required properties at design time instead of runtime and by refactoring predictive model monitoring to use the static data. | Decision Management |
INC-A24708 | 859854 | Updated partition handling to resolve thread contention | A contention lock was occurring in the Postgres database after a campaign run in the second wait dataflow. This has been addressed by improving the partitions assignment mechanism including shuffling. | Decision Management |
INC-A25749 INC-B5901 |
855372 856189 |
Performance improvements for Value Finder | Very large runs of Value Finder were becoming stuck, generating errors, and causing the dataflow heap to be overwhelmed. To address this, updates have been made to improve the performance and memory requirements of the Value Finder activity including reducing the number of columns for customer group discovery, improvements to core group discovery algorithm, decoupling stage statistics and customer group discovery, down-sampling for customer group discovery, and minor improvements to the Value Finder simulation post-processing activity. | Decision Management |
INC-A28311 | 858441 | Bind markers correctly used for TTL | When the time to live (TTL) was configured through a property, the related prepared statement issued by the Decision Data Store (DDS) dataset was not using bind markers and specified the actual TTL value in the statement. This caused unnecessary duplicate prepared statements in Cassandra and led to performance issues. This has been resolved by updating the Decision Data Store software development kit to a version that corrected bind markers used for TTLs. | Decision Management |
INC-A29620 | 855346 | Updated Interaction History error logging to assist debugging | The Decision Funnel simulation returned empty reports. Investigation showed that the data flow used to synchronize simulation data to the database was failing due to an incorrect Interaction History (IH) configuration. When the IH configuration contained duplicated entries, the Visual Business Director (VBD) browse failed with a cryptic stack trace. To resolve this, the IH Data Transform configuration problem will be properly logged so the Decision Funnel VBD -> database synchronization data flow is evident and can be restarted if needed. | Decision Management |
INC-B12153 | 861013 | Corrected and improved GOS report generation | Attempting to download the globally optimized strategies (GOS) report was not working. This has been resolved with an update to ignore startDate and endDate when pyIsPropositionActive is not Date, show a better error message when a SSA doesn't have a direct component, and generate the GOS report faster. | Decision Management |
INC-B12209 INC-B20996 INC-B15704 |
864592 871634 865575 |
Truncate operation improvements | In order to support a variety of different database engines and avoid truncation failures of the pyADMFactory data set during the data migration import process, the implementation of the truncate function has been updated to better handle external and internal tables and tables mapped to more than one class. | Decision Management |
INC-B13083 | 864620 | Improved Interaction History sync performance | Interaction History was very slow when working with extremely large data sets. This has been addressed by refactoring the pxInteractionHistory browse operation for better performance in very big data use cases involving records from a large time range (15 months). This improvement also eliminates the merge shape limit on the number of records and avoids the customer interactions limit. | Decision Management |
INC-B13172 | 888494 | Added Dev Studio check for Model landing page before loading strategy rules | While implementing post upgrade steps after moving from Pega 8.5 to Pega Infinity 24.1, error messages about strategy related components appeared, indicating "Error in Obj-Open database.BadClassDefinitionException: Attempting to access a rule with a bad defined-on class: Trying to open rule "SMS" of class "Rule-Decision-Strategy", but no defined-on class (pyClassName) was specified." This has been resolved by adding a check for the Model landing page activity before loading when opening from Dev Studio. | Decision Management |
INC-B13604 | 864412 | Improved validation logic for revisions | Clicking on "Current Revision" from the Revisions Management landing page caused an extremely large requestor clipboard page of over 2.7GB to load, leading to performance and memory issues. The size of this page was a result of the system handling more than 200 ChangeSet requests in one revision along with detailing the validation checks for 8500 rules. This validation check is no longer needed due to current handling processes for the change requests, and has been removed to improve performance and the clipboard page size. In addition, pagination logic has been added for displaying the change requests in a revision. | Decision Management |
INC-B14451 | 866213 | Corrected ADM snapshot truncation | The data import case in Data Migration was failing with a "Rule not found" error. An audit trail showed there was a failure in the ADM datamart table truncation prior to ADM data import; this has been resolved with an update to only truncate the ADM snapshot data if ADM import is enabled. | Decision Management |
INC-B1476 | 857425 | Instruction text rendered in a Questionnaire page | After developing a Questionnaire with some introduction text on each page, the introduction was not shown when running the Questionnaire. This was due to difference in handling for the Question page in Constellation, and has been resolved by adding a new parameter to the pzQuestionPageScr flow and setting it when saving the Questionnaire case type so the introduction text is included. | Decision Management |
INC-B14837 INC-B37791 |
868538 888629 |
Scenario Planner displays top N for Projected Reach | Scenario Planner was displaying only the top 1 for Projected Reach, causing the Scenario Planner simulations to be off when inbound slots have multiple offers per slot, not just the top 1 in rank. This has been resolved with an update to ensure the top N actions are considered for Scenario Planner. | Decision Management |
INC-B15053 | 864770 | Updated logic for ADM case resolution | When there were multiple Adaptive Decision Manager (ADM)-based predictions in a case type, some decisions made by predictions were missed when the cases were resolved. Investigation showed that during case resolution, the make decision and set response call were concurrent and could result in some data loss. This has been resolved by changing this to sequential queue processing. | Decision Management |
INC-B15096 | 872134 | Batch sizing made available for Cassandra queries | When a Decision Data Store (DDS) dataset BrowseAllRecordsOperation was executed there was no method to pass the batch size to use for the Cassandra page size. This caused the default datastax driver page size of 5000 to be used in queries, potentially leading to out of memory conditions for datasets with large records. To address this, the feature class BatchableFeature has been added to the data flow for BrowseAllRecordsOperation to allow limiting the number of records received by each Cassandra query per dataflow run. | Decision Management |
INC-B15312 INC-B18714 INC-B11219 INC-B18598 |
864947 870246 862814 870268 |
Decision simulation batch size made configurable | Data migration was failing at the export phase while processing the pyRemoveDuplicatesFromSimulationDataSet data flow run. This was traced to a Cassandra read and write timeout exception, and has been resolved by adding a batchable feature to the data set with size configured with a prconfig setting. Create the below DSS only on Production: * Owning ruleset: Pega-DecisionSimulation - Setting name: simulation/datamigration/inboundsample/deduplication/batchsize - Setting value: 50 * Owning ruleset: Pega-DecisionSimulation - Setting name: simulation/datamigration/inboundsample/deduplication/requestors - Setting value: 1 Create the below DSS on both Production and BOE: * Owning ruleset: Pega-DecisionSimulation - Setting name: simulation/datamigration/inboundsample/requestors - Setting value: 3 * Owning ruleset: Pega-Engine - Setting name: prconfig/dnode/dds_partitioner_class/default - Setting value: com.pega.dsm.dnode.impl.dataset.cassandra.TokenRangePartitioner * Owning ruleset: Pega-Engine - Setting name: prconfig/dnode/cassandra_use_extended_token_aware_policy/default - Setting value: true |
Decision Management |
INC-B15792 | 872385 | Updated handling for Customer/DSM aliases | If the strategy changed the alias Customer to a Decision Strategy Manager (DSM) page and tracked the original Customer page for resetting later, during the enrichment of aliases, if Customer was included, it was reassigned to a DSM page and the previous page (now the DSM page set in step 1) is tracked again. As a result, the oldAliases list contained both the original Customer page and the DSM page from the initial change. When resetting the aliases, Customer remained associated with the DSM page from step 1. Consequently, this alias was visible to the parent activity, leading it to incorrectly use the DSM page for Customer instead of the intended original page. To address this, the reset order has been reversed to the alias order to ensure the correct page on the final reset. | Decision Management |
INC-B16167 | 882250 | External stream delivery and request timeouts made configurable | External stream delivery and request timeouts made configurable In order to assist with analyzing Kafka timeouts, the stream delivery timeout and request timeout have been made configurable values to support a "fast fail" mechanism. The delivery timeout default is 2 minutes, and the request timeout default is 30 seconds. Delivery Timeout: services/stream/producer/delivery/timeout Request Timeout: services/stream/request/timeout Conditions: Delivery Timeout Value Range (in ms) = 5000 to 120000; Request Timeout Value Range (in ms) = 1000 to 30000; At least One Try Possible = Delivery Timeout > Request Timeout |
Decision Management |
INC-B16495 | 867487 | ADMPredictorsFilter limit increased | Model predictors were not properly populated in the predictors monitoring screen. This was due to the limitations in the pyADMPredictorsFilter Report definition which was set to retrieve a maximum of 500 records at a time. To resolve this, the limit for maximum records to retrieve in pyADMPredictorsFilter has been increased to 99999999. | Decision Management |
INC-B16747 | 869182 | Updated datetime converter for Cassandra timestamp | Browsing Cassandra datasets not containing date information worked as expected, but attempting to browse those containing dates resulted in an error. An error was also seen when attempting to open the classes of all Cassandra datasets. I also added the log of his example. This has been resolved by modifying the converter for the datetime Pega property. | Decision Management |
INC-B17441 | 868569 | Resolved permission error in pyProcessCaseEvents | The queue processor encountered report definition permission issues related to process AI calling a Strategy, resulting in an exception while invoking the Interaction History summary top-up queries. This was related to the handling of the complex field type used by the context page copy that is sent as an input page to the prediction strategy, and has been resolved with the addition of an extensible 'when' rule to allow skipping the desired properties while executing prediction. | Decision Management |
INC-B17549 | 875820 | Handling and warnings updated for Next Best Action change requests | After the Next Best Action (NBA) process created the customer journey (with one action and one entry criteria) for each of the stages, some of the stages had stripped off actions/entry criteria after the deployment. This was due to the change request handling. Both standard change requests and ops change requests relied on the backup DDR to revert journey associations changed as part of the change request. A common rule was used for reverting changes made by different types of change requests. As a result, if journey changes were made using both types of change requests within the same revision, reverting any one of them impacted the changes made by the other. To address this, the dependency on the backup DDR for reverting changes made using ops change requests has been removed. Ops change requests now maintain a backup of the original journey associations in the case meta data during case creation and use this backup whenever a revert is performed. This ensures that reverting ops change requests will not affect changes made by standard change requests. In addition, a warning will now be displayed when a user tries to withdraw a change request that is used to perform NBA-related changes, and a warning has been added for situations where a user tries to modify more than one NBA rule as part of the same revision using an OpsMT task or another type of change request | Decision Management |
INC-B17807 | 870559 | Corrected file data set Preview file filter | In any file type data set, selecting Preview File next to the export showed a different file than the one expected. This was traced to Preview in the file data set picking the first file in data set directory even if it did not match the file pattern, and has been resolved with an update to correctly filter out files not matching the pattern even if they are in the same directory. | Decision Management |
INC-B18063 INC-B20725 |
869238 873917 |
Updated parameter handling for dataflow sourced from report definition | After update, a dataflow for processing records with source as report definition and destination as activity was failing with a null pointer exception. This has been resolved with an update ensure parameters are properly handled to support using a report definition in a dataflow, including selecting a nested property mapped to an exposed column, sorting on a property from a joined class, selecting a function alias instead of a property, and sorting on a function alias. | Decision Management |
INC-B18411 | 875082 | Updated date filter handling for proposition eligibility | Inconsistencies were seen in eligibility between customer profile viewer and the Next Best Action (NBA) run and between the strategy trigger and the Globally Optimized Strategy (GOS). Investigation showed this was due to the handling of the date when using a filter component with @pxIsBlank(StatDate) OR @pxIsBlank(EndDate), and has been resolved. | Decision Management |
INC-B19169 | 878945 | PreviousComponent property handling updated for Strategy | After customizing the strategy for an interaction using a setProperty with pyPreviousComponent in the strategy to get the name of the model, the pre-previousComponent name(filter name) was unexpectedly returned as the output if an API call was made through the NBA container. This was traced to property optimization occurring at different times for different processes, and has been resolved by updating the logic handling for the default property notification propagation according to which component should expose default properties when they are used in the logic of a given component. | Decision Management |
INC-B20239 | 872835 | MVEL library deprecated and replaced for PropositionFitler explain mode and simulation mode | Simulation runs were not returning counts in CDHSample even though the counts were populated as expected if the proposition filter was run individually. This has been resolved by replacing the MVEL library with a simple expression evaluator for PropositionFitler explain mode and simulation mode. As part of this work, the DecisionDataExpressionEvaluator class has been deprecated and will be removed in a future release. This class uses MVEL library and is only used in PropositionFilterTemplate Rule-Utility-Functions. | Decision Management |
INC-B20390 | 872535 | Updated handling for recursive Prediction references | Page type predictor values were not being displayed on the prediction widget. This was traced to a configuration where Prediction execution could result in infinite recursion for complex data structures if case reference and data reference properties referred to case and data classes containing case predictions. This has been resolved with an update which sets the useOptimized flag to false so that prediction execution considers Clipboard page and not just DSMClipboard page. | Decision Management |
INC-B20765 INC-B36418 |
871844 889690 |
Legacy strategy execution profile updated | The legacy Pega strategy execution profile feature was not working as expected after update. This has been resolved by updating the parameter handling so the report correctly includes total strategy execution time and a strategy/component breakdown. In addition, an update has been made to improve visibility by adding parents for strategies up to two levels and number of calls for all components and strategies. "Strategy Parent” and “Number of Calls” will also be included in the report available for download after running the non-GOS strategy. | Decision Management |
INC-B21171 | 871485 | Session and message usage metrics enabled | CDH Session and message usage metrics were not enabled in any environment. This was traced to the channel name or application name being created with the character '-'. While doing context switch, the App name was captured and a Page Group created with Subscript as the name of Application. This caused the app name to be "-", which caused the issue to the form page group. To resolve this, an update has been made to strip special characters from the string. | Decision Management |
INC-B21535 | 877739 | DSS added to allow using multiple Cassandra data centers for balancing | Adding more than one data center to the database instance for use as the Cassandra cluster "local data center" generated an exception error and the connection did not work. When Cassandra is configured with a local data center, the balancing policy is based on the assumption that being local means it's the fastest. Other data centers were used only if the designated local one failed. To support this use case of spreading the balancing between all data centers, the DSS "loadBalancingPolicy" has been added to configure the balancing policy for the Cassandra database data set. Note that using remote data centers or multiple data centers will make request handling slower than only relying on the local one. | Decision Management |
INC-B21582 INC-B17974 |
872101 871407 |
Corrected button access for decision revision management | Attempting to remove treatment attributes from Action Decision Data was not working due to an incorrect state for Add field and other buttons in the form tab of the decision data rule. This has been corrected. | Decision Management |
INC-B22142 | 878570 | Removed reference to deprecated WhenTabListener | Opening/saving a "when" rule in Revision Management generated the error "DebugInfoForRuleNotFound". Investigation showed this was due to RevisionRuleFormLayout and pyRMRuleFormLayoutDE referencing the the deprecated and removed section pzWhenTabListener in the RuleFormLayout. This issue has been resolved by removing the stale references. | Decision Management |
INC-B2228 | 872188 | Decision Funnel query activities log proper stack trace | In order to improve debugging, Decision Funnel query activities have been updated to allow logging a stack trace. | Decision Management |
INC-B22482 | 871980 | Corrected DSS reference for PurgeHistoricalData activity | The history tab of the pzPurgeHistoricalData rule has been updated to reflect that the activity is used for purging historical data set records based on the duration specified in DSS Pega-DecisionEngine.decision/adm/archiving/daysToKeepData . | Decision Management |
INC-B22734 | 881669 | New version of a case will be detected on the dataflow canvas | After setting a dataflow to Output data to a specific case type and locking the ruleset, creating a new open one and then modifying the selected case and saving it resulted in the selected case type being removed from dropdown in the UI. This was caused by the dataflow shape holding the handle of the flow rule. Locking a ruleset and then editing the case in the Case Wizard created a new version of the flow rule in the higher ruleset version which the system perceived as a different rule instance with a different handle. The dropdown in UI is populated with only the latest version of each case, so the property was set to a value that was not available on the dropdown because the handle of the old rule instance was selected and the dropdown only contained the handle of the newer version. This resulted in it showing as empty in the UI. To correct this, a preloading activity has been added to the shape configuration section which will detect if a new version of the case has been created and update the handle if necessary. | Decision Management |
INC-B23097 | 881566 | Improvements in TakeExecMonSnapshot execution | The dataflow pzTakeExecMonSnapshot was causing node termination during the snapshot process of symbolic predictors in environments with 130k+ unique symbols. To resolve this, the distribution table will store the top 200 symbols for each symbolic predictor, and count any symbols beyond 200 as 'others'. The efficiency if the merge process has also been optimized by updating the handling of symbolic predictor aggregation. | Decision Management |
INC-B23114 | 875095 | Dataflow error handling updated to protect database space | In some scenarios, a very large number of errors generated within a short amount of time may cause the system to reach the limits of the database space and become non-functional despite a global error limit per run default of 1000. In order to protect against the database becoming overloaded, several updates have been made. - A limit has been added for the number of errors persisted per dataflow thread: .pyOptions.pyResilience.pyErrorsPerThreadToPersist - limit of errors a thread can persist within a window, .pyOptions.pyResilience.pyErrorLimiterWindowSeconds - size of the window (tumbling window) - Throttling has been added for the same stacktrace repeating on the same thread. This will keep track of the 10 latest unique stacktraces, and will begin throttling after the same stacktrace happens 10 times (within the window). The relevant logger must be enabled: com.pega.dsm.dnode.impl.dataflow.resilience.policy.run.ErrorThrottler - On run failure/completion, errors will be synchronously trimmed in the error table for this run to be within the limit set in DSS dataflow/run/errorTableRowsLimit. This is in addition to the once-per-day cleanup process. |
Decision Management |
INC-B23275 | 886173 | Logging added for diagnosing operator "unable to authenticate" error | Diagnostic logging has been added to capture data flow run ID to aid in diagnosing issues where a data flow run reports that an operator is incompatible while it executes the DetectPartitionChange data flow pulse task consistently. | Decision Management |
INC-B24297 | 877349 | Corrected Interaction History summary counts | GOS_NBA_TopLevel was returning different results than Trigger_NBA_TopLevel if Rank property was selected among additional aggregation properties. If Interaction History import was used instead of summary, the globally optimized strategies (GOS) returned the correct results. This was traced to an error in the Single Static Assignments (SSAs) count generated by the IHSummary shape, and has been resolved by refactoring the SSA implementation of the IHSummary shape and the SSA strategy execution mode. | Decision Management |
INC-B24605 | 876278 | Migration pipeline performance improvement | Data migration pipeline comparison runs were taking an excessive amount of time. This has been resolved by updating the DDS Data Set SDK to improve the resuming behavior for compound token ranges. | Decision Management |
INC-B25391 | 876571 | Corrected truncate handling for file data set with manifest | If the Truncate operation was used on a file data set with a manifest file, then the manifest file was deleted instead of the data files. This was an error in the implementation following other work, and has been corrected. | Decision Management |
INC-B26125 | 885261 | Updated chat intent model handling for missing language | During a live chat, sending an emoji from the CSR to the user resulted in a null pointer exception being printed in the logs and an alert triggered in the PDC. The issue occurred when intent model was selected in text analyzer, and was caused by the intent cache loader returning a non-null object with model bytes as null due to not being able to parse the language. This has been resolved by modifying the intent cache loader to return null when language is not present. | Decision Management |
INC-B26433 INC-B36418 |
877086 889392 |
Added handling for Oracle database lookup for GOS performance profiler report | The Globally Optimized Strategy (GOS) performance profiler report was blank. This was traced to the database handle coming back empty due to the Oracle database lookup being case sensitive. This has been resolved by adding an alias for the selected column so that the case of the key and returned column name match. | Decision Management |
INC-B27294 | 881283 | Extra logging added for VBDDataPartitionLoadTask | To assist with debugging, the logging for VBDDataPartitionLoadTask failures has been expanded to include the block ID of the problematic block along with all of the block summaries that are available. | Decision Management |
INC-B27326 | 878682 | VBD supports configurable threshold for Dictionary size | Decision Funnel metrics were cut off due to VBD Dictionary size limit of 10,000 records. To address this, the DSS Pega-DecisionEngine.vbd/dictionarySizeThreshold has been added which makes this limit configurable within a range of 10000 / 100000. | Decision Management |
INC-B2737 | 852668 | Updated handling for "Not a Number" in predictive models | A model created using a Predictive Model Markup Language (PMML) LightGBM algorithm file was missing output results. This was traced to the model outcomes returning NaN (Not a Number), and has been resolved by updating the handling for missing, undefined or unrepresentable value data in the target field for the Tree Model. | Decision Management |
INC-B28701 INC-B34133 |
879964 886029 |
Resolved DDS dataflow deadlock | A dataflow deadlock was seen when shutting down DDS. Issues were also seen where one pod was not running the Decision Funnel Simulation dataflow as expected. This was traced to the ‘DSM init service: DDS.Default’ thread holding the lock, preventing the DDSClient class initialization from completing. This has been resolved by preventing the DDS service from initializing during the DDS Client classes initialization. | Decision Management |
INC-B29081 | 880840 | Corrected keyword detection in text analyzer | After enabling a pxEmail parser in pre-processing from the prediction settings, the change was successful and the keyword prediction worked as expected. When the pxEmail parser was removed from pre-processing, a topic was detected without having a keyword in the input. This was traced to the removal of pxEmail parser in pre-processing causing the system to take the entire text as a single document. This was a missed use case, and has been corrected. | Decision Management |
INC-B29173 | 882507 | Corrected custom date-time format handling for Pulse CreateDatetime | The pxCreateDatetime in the Pulse feed was displaying the month value in place of the minute value. This was traced to the pxCreateDateTime in pyFeedSubtitle having "custom date-time format" set to 'MMM dd, yyyy h:MM a'. As the minute place has the format in upper case "MM", this caused it to use the month value. To correct this, the "custom date-time format" has been updated to 'MMM dd, yyyy h:mm a' to display minutes correctly. | Decision Management |
INC-B29637 INC-B29154 INC-B29045 |
880658 881773 881777 |
Improvements to Kafka Producer Metrics on Cloud | Kafka producer metrics have been improved, producer latency metrics have been introduced, and the Kafka client version for KAAS clusters has been updated. | Decision Management |
INC-B30540 | 885731 | Questionnaire views correctly handled by localization wizard | When using a questionnaire case-type with one question page and one question with rules saved in the ruleset version included in the FomsSales application, the Excel sheet produced by the Localization wizard did not contain any field keys related to those question pages and question rules. This has been resolved by modifying the getQuestionnaireMetaData parameters for view meta-data generation and adding steps to publish localization for the question page views. | Decision Management |
INC-B30596 | 882884 | Corrected memory issue with Summary Browse operation | After update, opening the Interaction History summaries in the Customer Decision Hub caused an out of memory error. This was traced to the implementation of persistence layers for the summary dataset which resulted in the browse operation loading all records into memory at once, and has been corrected. | Decision Management |
INC-B30727 | 880971 | Information added for removing properties from DDR | The documentation for troubleshooting Decision Data Rules has been updated with information on the process for using DevStudio to remove properties from the pyEditElement section of a Group DDR. | Decision Management |
INC-B31818 | 889380 | Addressed ArrayIndexOutOfBoundsException for API mapped to GOS | Invoking an API which was mapped to a globally optimized strategy (GOS) resulted in an ArrayIndexOutOfBoundsException error. Triggering the GetDecision API which is mapped to Trigger NBA strategy worked as expected. To address this, the DecisionTable serialization process has been modified in the GOS mode and more detailed log messages will be provided in case a similar issue occurs. | Decision Management |
INC-B31930 | 887820 | AssignPartitionsTask refactored to improve rebalancing | Large environments with 100+ real-time runs were taking an excessive amount of time to reassign partitions when scaling up or executing other topology changes. To improve performance, the save task has been refactored to batch value handling in the key value store to improve performance for the AssignsPartitionsTask activity, use batch inserts for assignment acceptance, and batch-read and execute streamable assignments and tasks. | Decision Management |
INC-B33286 INC-B36057 INC-B42760 |
886057 891467 894399 |
Updated GOS database handling for Postgres and Oracle | The error "java.lang.IllegalArgumentException: A null or empty handle has been specified in the database 'open by handle' method" was generated when flushing the aggregated strategy execution profiles to the database. This has been resolved by replacing the hardcoded pzinskey column property name with the property name variable so it is consistent regardless of database type, and an alias has been added for the selected column so that the case of the key and returned column name match. | Decision Management |
INC-B33517 | 885495 | User ID and updated message added to queue processor diagnostics | A queue processor and its associated dataflow were stopping unexpectedly with the error "context.PRQueueException: Enqueue to queue processor Process_SPLC failed : Unable to find the queue processor instance in memory". It is normally difficult to determine the origin of the stop runs task; with this update, user ID information will be added to stop/start/restart/update/reprocess run task life cycle events and it will be possible to log trace the stacktrace. The message generated will also be differentiated when the stop action is performed by the data flow run config updater. | Decision Management |
INC-B33634 | 885341 | Check added for AI decision connector in CaseType wizard | After enabling the "Create data model using spreadsheet" option and uploading an Excel sheet with properties to be created, the wizard parsed the data and displayed it on the Wizard UI correctly, but clicking "Create" only created the CaseType along with AI suggested fields and the uploaded fields from Excel were not created. This was traced to the preconditions of the D_pzNewCaseTypeDetails.pyCaseFlow=="AI" function of the pzCreateDataModel activity being always evaluated as true, causing the activity execution to jump ahead. To resolve this, a check has been added for the AI decision "True" connector. | Decision Management |
INC-B34199 | 885070 | Updated load handling for data partitions | Attempting to browse / query / clear Visual Business Director (VBD) data sets after loading a partition without data blocks was failing with the error "IllegalStateException:Failed to load data for partition". Further access attempts failed as the partition was regarded as being still loading. This has been resolved with an update which will ensure partition task completion on load, and a partition with no data will also be removed from the Collection Container's partitions map. | Decision Management |
INC-B34437 | 886169 | File data set now distinguishes between empty values and values not present in files | When importing data to a customer table where each import partially updated the customer record, attempting to update and remove a value by setting it to null was not working as expected. In this scenario, the update being imported contained an empty value for that column. However, the file data set did not distinguish between empty values and values not present in files, leading to the value not being correctly updated to remove the information already stored. To resolve this, the file data set will now set an empty value in the clipboard page if an empty value exists in the provided CSV file. If there is no column mapped to a property, that property value will still not be set. | Decision Management |
INC-B37892 | 889468 | Tokenizing handling added for entities with quote marks | Text Analyzer was not returning the expected results for keyword based entity after update. This was traced to entities not being detected due to a tokenization issue if the string had quotation marks. This has been corrected by cleaning up the text before passing it to the tokenzier. | Decision Management |
INC-B40283 | 890316 | Corrected comparator used in CPD validation | During the platform profile validation for Customer Profile Designer (CPD), the associated data sorted failed with the error "java.lang.IllegalArgumentException: Comparison method violates its general contract!", which then caused the whole profile validation to fail. This has been resolved by correcting the comparator used in the platform profile validation. | Decision Management |
INC-B4211 | 853836 | Improved performance for GetAssociatedTags | The report definition pyGetAssociatedTags had a performance warning. This report uses a join on the "Data-Social-Tag" class with the "pxLinkedRefTO" column of the "pr_link_work_tag" table, but no index was being used. This has been resolved by adding an index to the table pr_link_work_tag for the columns pxLinkedRefTo and pxLinkedRefFrom. | Decision Management |
INC-B4317 | 860365 | Updated visibility condition for Pulse | In a configuration where internal Pulse and external Pulse messages are displayed separately, if a case was kept open by a user who needed access to only external comments and another user worked on the case in parallel and typed in internal comments, those internal comments were visible to external users. To resolve this, the pyCanPublishC11nMessage 'when' condition has been added in the pzPublishC11nMessage declare trigger rule, and should be set as .pyIsPrivate != true. | Decision Management |
INC-B5742 INC-B14440 |
856018 864312 |
Updated handling of authenticated anonymous user in FUA | A globally optimized strategy compilation for Customer Decision Hub was failing on first use assembly (FUA) due to an authentication error when using OAuth 2.0. The errors "operator does not exist" and "UnauthenticatedThreadException: Could not authenticate thread with access group" were generated. To resolve this, an update has been made so than an anonymous user session (e.g. request from a REST call) which is already authenticated will skip the step to also verify the user ID in the database. | Decision Management |
INC-B5879 | 861174 | Made DDS availability datacenter-aware | The Data Distribution Service (DDS) SDK version has been updated to enable DDS availability check being datacenter-aware. | Decision Management |
INC-B6548 | 857386 | IH Summaries made resilient to Stream C2K migration | In some cases following C2K migration of Managed Streaming for Apache Kafka (MSK) to the Instaclustr environment, Kafka offsets were being reset to 0. As Stream-based Interaction History summaries and event strategies rely on source offset, this may lead to records being incorrectly ignored after Kafka migration. To resolve this, special handling has been introduced to summaries and event strategies that detects Kafka change to ensure records are correctly processed after the migration. | Decision Management |
INC-B6752 | 857772 | Updated handling for Decision Data Store table consistency level | After changing the Decision Data Store table consistency level to Strong, the dataset operation started failing after restart with the exception "InconsistentTableSchemaException: Table with different schema is already registered in [data] table group". Investigation showed that when instantiating the DDS data set, the consistency level of the table was retrieved from the schema repository if the table was already registered. To resolve this, an update has been made to use the consistency level from the Data-Admin-DDS-Table record instead of a default value if the table schema is already registered for use. | Decision Management |
INC-B7423 | 863671 | Updated handling for reading files from S3 repository | When attempting to read files from a custom S3 repository, the directory was visible but it was not possible to list subdirectories or read the files. This was traced to an issue with access to view files that were created or uploaded by other operators, and has been resolved with an update to the file data set to work with non-explicitly created directories. | Decision Management |
INC-B7952 INC-B9183 INC-B9606 INC-B25598 INC-B33893 |
858478 863012 868669 878243 885318 |
DSS added to control data flows for Data migration pipeline | Data migration processes running in parallel with all data flow runs triggered at once can take some time to complete with high volumes of data (customer samples or interaction history) and may fail with out of memory errors. One way to pace resource utilization is to sequentially run the individual data flows involved in data migration. To that end, the DSS dataMigration/numberOfConcurrentRuns has been made available to set the number of threads per data flow when the migration pipeline is running. Further work is planned for a future release to improve, simplify and stabilize the data migration pipeline. | Decision Management |
INC-B8811 | 865038 | Improved backwards compatibility for GOS | While trying to create a globally optimized strategy (GOS), providing the top level strategy and then trying to save the rule generated the error "Optimization failed to parse ".RecoPilotFlag!='Y'" using IL parser because the type CHARACTER is not supported in this context." The type CHARACTER has been deprecated but is still used. In order to support this usecase and maximize backwards compatibility, an update has been made to convert CHARACTER to a string value whenever possible so the GOS will run. | Decision Management |
INC-B8855 INC-B12414 |
860355 863027 |
Adaptive Decision Manager (ADM) configuration updates | In order to improve Adaptive Decision Manager (ADM) model migration, updates have been made to batch size, thread count, and partitioning. - Batch size on the ADM Migration data flow has now by default been set to 5 - This batch size is also configurable through the DSS 'decision/adm/service/migration/batchSize' if required - pyADMFactory data set now has a partitioning key defined which will allow the export data flow to run across the tier (as opposed to only on one node) |
Decision Management |
INC-B9189 INC-B35220 |
860522 887000 |
Updated Lz4 jar for Kafka Topics | After update, using Kafka Topic to send and receive messages generated the error "org.apache.kafka.common.KafkaException: Received exception when fetching the next record". This has been resolved by updating the lz4-java version. | Decision Management |
INC-B9208 | 866170 | Security updated for edited Pulse messages | Cross-site scripting protections have been updated for editing Pulse messages. | Decision Management |
Low-Code Application Development
24.2 Resolved Issues for Low-Code Application Development
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-A24726 | 868270 | Application Wizard security updated | Cross-site scripting protections have been updated for the Application Wizard. | Low-Code App Development |
INC-A24907 | 840540 | Constellation supports masking on standard fields | The Constellation DX APIs have been updated to propagate masking set on standard system fields. Please refer to the release documentation for more information about how to use ABAC to achieve persona-based masking. | Low-Code App Development |
INC-A25634 | 868712 | RecordAPI logging added | Additional diagnostic logging has been added to track context and decisions made for the RecordAPI. | Low-Code App Development |
INC-A27961 | 855361 | StageHistory updated when stage is restarted | After implementing an email listener which consumes a rejection response and processes it to resume flow action on a case, attempting to restart the stage with a local action caused a new pxStageHistory entry to be added instead of updating the existing entry. This was a missed use case, and has been resolved with a modification that will update the stage history record instead of creating a new stage history record when the same stage is restarted. | Low-Code App Development |
INC-A30185 | 855345 | Updated handling for masked PII data | After creating a Connect Generative AI rule type with a Mask Sensitive data filter to mask any identified PII data in the user prompt, the response data did not unmask the PII as expected. This has been corrected. | Low-Code App Development |
INC-B1134 | 858772 | Cleaned up referral to removed CSS | Opening the tracer tool in application where locale sets the UI settings to "right to left" generated an error indicating "IllegalStateException: sChecksum is null, Failed to resolve rule file". This was traced to the removal of the CSS file desktopbasedeveloper_rtl.css, and was caused by a remaining referral to the removed file inside the HTML fragment rule DesktopStylesDeveloperFull. While there was a local workaround to remove the lines which refer to the CSS file, this change has now been provided. | Low-Code App Development |
INC-B11364 | 868333 | Function pxIsInListOfValues updated for improved backwards compatibility | After update, a function which previously evaluated to true when certain values were empty changed behavior to evaluate to false under the same condition. This discrepancy stems from a change from the previous regex method for splitting the listOfValues to using Apache Commons CSVParser logic. In this particular scenario, this update changed the behavior of the function @pxIsInListOfValues() thereby causing the when rule to return false and thus all the offers were filtered out by one of the proposition filters that used this when rule. In order to support backwards compatibility, an update has been made which will return true when listOfValues is empty and value is blank. | Low-Code App Development |
INC-B13711 | 863549 | Corrected issue with cases license category | The classification of the cases to Dispatch disappeared from the PowerBI dashboard and cases appeared to be wrongly classified as Execution. This was traced to an issue with the cases license category and has been resolved. | Low-Code App Development |
INC-B14852 | 873148 | Corrected handling for Pega Unit test case skin | A newly-created Pega Unit test case was not displayed correctly. This was traced to the pyUseDeveloperSkin 'when' rule being overridden by the Pega-DecisionManager ruleset. This 'when' rule being set to false resulted in the unit test cases picking up the application skin instead of the Designer Studio default skin. To resolve this, an update has been added to ensure the the custom skin pyPegaDecisionManager is only rendered in the DecisionManager portal. | Low-Code App Development |
INC-B16631 | 869696 | Corrected truncated error message text display on hover | When using the Expression Builder and there is an error on the test, the error message was truncated and the full text was not visible on hover as expected. This was traced to an error in the pzEllipsis control, and has been resolved. | Low-Code App Development |
INC-B16799 | 877467 | Engagement policies populate correct data in edit mode | Changes to action engagement policies/when rules in engagement policies were not propagated as expected. This was traced to incorrect rule resolution logic in pzLoadUserFriendlyWhenConditionRows, and has been corrected. | Low-Code App Development |
INC-B19196 | 880160 | Blank value handling updated for export to Excel | Generating an Excel file using pxGenerateExcelFile activity where one column needs to be set blank led to random static values being added in the generated Excel file. This has been resolved by updating the GenerateExcel file to handle empty properties or properties with blank values. | Low-Code App Development |
INC-B19826 | 872414 | Corrected date format issue in Configuration Sets | A configuration type "Date only" used as part of a configuration set was not updated when changed in the Admin landing page. If the default locale was deleted then the change to the date control was recognized. This has been resolved by updating the data transform Pega-Configuration.pzPreAdministrationSave to consider locale while copying the value. | Low-Code App Development |
INC-B20251 | 871557 | Case data object security updated | Cross-site scripting protections have been added to the case data object creation activity. | Low-Code App Development |
INC-B20714 INC-B27955 |
872615 880959 |
docx4j library updated | Values were not populating in a Microsoft Word template using Pega property references, and opening a document created from a Word Template with Pega property references generated a popup with the message "Word found unreadable content in <File Name>. Do you want to recover the contents of this document? If you trust the source of this document, click yes". This has been resolved by updating the docx4j library. | Low-Code App Development |
INC-B22726 | 880053 | Cache-Control updated | A cache-control: no-store response header for "application/json" has been added for Constellation DX API endpoints. | Low-Code App Development |
INC-B22756 INC-B3573 INC-B24711 INC-B25942 |
873821 857914 875469 878949 |
#resolvedissues note: Corrected null pointer error for decision tables |
After upgrading Pega 7 to Pega 8, a null pointer exception occurred when evaluating a decision table. This was traced to the engine rule classes expecting the parameter page in a different format, and has been resolved by copying the paramPage to another page using copyValues(false) when the param page is instance of ComplexParameterPage, and doing action on this new page and on original page when page is not complex. | Low-Code App Development |
INC-B23721 | 878558 | Updated image tag handling for downloaded case emails | Email attached to a case using a send email automation step was in HTML format when downloaded and inline images were missing. This has been addressed by adding logic to replace and convert the image tag src attribute value from a relative path to base64. | Low-Code App Development |
INC-B24335 | 881706 | Case ID not shown in Recent section when case is not created | When case creation was restricted by flow privileges, a non-privileged user attempting to create a case received the error "Unable to authorize flow execution RULE-OBJ-FLOW XXORG-DOC-WORK CREATEFORM_DEFAULT" on the screen, but the case ID was shown in the Recents section. Clicking on that case ID resulted in the error "Empty Work Item Handle". This has been corrected so that in this scenario the case is not shown in Recents. | Low-Code App Development |
INC-B25455 | 875213 | Logger Category Name correctly marked as mandatory | On creation of a new logger category, the Logger Category Name field was not marked as mandatory. This has been corrected. | Low-Code App Development |
INC-B26277 | 877125 | Generated rule assembly will be discarded if exception encountered | If the connection was lost to an external database during rules assembly, the cache would become corrupted. After the connection was reestablished, the database cache updated properly but the node memory cache retained the corrupted class. This has been resolved with an update which will discard the generated assembly completely if a database exception is generated during assembly, and the exception will be logged. | Low-Code App Development |
INC-B27754 | 885930 | Warning message added for changing type of property from Casetype | When changing the property type in Data model tab, all of the instances associated with the class are deleted. A warning message for this has been added with the text "The class {3} ({4}) and/or its descendant classes have existing instances that would be impacted by changing the type of the field {1} ({2}). These instances will be deleted on submit if the type is changed." | Low-Code App Development |
INC-B29056 | 884717 | Screenflow name handling updated for multiflow navigation | When using a flow with multiple screenflows, clicking on the back button in the case screen to go back to previous screens in another screenflow caused the screenflow name to disappear. This has been resolved by updating the flow name with the subflow name when navigating back to the subflow from the main flow. | Low-Code App Development |
INC-B29557 | 880381 | Pega Branding updated to curent logos | The pyAdd / Close / Delete / Remove / ReopenReviewer correspondence rules for branch review email contained an outdated Pega 7 logo. This has been corrected. | Low-Code App Development |
INC-B335 | 861883 | Corrected branch development handling for Production rulesets | After adding a production ruleset to the application definition and access group, a test branch was created and then all rulesets were locked. It is expected that the branch will only be for the top ruleset of the current application, but in this scenario branches were created even for the Production rulesets. When branch development was enabled through the Branch Development Toggle icon on the top right corner of the screen, the Production ruleset was being populated as default. Attempting to change that to some other value reverted back to the Production ruleset value. This is incorrect behavior as Production rulesets should not appear in the list. These issues have been corrected. | Low-Code App Development |
INC-B340 | 874211 | Added handling for special BranchID value | Unexpected errors were seen on the datapage during validation. Investigation showed the datapage contained an input parameter for “SkipNoBranchOption”; if that is false, the datapage will add an extra result with pyBranchID “---” for the ‘No branch’ option, but these characters were not supported in the edit validate rule on pyBranchID. This has been resolved by adding handling for the value = "---". | Low-Code App Development |
INC-B3467 | 855567 | Security updated for showGrid | Cross-site scripting protections have been updated for showGrid. | Low-Code App Development |
INC-B400 | 847735 | Corrected relevant record banner showing after save-as | After marking a rule as relevant, performing a save-as of the rule showed the rule still marked as relevant in the newly created rule. Refreshing the screen removed the banner. Investigation showed the pzDisplayMarkedRelevantCnfMsg property was not correctly removed on save-as, and this has been corrected. | Low-Code App Development |
INC-B6162 | 856164 | DSS added for AllowMissingProperties functionality | A goal seek error occurred after update when using the Property-Map-DecisionTable method when the AllowMissingProperties option was not checked. This was due to the system looking for the property referenced in the decision table and returning false. Beginning with Pega 8, allowMissingProperties must be checked to handle any missing properties in the decision table. This is a change in behavior from Pega 7 where the functionality worked even though AllowMissingProperties was not checked. For better backwards compatibility, the DSS "DecisionTable/ObtainValue/AllowMissingProperties" has been added in the PEGA-RULES ruleset. When true, this DSS will have the same effect as having AllowMissingProperties checked. | Low-Code App Development |
INC-B6698 | 858696 | CheckFieldSecurity updated to handle custom Transfer Assignment | After update, a Transfer Assignment local action for transferring an assignment to an operator or a workqueue was no longer working and the error "One or more inputs are invalid" was generated. This was traced to work done as part of the page instruction field security which was failing in this use case due to the added pyAssignment page properties on the content copy page, and has been resolved by updating the logic for the pzCheckFieldSecurity activity. | Low-Code App Development |
INC-B7822 INC-A18210 |
860123 858691 |
Code added to break infinite loop related to AssignedToMyStaff | Agents were getting stuck suddenly. Investigation showed that this was due to pxAssignedToMyStaff, which when called while listing operators reporting to the current operator can cause long running interaction including a scenario where a manager reported to themself, generating an infinite loop. This has been resolved with an update which will break the loop if a manager reports to themself or if there is a recursion in the team structure. | Low-Code App Development |
INC-B8334 | 860686 | Corrected Close button accessibility for App Studio | Upon opening App Studio a Close button popup appeared which was read by accessibility tools as a multiplication button. This has been resolved by adding aria-label and title attributes for the Close modal button. | Low-Code App Development |
INC-B8351 | 862183 | Appstudio overview screen color contrast improved | The background color for the Appstudio overview screen has been updated in the pz-app-dashboard CSS file for improved accessibility. | Low-Code App Development |
Mobile
24.2 Resolved Issues for Mobile
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-B12602 |
879244 | Added handling for iOS scroll issue | When using multiselect or autocomplete on iOS, multiple scroll/swipe motions were needed to be able to scroll up or down in the list. This issue was seen on iPhone when the minimum search character setting was 2, and has been resolved with a check for iPhone so that when the result div is not present, scroll to top executes after the keyboard is open. | Mobile |
INC-A21383 | 863725 | Updated logging for invalid case types | The presence of a bad/missing case type causes an error to happen in case-related processing logic. This error is caught but a bad step status was still set with the "Failed to find a 'RULE-OBJ-CASETYPE' message, and this message was not being logged. This has been addressed with an update so that Validation for Applications flags invalid case types. The runtime case logic will gracefully handle the error situation and clearly notify the application owner of the problem. | Mobile |
INC-A23427 | 849455 | Default application image correctly available in Mobile | When using Switch Application on desktop, the default application can be identified from the image available on the left side of the application. Using the same configuration for Mobile in Navigation – MobileIconBar the image on the left did not appear. This was traced to the pyChecked and pyRadio attributes not being correctly populated as string literals in the mobile configuration, and has been corrected. | Mobile |
INC-A25025 | 868303 | Decimal value properly rounding on Mobile | Decimal values in a number UI control were not rounding properly for offline Mobile. This was a missed use case, and has been corrected. | Mobile |
INC-B11890 | 869988 | Radio button focus behavior customizable for mobile | The default behavior for radio button focus on mobile devices is to move focus away from where the action was triggered following a refresh event. To enable customizing this behavior, a global flag has been added. Set "pega.ui.bEnableMobileFocus" to true in userworkform to maintain focus on the button after a refresh action on mobile. | Mobile |
INC-B12407 INC-B12602 |
865010 865476 |
Corrected multiselect display for iOS | The multiselect list was not working as expected on iOS. Investigation showed the calculation for height and top position in mobile were not correct when mobile height is small and the results were shown in a specific fullScreen scroll container. This has been resolved with an update to fix the gap and input visibility issues of multiselect and autocomplete in this scenario. | Mobile |
INC-B12458 | 862125 | createPDF action updated for QR codes in offline mobile | Preview was not working for offline mobile when a QR code was included in the PDF. This has been resolved by adding base64 image field support for the PDF generator in Client for Windows. | Mobile |
INC-B13571 | 883739 | Documentation updated for mobile custom scripts | The documentation for static content bundles for Theme-Cosmos has been updated to clarify that if custom scripts are added to the circumstanced rule, this code should be done in the UserWorkForm HTML Fragment Rule to ensure it is picked up by the mobile application. | Mobile |
INC-B1391 | 849159 | Offline mobile app skips pre-processing | Pagelist contents were not stored to the Pega server when using an offline mobile app even after synchronization. This was a missed use case for not needing to perform pre-processing activities configured in the flow action when the assignment is submitted from an offline mobile client, and has been resolved by modifying the offline mobile app code to send an extra boolean parameter "skipPreProcessing" as true. This parameter works with the added 'when' condition to skip the pre-processing flow when the assignment submit action is performed from the offline mobile application. | Mobile |
INC-B14995 INC-B13626 INC-B29378 |
870600 867401 880215 |
Corrected multiselect and autocomplete handling for touch screens | The multiselect and auto complete controls were not loading the data when a touchscreen was used and the source for the control was a data page. The data loaded as expected when using a mouse. This has been resolved by adding the needed target element in the success function in Control_multiselect.js. | Mobile |
INC-B19548 INC-B19829 |
869097 869915 |
ZIP files correctly packaged for offline mobile | ZIP files were not correctly packaged as BINARY when using offline mobile. This has been resolved by adding zip and bin extensions to the binary files list. | Mobile |
INC-B20796 | 879403 | Dropdowns corrected for Android tablet in Desktop view | Dropdown rendered correctly on mobile and on a tablet browser, but did not display the correct results on an Android tablet using Desktop view.This has been resolved by adjusting the event loop to better handle the execution necessary. | Mobile |
INC-B20939 | 871354 | Client for Windows supports custom datapage for PDF generation/download | In order to improve case handling, an API has been added to the PDF generator in Client for Windows which allows generating PDFs from a custom datapage. This supports the use case of a single button to download all attached PDFs within a given Case type as a packaged zip file. For more information about this API, refer to the "What's new in Pega Client for Windows" documentation. | Mobile |
INC-B2102 | 865631 | Generic error message in offline mobile now translated | The "PleaseCorrectErrors" field value was not correctly resolved in the offline application.This was traced to a missing field value definition in the offline packaging configuration, which has now been resolved. | Mobile |
INC-B24829 | 885256 | Added handling for iOS autocomplete called from local action | When using an iOS device, an autocomplete control triggered within a local action froze when sourced with a data page (structure: list) which was itself sourced with a data transform which called another data page that sourced itself with a REST connector. This has been resolved with a check for a delay in opening the result popup container. | Mobile |
INC-B30961 | 882998 | Multi-select correctly displays all options in mobile view | Clicking the down arrow in the multi-select control did not display all of the results as expected when using an iPhone. This was an unintended side effect of work done to improve accessibility, and has been resolved by modifying the focus method and post-event actions. | Mobile |
INC-B5790 | 860630 | Local Actions in offline mode documentation updated | The documentation for Local Actions in offline mode has been updated to make special note of the need to define the Flow Action Rule on the same class as the Case Type. If the Flow Action Rule is defined on a different class, the Offline Processing Engine cannot find the rule at runtime. | Mobile |
INC-B7021 | 871232 | Alert announced by Android/iPhone | VoiceOver in iPhone/Android was not announcing 'Alert' for the error icon on a page level error message. This worked as expected for desktop. Investigation showed the page level validation message on the alert icon was being picked as "center panel region landmark" instead of "alert", and this has been resolved by adding the Alert word in py-cosmos-helper-classes.css so it is read as expected. | Mobile |
INC-B9657 | 868350 | Updated handling for autocomplete cancel button in mobile | When using an autocomplete control in a mobile screen with full screen enabled, navigating to the autocomplete, clicking on it to launch it in full screen, and clicking cancel without entering any characters did not close the autocomplete as expected and the screen froze. This was traced to a javascript error caused by the system expecting a popup from the autocomplete which was not generated, and has been resolved. | Mobile |
Project Delivery
24.2 Resolved Issues for Project Delivery
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-B17331 INC-B15644 INC-B15439 INC-B14808 INC-B14305 |
868734 | Documentation Improvements for BIX Extract Design | The documentation for dividing Business Intelligence Extract (BIX) operations into smaller parts to speed up the extraction process has been updated to clarify the process and necessary steps. | Project Delivery |
INC-A12127 | 828680 | Clarification for sorting autopopulated properties | The documentation for passing parameters to data pages from autopopulated properties has been updated to clarify that autopopulated properties do not support sorting, and the sorting must be performed at the UI layer (table or grid) or in a data page layer. | Project Delivery |
INC-A29934 | 855718 | Inline image documentation updated for external applications | The documentation for configuring a Rich Text Editor control has been updated to specify that using Base64 encoding is necessary when interacting with external applications to display the images inline to the text. For internal use, the image uploader remains the preferred option because of security and data storage capabilities. | Project Delivery |
INC-A30085 | 854709 | Get next work supports fetching cases from multiple application | The documentation regarding the logic for selecting the next work assignment has been updated to clarify that the Get Next Work functionality retrieves assignments from all the applications to which the user has access. | Project Delivery |
INC-A4035 | 809044 | Removed duplicate information from Rule Security Analyzer documentation | The documentation for Rule Security Analyzer has been updated to remove a duplicate entry listing pyUnsafeURL. | Project Delivery |
INC-B17244 | 867177 | Documentation updated for updating an expired identity provider certificate | The documentation for updating an expired identity provider certificate in a SAML Authentication Service has been updated to clarify that if the XML contains both old and new certificates, it may be necessary to manually select the correct certificate from the Certificate Alias dropdown. | Project Delivery |
INC-B23318 | 877586 | Link markdown not supported in Pulse | Security has been updated for Pulse, and markdown is no longer supported for link formatting. | Project Delivery |
INC-B25813 | 881783 | Custom cipher creation documentation updated | The documentation for creating a custom cipher has been updated to clarify that compiling the Java will require the prprivate-exec.jar, prpublic.jar, and prenginext.jar files. | Project Delivery |
INC-B29347 | 884364 | Documentation updated for customization of mobile login | The documentation for configuring the browser requestor has been updated to note that customizing mobile login screens requires updating the OAuth 2.0 service package to use the unauthenticated Access Group. | Project Delivery |
INC-B32153 | 889229 | Circumstanced rule skimming documentation updated | The documentation for creating a rule specialized by circumstance and for rule skimming for higher ruleset versions has been updated to clarify that the existing "Base Rule" check box status is ignored when skimming and the rules are moved from lower to higher ruleset versions regardless of the "Base Rule" setting and circumstancing. When skimming circumstanced rules, the "Base Rule" check box in the rule availability dialog box must be explicitly selected for a newly skimmed rule to be recognized as a base rule during rule resolution. | Project Delivery |
INC-B32984 | 882658 | Documentation updated for indexing class data | The "Indexing class data" documentation has been updated to clarify that a manual re-index of the search indexes should be performed from the Search landing page after a database restoration. | Project Delivery |
Reporting
24.2 Resolved Issues for Reporting
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-269550 | 867881 | Resolved UserDashboardContainer not displaying correctly | When using an AJAX container and navigating to other tabs while inactive, the screen/sections were showing blank or not rendering as expected. This was an issue related to using positioning absolute for the section, and has been resolved by modifying the py-dashboard-personalization CSS to remove position absolute and adjust the column-2 position. | Reporting |
INC-A11826 | 858799 | Corrected datatype for Report Definition datetime | It was not working to specify a symbolic condition such as [Today] for a datetime property in a report definition [Date and Time] interval. This was caused by the datatype being saved as "DATE TIME" instead of "Date Time" when created from UserPortal, and has been resolved by updating the pzGetSelectedValues Activity to correct the datatype. | Reporting |
INC-A15578 | 865639 | Corrected button visibility for inline custom filter section | When using a report definition with an inline custom filter section, performing a refresh caused the inline section's apply and clear buttons to disappear. This has been resolved by removing a second visibility condition on the dynamic layout in the pyDefaultCustomFilterApplyCancel section. | Reporting |
INC-A21986 | 859197 | Corrected security registration for Report Next Page | Report Next Page was not working when clicked.This has been resolved by registering pzdoGridAction in the pzBACActivityRegistration section. | Reporting |
INC-A24184 | 860833 | Custom search with pagelist functions with SRS | After migrating to the Search and Reporting Service (SRS) from Elastic search, the old implementation of a custom search was no longer working. This has been resolved by adding the DSS "enableOrInFilterValue" to control processing OR in the search filter value. | Reporting |
INC-A4701 | 823046 | Updated logic for embedded search | Embedded search was not working for ABAC(one of + Page group). This was traced to the open-work-by-handle failing the Access Control Policy, and has been resolved. | Reporting |
INC-B10202 | 871699 | Updated issue indexer to consider ancestor classes | A search using the pyWorkSearch report definition from "work-" class which included the required property in the report definition did not return the worktype. Running the report definition with the database and ElasticSearch returned all of the expected values. This was traced to the Work_type property being available in multiple classes, and has been resolved by updating the issue indexer to extend the model information about a given property for all ancestors and inform SRS that Work_type is also available in ancestors such as Work- or baseclass. | Reporting |
INC-B10322 | 867028 | Handling added for embedded properties in a sub-report | After update, reports containing a specific sub-report could not be saved and an error was generated related to two columns present in the sub-report. Investigation showed the Propinfo had a null value, and this has been resolved by adding logic to handle embedded properties and validate them. | Reporting |
INC-B10344 | 861511 | Correct column name shown when exporting Grouped results | An incorrect column name was being shown when exporting Grouped results to Excel. To resolve this, if a column is 'Grouped by' and is a column in the table, export to Excel will ignore the column in the table so its header label should not appear and cause misalignment. | Reporting |
INC-B10398 | 860907 | Resolved unregistered Report Explorer request | A 403 error was displayed when clicking on select values for datetime properties in Report Explorer when pyblockunregisteredrequests is true. This has been resolved by registering pzGetCustomPropsForTreeGrid in pzBACActivityRegistration. | Reporting |
INC-B10661 | 861212 | DSS added for indexing timeout to prevent node restart | It was possible for a bulk reindexing process on a class with millions of records to time out and cause a node to be marked as unhealthy and be restarted. Because processing was not completed, the utility nodes would attempt to reprocess the same items and the duplicate entries in the pySASBatchIndexProcessor queue could cause the stream service's disk space to become full. To address this, the DSS indexer/srs/bulkGenerationTimeoutInSeconds has been created to set the timeout for bulk generation. If it will take longer then the limit, then bulk generation will be stopped with an error. With the timeout, nodes will not be marked as unhealthy and termination will not occur. The type of error will identify the need to use the DSS indexer/srs/partitioningConfiguration to make indexing possible. | Reporting |
INC-B10861 | 860901 | Improved security for DisplayReport | Cross-site scripting protections have been updated for the DisplayReport activity. | Reporting |
INC-B12432 | 868839 | Modal context preserved for Constellation Page-Set-Messages | When running the Search and Select pattern within a modal which included a custom Data Transform to set page messages through page-set-messages activity, these messages were displayed in the review harness but not in the modal itself. This was traced to previous work to not add messages to the work area context and rather do it on the primary context, and has been resolved with an update to ensure context will not be trimmed if it has a modal for an error message. | Reporting |
INC-B12870 | 868132 | When condition updated for Live UI button | After update, the Live UI button was being populated in reports for end users. This has been resolved by updating the when condition of pyEnableUIInspector in code-Pega-list. | Reporting |
INC-B13389 | 876165 | Report name with special characters displays correctly | After update, a report name containing special characters showed the ASCII values in the tab names. This has been resolved by updating the RDWinTitle control. | Reporting |
INC-B13561 INC-B24931 |
868294 877718 |
DSS added to control descendant class lookups | In some use scenarios, system performance can be severely impacted by thread blockage around ClassMapImpl when there are saves of the Rule-Obj-Class records and Rule-ClassMetadata records linked to the data tables. To address this, the DSS useClassMapForDescendantClasses has been added to allow modifying the behavior of descendant class lookups and use the Classmap in memory instead of the Database. The default for this DSS is false, which directs lookups to use the database. | Reporting |
INC-B16714 | 875593 | Hyperlinks open as expected in scheduled report | After enabling "Embed link to output in notification" in a scheduled report, the "please click here to see the output" hyperlink in the generated email did not work. This has been resolved by adding the storageType in the pyActionAttachFileToWO. | Reporting |
INC-B17668 | 867688 | Support added for disabling SRS Incremental Indexing before migration | In order to improve the process of migrating to externalized search, an update has been made which will disable the Search and Reporting Service (SRS) incremental indexer when SearchCapability.SRS_ALLOW_INCREMENTAL_INDEXER is not activated. This capability should be deactivated only in the following scenarios: 1) environments with SRS and the migration in the state 'Ready'; and 2) environments without SRS. | Reporting |
INC-B1827 | 886313 | Added null property handling for AccessPolicyCondition | After update and migrating to the SRS service, case search was not working for the end user portal. Investigation showed that if the embedded properties in the AccessPolicyCondition were verified for IS_Null condition, a java.lang.IndexOutOfBoundsException error was generated. Handling has been added for this scenario. | Reporting |
INC-B18313 | 872430 | Restored date format for report prompt filter | After upgrade, the date format in the report prompt filter was displayed as a timestamp value such as '20240609T045800.000 GMT' instead of the previous format of 'June 9, 2024'. This was traced to an incorrect behavior in pzResolveCopyFilters for DateTime and has been corrected. | Reporting |
INC-B19661 | 875695 | Updated date handling for Export to Excel | Export to Excel was using the value 1/1/1970 even when a value was present and displayed correctly in the UI. Investigation showed the property was being set via a declare expression which was taking the value from pxCreateDateTime. To resolve this, declare expression has been turned off in pzDataExplorerExportToExcel. | Reporting |
INC-B20878 INC-B7434 |
883091 885952 |
Updated SASIncrementalIndexer management | After enabling the Search and Reporting Service on Pega Cloud, an intermittent InvalidParameterException was generated during batch case creation using a background job scheduler process, some RuleNotFoundExceptions were generated during case processing with ResumeFlow by queue processor, and attempting to map data to the .ResponsePage property would occasionally result in an "unsupported mode: Unknown" error when performing a REST call to another application. This has been resolved with the addition of Thread Modification Helpers to manage incremental flow efficiently for the thread APIs. | Reporting |
INC-B21374 | 876471 | Expanded regex for case IDs in Dev Studio search | Search was not working for case IDs with the pattern XXX-240530-33, though it did work for the string Y-240530-859. This was traced to the pattern of three letters and a hyphen not matching the expected pattern of a single letter and a hyphen, and has been resolved by updating the regex pattern used in the pzSearchResults activity for Dev Studio. | Reporting |
INC-B22862 | 874548 | Improved performance for BIX extraction to CSV | BIX extractions to CSV run via job scheduler were taking significantly longer to execute after upgrade. Investigation traced this to a check on the value of the DSS setting enableDefaultDelimiterForMSExcelInCSV which was being run multiple times in a while loop during the execution of the internal.access.ExtractImpl.addCSVData method. To resolve this, the addCSVData method has been adjusted so the DSS check happens once before it goes into the loop and it is not done at all within the loop. | Reporting |
INC-B22966 | 887328 | Added Chart control handling for empty parameter | When an empty parameter was used in a Chart, the property name was displayed instead of a null value. This has been resolved by updating the conditions for passing the report parameters in the Chart controls. | Reporting |
INC-B23105 | 872627 | GetPropsForTreeGrid registered with BAC | A 403 Forbidden error generated by the Report browser has been resolved by registering pzGetPropsForTreeGrid in pzBACActivityRegistration. | Reporting |
INC-B23827 INC-B28446 |
877818 878837 |
Corrected exception for Report Browser column drag/drop/delete | While editing a report in the Report Browser, drag and dropping a column or deleting a column generated an exception. This was traced to a code error in the pzPostReportConfigSection activity which added an additional condition to the 'when', and has been corrected. | Reporting |
INC-B23876 | 880897 | Corrected missing privilege for scheduled reports | After upgrade, a scheduled report failed with the error "InsufficientPrivileges:RuleExecutionDenied RULE-OBJ-ACTIVITY SYSTEM-QUEUE-SCHEDULEDTASK PZSCHEDULEDTASKPROCESSOR". This was due to a missing privilege name and has been resolved. | Reporting |
INC-B24417 INC-B22618 |
880200 887541 |
Chart Control Actions menu handling updated | After update, opening subsequent charts on a dashboard with multiple chart controls did not dismiss previously opened menus for other charts. This was traced to a blank referral attribute in the linking page window object related to the deprecated Adobe Flash player, and all references to this in the chart-related files have been removed. To resolve the related menu issue, the handling of the showReportRCMenu function in pzPega_chart_actionmenu has been updated to ensure the open menu is closed as expected when the next menu is selected. | Reporting |
INC-B25029 | 880058 | Corrected DisplayReport filter alignment | After configuring a header at the top of the portal in Theme-Cosmos, accessing any report using the DisplayReport harness and clicking on the Filter icon resulted in a spacing issue where the height of the header was being added to the top attribute. This has been resolved by updating the CSS in pyReportEditorStyling. | Reporting |
INC-B26442 | 884862 | Documentation updated for BIX Get All Properties option | The documentation for enabling the BIX ruleset has been updated to clarify expected results related to using the BIX "Get All Properties" checkbox. When using this option with an extraction rule defined on a class that contains a blob, an extraction rule defined on a class with XML output type BIX will extract all the properties that are present in the specified class's pzpvstream. However, if the extraction rule is defined on a blobless class, BIX will only add the key columns and exposed columns like committedDatetime and pxObjClass. | Reporting |
INC-B31102 INC-B40044 |
884744 892735 |
Corrected duplicated extract folder structure | After update, the folder structure of BIX extracts was modified and the folder with the extract was moved inside another folder. This was an unintended side effect of the change to an alternative third party encryption library, and has been resolved with an update to remove the duplicated folder structure during the zip file extraction. | Reporting |
INC-B31654 | 882452 | Copy Report handling updated | After update, attempting to copy reports to a new or existing category was not working. Copying to the same category is not supported, and an error message indicating "Report already exists in category" has been added to reflect the limitation. Copying to a different category has been corrected by updating pzcopyshortcutpostactivity7. | Reporting |
INC-B32603 | 885183 | Corrected report grid column header alignment | The report grid column header was not correctly aligned with the top. This has been resolved by updating the CSS in the pyReportEditorStyling file. | Reporting |
INC-B34693 | 887736 | Scheduled insight export to Excel matches manual insight export | When an insight was scheduled, the generated Excel was limited to 5000 rows. If the insight was run manually and exported to Excel, all rows were exported. This has been resolved by updating the 'when' rule from using pyServiceActivity=="pzDataExplorerExport to instead use Param.UseRuntimeDefinition=="true". | Reporting |
INC-B35340 | 888913 | Report Filtering working for drag/drop column reordering | Report filtering was not working as expected in the Dashboard if a column from the table was dragged and dropped. This has been resolved by unchecking the "Allow invocation from browser" checkbox in the pzDropNewFilterFromColumn activity. | Reporting |
INC-B3603 | 859202 | Worklist Counts enabled for non-Theme Cosmos applications | Worklist Counts were not updating on the Dashboard. This was due to a property which pointed to a Theme Cosmos Declare Expression that was not in the ruleset stack for UI-Kit, and has been resolved by creating a WorklistOpenCount Declare expression which is accessible for non-Theme Cosmos applications. | Reporting |
INC-B36431 | 887261 | Corrected blank value handling in PDF | When a section contained a read-only control with a blank value, the generated PDF showed the blank value as "no value" when UseCompactStylesforPDF was set as TRUE. This has been resolved by updating the CSS. | Reporting |
INC-B36538 | 887750 | Accessibility improved for viewing filtered reports | When viewing filtered reports, keyboard users were not able to focus on the filtered labels, and the CSS for focus on the Select button was not correct. This has been resolved by updating the styles to get the correct focus effects when traversing through tabs. | Reporting |
INC-B39471 | 889708 | Report editor sort highlighting corrected | When using a menu item that called a report definition rule attempting to sort on the column resulted in the highlighting being displayed as two separate boxes instead of one. This was due to newly introduced styling in the report viewer, and has been resolved by correcting the pyreporteditorstyling CSS file. | Reporting |
INC-B4356 | 858240 | Removed redundant PDF file extension on download | When a PDF was generated and added using PDF smart shape, a redundant extension was added when the PDF was downloaded from preview. This was traced to pxcreatepdf adding the extension to the filename when it already existed, and has been resolved. | Reporting |
INC-B4697 | 861763 | Copy/Move Report Definition Shortcut behavior updated | When trying to copy a report shortcut to the same category of the Report Browser, the error message “Category name: This report shortcut already exists in this category. Please select a different category.” was displayed. However, in the backend, the report shortcut was created in open rule set version and deleted from the existing locked rule set version. Investigation confirmed that for Copy to Same Category, the error was shown but it still created a new record in an open available ruleset and deleted the original one. For Move to Same Category, no error was shown but a new record was created and the old one was deleted. To resolve this, for Copy to Same Category, an error will be generated and the new record will not be created. For Move to Same Category, an error will be generated and the record will not be created. A check has been added to ensure that pxCreateRecord should happen only when the Category is not the same. | Reporting |
INC-B5040 | 860479 | Corrected Search for 'show results in new window' | When using the search bar in PQM, the "Show results in a new window" function opened a new window opens but returned results unrelated to the search. For example, searching for COM-24172948 returned "1000 results found for 'COM24172948'" and the results were follow up cases instead of the actual complaint record. This has been resolved by updating the preferences from Searchtext to Searchstring for 'Show results in new window'. | Reporting |
INC-B5953 | 855310 | Insights updated to use operator time zone | Insights was showing EST when the case data had the correct GMT Value for the UK locale. This has been resolved by updating Insights to consider the operator time zone. | Reporting |
INC-B6183 | 856597 | Reports clickable on list view | After update, the clickable rows used to access the respective reports were no longer functioning as expected when accessing the reports section and choosing to display all reports in a list view. Investigation showed the pyReportBrowserAllReports section was missing an action set when the Optimize code checkbox was checked, and this has been added for onclick rows. | Reporting |
INC-B7368 | 856138 | Max records override for Export to Excel | Exporting to Excel from an Insight was capped at 5000 records for export. To address this, an update has been made to override max records in pzUpdateSystemSettings in case of export to Excel. | Reporting |
INC-B7958 | 876166 | Corrected distortion while scrolling fixed header alignments | When the "Do not scroll header" checkbox was enabled, the report column headers were becoming jumbled at run time. This has been resolved by updating pzPega_ui_grid.js and adding the necessary CSS for a fixed header to pyReportEditorStyling. | Reporting |
INC-B9236 | 859659 | Performance improved for SQLParser class | The SQL auto parser has been updated to decrease performance impact during report definition execution. | Reporting |
INC-B9677 | 867353 | Bix CSV extract files for child cases include headers | When the "-c" option for BIX was used in Pega Cloud to include child case data in the CSV extracts, the child extracts were produced in files separate from the parent cases and contained only the data lines while the parent extract also included the column headers. This has been resolved by adding the necessary support for the headers to be included in the child data file. |
Reporting |
INC-B9729 | 869269 | Updated empty value handling for validation of custom filters in reports | In some specific scenarios when the validation failed for a report with filters in a custom section using multiselect controls, the system displayed a Pega internal error screen instead of displaying the expected error message and a java error was logged. Investigation showed the Filter Operation in pyContent of the pzValidateCustomFilterSection had the value IS NULL at the initial point of the report definition, and this was carried over into the later process. This has been resolved with an update to pass the value as = instead of IS NULL to match the filters in the pyBody of the RD. | Reporting |
Security
24.2 Resolved Issues for Security
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-A24541 | 866154 | Updated handling for custom browser CSP | After introducing a separate application for handling the unauthenticated browser context (requester type Browser) with a very strict Content Security Policy configured as blocking, attempting to log in to an application in the platform failed when authentication was passed in context of the local access group. Investigation showed that after configuring different CSP policies for unauthenticated context at the application level and user-specific application level with varying CSP modes, users were receiving both CSP headers after logging in. To ensure that only one CSP header is present at any given time, updates have been made to remove both CSP headers from the response headers map before replacing the values with the new policy. | Security |
INC-A28575 | 873762 | Added basic authentication handling for modified API servlet mapping | Changing the default servlet mapping to disable PRBasic authentication or move default /prweb to map to PRAuth authentication caused the API calls that used defined authentication in the service package to stop working. This has been resolved by adding logic to support basic authentication type when basic authentication is selected for services where the * url pattern is mapped to PRAuth. | Security |
INC-A2894 | 856622 | Rule-Obj-Access-Deny replicated to all nodes | An update has been made to ensure the Rule-Obj-Access-Deny rule is synced to all nodes in a multi-node environment. | Security |
INC-A29484 | 855137 | Cross-site scripting protections updated | Cross-site scripting filters have been added for dynamic layout sections. | Security |
INC-A29650 | 848167 | Pega MFA Screen session expiry redirect updated | At session expiry, the Pega multi-factor authentication screen redirected to a screen showing all authentication services instead of the default authentication service. This involved an uncommon scenario where multi-factor authentication (MFA) was enabled and the default authentication service was mapped to the app, and has been resolved by redirecting to the default authentication service associated with the application during a node crash scenario or when the application has Interactive login configuration selected. | Security |
INC-B10230 | 863327 | Security improved for autocomplete | Cross-site scripting protections have been updated for autocomplete. | Security |
INC-B12748 | 865816 | ABAC policy conditions updated to include descendant classes | When running a report definition on a case class which has class specialization on it, the report returns rows (cases) from all of the specialized classes as expected when the “Report on descendant class instances” option is checked. If an ABAC policy is implemented for this case type to enable row level security and the policy condition uses a property on the case itself, the report eliminates the rows that do not meet the condition as expected. However, if the policy condition used an association rule to join with a data class (or another case class) to perform the check, the report failed to fetch any of the case instances from specialized classes even when the policy condition was satisfied. This was caused by the ABAC policy conditions that use associations not including descendant classes, and has been resolved by updating the file PolicyConditionActionAssembler class with the new entries. | Security |
INC-B12824 | 863462 | Security update for Smart Tip | Cross-site scripting protections have been added to the 'Show Smart Tip' feature. | Security |
INC-B13609 | 870914 | Improved accessibility for focused empty labels | The screen reader was announcing ‘space, space, space’ when there was a visible focus on an empty space. This has been resolved by updating the pzMFAForm harness structure from screen layout to "container - No header". | Security |
INC-B15155 | 870185 | Diagnostic logging added for logout issue | Additional logging has been added to assist with diagnosing issues related to pxStopPending causing unexpected logout. | Security |
INC-B17248 | 867777 | Trim added to authentication key construction scope | Trying to make API calls using an OIDC token from an active SSO session generated the exception "Unable to obtain access token for client details in authentication profile configured for connector." Investigation showed there was a scope issue while constructing the key, and this has been resolved by implementing trim during this process. | Security |
INC-B17764 | 868627 | Corrected handling for Constellation authorization header | When attempting to invoke an embedded logout method that did not have secureCookie='true', the Service Broker revoke transaction had an incorrect authorization header for the transaction. This has been resolved with an update to avoid using default headers for revoke tokens. | Security |
INC-B1862 INC-A5927 |
851203 822046 |
Corrected SOAP Service outbound message signing | The system was signing the body element of outbound messages for the SOAP Service despite the specified outbound signing elements. This has been corrected. | Security |
INC-B19337 | 877616 | Field values security updated | Cross site scripting filters have been added on Field Value strings. | Security |
INC-B20163 | 873712 | Improved error message security | Protection against injection attacks has been updated for error messages. | Security |
INC-B20254 | 871562 | Alternative Stage Name security enhanced | Security has been updated for Alternative Stage Name. | Security |
INC-B20617 | 876580 | OpenRule control replaced with OpenRuleAdvanced for BAC handling | After upgrade, the 'skills' & 'availability' item sections pyChangeOperatorSkills and pyOperatorAvailability in the navigation menu pyProfileHeaderMenu were generating a 403 error for end users but not for admin users. This was traced to BAC registration issues with the OpenRule control, and has been resolved by replacing OpenRule with OpenRuleAdvanced which contains pzEncryptURLActionString. | Security |
INC-B20727 | 872669 | Check added for incorrectly formed CORS endpoints | After constructing a new REST API and adding an endpoint to a cross-origin resource sharing (CORS) policy to restrict access for the endpoint to certain domains, the restriction was not working as expected and allowed all domains. Investigation showed the endpoint as supplied in the CORS policy dropdown was incorrect: the endpoint should begin with "api" but did not. This has been resolved by modifying the logic to append /api for REST APIs with a service version. | Security |
INC-B20904 | 872586 | Corrected page render for pxDefaultSecured CSP rule | Executing the rule 'pyStatusResponse' standalone by using the pxDefaultSecured CSP rule in the Reject and Report mode did not load the page as expected. This has been resolved by adding the domain "https://fonts.googleapis.com/" in the style-src directive of the 'pxDefaultSecured' CSP rule. | Security |
INC-B21044 | 884093 | Additional logging added for security issues | To aid in diagnosing SEC0017 errors, additional logging has been added identify the underlying activities or streams. | Security |
INC-B23015 | 874337 | Updated OperatorID security | Security has been updated for the OperatorID clipboard page. | Security |
INC-B23403 | 875643 | Sanitizing filters added for query parameters | Cross site scripting filters have been added to the URL query parameter input. | Security |
INC-B2525 INC-B7923 |
857097 860268 |
Corrected authentication request at startup | After update, the error "Only authenticated client may start this activity: RULE-OBJ-ACTIVITY @BASECLASS PZGETALLCHANNELS" appeared at startup. This was caused by an unneeded attempt to authenticate and has been resolved. | Security |
INC-B2902 | 863210 | Websocket connection handling updated | Security handling has been updated for websocket connections. | Security |
INC-B29444 | 887691 | Updated redirect for post access-group timeout | Using SSO OIDC for access group timeouts was working for some groups, but for others the portal was intermittently freezing after timeout. To address this, the false flag has been updated to aTimedOut so there will be a redirect back to the logoff screen once the user clicks on the screen post access-group timeout. | Security |
INC-B31047 | 883914 | Updated Constellation certificate | The PegaAATTS keystore for Constellation has been updated with a new certificate in advance of expiration. | Security |
INC-B32829 | 887214 | Additional handling for custom browser CSP | Additional work has been done on the handling for Content Security Policy headers to ensure only one CSP header is present at any given time in both traditional and Constellation portals. | Security |
INC-B33773 | 885332 | PRConfig available for Java check | A PRConfig with setting security/blockJavaInjection has been made available. If present, this configuration will be honored over the existing DASS security/enableJavaInjectionMitigation. Additional logic has also been added to trigger a security alert when the checkForJavaCodeInjection method is called and Java Injection is allowed in the system. | Security |
INC-B33917 | 883933 | DSS added to refresh the access token | Some downstream calls were failing with a "Token expired" error during PING token validation. To resolve this, the DSS "security/token/refreshEarlyBefore" has been added. This is used to refresh the access token early to avoid expiry by the time it reaches the server, and can be set to add 0-60 seconds. | Security |
INC-B35024 | 885801 | OAuth2DataProviderImpl logging added | Additional logging has been added in OAuth2DataProviderImpl to assist with diagnosing login issues. | Security |
INC-B5680 | 855470 | Added temporary context for CDK rotation | When the Customer Data Key (CDK) expired, trying to rotate the key during non-admin user session context generated the error "You are not authorized to create, modify, or lock instance SYSTEM-DATAENCRYPTION-CDK". This was due to the user role not having access for CDK class, and has been resolved by temporarily assigning System-DataEncryption-CDK access to non-admin user to acquire the lock successfully. | Security |
INC-B6072 | 859621 | Logging added for userClaims | Additional logging has been added in order to assist in debugging issues with "derive operatorId from claim". | Security |
INC-B6306 | 858236 | Resolved runtime exception for OAuth2 | A runtime exception was generated when trying to log in with OAuth2, specifying "Unable to fetch token page using key ac_pega-authorizationcode-openid profile email". Investigation traced this to an additional space character added after email in the key, and it has been resolved by adding trim to the scope while constructing the key. | Security |
INC-B7191 | 859924 | Corrected filtering for certificate expiry notifications | The pxfetchRequiredCertificationForNotification report definition was fetching all the available certificates in the platform irrespective of the "No.of.Days" filter condition in the configuration. This has been resolved by adding the parameters daysToExpire and notificationInterval to the filter criteria so only those certificates that are expiring based on the "Send expiration notifications before (days)" value will be retrieved. | Security |
INC-B7968 | 861644 | Observability increased for SAML WebSSO request | In order to assist with troubleshooting the logged error "Caught Exception while validating SAML2 Authentication response protocol : SAML token security failure", the observability has been increased to identify what attribute in SAML Assertion is causing validation failure. | Security |
INC-B8872 | 865594 | Corrected NoInformationRecognized code for PRauth | The field value "NoInformationRecognized" is available for updating the error message associated with incorrect login credentials, but the updated error message worked only if requests contained "/prweb". The configured error message was not shown for requests with /PRAuth. This was traced to a typo in the PRauth code which caused it to not override the value from the NoInformationRecognized field; this has been corrected. | Security |
INC-B9267 | 874629 | Email work link correctly routes to the case after MFA | Clicking on a work link in an email moved to the MFA screen as expected, but once the MFA authentication was done the user was routed to the dashboard instead of to the case screen. This was traced to the URLRedirection for correspondence email not having the required parameter to open the case when Login Service Selector screen was called, and has been corrected. | Security |
INC-B948 | 881837 | Value List supported for headers in token profile | When using a JWT profile as authentication schema within Authentication Profile, running the REST connector with authentication profile generated the error "Access token endpoint invocation failed". To address this, support has been added for a Value List for headers in token profile. | Security |
System Administration
24.2 Resolved Issues for System Administration
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-A13505 INC-B12898 INC-A30015 INC-B28033 INC-B33340 |
840453 876680 851138 884465 889205 |
Optimized APIs added to improve lag calculation for external Kafka | When an enterprise-level Kafka cluster is hosted in multiple regions with multiple Kafka racks and many Kafka brokers, Pega's partitions can be stored anywhere in the cluster. This can drastically impact the network latency for the Kafka API calls that perform the lag calculation process to render the "Ready to process" values in the Queue Processors landing page, as the underlying mechanisms used for lag calculation need to complete the entire process within 30 seconds to avoid a timeout exception with the error message "Unable to calculate lag for <QP-stream-name>". To address this need, new stream SPIs/APIs have been added which provide significant optimization in obtaining offsets in a faster fashion with reduced total number of Kafka API calls. | System Administration |
INC-A21896 | 863472 | Extra logging added for session timeout issues | Additional diagnostic logging has been added to trace changes to the redirectURI in order to investigate issues with session timeout not working and reporting "Redirected too many times". | System Administration |
INC-A6332 | 815961 | Node type placeholder added to queue processor rule form | If the node type was not available for a queue processor, the drop down 'Associated with node type' incorrectly showed the first value in the list even though the XML attribute pyNodeTypesText showed the correct value. This has been resolved by adding a <select.. > place holder for the associated node type in the queue processor rule form if the node is not present in that environment. | System Administration |
INC-A6385 | 812857 | Handling added for fetching job scheduler counts | If the pegadata.pr_log_jobs_scheduler table that stores the execution history of all jobs becomes very large, the Admin Studio jobs landing page was not loading due to the SQL query exceeding the 90 second default timeout. To resolve this, a new API with associated data page and activity has been created in Job Scheduler Management to fetch the total resolved job counts. The pyTotalJobs(declare expression) activity has been updated to fetch only the job count from the newly created data page, and the pzCreateDashboardDataPages activity will load the new data page on the Admin UI landing page. | System Administration |
INC-B1033 | 855348 | Agent runs on correct day after restart | When an agent was configured to run daily on one background node at a time using America/New York timezone, if the scheduled run time was after 7pm EST time and there was a restart the agent was instead scheduled for the next day. This has been resolved with an update to ensure an agent in a different time zone is not skipped. | System Administration |
INC-B11448 | 866871 | Made message processing flow more robust against heavy loads | During periods of heavy system load, the data flow thread might receive the Kafka confirmation slightly later than usual and overlap with the queue processor thread reading the message and starting to process it. If this occurred during the queue processor's thread experiencing an issue and re-queuing the message for another attempt, the data flow thread removed the message from the database while it was still being processed by the queue processor thread. This race condition has been addressed by modifying the database query for removing the message. | System Administration |
INC-B12042 | 866874 | DSS added to change casing for queue processor's Kafka topics | Some sites have a limitation of creating Kafka topics only in lower case in the external enterprise Kafka cluster for the stream service. To better support moving to Kafka externalization, a DSS has been added to change how the queue processor's Kafka topics are named (lower vs upper case). Set the value to the desired strategy; allowed values are: UPPERCASE - for pzStandardProcessor queue processor the stream name will be PZSTANDARDPROCESSOR and Kafka topic name will be: pega-PZSTANDARDPROCESSOR - this strategy is used as the default; LOWERCASE - for pzStandardProcessor queue processor the stream name will be pzstandardprocessor and Kafka topic name will be: pega-pzstandardprocessor; To apply the configuration naming convention all nodes need to be restarted simultaneously (not a rolling restart), then stale Kafka topics must be manually removed as these are not removed automatically. |
System Administration |
INC-B12578 | 865609 | Additional passivation logging available | In order to assist with diagnosing an intermittent issue with data loss when submitting from one screen to another, additional logging has been made available for the passivation APIs. | System Administration |
INC-B13493 | 868010 | ZoneDateTime used for dayoffset in Daylight Savings Time scheduler calculations | The Calendar Class was not correctly handling Daylight Savings Time when calculating the next run time if the job was scheduled at the exact time change, for example summer 02:00am in Europe/Warsaw. To resolve this, the Calendar Class has been replaced with the ZoneDateTime class to add dayoffset, which provides correct calculations for DST for a specified time zone. | System Administration |
INC-B17068 | 868690 | Markdown library update | The markdown library has been updated to the latest version. | System Administration |
INC-B17182 | 872740 | Added explicit websocket close for Robot activities | Robot activities were not being invoked by data pages after a prolonged (several hours) period of working stability. This was traced to the websocket sessions not getting closed properly, causing the connection limit to be reached. This has been resolved with an update to explicitly close the session after the message is received from the message service. | System Administration |
INC-B17360 | 869399 | References removed for deprecated Treegrid_Includes | The Treegrid_Includes HTML fragment was deprecated as of Pega Infinity '23, and included the removal of the pega_ui_treegrid.js and pega_ui_treegrid_Excell.js files. With this update, all remaining dependencies using these files have also been removed. | System Administration |
INC-B17485 | 871618 | Disabled queue processors filtered from alerts | PEGA0137 Alerts were being reported for disabled queue processors. To resolve this, filtering has been added which will be applied before the alerts are sent. | System Administration |
INC-B18402 | 871091 | Updated logger handling for PRPulseDispatcher class | The campaign process program run status was not progressing to the completed state, and error were generated indicating "Invalid value for aClassName passed to .createPage:Failed to get column mapping for property Data-BatchOutPR132.pySubjectType". This has been resolved by modifying the logger for the PRPulseDispatcher class to continuing pulse processing even after pre-processing failure. | System Administration |
INC-B23072 | 872911 | Job scheduler retry for interrupted/missed recurring scheduled jobs | Intermittent failures were seen in generating feed files. Investigation showed this was due to shut down of the node the job scheduler was running on, interrupting the process. To resolve this, a job scheduler retry mechanism has been introduced which activates when a node or pod starts up. If a recurring job scheduler run was missed due to node/pod failure or shutdown, it will be initiated immediately after the node/pod restarts. Note that this update applies to situations where a node/pod goes down or stops responding and is replaced by a healthy node during a rolling restart, when a node/pod is shut down after a graceful period and the job scheduler activity is not completed, and a general environment outage where no nodes/pods are available to run job schedulers. The mechanism does not cover situations where a node/pod is shut down due to scaling down while processing an activity as no new node is available to pick up and run the missed job scheduler. This feature is enabled by default; while there is a DSS option to turn off the job scheduler retry mechanism, doing so is not recommended. | System Administration |
INC-B2470 | 861914 | External Hazelcast v5 startup updated for use with Oracle use | When the Weblogic server was started using Hazelcast v5 with Oracle, multiple errors were generated including a null pointer error. This was seen with Oracle deployments but was not encountered with tomcat,postgres deployments, and has been resolved by refactoring the Hazelcast v5 initialization flow to mitigate startup failure for the prcluster_service. | System Administration |
INC-B26274 | 879840 | Hazelcast updated | Hazelcast has been updated to version 5.4.1. | System Administration |
INC-B30013 | 883930 | Handling updated for MessageContent exception logging | In order to ensure pzMessageContent does not include potentially sensitive information when a queue processor queue throws an exception, an update has been made to sanitize the XML and JSON before sending to the log. | System Administration |
INC-B32037 INC-B36052 |
886185 887712 |
Corrected property handling in Rule Assembly | A large number of Rule Assembly alerts were being generated which were affecting performance and stability. Investigation showed the assembly was slow for stream rules on the first access to pods after startup, and this has been addressed by adding pzAssemblePreProcess to trigger section reassembly. | System Administration |
INC-B33533 | 884544 | Settings added to assist in controlling Kafka writes and retries | Node unavailability during Kafka's log roll over process caused threads trying to write to Kafka to eventually pile up, impacting response times for API calls. In order to better handle Kafka writes and retries, two additional DSS settings have been added to function in a circuit breaker pattern. If the system is not able push the 100 consecutive messages to Kafka, then there will be a 5 second pause, and these values are configurable. SettingPurpose: queueprocessor/dataset/circuitBreaker/threshold/timeoutSecond default value: 5 (seconds) SettingPurpose: queueprocessor/dataset/circuitBreaker/threshold/failedMessages default value : 100 OwningRuleset: Pega-Engine |
System Administration |
INC-B3745 | 855110 | Updated Traditional UI Coexistence handling for migration | After creating a casetype in Theme Cosmos and referring to the same in Constellation using Traditional UI Coexistence, the data portal was not launched until the assets for the traditional UI were generated again. This was traced to an issue with the key name check, and has been resolved. | System Administration |
INC-B4773 | 859139 | Restored Rich Text Editor plugin | After update, an error was thrown in the browser console indicating CKEditor was missing two plugins, causing the form to be corrupted from the end user's side. This was an unintended side effect of security work, and has been resolved by restoring the needed plugin. | System Administration |
INC-B5459 | 857459 | PD4ML updated | The PD4ML jar has been updated to version v4.0.19. | System Administration |
INC-B5743 INC-B2491 |
855814 855145 |
System pulse logging updated | After deploying a ruleset versioning update, the new rules were not being picked up by the queue processor and the system runtime context continued to be the previous ruleset version. This type of issue occurs when the SystemPulse fails to propagate the latest version of the rule to all nodes in the cluster, leading the system to utilize the existing version of the rule. In order to capture whether the deployed rules are propagated to all the nodes in the cluster, additional diagnostic log messages have been added. These loggers handle defined rule update pulse types for diagnostic information, CACHE, RFDEL, IMPRT, CLDEC, PURGE, DSMST, and are based on the environment's production level and DASS: systempulse/rulesUpdate/logAcknowledgement/enabled. Logging has been enabled by default for production level >= 4 (i.e. PRE-PROD or PROD) and disabled by default for lower environments. | System Administration |
INC-B5791 | 861685 | Processed count data type updated from integer to long data | The records processed in last hour count was always shown as 0 in Admin studio for a queue processors handling an enormous number of records each day. Investigation showed the queue processor had more than 6 billion processed records, which exceeded the allowed limit for integer. This has been resolved by changing the integer data type to long data type. | System Administration |
INC-B6892 INC-A11374 |
859162 862264 |
Added null partition value handling for DelayedItemsDataFlowService | After upgrade from Pega 7 to Pega 8, ORA-00936 "missing expression" errors were generated by DelayedItemsDataFlowService. This error occurred while reading delayed items from the database, and was due to there being more than 25 nodes splitting the work and the additional partitions having a null value. To resolve this, the condition has been updated to avoid generating an SQLException for null partitions during processing. | System Administration |
INC-B7039 | 865511 | Additional logging information added for purge agent | In order to assist with diagnosing issues with the purge agent not cleaning up instances as expected, more detailed log statements have been added to the RAPurge function. | System Administration |
INC-B7171 | 867918 | User ID handling updated for CaseOperator | The CaseOperator widget for Constellation has been updated to properly handle and persist referencedUsers lists to ensure IDs are correctly reflected for updates. | System Administration |
INC-B7843 INC-B6802 INC-B19202 |
863386 866912 872005 |
Corrected AccessGroupSwitch handling | Attempting to open a case belonging to another application without manually switching to the application generated a Login screen and the case was not opened. This has been resolved by updating the handling for the application switch cookie paths. | System Administration |
User Experience
24.2 Resolved Issues for User Experience
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-226187 | 729455 | Corrected display row numbers in table layout | When the width of content was changed to Pixels(Fixed) from Fill(100%) in the table layout, the row numbers displayed by checking "Display row numbers" were not properly displayed. This has been resolved by correcting the padding for grid when using a fixed width in pixels. | User Experience |
INC-227483 | 775405 | Corrected user portal harness issue for Cosmos | The user portal was not correctly rendering in Theme Cosmos when set as a single page. This has been resolved by updating the handling for the Show-Harness and Show-Property activities. | User Experience |
INC-248981 | 764956 | ARIA-Expanded set correctly for Accordion Layout Group | When using a custom accordion layout group with "Collapse all panes on load", the screen reader was announcing the state of the button as expanded even though it was collapsed. This has been corrected. | User Experience |
INC-A12454 | 825622 | Corrected border on Cancel button | After update, the border was not appearing on the simple format Cancel button. This has been resolved by updating the CSS for pyModalTemplate. | User Experience |
INC-A14835 | 830559 | Updated scroll handling for flow in modal window | When a flow was used in a modal action event, refreshing the modal window or moving the flow to the next task resulted in the modal window itself moving when a scroll was performed in the main page. This has been resolved by updating the modal container handling of the overflow scroll for this usecase. | User Experience |
INC-A17551 | 832668 | Updated accessibility for Rich Text Editor keyboard icon | A label has been added to the Rich Text Editor keyboard icon with an associated tooltip to improve accessibility. | User Experience |
INC-A18620 | 855625 | Resolved table layout validation | The UI was becoming distorted when validation was triggered for a property added to a column inside an optimized table layout, and it was no longer possible to add anything in the table due to the the text-input field disappearing. An error icon was seen. This has been resolved by updating the pzbase-grids CSS. | User Experience |
INC-A20262 | 867314 | Added handling for special characters in KM article titles | Attempting to open a Knowledge Management article in the Customer Service application failed to load the content in the popup window if there was an apostrophe in the article title. This has been resolved by escaping the special characters in the window name parameter of the Show Harness action when the target is a popup. | User Experience |
INC-A22151 | 839794 | Support added for multiple apostrophes in the name fields | If more than 1 apostrophe was given in the First name and Last Name parameters, every subsequent apostrophe after the first was getting converted to "'".This has been resolved by updating pzhandlebars_helpers.js to prevent the ANCI format. | User Experience |
INC-A22479 | 858824 | Corrected handling for comments linked to a report | In a space, comments and replies were not displayed properly when linked to a report. pyCommentsCount remained empty and the comments section was not visible, or when a new comment was posted, it and the one preceding it would be displayed and the count would be increased until refresh when the section was not visible again and the count was reset to empty. Investigation showed this was due to the the refresh conditions on the pyCommentsCount property failing to get the updated value when linked to a report. This has been resolved by adding a new declare expression for the property pyCommentsCount to get the updated count and correctly display comments. | User Experience |
INC-A24366 | 842947 | Background color maintained when spellchecker is called on-change | If a section had one or more text areas and a Rich Text Editor configured with a spell checker action on change, an incorrect spelling caused all text areas on that screen to become yellow. Investigation showed the repaintTextArea function was incorrectly being called by spellcheckerscript.js for all text areas in the document, and this has been corrected. | User Experience |
INC-A26464 | 850097 | Hierarchical table control click handler updated | After navigating to 'Hierarchical table' in UI gallery, repeatedly expanding and collapsing different rows intermittently caused the expand and collapse to stop working for some of the rows. In hierarchical tables, rows are reused from a pool based on pagination size. Because of this reusing, the click handler, which is removed from a row used as a lowermost child, is not reattached upon reuse, causing the expandable icon to freeze. To resolve this issue, the clickHandler has been re-attached in the updateStyle method, which is triggered by onAllocatePathForDomObjects. | User Experience |
INC-A26575 | 846758 | Data tour ID supported for layout groups | The Guide Walk through Tour ID was not working for layout group and elements inside the layout group. This has been corrected. | User Experience |
INC-A27074 | 855369 | Upload file hover shows selected filename | When using the Upload functionality to upload the files, the Filepath control still showed the message 'No FIle Chosen' after choosing the file and hovering on the selected file using the mouse. This is a difference in behavior from Pega 7, where the mouse hover showed 'Filename' after selecting the file. To restore the previous behavior, a setTitle function onchange has been added to dynamically set the title based on the value for the filePath control. | User Experience |
INC-A27168 | 855362 | Opening a Case ID in Theme Cosmos report made consistent | Clicking on a row inside of a report will open the case in the same tab, but the case will open in a new tab if the Case ID is the primary column. Investigation showed the "oafunc" attribute can have values such as "openAssignment" which was not handled for reports. To resolve this, openAssignmentInNewTab functionality has been implemented in the pz-cosmos-ui-utils.js file for openAssignment action. This is used as the value for the "oafunc" attribute to open work objects in a new tab that are rendered as children in a tree in summary type reports. In addition, the handling has been updated for the "pzRDWinTitle" control file for openAssignment action | User Experience |
INC-A27286 INC-B1797 |
844343 858558 |
Corrected flow container context handling for error messages | Error messages related to validation were not removed automatically during screen refresh and carried over from one screen to another screen even after the validation was corrected and the case was successfully submitted from the previous screen. This was due to all of the cases (tabs) being rendered in a flow container which resulted in page messages being pushed to the FlowContainer context (ex. app/primary_3) instead of the active container item context. This has been resolved with an update to populate page errors in the activecontainer context. | User Experience |
INC-A27311 | 843690 | Page number field made editable | The page number field could not be edited in a table in the dashboard portal. This has been resolved by updating the handling in the GridActivePage control to allow an onchange of the pageNumber field. | User Experience |
INC-A27587 INC-A21162 |
846348 840838 |
Updated context handling for drag and drop in repeating dynamic layout | After update, adding a new list Item in a repeating dynamic layout and reordering it with drag and drop only reflected the changes after save. This has been resolved with an update to ensure the proper harness context on drag in the webwb_pzpega_ui_rubaxa_sortable js file. | User Experience |
INC-A30118 | 856487 | Validation error banner made accessible | JAWS was not reading the server level validation error messages generated by pyCaseErrorSection. This has been corrected. | User Experience |
INC-B1010 | 864070 | Added catch for notification thread exception | A notification configuration was working in the development and production environments, but was not working in the pre-production environment. Investigation showed there was an uncaught thread exception, and handling has been added to resolve this issue. | User Experience |
INC-B10225 | 873840 | Required field indicator handling updated for accessibility | The required field indicator '*' was not appearing when tooltip and required were configured on the control. Investigation showed both client side and server side validations were executing after the tab key placed the focus on the next field, causing JAWS and other accessibility tools to either read a control that became disabled/read-only or a field which had become editable was missed altogether. This has been corrected. | User Experience |
INC-B10511 | 865200 | Accessibility improved for table filter selection | When using a screen reader and NonVisual Desktop Access (NVDA), the checkbox and label were read separately upon selection of a table filter. This was traced to the table filter checkbox not being associated with the label, and has been corrected. | User Experience |
INC-B10764 INC-B26334 |
870802 884126 |
Corrected attribute handling for custom report definition filter | Opening a report and clicking on "other navigation" caused a pyDirtyCheck popup to appear even when no changes were made. Investigation traced this to the use of a form containing a date field that had text entry disabled that was used in a custom report definition filter rendered in non-template mode. This has been resolved by updating the handling for the "data-initialvalue" attribute so it renders as expected in both template and non-template mode. | User Experience |
INC-B10809 | 864664 | Spell checker styles removed on Rich Text Editor section refresh | When an incorrectly spelled word like "test mesage" was entered into a Rich Text Editor control, clicking on spell check highlighted the error, but clicking outside of the area did not remove the highlight during the refresh section action. This was a change in behavior from previous Pega Platform versions, and the regex has been updated to restore the expected clearing of the highlighting. | User Experience |
INC-B10814 | 864865 | Header values provided to resolve upload errors | When trying to upload the localization Excel sheet, a 403 error was generated and errors indicating the request had an empty CSRF token and a null BrowserFingerprint were logged. Investigation showed the upload API call was missing the required header values in the post request for X-Requested-With, pzCTkn, and pzBFP. This has been corrected. | User Experience |
INC-B1089 | 865669 | Corrected anchor alignment during scroll | The smart info anchor icon or tip icon was misaligned when scrolling on the main page. This has been corrected. | User Experience |
INC-B11529 | 863372 | Application is accessible at 150%+ zoom | When the portal was rendered at 150% zoom or more, there was no option for keyboard users to close the navigation menu until a mouse click was performed or an option was selected from the menu. This has been resolved by adding the necessary handler. | User Experience |
INC-B11674 | 878305 | Corrected portal rendering when switching applications from new work object tab | When working with two applications, opening a work object in a new tab and then switching applications resulted in the second portal loading only left navigation while the main content remained blank. This has been resolved. | User Experience |
INC-B12101 | 862713 | Added setting for allowcustomtags in Rich Text Editor | After update, custom style tags were being removed when using the Rich Text Editor. This was an unintended side effect of work done to enhance cross-site scripting protections for the Rich Text Editor control, and has been corrected. | User Experience |
INC-B12263 INC-B21999 |
873871 874799 |
Corrected nested layout group tab headers | When multiple layout tabs were present, including nested layout tabs, and there were more than 10 tabs open, selecting the last indexed tab from the dropdown caused the tab headers to scroll back to the extreme left and hide the selected tab. This was traced to an incorrect calculation for the right side navigation control in the "_slideEnoughToBringSelectedHeaderIntoFullView" function in layoutgroup.js, and has been corrected. | User Experience |
INC-B12369 | 867637 | Corrected localization formatting issue | After unpacking and translating and then importing the JSON package for localization processing, it was observed that some areas did not take effect. This has been resolved by updating the document-generation-lib version to correct JSON formatting issues. | User Experience |
INC-B12446 | 872572 | Corrected container loading order for hybrid applications | When attempting to open Constellation cases in the Cosmos portal of a hybrid application, app/primary containers were reset and trying to call "open work by handle" resulted in empty details and an error on the screen. This was traced to an error in the container order of events and has been corrected. | User Experience |
INC-B12600 | 865198 | Readonly date control correctly displays custom date | After adding a custom date time control with date property and checking "display value read only formatting" and selecting allow text entry as "no" in configuration panel, the custom format dd/MMM/YYYY was modified to mmm-dd-yyyy after the server side validation was triggered. This modification was occurring due to the date format which was picked up from the browser locale (set to English United States) overriding the custom control. If default locale is not mentioned on the Operator page, the system considers the browser locale. To resolve the custom format being overridden, a check has been added which will format the date accordingly even if the dateTime property is considered to have an error. | User Experience |
INC-B12739 | 854073 | Mandatory field warnings cleared correctly when using RefreshData | When using Constellation, a validation error for a required field was not cleared when a value was set using pyRefreshData. This prevented the screen from being submitted, and the error "Cannot be blank" was displayed for all of the error messages. This has been corrected so the field will be validated as expected irrespective of previous validation state. | User Experience |
INC-B12766 | 882230 | Corrected button accessibility for close/cancel in case creation | After the case create harness was displayed in a pop-up, the pop-up dialog minimized and the close and collapse buttons were being read as blank by the screen reader (NVDA). Investigation showed the aria-labels inside the header tag were not read properly by screen readers, and this has been resolved by removing the "aria-hidden=true" in the header section. | User Experience |
INC-B12956 | 869159 | Updated focus order for modal dialog buttons | The focus order of cancel and submit buttons in the modal dialog was not consistent between @baseclass and Work class. The default order has now been set set to first move focus to the cancel button and then to the submit button. This is handled in a new py section "pyModalButtons" which is used inside pzModalTemplate, and the button focus order can be customized by changing the button order in pyModalButtons. | User Experience |
INC-B12999 | 862953 | Optimized table has correct row values | An optimized table was showing showing Pega property names as row values after update. This was traced to an issue with resolving the parentPage if the pageList was referenced as a property, and has been corrected. | User Experience |
INC-B13031 | 877822 | Updated check for readonly data page | After creating an optimized table with row reordering where the data page was queryable, an extra data page call was triggered without an implicit parameter. The second call did not happen if "allow row reordering" was not checked. The extra call was traced to the data page being loaded to check if that's readonly or not for the purpose of the row reordering, and this has been resolved with an update which will load the data page to determine readonly status if the grid is not queryable. | User Experience |
INC-B13177 | 877794 | Corrected locking for confirm harness | After submitting an assignment and routing the next assignment to Workbasket, refreshing the browser from the review screen caused a lock to unexpectedly be re-acquired on the work object. This was traced to the aceprimary_0 empty DOM not being removed in the confirm harness, and has been resolved with an update which will exclude acquiring a lock when it is a confirm harness. | User Experience |
INC-B13349 | 866728 | Accessible filter dialog role corrected for optimized table | When using JAWS with an optimized table, navigating to the menu button on the column header and opening the Apply Filter caused the screen reader to announce both the aria-label and the role. This has been corrected by updating the aria-label for the column filter modal dialog from 'Column filter popover' to 'Column filter'. | User Experience |
INC-B13558 | 867669 | Added accessibility for custom validation error message | A custom validation error message was not read by JAWS when set on a property for a text input. This has been resolved by adding a role alert for the custom message. |
User Experience |
INC-B1362 | 857265 | Corrected Rich Text Editor generating dirty pop-up without changes | When Rich Text Editor was present in the section and the first editable field, clicking the Close button generated a dirty pop-up asking to save the work object even though there were no changes made. Investigation showed this was caused by the cancel/close process adding a new line to the Rich Text, and has been resolved by adding trim to remove the unwanted spaces. | User Experience |
INC-B13743 | 868370 | Cosmos-react libraries updated to resolve styling errors | A page containing Pega web embed with custom DX components correctly displayed on the first load, but the web embed did not display after navigating to a page in the app which did not have a web embed and then returning to the first page with the custom components. This has been resolved in version 4.2.4 of the "@pega/cosmos-react-*" libraries which contains an additional check to prevent these Styled Components errors. | User Experience |
INC-B13759 INC-B24969 |
866436 876621 |
Corrected handling for click of Operator image | After creating a case and routing it to a work queue, clicking on the operator image refreshed the case and no content was displayed on the UI. This was an unintended side effect of work done to correct an accessibility issue with the operator icon, and has been resolved by updating the div tag handing for role="img", tabindex="0" in the pxInitials control. | User Experience |
INC-B14356 | 868820 | Corrected portal rendering after resize | The top navigation window was not rendering correctly after launching the Provider manager portal and resizing the window to a smaller size. This has been resolved. | User Experience |
INC-B14380 | 864600 | Corrected handling for Malaysian date/time | When using the ms_MY locale in an Operator profile, setting the date/time or performing a section refresh generated an error indicating the date/time was not valid. This has been resolved by adding formatting for the values PG (pagi) and PTG (petang) for Malaysian (ms_MY) uses. | User Experience |
INC-B14528 | 875620 | Validation message retained on the UI | A non-mandatory property was validated upon submission of the screen, but messages did not stay on the UI under the Property field. Investigation traced this to the system performing a client side validation on blur event, and this has been resolved by removing the client validation on blur event and performing validation only on change event. | User Experience |
INC-B14559 | 866543 | Corrected Previous and Cancel button behavior | When there were required fields in the screen, clicking on previous/cancel generated a "value cannot be blank" error. On the second click, the screen moved to the previous screen. This was traced to a validation issue and has been resolved. | User Experience |
INC-B14600 | 874020 | StakeHolder widget updated to support pagelist properties | The data was not being saved when a pagelist property was used to add multiple addresses to the StakeHolder widget. This has been resolved by adding UI support for pagelist data to the StakeHolder widget. | User Experience |
INC-B14617 | 866210 | Timeline list displays sorted events correctly | When using a timeline view in Constellation with Sorting criteria applied in authoring, rendering more than 1000 records did not always display the most recent entries at the top unless the display was scrolled down and back up again. This has been corrected. | User Experience |
INC-B15023 | 870821 | Corrected handling for editable list with recursive embedded page list property | When presenting an editable list in Constellation that was created from a case type with an embedded page list property which itself contained another embedded page list property, accessing the form to edit a parent list entry to add, remove, or modify entries within the child list intermittently caused rows from the child list to disappear. This was traced to the interestPage handling for the modal dialog and has been corrected. | User Experience |
INC-B15113 | 866120 | Added handling for missing display field in Constellation | Using a Picklist property sourced from a datapage in Constellation resulted in the message "An internal error occurred. Please contact administrator." This was traced to an empty 'Display field', and has been resolved with an update to the logic which will set the display field value only when available and will otherwise fallback to use the Identifier field for Dropdown&RadioButton if display field is not configured for the property. | User Experience |
INC-B15209 | 870799 | Corrected multiselect item delete | Attempting to remove a selected value from a multiselect field within a live interaction by clicking on the cross icon was not working. This was traced to a div focus issue and has been corrected. | User Experience |
INC-B15294 INC-B10447 |
879807 866844 |
Corrected and improved accessibility for My Worklist | The following layout and accessibility issues have been corrected for My Worklist: In the user portal, the dashboard Menu option is included in the worklist when navigating from the default view to user defined views. The tab order header button to expand the list of options has been reordered to match the visual options and receive focus before the table toolbar buttons. The overlay has been given an explicit level 2 visible heading. | User Experience |
INC-B15506 | 871969 | Datetime validation message displayed with java edit validate rule | A date time control with "allow text entry" set to No did not display the validation message in the UI even though it was in the clipboard. Investigation showed the div responsible for showing the error was not available in the dom if "allow text entry" is No and the java edit validate rule is used. The same configuration worked as expected if the existing standard validate rule IsFutureDate was used. This has been corrected. | User Experience |
INC-B15574 | 869928 | Corrected overlapping columns in Export to PDF | The column that contains the currency property was overlapping with the column to the right of it when exporting a report as a PDF. This has been corrected by updating the pyReport_ExportToPdfStyles.css file. | User Experience |
INC-B16001 | 875110 | Supported locales list available | The documentation regarding internationalization and localization has been updated with a list of the valid Locales with appropriate formats | User Experience |
INC-B16253 | 869224 | Corrected CSS for Rich Text Editor border | Adding a border-radius of 10 pixels caused the border to cut off at the bottom of the Rich Text Editor space. This has been resolved by adding the CSS for overflow hidden. | User Experience |
INC-B16320 | 870816 | Corrected tooltip overriding control label | JAWS was no longer reading the label of a control after an inline tooltip was added. This was due to the control label being overridden, and as has been resolved by providing an ID for the helper text div and giving it to aria-described-by instead of aria-label. | User Experience |
INC-B16345 | 866724 | Clear filter focus outline appears for non-optimized table | An update has been made to correct a missing focus outline on Clear Filter by adding a selector specifically for a non-optimized table filter. | User Experience |
INC-B17397 | 871480 | Removed hard-coded aria-label interfering with localization | When adding a date time control to a section or applying a date time column to a non-optimized or optimized table, the date time calendar icon picker had an aria-label of "Date Picker" which was not translated. This was caused by the aria-label being hard-coded for this field; as the aria-label is not required here, it has been removed to resolve this issue. | User Experience |
INC-B17863 | 878486 | Error messages are correctly updated for conditionally visible fields | When a view contained conditionally visible and mandatory fields, the error message triggered when a mandatory field was skipped was not cleared after the answer was updated and submitted. This led to error messages which were previously displayed being shown again with the latest one appended. This was a missed use case, and has been resolved with an update to ensure the error messages are cleared before validating the form while finishing the assignment. | User Experience |
INC-B18193 | 868150 | Calendar date picker contrast improved | The background color of the date picker has been updated from #0089ec to #076bc9 for improved accessibility. | User Experience |
INC-B18562 | 874036 | Updated Authoring regex for custom true/false condition | A custom condition did not accept 'true' and 'false' strings. This has been resolved by updating the method for the regex matcher in expression.js in Authoring to check for ".FirstName == true" vs ".FirstName == 'true'" so true will be treated as boolean while 'true' will be treated as text. | User Experience |
INC-B18735 | 873736 | Home+end works with hidden columns | Attempting to use the shortcut command 'home'+'end' to navigate to the end of the current row of the table was not working when a column was hidden by default within app authoring. This has been resolved with an update to calculate the last cell even when columns are hidden in an optimized grid, and focus correctly. | User Experience |
INC-B18778 | 868927 | Localization updated to remove "[]" in email subject string | The newer Pega-Social field value pyAddUserMentionedPostEmailSubject has 2 parameters, which did not match the number of parameters in the Japanese Language pack field value(3 parameters). As a result, "[]" was unexpectedly shown in the mail subject. This has been corrected by setting the additional field value pyAddUserMentionedPostEmailSubject to 2 parameters as the localized field value. | User Experience |
INC-B19773 INC-B20656 |
869538 870258 |
Corrected display of readonly hyphen | After update, the "--" for readonly with no value was misaligned for Inline labels in dynamic layouts. This has been corrected by updating the width to 2px for no-value-span. | User Experience |
INC-B19809 | 874040 | Localized the fields width and height in the binary field | The fields (height , width ) were not localized when delegating binary rules in an Arabic locale. This has been resolved by updating the pzbinaryImage control. | User Experience |
INC-B19813 | 871395 | Support added for manual localization rule creation | Attempting to manually create a localization rule via the class explorer did not generate the rule correctly. Investigation showed the localization rule instance was created with an empty JSON object if pxLocaleJson was not present. To resolve this, a pydefault datatransform has been added to handle a localization rule which doesn't has pxLocaleJson defined. | User Experience |
INC-B20427 | 871995 | Scroll bar works for disabled text area | Scroll bar was not working for a text area when it was set to Disable the Text Area Always. This has been resolved by updating the disabling CSS to specifically ignore the text area. | User Experience |
INC-B2079 | 851903 | Constellation preview pane updates correctly after action | When using Constellation, hovering over a case ID in worklist and clicking preview opened the preview slider with all the actions, but the preview pane was not refreshing after using the withdraw local action to resolve the case. As a result, local actions were still available and the additional tabs based on status were not displayed. This has been resolved by adding a deleteCaseSummary action for updating the assignments. | User Experience |
INC-B20809 | 872122 | Stakeholder widget visible in Constellation | A stakeholder widget with an added visibility condition for embedded section was not displaying as expected in Constellation. This has been corrected. | User Experience |
INC-B20999 | 872294 | AttachContent error banner made accessible | JAWS was not reading the server level validation error messages generated by the pxAttachContent control popup. This has been corrected. | User Experience |
INC-B21180 | 871597 | Corrected activity registration for FieldHistoryCustomAction | Attempting to download the Field History from a case was generating a SECU0019 alert. This was traced to pyExportFieldHistory not being correctly registered when using BAC, and has been resolved by updating the registered activity for the download button in the pyFieldHistoryCustomAction section. | User Experience |
INC-B21364 | 876029 | Corrected Print Screen overflow handling | After adding a section containing a read-only text field with a property to a harness with a modal popup, pressing Ctrl+P in the popup generated a Print Screen where blank values were populated as \"No Value\". This was traced to the overflow property being overridden, and has been resolved by updating the CSS to add "overflow: hidden !important;" to class no-value-span in the userworkform. | User Experience |
INC-B21747 | 874980 | Validation errors displayed on all embedded records | When validating embedded data, errors did not show up under the fields after the 9th record. No red outline or message was seen even though the error count at the top of the page included the non-highlighted fields and all error messages were listed. This was has been resolved by modifying the regular expression handling to support an unlimited number of rows. | User Experience |
INC-B22163 | 874829 | Local action dropdown updates on cancel assignment | In some scenarios, the visibility "when" condition configured for a local action or local optional process on a case did not update until the case was refreshed. This was traced to the available processes in the local action dropdown not being updated on cancel assignment, and has been resolved by adding an update to consider this response for updating data. | User Experience |
INC-B22612 INC-B23379 |
874565 876500 |
Corrected DirtyCheckConfirm context | If an activity was performed which caused the dirty dialog popup to appear when working within a report with filters, clicking OK to discard the changes resulted in the Home page being loaded instead of any other landing page that was originally selected. Investigation showed the "pyDirtyCheckConfirm" was being called from the @base class section instead of the work-section, and this has been corrected. | User Experience |
INC-B22665 | 877643 | Updated container handling for overflow report titles | The full Report Title was cut off when the length of the title was more than the container height. This has been resolved with the addition of a helper class "text-ellipses-2lines" to limit title lines to 2 and ellipse overflow. | User Experience |
INC-B22699 | 878194 | Corrected time conversion error in Taiwanese calendar | When using the zh_TW (Taiwan) locale, entering a time between 11:30am-11:59am was converted to PM when saved. This was an error in the date/time conversion, and has been corrected. | User Experience |
INC-B22745 | 877864 | Corrected Anypicker scrolling | Anypicker results were scrolling with the parent webpage scroll. This has been corrected by setting height 0 px when the height has been calculated as a negative value. | User Experience |
INC-B22996 | 876289 | Text area character count correctly decrements when using voice recognition | The character count on a text area did not decrement as words were added to a text box using Voice Access or other speech recognition software in Microsoft Windows. This has been resolved by adding the necessary code to support this use case. | User Experience |
INC-B23201 | 874087 | Added handling for localization syncing issue | When using an application ruleset stack with multiple rulesets which each can contain localization records, issues were seen when generating the localization pack due to the pzFetchRecords and pzFetchRecordsForSync reports having conflicting filter definitions about which files to pick and in what order. This has been resolved with an update which will set a filter for the base locale. | User Experience |
INC-B23294 | 881697 | Markup allowed for dynamic layout title field | Support has been added for markup language in the field value of a dynamic layout title. | User Experience |
INC-B23529 INC-B27865 |
878554 883058 |
Updated XML error handling for Mozilla Firefox | After upgrade, submitting the pop-up screen in the Mozilla Firefox browser caused it to freeze. This was due to a difference in the XML error handling for CalculatedValueTargets which was related to a change in the underlying Java version. To address this, an update has been made to CalculatedValueTargets to use StringUtils.isNotBlank to check if tools.getPrimaryPage().getMessagesAll() is not empty. | User Experience |
INC-B23548 INC-B6922 |
873755 861344 |
Corrected handling for Japanese double-byte values | After entering a number value like [1] using Japanese IME double-byte characters, moving focus out from the input field cleared the value. This has been corrected. | User Experience |
INC-B23640 | 877787 | Filter for queryable data page uses correct context | After creating a queryable data page and allowing filtering on any column and then creating a field value for that column data in baseclass and the datapage's class, the localized value was picked from baseclass. If the datapage was made non-queryable, the localized value was picked from the correct context. This has been corrected with an update to use the proper class instead of Embed-FilterColumnValues for resolving the field value. | User Experience |
INC-B23770 | 877551 | Filtering supported for pxCreateOperator | Previously, the property pxCreateOperator fetched a list of all operators available in the system and could not be customized. An update has been added to support the option of having a custom datasource for filtering the results list with a "UserReference" type to be sourced only with unique table values. | User Experience |
INC-B23804 | 882060 | Corrected lost focus for submission button | Focus on the button was lost after submitting the modal dialog when using the Apple Safari or Mozilla Firefox browsers. The focus was not lost when using Google Chrome or Microsoft Edge. This was traced to a check in the pega_ui_modaldialog js file for function _processActionModalOnlineHandler which used an "if" condition for the reload which was applied only for Google Chrome. This check has been removed, as the button needs to be set as reload element for all of the browsers to bring the focus back after closing the modal. | User Experience |
INC-B23853 | 882291 | Case notification close updated to handle both AJAX and non-AJAX containers | When using the Theme-Cosmos application, the pyCaseMainPageNotification section was not closing when clicking on the 'X' icon. The GO button needed to be clicked from the worklist in order to continue to complete the stages. This has been resolved by updating the action from refresh section to openworkbyhandle to support both AJAX container and non-AJAX container behavior. | User Experience |
INC-B24013 | 877148 | CSS corrected for Case Information display | Grid column headers and data were distorted. This was traced to a word-break in the caseInformation section of the 'Case Information UI template', and has been resolved by updating the CSS. | User Experience |
INC-B24327 | 880637 | Corrected repeating dynamic layout title appearing on buttons | When using a repeating dynamic layout with inner sections, the title of the repeating layout or containing dynamic layout was being added to the cancel and submit buttons. This was traced to the fieldset being used within the application, and has been resolved by adding role='presentation' in the fieldset tag of the webwb_pzpega_ui_template_form file. | User Experience |
INC-B24571 | 876760 | Updated text accessibility in case utilities pane | The text below the task / attachment pyAttachmentFeedDescription section in the case utility panel was being skipped and not being read out by the screen reader. This was due to the role="tab" automatically switching NVDA from "browse mode" (where keyboard events are sent to NVDA) to "forms mode" (where keyboard events are sent to the application). This has been corrected so the text will be read. | User Experience |
INC-B24642 | 877602 | LocationComponent preserves location value for "Use as it is" | When using using the Address component in Constellation with an address not present in Google, the value was not preserved when selecting the "Use as it is" from the address dropdown and the field was reset to empty after the blur event. This was traced to the value not being set in OnSelectHandler in location component in this scenario, and has been corrected. | User Experience |
INC-B24720 | 876296 | Corrected error message color | After update, the error message test background color was gray instead of the expected red banner. This was traced to the layout-noheader-errors class not being present, and has been resolved by adding the needed class pageErrorList layout-noheader-errors and role alert. | User Experience |
INC-B24915 | 876427 | Corrected duplicate copy/paste for Rich Text Editor | After update, copying content from "Reflection Workspace Mainframe" by OpenText and pasting into the Rich Text Editor duplicated the value. This was traced to CKEditor treating the pasted input as an image in base64 format, and has been resolved by updating the handling. | User Experience |
INC-B24929 | 877970 | Corrected style of stage buttons on chevron | When simple style for buttons was used in workflow chevrons, setting background color in the skin caused poor contrast and resolution. This has been addressed by adding a background color style in the CSS. | User Experience |
INC-B24966 | 875881 | Updated autocomplete dropdown accessibility | JAWS was not reading the first value of a dropdown list in autocomplete. This has been resolved by ensuring the live region div is updated when autocomplete results are rendered as a grid. | User Experience |
INC-B25266 | 876125 | Empty cells correctly display double hyphens | After update, double hyphens were no longer appearing inside the tables. This has been resolved by updating the CSS to show double hyphens when there is no data in grid cells. | User Experience |
INC-B25268 | 884952 | Additional Text tab correctly displays localized custom data pages | Localized custom data pages and their properties were not appearing in the Additional Text tab when using Constellation. This was traced to the localization handling for the D_pyAvailableCaseStages activity, and has been corrected. | User Experience |
INC-B25382 | 878687 | Corrected cleared date field value being repopulated | In a DateOnly field control set to required always, a value which was set through a data transform in a pre-flow action reappeared after having been manually cleared. This was caused by the value being undefined on clear, and has been resolved with an update to set the date value to empty string when clearing it. | User Experience |
INC-B25508 | 879560 | Focus in Rich Text Editor persists after refresh | After setting up a modal dialog containing both a textarea and a Rich Text Editor where the text area had an onChange event to trigger a section refresh, inputting text and clicking on the Rich Text Area triggered the refresh but the cursor shifted back to the textarea. This was caused by a loss of focus due to the Rich Text Editor click event not being captured like other controls, and has been resolved by ensuring that if the onchange event is triggered by clicking on the RichText Area, the focus will correctly go to the Rich Text Area. | User Experience |
INC-B26158 | 876337 | Added handling for aborted localization process | The Constellation localization wizard was getting stuck if a localization had previously been canceled / aborted by closing the modal dialog after the Excel/JSON package had been generated. When generating the package the second time, the error "Create new record failed: this instance already exists" was shown. This has been resolved with an update which will delete the old file. | User Experience |
INC-B26646 | 881868 | Search filters cleared properly | In a multi-step form, if a record was selected and viewed and "Next" was clicked, using "Previous" to go back to the search screen for a new search resulted in the existing filters not being visible on the UI but those filters were applied to the new search. This was an issue with the stale values being stored, and has been resolved with an update to clear the messages from redux in the context passed in the payload as well as clearing the error messages for the workarea context. | User Experience |
INC-B27071 | 881494 | Corrected filter popover context handling | When using Theme-Cosmos with a non-optimized grid, a console error was generated by clicking to open a filter popover and then clicking on the dashboard from the left navigation bar without closing the filter. Clicking on the filter icon again caused the loading icon to appear and the page became unresponsive. This has been resolved by setting the correct context while closing the filter popover. | User Experience |
INC-B27090 | 881076 | Clear messages API context expanded | When the redux action "CLEAR_MESSAGES" was triggered with the context as "app/primary_1/workarea_1" from PCore.getMessageManager.clearMessages(), the error messages were cleared in the parent context "app/primary_1" but not "app/primary_1/workarea_1". This has been updated to clear the messages from workarea context as well. | User Experience |
INC-B28040 | 884639 | Focus shifts to required control in non-optimized table | When a control was placed inside a non-optimized table column and set to required, focus did not go to the control that required a value when the form is submitted, but instead stayed on the submit button. This has been corrected. | User Experience |
INC-B28123 | 879814 | Recent Work control updated for accessibility | To improve accessibility, the pyRecentWorkContent section has been updated with role type "Link". |
User Experience |
INC-B28487 | 881447 | Corrected client-side validation performed on hidden fields | Client-side validation was firing on elements that were not visible in the Constellation UI or which were configured as not required, generating the error "Correct all fields containing errors" and a browser alert "Please correct all flagged fields before submitting the form!". This has been corrected with an update to not consider client side validations for hidden fields. | User Experience |
INC-B28537 | 880229 | Submit handler updated for multistep form | Searching for a product in a dropdown and using the Enter button to submit the choice was causing the browser to refresh unexpectedly. This browser refresh behavior was also seen when creating a case and pressing the Enter key for the create modal. Investigation showed that the issue occurred when only one datareference dropdown was present, and was not seen when multiple controls were present in the view. To resolve this, a submit handler has been added for a multistep form containing only one datareference. | User Experience |
INC-B29053 | 881174 | Fullname populated correctly for Constellation stakeholder | When using the Edit and Delete options for the Stakeholder widget in Constellation, the pyFullName property was not fully populated unless PyEmail was also included in the payload even if pyFirstname and pyLastName contained values. This has been resolved by updating the logic. | User Experience |
INC-B29164 | 880312 | Corrected accessibility for tablist menu | When using a repeating dynamic layout, the left and right arrow appear as well as an expand icon to list all of the tabs if there are more tabs than screen space available. This used a anchor tag contained in a div with the correct attributes, however the anchor tag itself was missing attributes and had a tabIndex = -1 so it did not receive focus. This has been corrected by removing the anchor tag and replacing it with a span with aria-hidden so screen readers and scanners can correctly access the area. | User Experience |
INC-B30387 | 887350 | DSS added for using custom tags in the Rich Text Editor | As part of cross-site scripting protections implemented for the Rich Text Editor, custom style tags were being removed. To address this, an update has been made to use the DSS settings "rteCustomAllowedTags" and "rteCustomDisAllowedTags" to ensure tags in the Rich Text Editor content adhere to the tags mentioned in the allowed list / disallowed list. | User Experience |
INC-B30533 | 884361 | Corrected blank tooltip for channel header | When the Channel Header was selected as the channel name in Constellation, hovering over the application logo showed a blank tooltip. This has been corrected. | User Experience |
INC-B30586 | 884341 | Updated save button with case-wide action condition | Flow actions with transient data that is not saved anywhere contained a save button when appearing in the action area for functions such as transfer assignment and change stage. In some cases clicking the save button caused the data to be lost. This was traced to the harness handling, and has been resolved by adding the !pzisCasewideaction condition to the save button so the button will not be available for case-wide actions such as edit details, change stage, etc. | User Experience |
INC-B3093 | 853106 | GetNextWork opens traditional case directly | GetNextWork was unexpectedly opening a case in a popup. This was traced to the case being created in Theme Cosmos and displayed in Constellation, and was caused by pzCreateDetails not being able to get the needed component to render traditional iframe. To resolve this, an update has been made to override pzCreateDetails for traditional cases to get the proper component details for display. | User Experience |
INC-B3098 | 855806 | Corrected table edit for parameterized datapage | After creating a table view with a read-only data page, adding a column in the edit view and then editing that column in the table resulted in the new value being replaced with the old value after clicking outside the area. Investigation showed that the fetchData function of DataAPI did not have the dataViewParameters parameter when using a table sourced from a parameterized datapage, causing the call to fail and the table to display the old values. This has been corrected. | User Experience |
INC-B31288 | 882354 | Corrected extra white space in read-only controls | When using the standard read-only controls, additional whitespace was seen due to display:inherit CSS. The no-value span has been changed to display block to correct this. | User Experience |
INC-B32127 | 884588 | Busy indicator displays during modal submit | After update, the busy indicator was not being displayed during the modal submit even if the interaction was waiting at the server side for too long. This has been corrected. | User Experience |
INC-B32315 | 884172 | Improved accessibility for progress indicator | An aria-label has been added to the progress indicator control to describe what the purpose of the element is. | User Experience |
INC-B33209 | 888014 | Corrected null event in 'group by' for optimized grid | After update, applying a multiple 'group by' on an optimized grid and then re-ordering the 'group by' columns caused the grid to stop responding. Investigation showed this was due to the event being passed as null after the reorder, and has been resolved by adding an event safe checker in the pzPega_ui_templatizedgrid js file. | User Experience |
INC-B33742 | 886978 | Updated accessibility for non-optimized pagination | To improve accessibility, an aria-label has been added to pzGridActivePage for pagination 1-Y in a non-optimized table. | User Experience |
INC-B33916 | 887601 | Corrected local action discard error | Cancelling a local action configured on a case was generating a data view error in Constellation. This has been resolved by adding a safe check for dataInContext in getResultsFromDataPage. | User Experience |
INC-B34026 | 886874 | Corrected displayFieldNameInValidationMsg error text | When any field with required property was added to a dynamic layout and the DSS displayFieldNameInValidationMsg was set to true, the required field name was appended without a space in the error message below the field. This has been corrected. | User Experience |
INC-B34981 | 885191 | Added alt attribute to Chart control image tags | The alt attribute has been added for img tags in the Chart and pzRRChartDiv rules to improve accessibility. | User Experience |
INC-B35788 | 886624 | Additional Info displayed correctly | When no text was configured for the additional info of the "pyNote" property, the UI was inconsistent displaying the information symbol beside the property. This was traced to the paragraph-handler.ts is not resolving the values in the instructions text correctly, and has been resolved. | User Experience |
INC-B3711 INC-B23151 |
858656 880085 |
Modified flow save functionality | Clicking the save button on any screen in the Quote Flow that had a blank required field was triggering the client side validation even though the flow was not submitted. This has been resolved by modifying the save functionality so the validation error is only triggered if there is an attempt to continue without completing required fields, and saving is permitted at any point in the application process, including the Convert Stage. | User Experience |
INC-B4451 | 852937 | Updated handling for Date Picker date out of bounds error | When using Constellation, selecting a date late in a month and then adjusting to a month with fewer than that number of days from the dropdown caused the picker to skip the short target month and display the next one containing 31 days. While there was a workaround of selecting any date from 1-28 from the current month and then selecting the desired month, this has been corrected by improving the handling when switching months of different lengths. | User Experience |
INC-B4596 | 856234 | Updated attribute on Preview button | The Preview button seen when focusing/hovering on a case ID would intermittently not activate the Preview Panel when the Enter key was pressed, for example after being previously closed with the cancel button. This has been resolved by adding a "type='button'" attribute to Preview button element. | User Experience |
INC-B4761 | 859245 | Corrected section grid alignment for To Do | After performing the case action "Save to my worklist" and assigning the case to a logged-in user, the To Do section grid alignment was not correct. This was traced to the showHideAssignmentGadgets function which was attempting to show/hide the hierarchical table sections on some actions. As the hierarchical table section was marked as display: none, the height was not correctly calculated while refreshing the section. This has been resolved with an update to the widget row heights on show of the pxAssignmentView section when the assignment block is visible. | User Experience |
INC-B4878 | 854225 | Search string clears correctly after use | After entering a search string on the user portal, the entered string persisted on the results page and when returning to the home page. This has been corrected. | User Experience |
INC-B5095 | 858436 | Cancel button corrected for temporary mode | The Cancel button was not functioning on the case worker area when the case was opened in temporary mode. This has been corrected with an update to pycaseactionareabuttons. | User Experience |
INC-B5390 | 857131 | Corrected timezone "today" handling | The default current / today's date was set to an incorrect day on any date picker icon. This was traced to "today" being picked based on UTC time, and has been resolved by updating the timezone handling. | User Experience |
INC-B5845 | 858834 | Corrected time picker error in right-to-left locales | When using a 24H time format in a right-to-left locale such as Arabic or Hebrew, once a time field contained a value that value could not be changed using the time picker and a javascript error appeared in the console. This has been corrected. | User Experience |
INC-B6140 | 867839 | Filter date selection correctly triggers filter | When making a selection from the promoted filter date icker, the filter was not immediately triggered based on the entered date range and instead required clicking in and out of the field in order to trigger the filter. This has been corrected to the expected behavior of the filter being applied immediately after closing the date picker pop over. | User Experience |
INC-B6212 | 855564 | Corrected duplicate view generation | If the Configure View button was clicked for a step in the workflow tab when there was already an existing view by that name, the fields in the view were not updated. Instead, a new view and flowaction were generated for each click, using the original step name appended by "_1" / "_2"/ etc each time. Investigation showed the view created in the UX tab of the casedesigner was given the pyViewType "embeddedform", while the pzViewEditorPreProcessing activity which ran when clicking 'Configure View' ignored these views. This has been resolved by revising the pzViewEditorPostProcessing activity to update the FlowActionName to use the backing flow's pyExpression / pyActionName instead of the ViewPage's pyRuleName. | User Experience |
INC-B6471 | 856975 | Updated DateTime control for locale th_TH | When using the DateTime control for the th_TH (Thai) locale, attempting to select 29/9/2567 (2024) resulted in the correct property in the clipboard value after Save, but the UI displayed 28/02/2567 instead of 29/02/2567. This has been resolved by updating pzpega_ui_formatDateTime to improve the calculation of isThaiSolarAndLeapYear and also consider 28th Feb and 1st March. | User Experience |
INC-B6531 | 871461 | Corrected unexpected scrolling in control timeline details | Clicking on an icon in the control timeline opens the details overlay, but clicking anywhere else to close the overlay caused the screen to move down to the expand icon in the table. This was traced to work done on pega_ui_modaldialog in the performFlowACallback API to check for multiple overlays before focusing into the grid row, and has been resolved with an update which will focus on the table when the overlay launching element is part of an active grid. | User Experience |
INC-B6613 | 859055 | Function onGridFilterClose added to improve performance | In an optimized table, enabling a filter for columns having unique data caused the filter overlay itself to contain thousands of records. Once the filter overlay was opened, subsequent interactions took significantly more time than required. This was traced to the filter body not being removed and the results having an extremely large markup which stayed in the DOM, and this has been addressed with a new onGridFilterClose function. | User Experience |
INC-B6997 INC-B11585 |
858318 861415 |
Correction for en_ZA currency separator | When using the “en_ZA” locale with boolean properties mapped to currency control on screen, the decimal separator “,” was displayed as “.” at runtime, and refreshing the screen increased the value by adding a zero. This was traced to the java 8 version picking up "." instead of "," even though the platform engine layer was using ",". Due to this inconsistency the additional zero was added for every refresh. This has been resolved by updating the handling for the en_ZA currency conversion issue in JDK 8. | User Experience |
INC-B7407 | 871130 | Corrected reference for child cases in collapseModal function | Creating a child case in a modal window and then deleting or minimizing it before finalizing it caused an incorrect reference to be used for other actions, leading to other child case confirmations being displayed with an unexpected size and placement. To resolve this, an update has been made to set a value for the variable _openCaseOnCreate in collapseModal function. | User Experience |
INC-B777 | 851908 | Updated secondary button validation message handling | When attempting to submit without filling in a mandatory field, the error message was appearing on the field but also intermittently on the top of the screen.This has been resolved by updating the handling for validation errors shown for secondary button actions. | User Experience |
INC-B7782 | 866947 | Save button in pyApproval flow action made available | By default, the save button is hidden in the pyApproval flow action for automation steps. In order to support local use for cases such as completing a lengthy form (HierarchicalForm) in Constellation, an update has been made which will display the 'Save for later' button on an approval step based on the SaveLater visibility checkbox in the pyApproval flow action. | User Experience |
INC-B7857 | 860316 | Corrected screen reader announcing \"angle bracket\" in navigation pane | When navigating the left navigation pane, highlighting "create case" resulted in the screen reader announcing "〉" as "closed angle bracket". This has been resolved by adding aria-labels for menu item elements so the screen reader will read only the label. | User Experience |
INC-B8247 | 860159 | Updated spellchecker to limit area | When using a Rich Text Editor with a property also used in the autocomplete set value in the general tab, clicking on spell check after entering some content resulted in an error in the console loader. This was a missed use case and has been resolved with an update to select only the Rich Text Area for spellcheck. | User Experience |
INC-B8352 | 862197 | Added accessible name for iframe | Aria label has been added for the live composer iframe name in App Studio for improved accessibility. | User Experience |
INC-B9102 | 860914 | Corrected BAC registration for reordering grid rows | A 403 error was generated while reordering the rows in a non-optimized grid. This was caused by the pzdogridaction activity not being registered with BAC, and has been resolved. | User Experience |
INC-B9218 | 867657 | Clarification for keyboard shortcuts instruction | The Text Editor keyboard shortcuts instruction in Knowledge Management article creation has been updated to clarify that "use keyboard shortcuts Alt+F10" applies only when inside the Rich Text Editor body. | User Experience |
INC-B9435 | 860733 | Added null check for strKey in SafeURL | Opening an existing assignment and then clicking on the cancel button generated a browser alert with the error "NullPointerException in SafeURL.put(key,value) {recordKey}, {undefined}". This was traced to an empty value for strKey, and has been resolved by adding a null check. | User Experience |
INC-B9573 | 861476 | Updated handling for autocomplete using datapage query | Autocomplete was not presenting a complete list if the search characters were changed while the data was being loaded. This occurred when the autocomplete was sourced with a datapage and dataapiobj was querable in an embedded data as a fieldgroup, and was caused by the load-more call back setting duplicate items while concatenating the previousItems and searched Items. This was a missed use case and has been resolved with an update to avoid rendering AutoComplete menu items with duplicate keys. | User Experience |
INC-B9758 | 860513 | Localized password reset message corrected | The Japanese translation for the pyCaption "Enter your username to reset password" has been corrected. | User Experience |