Google Anlatics

Monday, January 24, 2022

Migrate Dynamics CRM 365 On-Premise to CRM 365 Online

Pros of Migrating to Dynamics 365 Customer Engagement (CE) Online:

Cost reduction: Moving to Dynamics 365 CE Online can help reduce costs associated with maintaining on-premises infrastructure and resources.
No manual upgrades: Microsoft handles all upgrades and maintenance for Dynamics 365 CE Online, so you don't have to worry about performing manual updates.
Fewer resources needed: Migrating to Dynamics 365 CE Online allows you to manage the system with fewer resources, including infrastructure and database expertise.
High availability and disaster recovery: Dynamics 365 CE Online offers a high availability and disaster recovery environment, with a guaranteed 99.9% uptime by Microsoft.
Greater support: Microsoft provides more support for product issues with Dynamics 365 CE Online compared to the on-premises version.
Access from anywhere: Dynamics 365 CE Online can be accessed from any location with an internet connection.
Office 365 integration: You can use your Office 365 ID for login and multi-factor authentication (MFA) with Dynamics 365 CE Online.
Multiple device access: Dynamics 365 CE Online can be accessed using a variety of devices, including mobile phones and tablets.
Email tracking with Outlook: You can use the Outlook App to track emails with Dynamics 365 CE Online.
Access to online features: Dynamics 365 CE Online provides access to Microsoft CRM online features and technologies, such as Power Apps, Flows, and Power BI.

Limitations of Dynamics 365 Online:
Cannot use third-party DLLs for plugin and workflow development, which may limit the functionality that can be added to the system.
Reports can only be developed using fetch xml, which may not be suitable for all reporting needs and may require additional time and effort to convert existing SQL reports.
Additional data storage and attachment storage may be required at an additional cost, depending on the size and usage of the system.
Extra testing and releases may be necessary for regular CRM rollup upgrades to ensure that the system continues to function as expected and to address any potential issues that may arise.
There is limited control over the infrastructure and hardware, which is managed by Microsoft. This means that the organization may not have the ability to make certain customizations or configurations to the system.

Using Dynamics 365 On-Premise:
The organization has full control over the environment and can make unsupported customizations to the system.
The organization has full control over the database and can develop SQL reports and write SQL queries for data extraction.

Limitations of Dynamics 365 On-Premise:
Requires more cost, infrastructure, and staff to manage the system.
May require specialized application experts to manage the infrastructure, such as ADFS, SSRS, and SQL DBA (Cluster, Always On with DR).
Regular maintenance is required, including OS and security patches, which may require downtime and regression testing.
Vulnerability scans and penetration testing may be necessary, with necessary fixes required to address any identified issues.
Support from Microsoft may be more difficult to obtain and may take longer to resolve issues compared to the online version of Dynamics 365.

Dynamics 365 V8 (on-Prem) vs Dynamics 365 CE (online)

Technical differences

Dynamics 365 CE Online is entirely cloud-based and managed by Microsoft (including product, database, data center, and infrastructure)
CRM rollup upgrades are managed by Microsoft twice a year.
Database, data center, and disaster recovery (DR) managed by Microsoft (DB backup and restoration is very fast and simple)
Reports – Only supports Fetch XML reports, not SQL query reports, it might be required to convert SQL based reports before online migration.
Interfaces with other systems - Requires opening of firewall connections to connect to other systems.
Does not support Outlook client, requires switch to CRM Outlook online app
Incompatible JavaScripts may need to be modified for new XRM APIs.
ADFS server not required, can use Office 365 login ID for authentication
Plugins and workflows using third-party DLLs must be modified (Ex: IL merge)

Requirements
User training on new system and change management process during testing (UAT)
Personalized experience apps based on CRM security roles for improved access management and ease of use (e.g. back office app, admin app, shop ops app)
UI changes with Dynamics 365 CE Online 9.1 using unified client interface (UCI)

Operations

Rollup version upgrades: It is important for users of Dynamics 365 CE Online to be aware of and plan for rollup version upgrades, which are managed by Microsoft and occur twice a year. Users should be informed of the changes and asked to try them out in the testing environment (UAT). All versions of the system (development, staging, testing, and production) must be upgraded to the same rollup.
Maintenance and downtime: There is no need for a system maintenance window or downtime with Dynamics 365 CE Online, as the system is managed and maintained by Microsoft.
Accessibility: Dynamics 365 CE Online can be accessed from anywhere in the world, which allows users and the development team to work remotely and provide better support.
User experience: The user experience may be different in Dynamics 365 CE Online due to changes in the unified client interface (UCI).
Microsoft support: Microsoft support is generally more available for Dynamics 365 CE Online compared to Dynamics 365 V8 On-Premise.
New features: Users of Dynamics 365 CE Online receive new features twice a year as part of the rollup updates.

Migration Plan

Assumptions

Eligibility for FastTrack migration: The company has the necessary eligibility requirements for FastTrack migration.
Migration method: The migration will be done using the FastTrack method.
Account type: Hybrid AD accounts will not be used, and Office 365 accounts will be used to access the system.
Email address and profile: The email address will be an Office 365 account and the email profile will be configured using Microsoft Exchange Online.
Deployment server and organization: A new deployment server with Windows Server 2016 and SQL 2016 will be set up to create a separate organization for customizations required for CRM Online migration. The current server and organizations should not be used to avoid impacting current operations.
Azure Tenant: The company has an Azure Tenant, and an Azure subscription and storage account (which the customer will need to pay for along with Dynamics 365 subscriptions) have been set up, along with provision for two sandbox environments in staging.
CRM licenses: All necessary CRM licenses have been purchased before the migration.
Microsoft Lifecycle Services: The migration project has been set up in Microsoft Lifecycle Services, which uses a wizard-based hosted tool for the migration. Microsoft Lifecycle Services
Managed CRM solution: A managed CRM solution will be used for deployment to the testing and production environments.

Here are some points to consider when planning a migration to Dynamics 365 Customer Engagement (CE) Online:

Dual licenses: It is possible to use a Dynamics 365 CRM On-Premise license for the online version of the software.

Licensing method: The most cost-effective licensing method can be chosen based on the client's budget and system access requirements. Options include Enterprise (more costly), Power app (less costly), and Team Member (less costly).

 Setup Development Environment 

Here is a list of steps to set up a development environment for a migration to Dynamics 365 Customer Engagement (CE) Online:

Set up a new on-premise server: A new server should be set up using the development environment before creating an online migration solution to avoid additional migration cycles. This server should have CRM V8, SQL 2016, and the operating system Windows Server 2016.

Create a new development organization: A new development organization can be created by restoring the existing development CRM database and importing the organization.

Make necessary changes in the development CRM: The following changes should be made in the development CRM:

Create a new CRM solution and include all customizations in that solution

Convert SQL-based reports to Fetch XML

Update plugins and workflows to run in sandbox mode

Check for and reconfigure any integration with third-party tools, and remove IL merge

Update JavaScript to the new client object model (compatible with the unified client interface (UCI))

Update CRM forms to provide a rich user experience with the UCI

Make the solution online compatible

Test that all application functionalities are working as expected

Upload the database backup to Azure Blob Container: Take a database backup, log in to the Lifecycle portal, and upload the database backup to the Azure Blob Container.

Upgrade CRM: Follow the steps to upgrade CRM 9.0, then CRM 9.1, using the provided tools and steps.

Validation of the migration: Run the validation report and fix any issues identified in the CRM V8 environment. Once the issues are fixed, upload the database backup again, follow the same steps, and ensure that the validation report is successful before uploading the CRM online via the Lifecycle portal.

Creation of the online development environment: Once the validation steps are completed, follow the steps in the Lifecycle portal to create the CRM Online development environment.

User mapping: Upload user mapping with the permissions required to complete the migration successfully.

Regression testing in the online environment: Perform testing in the online environment to ensure that all functionalities are working as expected. This may include functional, integration, and user acceptance testing.


Setup UAT Environment

Here are the steps to set up a testing (UAT) environment for a migration to Dynamics 365 Customer Engagement (CE) Online:


Create a new UAT organization: A new testing organization can be created by restoring the existing testing CRM database and importing the organization in the new environment.
Import the customized solution from the development CRM: Import the customized solution from the development CRM to the testing environment, including any fixes made during the development migration.
Upload the database backup to Azure Blob Container: Take a database backup, log in to the Lifecycle portal, and upload the database backup to the Azure Blob Container.
Upgrade CRM: Follow the steps to upgrade CRM 9.0, then CRM 9.1, using the provided tools and steps.
Validation of the migration: Once issues are fixed, upload the database backup again, follow the same steps, and ensure that the validation report is successful before uploading the CRM online via the Lifecycle portal.
Creation of the online testing environment: Once the validation steps are completed, follow the steps in the Lifecycle portal to create the CRM Online testing environment.
User mapping: Upload user mapping with the permissions required to complete the migration successfully.
Testing: Perform a full regression test to ensure that all functionalities are working as expected in the online testing environment. This may include functional, integration, and user acceptance testing.
Familiarization with the new unified client interface: Help users become familiar with the new unified client interface (UCI).

 

Setup Production Environment

Here are the steps to set up a production environment for a migration to Dynamics 365 Customer Engagement (CE) Online:

Pilot migration: Microsoft can provide support for a pilot migration before the production CRM migration in the new environment.
Inform users: Inform users that they will need to stop using the production system.
Create a new production organization: A new production organization can be created by restoring the existing production CRM database and importing the organization.
Upload the database backup to Azure Blob Container: Take a database backup, log in to the Lifecycle portal, and upload the database backup to the Azure Blob Container.
Validation of the migration: Once issues are fixed, upload the database backup again, follow the same steps, and ensure that the validation report is successful before uploading the CRM online via the Lifecycle portal.
Creation of the online production environment: Once the validation steps are completed, follow the steps in the Lifecycle portal to create the CRM Online production environment.
User mapping: Upload user mapping with the permissions required to complete the migration successfully.
Testing: Perform a full regression test to ensure that all functionalities are working as expected in the online production environment. This may include functional, integration, and user acceptance testing.

Eligibility

FastTrack assistance is available for customer tenants with 150 or more licenses from one of the eligible plans from the following Microsoft product families: Microsoft 365, Office 365, Microsoft Viva, Enterprise Mobility & Security, and Windows 10. However, it may still be possible to get Microsoft support by talking to them and convincing them of the future usage of the online CRM system and the increase in user licensing capacity.

More Information: https://docs.microsoft.com/en-IN/fasttrack/eligibility

Refences: 

Refer to the following video for more information: Dynamics CRM On-premise To Dynamics 365 Online Migration Tech Talk.


https://docs.microsoft.com/en-us/dynamics365/fasttrack/migration

https://nishantrana.me/2020/05/15/dynamics-crm-on-premise-to-online-migration-program-microsoft-fasttrack/


Dynamics CRM to Dynamics 365 Online Migration Guide

Dynamics CRM On-Premise to Dynamics 365 Online Migration Study Guide

Quiz

1.
What are the primary benefits Microsoft offers for customers migrating Dynamics CRM on-premises to Dynamics 365 online?
2.
According to the Microsoft Learn article, what Dynamics CRM on-premises versions are currently supported for OP2OL migration services?
3.
What were some of the challenges with manual migration methods (like using SSIS, KingswaySoft, and Scribe) from Dynamics CRM on-premises to online, especially for older versions like CRM 2011?
4.
Describe the high-level architecture of the FastTrack migration tool, mentioning the key components involved.
5.
What are some critical prerequisites that need to be in place before starting the migration process using the FastTrack tool? Provide at least three examples.
6.
Explain the role of the CRM validation service in the migration process and what it helps to identify.
7.
What is the purpose of the intermediate CRM environments (e.g., CRM 2011, 2013, 2015, 2016) created during the FastTrack migration process, especially when migrating from an older version?
8.
What are the key responsibilities of the customer and the FastTrack team during the Dynamics CRM on-premises to online migration project?
9.
What are some limitations of Dynamics 365 Online compared to the on-premises version, as highlighted in the Medium article? Provide at least two examples.
10.
Briefly outline the general six-step process for migrating Dynamics CRM from on-premises to CRM 365 Online as summarized in the second Medium article.

Quiz Answer Key

1.
Microsoft provides guidance, tools, documentation, and performs configuration tasks where applicable and feasible to assist eligible customers with supported versions of Dynamics CRM in migrating their on-premises database to Dynamics 365 and Microsoft Dataverse. This aims to make the migration process more automated and guided.
2.
Currently, the OP2OL migration services support Dynamics CRM 2016 (on-premises) and later versions. This means customers on these versions can utilize Microsoft's direct migration assistance.
3.
Manual methods were often time-consuming and labor-intensive, lacking automation and a guided process. Especially for older versions like CRM 2011, significant schema changes over time made manual data mapping challenging. There was also no easy way to check for unsupported customizations beforehand.
4.
The FastTrack migration tool utilizes Lifecycle Services as a portal to access the tool. It involves provisioning temporary Azure environments within the customer's subscription, upgrading the on-premises database through intermediate CRM versions (like 2016), using Azure Blob Storage for the database backup, and employing services for validation and final migration to Dynamics 365 Online.
5.
Critical prerequisites include having an existing, unconfigured Dynamics 365 online sandbox license, an Azure subscription with the necessary roles and privileges, and ensuring that all on-premises users have corresponding identities and required licenses in the Office 365 tenant for proper mapping.
6.
The CRM validation service analyzes the solutions (either the default solution from the uploaded database or manually uploaded solution files) for any unsupported customizations that might hinder the migration process. It provides a report detailing these issues, allowing customers and partners to review and address them before the actual migration.
7.
The intermediate CRM environments are created to facilitate the upgrade process of the on-premises database. For example, a database from an older version like CRM 2011 needs to be upgraded sequentially through versions like 2013, 2015, and finally 2016 before it can be migrated to Dynamics 365 Online. This staged upgrade ensures compatibility and data integrity.
8.
The customer is responsible for understanding the migration process, ensuring all prerequisites are met (licensing, Azure setup, user mapping), planning the migration timeline, and validating the migrated environment. The FastTrack team provides the migration tool, offers guidance and support, helps remove roadblocks, and performs the final migration step.
9.
Limitations of Dynamics 365 Online include the inability to use third-party DLLs for plugin and workflow development, and the restriction of reports to FetchXML (potentially requiring conversion of existing SQL-based reports). Additionally, there is limited control over the underlying infrastructure and hardware.
10.
The general process involves determining the reason for migration, planning the migration strategy, preparing the on-premises environment (backups, updates), migrating the data and customizations using Microsoft or third-party tools, thoroughly testing and validating the migrated environment, and finally going live with the new Dynamics 365 Online instance.

Essay Format Questions


1.
Discuss the key motivations and benefits for organizations choosing to migrate from Dynamics CRM on-premises to Dynamics 365 Online. Consider both technical and business advantages.
2.
Analyze the role of the FastTrack migration program and its associated tool in simplifying the process of migrating from Dynamics CRM on-premises to Dynamics 365 Online. What are its strengths and what aspects still require significant customer involvement?
3.
Compare and contrast the technical considerations and potential challenges of migrating from older Dynamics CRM on-premises versions (e.g., 2011, 2013) versus newer versions (e.g., 2016) to Dynamics 365 Online, based on the provided sources.
4.
Evaluate the importance of the pre-migration assessment and validation phase in ensuring a successful transition from Dynamics CRM on-premises to Dynamics 365 Online. What are the critical elements that need to be addressed during this stage?
5.
Considering the information from all the provided sources, outline a comprehensive migration plan for a hypothetical organization moving from Dynamics CRM 2013 on-premises to Dynamics 365 Online. Include key stages, responsibilities, and potential challenges.

Glossary of Key Terms

Dynamics CRM (on-premises): A version of Microsoft's Customer Relationship Management software that is installed and hosted on an organization's own servers and infrastructure.
Dynamics 365: Microsoft's suite of intelligent business applications, including Customer Engagement (formerly Dynamics CRM) applications, offered as a cloud-based service.
Microsoft Dataverse: The underlying data service that supports many Microsoft Power Platform components and Dynamics 365 applications, providing a scalable and secure data storage option in the cloud.
OP2OL (On-premises to Online): Refers to the migration services and process of moving from an on-premises deployment of Dynamics CRM to the online (cloud-based) version, Dynamics 365.
FastTrack: A Microsoft program designed to help customers deploy Microsoft cloud solutions, including Dynamics 365, providing guidance, tools, and resources.
Lifecycle Services (LCS): A collaboration portal provided by Microsoft that offers tools and services to manage the lifecycle of Microsoft Dynamics 365 implementations, including migration tools.
Azure Subscription: A foundational element for using Azure services, providing a billing boundary and a container for resources.
Azure Blob Storage: Microsoft Azure's object storage solution for the cloud, optimized for storing massive amounts of unstructured data, such as the on-premises database backup.
CRM Validation Service: A component of the FastTrack migration tool that analyzes a Dynamics CRM database or solution for potential compatibility issues with Dynamics 365 Online.
Sandbox License: A non-production environment for Dynamics 365 Online used for development, testing, and training purposes before deploying changes to the live production environment.
Multi-geo: A feature in Microsoft 365 and Dynamics 365 that allows a tenant to provision and store data at rest in multiple geographical locations.
Managed Solution: A packaged set of Dynamics 365 customizations that can be imported, exported, and managed as a single unit.
Fetch XML: A proprietary query language used by Dynamics 365 for retrieving data, particularly for reports in the online version.
Unified Client Interface (UCI): The modern, web-based user interface for Dynamics 365 applications, designed for consistent experience across various devices.
Plugin: Custom code written in .NET that executes in response to events within Dynamics 365, extending its out-of-the-box functionality.
Workflow: An automated process within Dynamics 365 that can be triggered by specific events or run on demand to perform a series of actions.
SSIS (SQL Server Integration Services), KingswaySoft, Scribe: Third-party tools commonly used for data integration and migration tasks, often employed in manual Dynamics CRM migrations.
DLL (Dynamic Link Library): A type of file that contains compiled code that can be used by Windows programs, sometimes used in Dynamics CRM on-premises customizations.
ADFS (Active Directory Federation Services): A Microsoft service that provides single sign-on (SSO) capabilities, often used for authentication in on-premises Dynamics CRM deployments.
SSRS (SQL Server Reporting Services): A Microsoft platform for creating and managing paginated reports, commonly used with Dynamics CRM on-premises for custom reporting.
SQL DBA (Database Administrator): A professional responsible for managing and maintaining SQL Server databases.
UAT (User Acceptance Testing): A phase of testing where end-users verify that the migrated system meets their requirements and works as expected.
Hybrid AD Accounts: User accounts that exist in both on-premises Active Directory and Azure Active Directory, often used in hybrid cloud environments.
ILMerge: A utility that merges multiple .NET assemblies into a single assembly, sometimes used in on-premises plugin development but not supported in Dynamics 365 Online.
AX Client: The legacy desktop client for earlier versions of Dynamics CRM on-premises, no longer supported in Dynamics 365 Online.

Sri Lanka .NET 
                Forum Member