Dynamics 365 Deployment Best Practices Guide

Dynamics 365 Deployment Best Practices Guide

September 14, 2020 5 Minutes to Read

Microsoft Dynamics 365 is a leading line of enterprise resource planning (ERP) and customer relationship management (CRM) applications. With the platform’s high business impact, it is critical for enterprise leaders to follow best practices. In the past five years, we have deployed Dynamics 365 over 100 times for our Fortune 500 customers. Here are the eight best practices we use to optimize every deployment.

  1. Avoid broken references after deployment
    • Maintain the same GUIDs across environments for records referenced in workflows/views.
    • Use custom actions to parameterize the referenced records instead of directly referencing a record in the workflow.
    • Figure 1: Referencing records directly in the workflow
      Figure 2: Referencing records retrieved dynamically with custom actions in the workflow
  2. Import multiple files at once with .zip
    • Individually importing multiple data files is time-consuming and requires the files to be imported in the correct order to resolve inter-file column references.
    • When you zip multiple files together for import, you save time and don’t have to worry about import order; Dynamics 365 takes care of it for you.
  3. Include only required fields in data import files to avoid plugin/work
    • Including unnecessary fields in the data import file increases import time and may trigger workflows/plugins registered on those fields.
    • For example, to update a contact address, don’t include unnecessary fields like first and last name in the import file.
  4. Deactivate relevant plugins/workflows before bulk updating records to avoid triggers and reduce import time
    • To update data as part of data migration activities without triggering business logic, deactivate plugins/workflows registered on the entities present in import file.
  5. Enable admin mode on your target environment during deployment
    • Admin mode locks the environment for all users, meaning only system administrators can access the environment.
    • Enabling admin mode during deployment ensures that data is not compromised by unplanned changes. If an error occurs, data can be restored to previous versions.

    Note: Admin mode cannot be enabled in the production environment. If you are not permitted to convert the environment to a sandbox, use the global notification method to add a form.

  6. Include a user-friendly message while in admin-mode to prevent confusion
    • During deployment, the system may be slow. This is why we recommended locking the system for end users.
    • Messages inform end users that the environment is down due to planned activities and will return after the indicated duration. Clear messages avoid support tickets from confused end users.
    Figure 3: Enabling Admin mode from Power Platform admin center
  7. Back up the environment before deployment
    • Backups ensure that the system can be restored to its pre-deployment state in case a deployment failure occurs.
    • Backups are faster than creating a copy of the environment.

    Note: When an environment is restored to an earlier state, the Data Export Service profile needs to be re-established to synchronize the Dynamics 365 data to Azure SQL.

    Figure 4: Creating a backup from Power Platform admin center
  8. Run a test in a cloned production environment prior to production deployment to identify compatibility issues
    • Tests enable team members to prepare a mitigation plan. Issues can be proactively flagged and resolved, mitigating end-user impact.

References

We compiled our best practices from a mix of experience and research. For a detailed look at some of the points we mention above, we encourage you to review the following documents: