如何将许多报告部署到许多SSRS服务器

tau*_*dev 3 deployment reporting-services

有人知道有一种工具可以让我将许多RDL文件部署到许多SSRS服务器吗?

多达50个报告发送给20多个服务器。每个ssrs服务器都具有相同的结构。

谢谢你的帮助

汉斯

Séb*_*rin 5

好消息,有几种方法可以做到,这是从低级到高级的列表:

创建使用SSRS Web服务的自定义应用程序

您可以使用Reporting Services Web服务执行此任务,除非您有其他方法无法满足的特定需求,否则我不建议您使用它。
原因是这将花费一些时间,并且不需要重新发明轮子。

有2种Web服务可用,用于管理Report Server项,根据Reporting Service实例,您将需要ReportingService2010ReportingService2005

有关如何使用这些Web服务的更多详细信息,请参见此处


手动脚本

您可以编写脚本(.rss)并使用RS.exe导入它们。
该工具基于前面提到的Web服务。

rs.exe实用程序处理您在输入文件中提供的脚本。使用此实用程序可以自动执行报表服务器部署和管理任务。

请注意,SQL Server 2008 R2 +支持Sharepoint模式。

这是一篇MSDN文章,解释了该文章,它提供了更多详细信息:
示例Reporting Services rs.exe脚本,用于在报表服务器之间迁移内容


使用工具生成脚本

这是我的最爱,已经从服务器A编写了一些脚本脚本项目并将其还原到服务器B,其中之一就是RSScripter
您可以在此处找到有关如何使用它的教程。

RS.exe在内部使用,使用GUI的步骤是:

  1. 启动RSScripter可执行文件
  2. 在选项中配置SSRS实例
  3. 单击“获取目录”以显示实例的所有项目
  4. 选择要编写脚本的项目(报告,数据源,策略等)
  5. 单击“脚本”,这将生成一个包含所选资源(rdl,rss等)的文件夹和一个批处理文件
  6. 使用您的新实例详细信息编辑批处理文件
  7. 如果适用,请将目录移动到可访问服务器的位置
  8. 运行批处理文件,然后等待完成。如果您有很多报告,则可能需要一些时间,您可以在日志文件中查看进度。

还有Microsoft 的Reporting Service迁移工具,它似乎还具有一些其他功能,但我从未测试过。