Microsoft released a custom code validation tool (http://www.microsoft.com/en-us/download/details.aspx?id=30151) that can be used to identify some scripts which may no longer work or cause errors after the upgrade. It categorizes these scripts based on if they are expected to have issues in Internet Explorer (as well as the other browsers) or if they are expected to continue to function properly in Internet Explorer, but may not for the other supported browsers.
However, this tool should not be used to replace standard testing practices as it may not identify all code in your organization that will stop working.
Some common code that I've found it does not properly identify:
- Calling a fields on change event using crmForm.all.field.FireOnChange() - The tool identifies this code as expected to continue working in Internet Explorer. Our testing confirms this will no longer work in Internet Explorer.
- Checking the value of a field or calculating fields using crmForm.all.field.DataValue - The tool identifies this as expected to continue working in Internet Explorer. Our testing confirms that this will not execute properly in Internet Explorer for some organizations.
The best way to ensure a smooth upgrade is to import your customizations to a CRM 2011 test organization with UR12 installed and test each custom script. When testing, you should have a good understanding of how the script is meant to function as there may not be an obvious error for those that are no longer working.
If you have concerns about upgrading your organization or are looking for assistance on updating your scripts, please reach out to us. We've successfully updated scripts for several organizations and can help ensure that yours makes a smooth transition and remains functional after upgrading to CRM 2011 UR12.