A Microsoft Dynamics CRM solution is a bucket where all the customization components of a particular project gets stored. Solutions are how customizes and developers author, package, and maintain units of software that extend Microsoft Dynamics 365 (online & on-premises). Customizers and developers distribute solutions so that organizations can use Microsoft Dynamics 365 to install and uninstall the business functionality defined by the solution. There are three types of solutions:
- System solution: Since 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. Hence it is contains core features provided by CRM.
- Managed Solution: A managed solution is a final solution to distribute and install on any Microsoft Dynamics CRM instance. Although you can convert by exporting as an unmanaged solution by setting restrictions to prevent any further customizations. Insatallation of managed solutions are on top of the system solution therefore it can modifies any customizable solution components or add more solution components.
- Unmanaged Solution: Unmanaged solutions are groups of unmanaged customizations. Therefore any unmanaged customized solution component can make part of any number of unmanaged solutions. The beginning state of solution is the unmanaged solution state. During this phase, it is possible to add, edit, update, remove, delete, and test any of the components of the solution.
- Extensibility: Use solutions to extend the capability of Microsoft Dynamics 365.
- Version compatibility: It also has version restrictions. We can’t direct import any older version solution in updated on. Therefore solutions exported from an earlier version of Dynamics 365 will not support direct import into later versions as shown in the following chart.
Component and their grouping –
- Global option sets
- Application Ribbon
- Entity Ribbons
- Web resources
- Processing Steps
- Security Roles
- Field-Level Security Profiles