CM12 R2 Reports Fail with the Following Error:  Failed to load expression host assembly. Details: Could not load file or assembly 'SrsResources, Culture=neutral' or one of its dependencies. The system cannot find the file specified

I recently migrated from Windows 2012 with CM12 SP1 installed.  I took a backup of the SQL databases and was able to setup CM12 R2 on a new Windows 2012 R2 server without issue.

The original SQL version was 2012 SP1, and so is the new SQL Server now running on the CM12 R2 server.

CM12 R2 works fine with the exception of the Reports.  I can see all of the reports, but when I click on any report to execute it, I get the following error:

"Failed to load expression host assembly. Details: Could not load file or assembly 'SrsResources, Culture=neutral' or one of its dependencies. The system cannot find the file specified"

I removed the Report Point and added it back, double-checked permissions, etc. but nothing is making a difference.  Additionally, I have combed over tons of search results from plugging in the above error.  However, nothing seems to resolve the issue.  The full stack trace is listed below:

System.Web.Services.Protocols.SoapException: Failed to load expression host assembly. Details: Could not load file or assembly 'SrsResources, Culture=neutral' or one of its dependencies. The system cannot find the file specified.
   at Microsoft.ReportingServices.Library.ReportingService2005Impl.GetReportParameters(String Report, String HistoryID, Boolean ForRendering, ParameterValue[] Values, DataSourceCredentials[] Credentials, ParameterInfoCollection& Parameters)
   at Microsoft.ReportingServices.WebServer.ReportingService2005.GetReportParameters(String Report, String HistoryID, Boolean ForRendering, ParameterValue[] Values, DataSourceCredentials[] Credentials, ReportParameter[]& Parameters)

-------------------------------
Microsoft.ConfigurationManagement.ManagementProvider.SmsException
Failed to load expression host assembly. Details: Could not load file or assembly 'SrsResources, Culture=neutral' or one of its dependencies. The system cannot find the file specified.


Stack Trace:
   at Microsoft.ConfigurationManagement.AdminConsole.SrsReporting.ParameterPresenter.GetParameters()
   at Microsoft.ConfigurationManagement.AdminConsole.SrsReporting.ParameterPresenter.LoadParameters(IReport report, Collection`1 navigationParameters, IResultObject resultObject)
   at Microsoft.ConfigurationManagement.AdminConsole.SrsReporting.SubscriptionParametersControl.Worker_DoWork(Object sender, DoWorkEventArgs e)
   at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
   at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

-------------------------------

System.Web.Services.Protocols.SoapException
System.Web.Services.Protocols.SoapException: Failed to load expression host assembly. Details: Could not load file or assembly 'SrsResources, Culture=neutral' or one of its dependencies. The system cannot find the file specified.
   at Microsoft.ReportingServices.Library.ReportingService2005Impl.GetReportParameters(String Report, String HistoryID, Boolean ForRendering, ParameterValue[] Values, DataSourceCredentials[] Credentials, ParameterInfoCollection& Parameters)
   at Microsoft.ReportingServices.WebServer.ReportingService2005.GetReportParameters(String Report, String HistoryID, Boolean ForRendering, ParameterValue[] Values, DataSourceCredentials[] Credentials, ReportParameter[]& Parameters)


Stack Trace:
   at Microsoft.ConfigurationManagement.AdminConsole.SrsReporting.ParameterPresenter.GetParameters()
   at Microsoft.ConfigurationManagement.AdminConsole.SrsReporting.ParameterPresenter.LoadParameters(IReport report, Collection`1 navigationParameters, IResultObject resultObject)
   at Microsoft.ConfigurationManagement.AdminConsole.SrsReporting.SubscriptionParametersControl.Worker_DoWork(Object sender, DoWorkEventArgs e)
   at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
   at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

Any help on this one would be appreciated.  Since I migrated from SQL 2012 to SQL 2012, none of the "fixes" online seem to be applicable. 

Thanks!

October 31st, 2013 3:19pm

Go back to first principles.

What do you get when you browse to the reports and run one in your browser?

Http://localhost/reports

Open SQL Reporting Services Configuration Manager. Are there any errors?

Free Windows Admin Tool Kit Click here and download it now
October 31st, 2013 3:41pm

I see the reports as expected when accessing http://localhost/reports. Additionally, I see no errors when combing thru RSCM
October 31st, 2013 3:53pm

OK. You see the reports, but can you run a report in your browser and get meaningful results?
Free Windows Admin Tool Kit Click here and download it now
October 31st, 2013 3:56pm

Any errors in srsrp.log? Have you also installed the R2 console (it will be installed / upgraded automatically on the site server, but you might be running the console on a remote system).
October 31st, 2013 4:01pm

@Gerry: I get the error I posted when trying to run any report...from the website or the CM Admin console. @Torsten: I cannot find the srsrp.log anywhere on my system. Should I try to repair the installation thru Programs and Features? Thanks!
Free Windows Admin Tool Kit Click here and download it now
October 31st, 2013 4:07pm

If you can't run a report in the browser it's a SQL issue, not a Reporting Point issue. It might be easier to uninstall the RP, then uninstall SQL Reporting Services and re-install both.

October 31st, 2013 4:10pm

I have done that previously as well and the problem persists.  The below snippet of the stack trace is where I have been concentrating my efforts:

System.Web.Services.Protocols.SoapException
System.Web.Services.Protocols.SoapException: Failed to load expression host assembly. Details: Could not load file or assembly 'SrsResources, Culture=neutral' or one of its dependencies. The system cannot find the file specified.
   at Microsoft.ReportingServices.Library.ReportingService2005Impl.GetReportParameters(String Report, String HistoryID, Boolean ForRendering, ParameterValue[] Values, DataSourceCredentials[] Credentials, ParameterInfoCollection& Parameters)
   at Microsoft.ReportingServices.WebServer.ReportingService2005.GetReportParameters(String Report, String HistoryID, Boolean ForRendering, ParameterValue[] Values, DataSourceCredentials[] Credentials, ReportParameter[]& Parameters)

Why would it have ReportingService2005?

Thanks!

Free Windows Admin Tool Kit Click here and download it now
October 31st, 2013 4:22pm

Ignore ConfigMgr for now. This is a SQL issue and I believe it is a permission based problem.

Two options:

1. Launch SQL Reporting Configuration Manager and change service account to be Local System. Then restart the SQL services and test running your reports in a browser (there is no point in worrying about ConfigMgr until this works). 

2. Uninstall SQL Reporting Services through Programs & Feature in Control Panel. You must choose Microsoft SQL Server 2012 and continue through the wizard until you can choose the feature to uninstall.

DO NOT CHOOSE THE DATABASE ENGINE.

Just check Reporting Services.

Then re-install Reporting Services from the SQL media. This time I would configure using the Local System account.

Test running your reports in a browser (there is no point in worrying about ConfigMgr until this works). 

If you have ConfigMgr and SQL on the same server you should be then able to add the Reporting Point with no bother.

October 31st, 2013 4:47pm

I don't normally disagree with Gerry and Torsten but in this case I will, IMO this is a CM12 R2 problem. on you Reporting point server do you have the following dll?SrsResources.dll you should find it within the SMS_SRSRP directory.

Free Windows Admin Tool Kit Click here and download it now
October 31st, 2013 11:10pm

Hi Garth.

I do indeed have the SRSResources.dll file in the SMS_SRSP directory.

@Gerry:  Option #1 proved unsuccessful.  Option #2 had promise.  As soon as I reinstalled RS from the SQL 2012 SP1 disk, I got the following error when running reports:

The RIF document is not compatible with this code version. Document Version: 200 Code Version: 100 (rsIncompatibleRIFVersion).

A quick search yielded the following article, which said this was corrected in SQL 2012 SP1 CU 2:

http://social.msdn.microsoft.com/Forums/expression/en-US/943997ad-0197-4a7e-969b-a4b026b4a535/the-rif-document-is-not-compatible-with-this-code-version-document-version-200-code-version-100

I updated to CU6, which I believe is the latest.  The above error went away, but now I am back to my original error.

November 1st, 2013 1:52am

I tried placing the SRSResources.dll file in the bin directory for SQL Reporting Services and now get a different error:

The DefaultValue expression for the report parameter UserSIDs contains an error: Request for the permission of type 'System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.

I am going to stop working on this unless any of you have further suggestions.  I feel I may be making the situation worse :)

Free Windows Admin Tool Kit Click here and download it now
November 1st, 2013 2:32am

Is you SSRS server local or remote to SQL or CM12?

What are the file permission on the DLL?

November 1st, 2013 12:04pm

SSRS is on the same server as CM12 R2 and the permissions are the following:

IUSR:  Read & Execute

System:  Full Control

Administrators:  Full Control

Owner Rights:  Read and Execute

Free Windows Admin Tool Kit Click here and download it now
November 1st, 2013 12:40pm

srsrp.log has to be in the logs directory of ConfigMgr. What about srsrpsetup.log?
November 1st, 2013 12:45pm

No errors or anything of value in any of these logs/  However, I  can paste them in if anyone thinks it will be helpful.
Free Windows Admin Tool Kit Click here and download it now
November 1st, 2013 1:23pm

Is your SSRS on it own instance?

What service account are you using? local system or User account?

November 4th, 2013 12:44am

SSRS is on its own instance and running as the "default account" when I reinstalled per Gerry's suggestion.  NT\ReportServer I believe.  Thanks for your continued assistance!
Free Windows Admin Tool Kit Click here and download it now
November 4th, 2013 8:11pm

I worked on this for more hours than I care to claim, but have the solution.  First, here are more details surrounding my case:

1.  SCCM 2012 R2 running on Windows 2012 R2 with SQL 2012 SP1 Standard Edition

2.  This was a migration to from SCCM 2012 SP1 on a Windows 2012 server with SQL 2012 RTM

I tried all the above suggestions and none did the trick, including upgrading SQL to the latest CU which at the time of this writing is CU6.  I finally decided I would Delete the ReportServer & ReportServerTemp Databases from SQL and have them recreated by Report Server Configuration Manager.

When reinstalling the Reporting Services Point in SCCM, I did so using the Windows Server Administrator account.  Previous attempts using the service account and the server machine name failed.  I also made sure I used the local server admin account as the Reporting Services Point Account.

After the Reporting Service Point was reinstalled in SCCM, I checked all of the "SRS" related logs in the C:\Program Files\Microsoft Configuration Manager\Logs directory.  No errors were anywhere.  Also, I could see the reports were being added to the ReportServer Database.

After performing the steps above opened IE and went to http://sccm/reports.  The site was missing the "ConfigMgr_XXX".  At this point I knew I had some sort of permission based error.

I opened SQL Manager and checked the permissions of ReportServer, which is the default account used for Report Server when you perform a default install.  It did not have the sysadmin permission associated with its login.  I gave it that permission. 

Finally, I checked the http://sccm/reports site and every report appeared and ran successfully!  To sum it up, I recommend doing the following in order:

1.  Remove the Reporting Service Point from SCCM

2.  Delete C:\Program Files\SMS_SRSRP

3.  Delete the ReportServer and ReportServerTMP Databases thru SQL Management Studio

4.  Make Sure "NT Service\ReportServer" has sysadmin and public as Service Roles under the Logins Folder. 

5.  Open Report Server Configuration Manager and recreate the Report Services Databases.  Make sure you are using the "ReportServer" builtin account  under the Server Account section.

6.  Reinstall the Report Server Point in SCCM using the Window Server's builtin Administrator account.  Use this account in both sections of the wizard.

7.  Check all of the "SRS" related logs in the C:\Program Files\Microsoft Configuration Manager\Logs directory. Make sure there are no errors.

8.  Check the http://sccm/reports and SCCM console to make sure the reports appear.  They should be there at this point.

  • Marked as answer by JPowell5050 Wednesday, November 13, 2013 5:35 PM
November 13th, 2013 5:35pm

This fix looks promising:

http://ronnydejong.com/2013/05/23/reporting-service-point-rsp-broken-after-upgrading-sql-server-2012-sp1-sysctr/

Anyway, recommended way is mentioned below the article: reinstall Reporting Service Point (RSP) role.

Free Windows Admin Tool Kit Click here and download it now
April 24th, 2015 5:02am

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics