Sunday, April 13, 2008

Install and Delete MS CRM organization from deployment manager

I have been doing a lot of customizations for my clients Microsoft CRM packages version 4 has made it so much easier to manage all those different packages. I have Server 2003 (with Active Directory as my own domain) and the enterprise edition installed and the deployment manager allows me to have any number of organizations installed at one time - compared with version 3 which forced me to use a different VM for each customer which was slow and disk hungry.

For one client however, I needed two copies running at one time (for testing and development purposes) with each one installed as its own organization. The process was very simple. The client created a backup of their CRM4 version from their server and I restored it on my laptop. Then using the deployment manger, you can Import that DB as a new CRM organization. During this process it will ask you where your SSRS is located so be prepared for that. For development of reports, I created a separate virtual folder in SSRS for that client so that I never overlap my customer customizations.

During this process, it will re-assign ownership of all the records because of the way Active Directory works; the GUID's of CRM users in their domain would be different from users in my laptop's domain. For my purposes, I just let the system assign them all to my admin account. This whole reassignment process can take a while to run if you have a large database.

When I was done, I decided that I wanted to delete the extra organization, but there wasn't any evidence of an organization Delete function in deployment manager, just a Disable link. After a bit of poking around, I discovered that you must first Disable the organization, then you will get the options to either re-enable it or delete it. When you choose to delete, it will _not_ delete the database; you can do this on your own.

1 comment:

Patrick B said...

Thank you!

This is the only reference I have been able to find that talks about using multi-tenancy to set up development and test environments for a single client. While I will probably need to do a lot more before I figure it all out, at least now I know it can be done.