Managed to Unmanaged – Kids don’t try this at home!

Gayan Perera, 02 October 2012

Managed to Unmanaged Kids dont try this at home

I recently demonstrated how you can convert a managed solution into an unmanaged one at TechED 2012. If you missed it, catch it on Channel9 (http://channel9.msdn.com/Events/TechEd/NewZealand/TechEd-New-Zealand-2012/DYN401).

Couple of things to note when using this method; once you run this SQL script your CRM org will be somewhat crippled, therefore import your current organization into a clean virtual environment, then run this script and export as unmanaged into another development environment then use that as your base.

The reason for the crippling behaviour is there is a table called SolutionComponentBase which records dependencies between solutions.

Here are the steps you need to follow in order to convert a managed solution into an unmanaged one.

1. Setup a new virtual environment or create a new CRM 2011 organization

2. Import the managed solution you want to convert to unmanaged
OR if you don’t have the managed solution then restore/import a copy of your current organization into the virtual environment

3. Run the SQL script below on the organization you just restored/imported/created
NOTE: change the 4th line in the SQL script to match the unique name of the managed solution

4. Go into Settings > Customizations > Solutions > Export the solution as Unmanaged

5. Save the zip file somewhere and extract it to a folder

6. Go into the folder and open the solution.xml

7. Scroll to the bottom, you’ll see lots and lots of MissingDependency elements, remove all of them and self-close the MissingDependency tag

8. Re-zip the content

9. Upload this zip file onto a development environment where it’ll become the base. Once you have this you can export as managed or unmanaged then re-import into your live environments

Enjoy!

*Image from http://screenshots.en.sftcdn.net/en/scrn/40000/40234/3d-matrix-corridors-screensaver-2.jpg