Note: For upgrades please check my post on Upgrading Microsoft CRM Dynamics from 2011 to 2016
Solutions exported from an earlier version of Dynamics 365 can be imported into later versions as shown in the following chart.
Solution components are created by using the customization tools or APIs included in Microsoft Dynamics 365 and are fully hosted in the application. The following diagram shows the types of solution components.
When you define a Dynamics 365 solution you create a group of solution components that can be managed together.
Unmanaged and managed solutions
There are two types of Microsoft Dynamics 365 solutions: managed and unmanaged. A managed solution is a completed solution that is intended to be distributed and installed. An unmanaged solution is one that is still under development or isn’t intended to be distributed. When the unmanaged solution is complete and you want to distribute it, export it and package it as a managed solution.
The following diagram introduces how managed and unmanaged solutions interact with the system solution to control application behavior.
- The system solution represents the solution components defined within Microsoft Dynamics 365. Without any managed solutions or customizations, the system solution defines the default application behavior.
- Many of the components in the system solution are customizable and can be used in managed solutions or unmanaged customizations.
- Managed solutions
- Managed solutions are installed on top of the system solution and can modify any customizable solution components or add more solution components.
- Managed solutions can also be layered on top of other managed solutions. As long as a managed solution enables customization of its solution components, other managed solutions can be installed on top of it and modify any customizable solution components that it provides.
- Unmanaged customizations
- All customizable solution components provided by the system solution or any managed solutions can be customized in the unmanaged customizations.
- Unmanaged solutions
- Unmanaged solutions are groups of unmanaged customizations. Any unmanaged customized solution component can be associated with any number of unmanaged solutions.You create a managed solution by exporting an unmanaged solution and selecting to package it as a managed solution.
- Application behavior
- The ultimate behavior of an instance of Microsoft Dynamics 365 for a specific organization is the culmination of the system solution, any managed solutions, and any unmanaged customizations
When two or more solutions define solution components differently, Microsoft Dynamics 365 resolves the conflict using two strategies, Merge and Top Wins. The following diagram illustrates the differences.
- User interface components (command bar, ribbons, forms, and site map) are merged. This means that the solution components are re-calculated from the lowest level to the highest so that the organization’s unmanaged customizations are the last to be applied.
- Top Wins
- For all other solution components any conflict is calculated in favor of the customization that is applied last. For managed solutions this usually means that the last solution installed is applied. However, there is a special case when an update to a managed solution is installed.