0

我们的内部网络上有一个 SSRS 报告服务器 2008(不是 R2),它具有我们希望 Internet 上的用户能够运行的报告(和数据)。我们创建了一个 vb.net Web 应用程序,用户将登录并从中运行报告。该应用程序在我们的 DMZ 中运行,并通过一个开放端口连接到 SQL Server 数据库(与 SSRS 在同一台服务器上运行)。

我怀疑我们必须使用 SSRS Web 服务来访问报告,因为 url 访问需要向外部打开 SQL 报告服务器(我们不想这样做)。正确的?

我在 Web 应用程序中创建了一个页面,可以将 SSRS 报告呈现到文件中,但我想在网页上向用户显示报告(并且仍然提供保存报告的能力)。我需要做什么?我可以在报表查看器或其他控件中显示渲染命令的结果吗?

指向示例的指针会很棒。

谢谢

4

1 回答 1

1

您正在寻找ReportViewer Controls,特别是 Web 版本(还有一个 WinForms 版本):

  • 如果您将其合并到您的 Web 应用程序中,您将获得一个可以放置在任何页面上的控件;
  • 该控件可以从 Web 服务器连接到您的 SQL 后端,因此您不必将您的 SQL 后端暴露给其他任何人;
  • 默认情况下,控件在浏览器中呈现(使用 html 呈现器),为用户提供了很好的预览。
  • 该控件带有一个漂亮的工具栏,允许导航、搜索、打印以及导出(即保存)为各种格式。

查看Microsoft Report Viewer 2010 Redistributable Package 的下载链接,其中包含 Web 和 WinForms 控件。

PS。直接向世界开放 SSRS Web 服务并不是您通常想要做的事情。Web 服务非常适合与您自己的应用程序进行安全通信,并为您提供一些更细粒度的控制(正如您所指出的,通过创建一个页面来导出/呈现报告)。但是,对于为站点提供报告,我建议使用 ReportViewer。

于 2013-01-29T20:48:35.480 回答