CRM 2011 UR 18问题 - 无法呈现报告

时间:2015-04-06 15:42:58

标签: reporting-services dynamics-crm-2011

尝试显示特定报告时出现此错误(在Application EventLog中):

异常消息:基类包含字段' reportViewer',但其类型(Microsoft.Reporting.WebForms.ReportViewer)与控件类型不兼容(Microsoft.Reporting.WebForms.ReportViewer)

我们在CRM的web.config中有这个:



    <httpHandlers>
      <add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate="false" />
    </httpHandlers>
...
      <add assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
&#13;
&#13;
&#13;

我们在某些机器上看到了错误,但其他机器却没有。

此CRM计算机已安装Microsoft Report Viewer 2010 Redistributable Package。正如我在标题中所提到的,我们有CRM 2011,UR 18。

我们需要在此处安装不同版本的报告视图吗?

1 个答案:

答案 0 :(得分:0)

我们能够解决这个问题。我们必须将Microsoft Report Viewer 2012 Runtime安装到CRM Web服务器https://www.microsoft.com/en-us/download/details.aspx?id=35747上。

Microsoft修改了v2012的PublicKeyToken(版本11.0.0.0),因此生成的web.config编辑也不仅仅是版本更改。

结果正确的CRMWeb web.config(适用于CRM 2011)是:

 <httpHandlers>
  <add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" validate="false" />
</httpHandlers>
<compilation defaultLanguage="C#" debug="false">
  <assemblies>
    <add assembly="Microsoft.Crm, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    <add assembly="Microsoft.Crm.Sdk, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    <add assembly="Microsoft.Crm.Platform.Sdk, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    <add assembly="Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
    <add assembly="Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  </assemblies>
</compilation>