Tuesday, 15 May 2012

Dynamics CRM 2011 upgrade and Outlook client re-deployment

Post revised on: 16/06/2012
Consider the following scenario:
You upgrading your company CRM 4 to CRM 2011 and the CIO has the following requirements:
  1. Minimum down-time possible
  2. Need to sign-off the new CRM 2011 environment/functionality
  3. Easy roll back process
  4. Minimum CRM Outlook Client disruption
Available upgrade options:
  1. In-place upgrade  (upgrade existing CRM 4 servers and database on-the-fly)
  2. Install CRM 2011 on new servers and upgrade existing database (Only changes the database, easier to roll back)
  3. Install new CRM 2011 and new database. Import CRM 4 database into the new CRM 2011 environment.

You need to consider the upgrade method that will minimise down-time and keep all Outlook clients connected.

Upgrade options minimise downtime
Option 1 and 2
These two options are not the most recommended approach when down-time needs to be kept to a minimum::
  • Option 1 
    • If issues encountered full re-install of CRM 4 is needed
    • Full database restore
    • No option for staging environment
  • Option 2 
    • Easier to roll-back no need to full re-install if you install CRM 2011 on different servers
    • Full database restore
    • staging environment only for servers, for roll-back you woudl still need a full restore

Option 3
This option is the most flexible and the less prone for errors. You install CRM 2011
  1. Keeps down-time to minimum option for full staging environment
  2. More flexibility with databases
    1. If during import you find an error, you can fix it on the CRM 4 environment, backup and restore again the database and re-try the import once again.
  3. Easiest approach even when you can't afford new servers, less prone for errors.
    1. You do a clean CRM 2011 install and can set up a vanilla environment to confirm all is working as it should.

Outlook Client re-deployment

To avoid re-configuring or upgrade all Outlook clients, you need to keep two important keys:
  1. User ID
  2. Organization ID
To maintain those keys on the new CRM 2011 database, you need to make sure while importing the new database you select Keep Existing User Mappings. This will keep all mappings the same and will allow old CRM 4 clients to connect to the new CRM 2011 environment.

Note: The fist time users open Outlook they will get a 404 error on the entities menus for the first minute while CRM loads the new settings. The client loads the new folder structure accessing a specific URL which loads the settings and the menus will then start working.

However if you are in a situation which the user mappings are correct but the organization ID has changed, you just need to update the registry key OrgID on the users local computer with the new Orgnization OrgID. This will enable the outlook clients to re-connect successfully.  The Organization Id is stored on the MSCRM_CONFIG database Organization table.

Create/add the following lines to the existing logon script:

reg delete HKEY_CURRENT_USER\Software\Microsoft\MSCRMClient /v orgId /f 

reg add HKEY_CURRENT_USER\Software\Microsoft\MSCRMClient /v OrgId /t REG_SZ /d "{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx}" /f 

Note: The Outlook client will still need to be upgraded if you want to make use of all CRM 2011 features.

  • To keep Outlook clients connected to thew new CRM 2011 environment keep the existing user mappings during the database upgrade
  • If you have available infrastructure the best approach is Option 3, more flexibility and less prone for errors.
Hope it helped