Issue
Clicking an actionable button triggers an unexpected alert popup warning that unsaved data will be lost.
Symptoms and Impact
As described in the Dirty Dialog – Troubleshooting documentation, in Pega Constellation only browser-level dirty popups are displayed. These occur in two scenarios:
- When a case is created: Clicking Cancel triggers a CancelAlert API
- During work object processing: Navigating away from a dirty form triggers a browser-level dirty dialog.
When working in a Constellation UI view with a table that has validation rules, users will encounter an unexpected alert popup warning that unsaved data will be lost.
A popup alert appears when they click an actionable button on a form containing validation failures.
The behavior is reproducible using out-of-the-box view and controls with a custom data transform that includes validation logic.
Steps to reproduce
- Create an application in Constellation.
- Add rows to the table in a way that fails validation (e.g., violating date-ordering rules, required fields, or business logic).
- Do not submit the case but open a new flow action via case wide actions (actionable button) or any other button on the UI that opens a flow in a modal. For example, click an actionable button (e.g., Submit, Save, Edit, or any local action button). Result: A dirty dialog alert appears, warning: "You are about to discard your unsaved changes" or "Unsaved data will be lost".
Key observations:
- The alert only appears when table validations fail.
- The alert does not appear when validations pass.
- No other error message is displayed to indicate the validation failure.
Root Cause
This is expected platform behavior in Constellation UI.
This behavior is intended to prevent accidental data loss:
- Form becomes dirty: When you modify any field in an assignment (including adding/editing table rows), the form is marked as "dirty" (containing unsaved changes).
- Save attempt on action: When you click an actionable button or perform a local action, Constellation first attempts to automatically save the assignment before executing the action.
- Validation failure prevents save: If validation errors exist (such as table row validation failures), the system cannot complete the save operation. The form remains in a dirty state.
- Dirty dialog triggers: Because the form is still dirty and you are attempting to navigate away or perform another action, Constellation displays the dirty dialog to prevent accidental data loss.
In contrast, when all validations pass, the save operation completes successfully; the form is no longer considered dirty, and no alert is displayed.
This is a data protection safeguard built into the Constellation UI framework.
Solution
There is no supported workaround to suppress this dialog in Constellation when validation fails, as it is core platform behavior.
The dirty dialog serves an important purpose:
- It alerts users that their changes could not be saved due to validation errors
- It prevents accidental loss of work-in-progress data
References
Dirty Dialog - Troubleshooting