Wednesday, November 7, 2018

Export Solution from MSCRM version 9 and import in version 8



One of my colleague who was remotely supporting me with some customizations was not able to access CRM environment, so he suggested to developed thing on free trail of Dynamic CRM and later to import customizations. He has done customization in specific solution in CRM Online version 9.

We realized that the target environment is version 8 and of On-Premise, CRM by default does not support later version to be imported to old version.

In order to save ourselves with lot of rework, we took some time to import solution by making certain changes in customizations.xml and solution.xml and yeah it work.

Here are list of changes we did.

1) Remove following Tag’s from customizations.xml

<IsDataSourceSecret>0</IsDataSourceSecret>

<AutoNumberFormat></AutoNumberFormat>

<IsBPFEntity>0</IsBPFEntity>

<IsRetrieveAuditEnabled>0</IsRetrieveAuditEnabled>

<IsRetrieveMultipleAuditEnabled>0</IsRetrieveMultipleAuditEnabled>

<EntityDataProviders />

<IsVisibleInMobile>1</IsVisibleInMobile>
         
<IsVisibleInMobileClient>1</IsVisibleInMobileClient>

<IsReadOnlyInMobileClient>0</IsReadOnlyInMobileClient>

<IsOfflineInMobileClient>0</IsOfflineInMobileClient>

<MobileOfflineFilters></MobileOfflineFilters>


2) Remove ExternalValue="" and Color="#0000ffAttribute from <option> tag in customizations.xml




As old version of dynamic CRM does not support these attributes for optionset.


3) Add <ObjectTypeCode> tag in customizations.xml for all entities listed as highlighted in below image.





Object type code should be specific to entity being used.

Later version of Dynamic CRM expect this tag under
Entities >> Entity >> Name >> ObjectTypeCode.


4) In Solution.xml file we need to change the value of attributes of very first Tag <ImportExportXml> with respect to the target environment.

As an example, this is what it looks like when it is Dynamic CRM version 9.1

<ImportExportXml version="9.1.0.626" SolutionPackageVersion="9.1" languagecode="1033" generatedBy="CrmLive" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

In my Case I need to change it to following one.

<ImportExportXml version="8.1.0000.0359" SolutionPackageVersion="8.1" languagecode="1033" generatedBy="OnPremise" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

Just a warning note, this may not be the best practise or a supported way from Microsoft Dynamic CRM.

In addition, while doing this there could be more errors that needed to be resolved.

However, we have created hundreds of fields and we do not want to repeat the process of making the fields in Dynamic CRM again, so this help us a lot in saving our time.

Please let me know what other errors in your scenario you getting.

Thanks,
Vipin Jaiswal
vipinjaiswal12@gmail.com

2 comments:

Benjamin John said...

Hi Vipin,

please add "" to "Remove following Tag’s from customizations.xml".

BR Ben

Vipin Jaiswal said...

Hi Ben, Thanks. Corrected my statement.