如何使用ReportService2010命名空间呈现报表

时间:2010-10-11 23:14:09

标签: asp.net reporting-services sql-server-2008-r2

我正在开展一个项目,我们将与SQL Server 2008 R2下的ReportService2010报告Web服务进行交互。在过去,我使用过ReportService2005.asmx,我的问题是,我找不到任何关于如何使用这个新的(2010)报告Web服务呈现报告的合理示例。

使用2005 Web服务时,使用wsdl.exe实用程序创建代理时提供了“Render”方法。是否有一个等效的方法(或一组方法),使用ReportService2010服务完成相同的事情?或者是否存在端到端初始化和调用新代理的正确例子?

即使MSDN没有太多信息,在ReportService2010 API文档的某些部分中,仍有旧的代码片段仅适用于2005年的Web服务。

更新:一个更好的问题可能是SSRS 2008和SSRS 2008 R2之间如何以编程方式调用报表服务......我可以看到,即使在SSRS 2008 R2下,仍然存在ReportService2005 .asmx,以及ReportExecution2005.asmx,但没有相应的ReportExecution2010.asmx。

叹息

解决方案更新:
在与我公司的某人交谈后,我被告知以下内容:

  1. 引入了2006年的Web服务,以支持2008年的sharepoint集成。
  2. 引入了ReportService2010 Web服务,将2006年引入的所有功能与2005年Web服务合并。
  3. ReportService2005 Web服务将继续用于报告执行。我不知道为什么,但有些东西告诉我它与业务决策有关,以实现向后兼容性。我的同事表示我们打算继续使用ReportExecution2005进行渲染,并使用ReportService2010进行所有其他功能(查询SSRS服务器以获取报告,参数等)。
  4. 不幸的是,所有上述信息都是从各种链接中挑选出来的,其中没有一个链接简明扼要地陈述了上述所有内容。您通常会假设供应商向客户开发人员解释这种情况。

1 个答案:

答案 0 :(得分:14)

SQL Report Server提供3个不同的端点。

ReportService2010:提供用于管理为本机或SharePoint集成模式配置的报表服务器的API。 ReportExecution2005:提供用于运行和导航报告的API。 ReportServiceAuthentication:在为表单身份验证配置SharePoint Web应用程序时,提供用于针对报表服务器对用户进行身份验证的API。

因此,为了呈现报告,您必须使用此ReportExecution2005。

这里说的是我上面粘贴的内容:http://www.blograndom.com/blog/2011/03/reportservice2010-asmx-is-not-the-only-end-point/

在这里你可以找到一个例子(虽然它有一些错误)开始 http://blogs.msdn.com/b/christophputz/archive/2010/05/07/accessing-ms-reporting-services-with-java.aspx

祝你好运!!