Tuesday, June 19, 2012

CRM 2011 Install Errors - Tips and Tricks continued

The more I get to install/upgrade to CRM 2011 in different environment the more I come across different issues and fortunately there are workarounds to it. So here are some additional items found since the last post on this subject.

A Microsoft Dynamics CRM Server component is using the same account as the instance of SQL Server Reporting Services

You receive the above error when installing SSRS Data connector. I had never seen this before. But this was a system on which there was a previous install of CRM 2011 Async service (A distributed install). The Reporting Service was running under Network Service Account. Changing it to another domain user account did not fix this issue.

This issue has been explained in detail in this KB article http://support.microsoft.com/kb/974584. Though this KB has been targetted for CRM 4, the following section of the resolution worked in this particular case

Add the IgnoreChecks registry key to the computer that is running Microsoft Dynamics CRM so the installation can proceed when an error is shown in the Environmental Diagnostic Wizard (EDW):
  1. Click Start, click Run, type regedit, and then click OK.
  2. In the registry, locate the following subkey:
  3. Right-click MSCRM, point to New, click DWORD Value, and then type IgnoreChecks.
  4. Double-click IgnoreChecks, and then type 1 in the Value data field.
After this change is made, the Environmental Diagnostic Wizard will still point the same error. But notice the Next button is now enabled :) Go ahead click Next and complete the install.

After successful installation remove the key added to the registry.

Index was outside the bounds of the array.

I came across this while trying to fix the one above :) The one above complained about same service account being used, so I tried to fix it by using a Domain user account. Instead of typing the user name, I chose to use the lookup button to seach the user from the AD. Selecting the user set the service user name in the form of user@domain.com.

Change the service account back to domain\user and this error will vanish.

Action Microsoft.Crm.Setup.Server.GrantConfigDBDatabaseAction failed.
Windows NT user or group 'NTDomain\SQLAccessGroup{xxx} not found.

If you see this error during an install or upgrade and if you are using SQL Server on another machine, you are connected to the SQL Server machine through an RDP session. Log off. Restart the install and it will proceed without any error :)

The transaction log for database 'ORG_MSCRM' is full due to 'ACTIVE_TRANSACTION'.

Do not try to check the transaction log size for this. Most probably all is good there. The first thing to check is free disk space on the drive on which the ORG_MSCRM database and log file resides. You are probably running out of space there. Make some space and you are ready to go. Check this

Installation of Microsoft Visual C++ Runtime failed. Exit code: 5100. Result: Asia

Setup will not run on a machine that has Visual C++ 2010 with version 10.0.40219 install. This system had SQL 2012 installed that probably installed this higher version. CRM Setup requires an older version to continue. Go ahead and uninstall the VC++ redistributable on this machine and let CRM install the required components including Visual C++

As usual, the above solutions have worked in our scenario and you can give them a try at your own risk

Monday, June 11, 2012

How to Debug Plugins using Profiler

One can debug CRM plug ins without connecting to CRM server or without remote debugging.

Here are the steps as in how you can use Profiler for debugging plug ins:
   1>     Connect to CRM using plugin registration tool of March SDK 2012.

   2>      Click on Install Profiler

   3>     You will find a new node attached to registered plugins “Plugin Profiler”.

   4>     Select a plug-in step and click Profile to enable profiling.

5>     Then start your plugin from MSCRM i.e if your plugin is on update perform  update operation and download the error file.
6>     Then in Visual Studio attach to process “plugin registeration.exe”. Add the breakpoint  from where you would like to debug.

7>     Then click on Debug in plugin registration tool.

8>     In Profile location provide the path of the error log of the plugin.

9>     In Assembly location provide the dll of the plugin from which you got error.

10>     Then select the Plugin class from Plug-in. This drop down will contains all classes present in the dll.

11>     To start debugging just click on Start Plug-in Execution.