Migrate SSRS Report from MS2011 TO Dynamics 365

2 MIN READ

Here we are trying to migrate reports from MS CRM 2011 Onprem to MS CRM D365. This will also help you for below error or if you are migrating reports from older version to newer version.

When trying to compile a FetchXML-based report in Visual Studio 2015 which had been developed in an earlier version of Visual Studio, we encountered this error:

Building the ReportName.rdl file for SQL Server 2008 R2, 2012 or 2014 Reporting Services.

[rsErrorLoadingCodeModule] Error while loading code module: ‘Microsoft.Crm.Reporting.RdlHelper, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35’.
Details: Could not load file or assembly ‘Microsoft.Crm.Reporting.RdlHelper, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35’ or one of its dependencies. The system has not found the file specified.
[rsCompilerErrorInExpression] The Language expression for the textrun ‘Table0_Details0.Paragraphs[0].TextRuns[0]’ contains an error: [BC30456] ‘Crm’ is not a member of ‘Microsoft’.

Migrate SSRS Report from MS2011 TO Dynamics 365

PREREQUISITE

I am mentioning this vital step because before proceeding to further steps this needs to be done.

We had already installed the CRM Report Authoring Extension for Microsoft Dynamics CRM 2015, but this helper dll was not being picked up by Visual Studio.

We were able to locate the dll on the SSRS Server of our CRM development environment. To find this file in our case, we used this command:

C:\Users\freedom\New folder\PFiles\MSCRM\BidsExtensions

CRM Report Authoring Extension for Microsoft Dynamics CRM 

but it may be elsewhere for different versions of SQL or CRM. So if you are not able to find it then you can search for Microsoft.Crm.Reporting.RdlHelper in your machine.

NOTE: GO TO FOLDER WHERE WE HAD INSTALLED BIDS EXTENSIONS.

We need to registered it in the GAC (Global Assembly Cache) on these machines. This is done by running the gacutil.exe utility. In some cases, this might be available from a normal command prompt, but we found we had to access it by running the Visual Studio 2015 ‘Developer Command Prompt for VS2015’.

On Windows 10, you can access this from the start menu like this – You need to run the programme as an Administrator, so find the programme and then Right-Click to Run As Administrator:

Run the programme as an Administrator

With the new window open, navigate to the folder where the dll is and run the command gacutil -i Microsoft.Crm.Reporting.RdlHelper.dll

Administrator developer command prompt
STEPS TO RESOLVE THIS ISSUE:

If you are compiling a report in Visual Studio and it is giving the error above, you might need to point the report to correct version of the RdlHelper.dll

Open the report in Visual Studio. select Report -> Report Properties from the menu. (This option is only available if the report is open and you have selected an element on the report designer/previewer.)

Now go to References Tab and browse to the correct version of the assembly in the BidExtensions folder, even if the RdlHelper is listed, it may be that this is the wrong version…

Earlier its version was 7.0.0.0 so we need to update it to 9.0.0.0 in my case.

In our case it was located here:  C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.Crm.Reporting.RdlHelper\v4.0_9.0.0.0__31bf3856ad364e35

Set refrences to assemblies and classes

Exact location of helper will depend the version of the helper which you have installed. If you found any existing references (which are not necessary or may be different version of the dll) remove them.