Jun 25, 2015 Madhavi Krishnayya
CRM vertical solutions are required to function on different Dynamics CRM versions to enable users using different versione benefit from the solution. Herein, when using a common sitemap for the solution, importing it on different CRM versions will result in some loss of links and as a result, errors.
Problem: When an unmanaged solution from CRM2013 that has sitemap customizations, is imported to CRM 2015, few links disappear.
We all know that any solution that is exported from the newer version of CRM cannot be imported to an older version of CRM. Same way, a solution exported from CRM 2011 cannot be imported directly to a CRM 2015 environment. If you are creating a vertical solution that supports different CRM versions, then you have to maintain two solution builds, one exported from CRM 2011 (supports both CRM 2011 & CRM 2013) and the other exported from CRM 2015.
Usually, to make the migration process simpler and non-erroneous, we export an unmanaged solution from CRM 2011 and import it in CRM 2013. Another unmanaged solution from CRM 2013 will be exported, which can be imported to CRM 2015. And as final builds, we will export managed solutions from both CRM 2011 and CRM 2015 respectively. When we follow these steps, usually the system works fine after the import.
The issue arises when the sitemap customization is included in the solution. CRM 2015 comes up with many links that are not there in the previous version of CRM.
For example, Under the Settings tab in CRM 2015, we can find the ‘Security’ tile that gives options to create user, roles, etc. Previously these options were part of the ‘Administration’ tile under ‘Settings’. This would result in corresponding changes in the sitemap also.
When a solution that contains sitemap customization is imported to CRM2015, the sitemap of CRM 2015 will be overwritten by the sitemap in the imported solution. Hence, the new links which were introduced in CRM 2015 will get removed. This problem is seen not only in CRM 2015, but also in CRM 2013. But in CRM 2013, it has been observed that only a few links have been removed. Hence, the addition of links will not affect overall functionality.
For example, CRM 2011 has Workplace tab that was removed in CRM2013.
Now let us look at what is the best way to go about solving this concern, allowing a vertical solution to be compatible with different Dynamics CRM versions.
There are two solutions which can be implemented before taking a final build:
Solution # 1
Prior to importing the build, take a backup of CRM 2015 sitemap and keep it as reference for the links. Further, ensure that the sitemap of the unmanaged solution that is exported from CRM 2013 is customized to include links that exist in CRM 2015. But this resolution may throw issues as you have to keep track of all the new links. All those links that need to be included into a particular tab and also those which are removed from where they existed before.
Solution # 2
A better methodology is to import a solution that doesn’t include the sitemap in it and then customize the sitemap alone to include the custom links as required by the particular version of Dynamics CRM. This will throw up less issues, and there will be less custom links compared to the new links that exists in CRM 2015. These would also be easier to track and rectify in case of any errors.
A Dynamics CRM developer who runs off to the hills, every chance she gets.
We have plans which will meet your needs, and if not we can tweak them around a bit too!