First – check if you are eligible for the Fast Track program
Be aware of Version Compatibility –
Upgrade the existing CRM 2016 On-Premise Server to CRM 2016 (8.1) for its solution to be compatible with Dynamics 365 Online using cumulative updates.
https://support.microsoft.com/en-gb/help/3142345/microsoft-dynamics-365-onpremise-cumulative-updates
If upgrading from previous version i.e. prior to CRM 2016, use “Migrate by using a new instance of Microsoft SQL Server” approach
https://technet.microsoft.com/en-us/library/hh699669.aspx
https://technet.microsoft.com/en-us/library/hh699747.aspx
Once updated to compatible CRM 2016 On Premise (8.1), go to settings à customizations and export the existing solutions or create a new solution, add all the required solution components to it as unmanaged which will be imported to the new Dynamics 365 online environment.
Create a new Dynamics 365 Online Environment and synchronize it with your existing Active Directory
With solution ready and imported to new Dynamics 365 Online, next step is migration of data.
Consider using a data migration tool like KingswaySoft.
Check out their Migration Starter Pack.
or Scribe
https://www.scribesoft.com/solutions/dynamics-365/
Use following tools to update the JavaScript to Version 9.0 of XrmToolBox.
- Dynamics 365 V9 JavaScript Validator (by Michel Gueli)
https://www.xrmtoolbox.com/plugins/XrmToolBox.Dynamics365V9JavascriptValidator/
- Script Finder (to update the form and fields for passing the executionContext)
https://www.xrmtoolbox.com/plugins/MsCrmTools.ScriptsFinder/
https://community.dynamics.com/crm/b/develop1/archive/2017/11/11/executioncontext-hits-the-big-time
Update JavaScript to use Web API.
https://github.com/jlattimer/CRMRESTBuilder
SQL Based report, if possible, needs to be converted to use Fetch XML. Use the following tool to speed up the process.
If the reports are too complex, plan to use Power BI reports.
https://technet.microsoft.com/en-us/library/dn708055.aspx
Plugin and Custom workflow needs to be updated to run in an isolated environment i.e. sandbox along with references to the latest SDK assemblies.
https://www.nuget.org/packages/Microsoft.CrmSdk.CoreAssemblies/
If the existing On-Premise is integrated to other applications, make sure they can still talk with new Dynamics 365 Online.
Recurring jobs if needed, can be deployed to Azure as Azure WebJobs.
https://docs.microsoft.com/en-us/azure/app-service/websites-dotnet-deploy-webjobs
Use Hybrid Connection to talk with On-Prem resources.
https://docs.microsoft.com/en-us/azure/app-service/app-service-hybrid-connections
These were some of the points I could quickly think of. Please share your thoughts and experiences in comments. I’d update this list.
Do check out :
Microsoft Dynamics CRM (on-premises) to Microsoft Dynamics
Online Migration Guide
Hope it helps..
Reblogged this on Sabih Ahmed Khan Blog.
LikeLike
Very valuable article Nishant!
LikeLiked by 1 person
Thanks 🙂
LikeLike