Upgrading Microsoft CRM v4 to CRM 2011 – the basics

Upgrading Microsoft CRM v4 to CRM 2011 – the basics …

There a few blogs on this but I am going to try and simplify it for the general person. I am going to focus on the following topics:

  • High level software requirements
  • Upgrade scenarios
  • Upgrade methods
  • Upgrade options by scenario and recommended approach
  • What happens to your customisations during the migration and what might go wrong

High Level Software Requirements

Basically the following minimum software requirements are required for CRM 2011:

  • Windows Server 2008 SP2 or R2 x64
  • SQL Server 2008 SP1 x64
  • Outlook Client v4 update release 7 and above for backward compatibility with CRM 2011

Upgrade Scenarios

 The following will be the most common scenarios for upgrading:

  • Currently installed Version 3 and what to upgrade to CRM 2011
  • On Premise Version 4 to CRM 2011 on premise
  •  Microsoft Online Version 4 to CRM 2011 Online
  •  On premise Version 4 to Microsoft Online 2011

Upgrade Supported Methods

The following methods for upgrading are supported by CRM 2011:

  • Microsoft Version 4 Online to CRM 2011 Online – This will be managed by Microsoft via a scheduled slot within a year from the launch of CRM 2011. Responsibility of the Customer to schedule slot for upgrade to occur.
  • In Place Upgrade – an in place upgrade means that your existing environment meets all minimum software requirements and that no new servers will be deployed for the upgrade. An In place upgrade is applied directly to your windows server v4 and sql server version 4 servers and applies the upgrade for the default organisation only. This approach provides no fall back option other than restoring your old environment and may therefore see downtime while any testing of the new environment is occurring. My view is that this approach while removes need for more infrastructure or VM sessions is most risky to a business and may see downtime for the end user.
  • Connect to Existing Upgrade – This approach requires you to set-up a new windows server 2008 for server deployment of CRM2011 while connecting to the same instance of SQL that your CRM 4 version is installed. This approach requires you to disable your V4 server but allows for roll back to V4 if the upgrade fails for any reason. This approach will only upgrade the default organisation while disabling any other if you have multiple in your environment. My view on approach is that this is less risky but still may see downtime for end users.
  • Migration Upgrade – This process requires you to create a new windows server environment for CRM 2011 and a new SQL instance for the CRM 2011 database. Once the CRM 2011 environment is set-up you can then use the deployment managers import organisation process to upgrade your existing Version 4 organisation. In my opinion this is my recommended approach as there is no impact on end users during the upgrade and provides for a clean separate test environment and staged roll out.

In all cases multiple organisations can be imported into the CRM 2011 deployment management on a one by one basis.

Upgrade options by Scenario

The migration options are as follows:

Upgrade Matrix








What happens to your customisations and what might go wrong?

So you want to migrate so what happens to your customisation during the migration:

  • All custom entities are created as an unmanaged solution
  • Form layout is replicated in new entity
  • All JavaScripts are converted to new format and are created as web resource libraries per entity with a function per event i.e. onload, OnSave and then field based onChange named Entityname_main
  • Function calls are referenced in imported entities per previous configuration i.e. if onload code then onload function will be called
  • All custom images loaded as web resources
  • ISV buttons will be converted to ribbon
  • Plug-ins will be migrated as Plug-in assemblies and SDK message processing
  • Workflows updated to processes
  • Reports depending on original SQL server should come across with upgrade

But what might cause something to go wrong:

  • Unsupported JavaScript’s may cause issues in the upgrade. These should be removed before upgrade.
  • Unsupported Plugins should be removed.
  • Conversion of supported JavaScripts to new format may cause unexpected errors, if extensive JavaScript is used a review of the layout and conversion should be done as function based libraries may have impacted construct.
  • If you have more than 1023 attributes defined for an entity, you must delete the additional attributes before you run the upgrade.
  • If you have added custom database objects such as triggers, statistics, stored procedures, and certain indexes, that you remove from the configuration and organization databases before upgrade. In many cases, Microsoft Dynamics CRM Server Setup displays a warning when these objects are detected.
  • If you have manually added the ignorechecks registry subkey on the Microsoft Dynamics CRM Server 2011 remove it before you start the upgrade.