【问题标题】:Crystal Report doesnt display in ASP.net webpage which is build by using VS 2013Crystal Report 不显示在使用 VS 2013 构建的 ASP.net 网页中
【发布时间】:2014-11-05 09:42:55
【问题描述】:

我正在使用 ASP.NET 开发一个网站,我想在我的网络表单中显示一个报告。我使用水晶报表作为我的报告工具。我使用 Visual Studio 2013 作为我的 IDE。这是我尝试过的。 (我的 SAP 版本是 13.0.9)。

private void loadReport()
    {
        ReportDocument rpt = new ReportDocument();
        rpt.Load("D:\\Report_Test.rpt");
        rpt.VerifyDatabase();

        CrystalReportViewer1.ReportSource = rpt;

    }

上面的代码在 Visual Studio 2010 上运行良好,但在 2013 年却不行。当我加载页面时它是空的。不抛出任何错误。 那么,如何使用 Visual Studio 2013 查看 Crystal Report 呢?

【问题讨论】:

  • 我也有同样的问题。仍在寻找解决方案。
  • 您是否安装了适用于 Visual Studio 的 Crystal Report Developer?除非您安装它,否则您将无法在 VS 中查看/编辑 CR 报告。

标签: c# asp.net crystal-reports


【解决方案1】:

首先要检查的是报表查看器客户端文件是否可用,我怀疑这是您的问题(您可能会发现它默默地抛出了一个 javascript 错误!)。在 IIS 中它应该已经创建了一个虚拟目录,如果 IIS express,那么你需要手动移动查看器需要的文件,以下应该可以工作:

在应用程序的根目录中创建一个名为 crystalreportviewers13 的文件夹,将文件夹 C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\Crystal Reports 2011\crystalreportviewers 的内容复制到该文件夹​​中文件夹(源路径在不同的机器上似乎有所不同)。

将此添加到 web.config 的配置部分

<configSections>
<sectionGroup name="businessObjects">
  <sectionGroup name="crystalReports">
    <section name="rptBuildProvider" type="CrystalDecisions.Shared.RptBuildProviderHandler, CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304, Custom=null" />
    <section name="crystalReportViewer" type="System.Configuration.NameValueSectionHandler" />
  </sectionGroup>
</sectionGroup>

然后将其添加到 web.config 的配置部分

<businessObjects>
<crystalReports>
  <rptBuildProvider>
    <add embedRptInResource="true" />
  </rptBuildProvider>
  <crystalReportViewer>
    <add key="ResourceUri" value="/crystalreportviewers13" />
   </crystalReportViewer>
</crystalReports>
</businessObjects>

它应该可以工作....

我会先从http://scn.sap.com/docs/DOC-7824这里下载最新版本

如果仍然没有显示,请检查您的 web.config 是否指向正确的版本。如果您仍然遇到问题,请检查您的 HTML 声明中的文档类型 - 我记得它不适用于 HTML5。

编辑:

在 Crystal 的早期版本中,我上面提到的那个文件夹会自动复制到 c:\inetpub\wwwroot\aspnet_client\system_web\4_0_30319 - 如果您将整个 aspnet_client 复制到解决问题的应用程序的根目录中 - 在后面水晶的版本我相信如果您在安装时没有运行 IIS,它无论如何都不会创建该文件夹。

【讨论】:

  • 我不知道问这个问题的人得到了答案。我有同样的问题,这对我有用。非常感谢吉姆。
  • 非常感谢。我遇到了这个问题并尝试了很多方法来解决它,但我做不到。只是你的回答帮助了我......谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-26
  • 1970-01-01
相关资源
最近更新 更多