When using Copy Project in Dynamics 365 Project Operations, the system creates the target project record before all validations are completed. If a validation later fails (for example, due to project status restrictions), the copy operation stops with an error, but the newly created project remains in the system as an empty or partially initialized record.
This behavior leads to unnecessary project records being created when the copy operation fails, which causes data clutter and governance issues over time.
Current Behavior
- The Copy Project action (CopyProject V3 / V4) creates the target project first.
- Project validations (such as source project status eligibility) are performed after the target project is created.
- If validation fails, an error message is shown to the user.
- The target project is not automatically rolled back or removed, leaving empty or orphaned project records in the environment.
This behavior is consistent with the documented long‑running Copy Project operation, where validations occur during execution rather than before creation.
Expected / Desired Behavior
One of the following improvements would significantly enhance usability and data quality:
- Pre‑validation before project creation
- Validate all prerequisites (such as source project status) before creating the target project record.
or
- Automatic rollback on failure
- If the copy operation fails due to validation errors, automatically delete the target project record that was created as part of the failed operation.
Business Impact
- Failed copy attempts create unnecessary project records.
- Over time, this results in data pollution and requires manual cleanup.
- Customers using Copy Project frequently (for templates or standardized delivery models) are disproportionately impacted.
- This behavior can be confusing for users, as an error is shown but a project still appears in the system.
Why This Matters
Copy Project is a core productivity feature in Project Operations. Improving validation timing or adding rollback behavior would:
- Prevent accidental creation of orphaned projects
- Improve data consistency and governance
- Provide a clearer and more intuitive user experience
- Reduce administrative cleanup effort
