22 Mar’16

D365 GeneralSolution Enhancements in CRM 2016


In earlier versions of CRM (before 2016), when a solution was exported from one environment to another, the entity and all of its assets i.e. forms, views, relationships, visualizations, attributes etc. were exported. Exporting all unrequired assets could unintentionally modify objects on Target Environment or carry unintended dependencies.

In CRM 2016, solution patches can be created that contain ‘sub components’ of the entity that needs to be modified and then roll up the patches in the updated version of managed solution and export the updated version in target environment. In the section below, we look at how ‘clone to patch’ and ‘clone to solution’ features work in CRM 2016 to accomplish the above.

Clone to Patch

Example: Suppose there is a ‘Base Solution’, with all assets of Account and Contact entity but now we want to edit the length of field say ‘Account Number’ from 20 to 40.

Step 1: Since this field is a part of ‘Base Solution’ and changing the field length is only requirement we will create a patch for the original solution. So we use ‘Clone as Patch’ option for ‘Base Solution’. Since it’s a patch, system allows only last two digits to be modified for versioning. This option creates a patch for the parent solution as shown below.


Step 2: Now in the patched solution we will only add the Account Number field of Account entity and update the field length to 40.



Step 3: When the patched solution is imported in another environment, it is applied on top of base solution and account number field is updated.

Things to note when creating patches:

  1. When a patch is created at that time the parent solution is locked and can no longer be modified.
  2. Patches can be installed on another environment only If the parent solution is present in that environment.
  3. Patches should be exported as managed and should be imported on top of managed parent solution.
  4. Do not use unmanaged Patch solutions in Production environments.
  5. Patch is always created for Unmanaged Parent solutions.

In the future, if any other changes are to be done in ‘Base Solution’, we can create another patch for the ‘Base Solution’ and follow the above procedure.

Clone to Solution

So now when we plan to have next version of solution, we use the option ‘Clone to Solution’. All related patches to the ‘Base Solution’ get rolled up in the newly created version of ‘Base Solution’ and the patches are deleted automatically.


If we want the upgraded solution to be imported on target environment, import the Upgraded Solution and then select the Parent Base Solution and choose option ‘Apply Solution Upgrade’. This option removes the previous parent solution and keeps the Upgraded new solution in the environment.


Thus with solution enhancements in CRM 2016, instead of making changes in the entire parent solution, solution patches can be created with the changed customizations and then with the help of Clone Solution option the patches gets rolled up and new version of parent solution is created.

Written by

Team Member


Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload the CAPTCHA.

Want to streamline your business processes?

  • This field is for validation purposes and should be left unchanged.

Recent Articles

  • Reading more then 10K records in D3FOE OData API

    11 July’ 2018

    Introduction: We all know Dynamics 365 Finance and Operations has limitation of 10K records to be fetched at a time usi...

    Read more
  • Paging in D365 Customer Engagement v9.0

    10 July’ 2018

    Introduction: The Xrm.retrieveMultipleRecords method is used to retrieve a collection of records in Dynamics 365 Custom...

    Read more
  • Set up Dynamics 365 connection in Microsoft Social Engagement

    10 July’ 2018

    Introduction: This blog explains how to Set up Dynamics 365 connection in Microsoft Social Engagement. Steps to be follo...

    Read more
  • Voice of the Customer failed to install

    10 July’ 2018

    Introduction: Many people face issues in installing Voice of Customer solution on v9 environment and trying repeatedly ...

    Read more
  • Scribe Insight AX as a Web Service Find Block issue

    10 July’ 2018

    Introduction: If we need to look up for any value from AX then we do it by using a Find Block in Scribe Insight Eg: Basi...

    Read more