Thursday, June 23, 2011 9:42 PMAnswerer
Hi team/fellow contributors/interested others,
I thought it would be a good idea to start a discussion to capture our shared ideas and unofficial best practices around producing CRM2011 solutions and deploying them from development to production. Feel free to contribute any as yet undocumented tips and 'features' to watch out for.
I will get the ball rolling with a few thoughts/ideas that I and my colleagues have worked out/adopted ver the last few months.
1. Create an unmanaged solution that contains some standard things such as your Publisher and system settings and ensure this is the first thing that you import into a new organisation before commencing customization. This will save you time in future and ensure your Publisher record is the same for all your deployments (eliminates alot of coexistence problems in future as you move into deploying managed solutions).
2. Create a 'Main' solution in your development environment and ensure you work in this solution all the time. This will help when the time comes to export the solution ready for import into a destination Test / Live organisation and will avoid needing to remember to add all the components that you have worked on. NOTE: avoid making schema changes from the 'Customize' tab on forms as it will add the changes to Default solution.
3. When exporting your solution from the development environment, export 2 copies, one managed and one unmanaged. The unmanaged solution can be filed away incase a new development environment needs to be re-built while the managed solution can be deployed into the test & live environment, and subsequent versions applied following further release cycles. This also is a good way to control changes being made by overzealous super users in Test & Live that may subsequently get overwritten or cause collisions during official release cycles.
4. DO NOT IMPORT YOUR MANAGED SOLUTION INTO YOUR DEVELOPMENT ENVIRONMENT FROM WHICH IT WAS CREATED. You cannot export a managed solution so doing this would mean you have to start again / re-build your development environment (hopefully from the unmanaged solutions you created in point 3! - or maybe a database restore)
5. If you are customizing the forms of entities that are likely to be affected by 3rd party solutions that you plan to use (i.e. contact & account are pretty common ones) create copies of the default main 'Information' forms and work with your copies. Grant access to your copied form by adding the relevant security roles and also set for fallback. Restrict access to the out of the box 'Information' forms. By doing this, you can eliminate the risk of your custmised forms being adversely affected by 3rd party versions of the same form.
That's all for now, hopefully if a few of you chip in we can get this post pinned to the first page of the forum!
Happy solution building,
Microsoft Certified Technology Specialist (CRM) GAP Consulting Ltd. Microsoft Community Contributor Award 2011
Friday, July 01, 2011 10:12 AM
It seems Microsoft has no specifically mentioned best and standard practice for CRM 2011 solution deployment, but I think what we need to do is, we need to come up with best practice to avoid issues based on our current experience and available methodologies in solution development such as manage and un-manage solutions. So we should plan our development of our solution to avoid issues while we will do the deployment to QA, UAT and Production. Below article in MSDN might be useful, when we are planning development of our solution.
Plan for Solution Development
Saturday, July 02, 2011 8:24 AMAnswerer
Thanks for the link Thushara, hopefully a few more contributors will share their experience here.
Microsoft Certified Technology Specialist (CRM) GAP Consulting Ltd Microsoft Community Contributor Award 2011
Saturday, July 02, 2011 1:25 PMModerator
Here are few thoughts from me:
Ayaz Ahmad CRM Architect | http://ayazahmad.wordpress.com
Monday, November 28, 2011 10:43 AM
Can you please help me with the my import problem?
Please help me as its very urgent issue
Issue : We are getting error while importing Managed solution over the same unmanaged solution which we had imported before.
Message: You cannot complete this action for this component because of the configuration of its managed properties.
Error: The evaluation of the current component(name=LocalizedLabel, id=22fb395f-00b9-4e78-adbe-e90401ae1f1c) in the current operation (Update) failed during managed property evaluation of condition: Microsoft.Crm.BusinessEntities.IsRenameableCondition
Steps We followed:
1. Imported Unmanged solution_1.0
2. Deleted Unmanged Solution_1.0 (We tried managed solution_1.0 but it said same components are already available in unmanaged format. In order to import same component as managed delete the unmanaged solution first then try again. that's why we deleted )
3. Imported Managed Solution_1.0 (Import Failed)
Here we got the error.
Please suggest what should we do to import correctly.
Thanks in advance.
Wednesday, December 14, 2011 12:11 PM
Could you solve this issue? I've a similar one:
Thanks for your help.
Wednesday, December 14, 2011 2:17 PM
Suraj, you can't do that. You will either need to manually remove all the unmanaged customizations you made to that instance of CRM and then load the managed solution, or make a new instance of CRM to load the managed solution into.
ALL unmanaged solutions push their changes directly to the CRM default solution. As such, if you delete your unmanaged solution, all the customizations are still in the system, and you can't overwrite unmanaged customizations with the same managed customization.
The postings on this site are solely my own and do not represent or constitute Hitachi Consulting's positions, views, strategies or opinions.
Saturday, December 24, 2011 4:33 AM
When you say manually remove the unmanaged customizations, what if it was say the Phone Call entity.
Are you saying we would have to delete the Phone Call entity from the CRM default solution?
But then would you not lose all Phone Call data from the system as well?
Wednesday, February 01, 2012 7:08 AM
Wanye, thank you for the info.
Firstly we imported unmanged solution into the system cause currently Managed solution having issue for translation. We had raised this issue to MS and they said we need to wait unit roll up 8. So now we must have to go with unmanned solution only cause we want translation also.
Thanks once again!!