For us as an ISV this is a huge improvement. We can now deliver solutions that are completely "plug and play" and still leave a minimal footprint on the whole customer system.
There is however one thing that is still not possible to separate with enough granularity. To include the ribbon definition of an entity, you need to check the Include entity metadata checkbox.
Unfortunately this also includes the entity display name, plural name, and all other "entity wide" settings such as Notes, Connections, Mail merge etc.
The result of this is that if we include the Contact entity just to be able to add a solution specific button to the command bar, we must also include the entity settings.
When a customer has developed their own solutions, or got solutions from other third parties, we quite often face the situation where they have changed the name of an entity, e.g. Contact is renamed to Person.
Now importing our solution to add this button to the contact command bar, will also change the name of the contact entity back to default, or rather to whatever it is called in our solution.
This could be solved by allowing a separate option for the RibbonDiff part of the entity definition when selecting components for the solution.
If you agree with this proposal, you can contribute by voting up this item on Microsoft Connect.
MVP Jukka Niiranen recently wrote an excellent article describing Solution Segmentation in Microsoft Dynamics CRM.
Labels: Community, Customization, Ribbon, Solutions