I have been exploring Dynamics CRM 2016 lately and what a wonderful release it has been. Today I was exploring in depth the new solution enhancements introduced with Dynamics CRM 2016 and I have to say I am mesmerized by it. Whatever complaints my customers has been raising regarding solution versioning and management, I think this will address everything.
I will try to explain the solution enhancements in as detail as possible, in series of blog posts. In this post I will discuss on the new feature called Segmentation in Dynamics CRM solutions. So without wasting much time lets jump to the topic.
All this time we wanted to include only the changes you did for an entity in your solution but could never do that. Say you added a new field to the account entity and customized one of the existing fields. Now till 2015 you have to import the Account entity in the target environment. The problem with that is when you add the account entity, all the fields, forms, relationships, keys, hierarchies and what not are imported, although my target was just to import the changes to the two fields.
Well in CRM 2016 you could just do that. Suppose you have made changes to the numberofemployees field and the name field of the account entity. I have created a new solution named ‘Segmentation Demo’. I add ‘Account’ entity to the solution.
The fun starts here. As soon as I select the account entity, I get the below screen.
Just dumbstruck if you are seeing this for the first time? Well I was. You can navigate through each of the tabs and just select the components you have changed. So in my case, I just navigate to the Fields section and select the two fields I require.
Great. Isn’t it?
Let’s get a bit deeper here. Let’s export the solution and explore it’s contents. If I unzip the solution file and open the customizations.xml file, then this is what you see.
Neat. A trimmed XML with just your changes. How much time it would save now for the solutions with multiple entities in it? Immense is the answer.
What if there is something you need to add on to the existing solution. Just click on the ‘Add SubComponents’ and the same window would popup where you can select the components you need.
Have I missed something? Oh Yes. And a very important one. When you add an entity to the solution or you try to add a subcomponent to an existing entity, there is a checkbox called ‘Include Entity Metadata’
What happens if you uncheck this checkbox. Well in the videos and release preview blogs I went through, no-where it is explained what exactly happens if you uncheck this box. So I decided to explore it myself.
With this checbox checked, I exported the solution and this is what my contact entity xml looks like in the customization.xml file.
As you can see, you have entire metadata listed.
Now I uncheck the checkbox, save & publish. Then export the solution. And this is how the customizations.xml file looks now.
As you can see, none of the metadata elements for the contact entity are in the xml file.
In my next article, I have covered Solution Patching feature of CRM2016. To view the blog post click the link.
Till then, happy exploring CRM 2016.