Recently we tried to upgrade a highly customized CRM 4 install to CRM 2011 and thought it would be worthwhile to list out our findings for the benefit for all.
CRM 2011 supports both in-place upgrade as well as a fresh CRM 2011 install with a later CRM 4.0 organization import into CRM 2011. We attempted the second way, that a fresh install of CRM 2011 and then tried to import the customized organization of CRM 4.0.
If you install the CRM 2011 beta copy and try the import you will receive the following error.
…lead.Address1 Country length 160 more than original value 100…
This appears to be a bug of the beta version that is probably rectified in the CRM 2011 RC released recently.
After a successful install, you can try to import the CRM 4.0 organization, it auto detects that it is an upgrade and would performs all the necessary operations on the database. Make sure you have another backup of the CRM 4.0 in case the upgrade fails mid-way you will need to go back and restore the original copy and start over again.
After a successful upgrade we found the following items we auto-upgraded to CRM 2011 standards by the upgrade tool.
Scripts:
All the scripts written on form save, load and Change will be automatically converted into web Resource and saved as Library with the name Entityname_main .see the display name below.
Select any Web Resource it looks as shown below.
On click of Form properties for any entity you will find that library is already added on the form and it is called on load event with function name.
The code written on the Load event would be put into a function named Form_onload. The OnSave event is changed to function named Form_onsave and Onchange becomes
Attributename_onchange.
Images:
All the Images used in the Custom entities will be saved as Web resource.
ISV buttons:
Any script written on custom button added through ISV in CRM will be converted to Application Ribbons. Buttons of CRM 4.0 are moved to Ribbons in CRM 2011 as shown below.
Plugins:
Plug-in registered in the CRM for entities will be saved as Plug –In Assemblies and Sdk Message Processing
Plug –In Assemblies shows Name ,Version, Culture Public Key Token and the date on which it was created and last modified date.
Sdk Message Processing shows Message, Event Handler, object type code ,Stage and Status
Workflow:
The Workflows would be auto-upgraded as Processes in CRM 2011 as can be seen from the screenshot below
Form Layout
The form layout is carried over as is during the upgrade from CRM 4.0 to CRM 2011. We however found a conflicts tab added to a couple of forms but were unable to trace the controls placed in this section to any of the controls in the original CRM 4 form.
There are sure to be many more items that were upgraded behind the scenes and we will update the list in times to come. However this is a pretty good reference point to start with for a CRM 4 to 2011 upgrade.