SSRS 2005 复制报告、数据模型等

SSRS 2005 复制报告、数据模型等

有人知道我如何复制某人创建的用户报告(和模型)以指向另一个数据库(相同模式)。

我真的不想重新创建数据模型,因为(a)它真的很复杂,而且(b)之前的开发人员添加了很多友好的列名。

答案1

如果您有原始 RDL/SMDL 文件,复制报告非常容易;只需重新部署/上传,然后更改其名称/位置/数据源。

如果您没有原始 RDL/SMDL 文件,则需要从报告服务器中提取这些文件并重新部署。最简单的方法是通过脚本rs.exe

下面介绍如何将报告从一台服务器复制到另一台服务器,但将报告等复制到同一台服务器时也适用相同的原则(从http://msdn.microsoft.com/en-us/library/ms159720.aspx):

您可以编写脚本来复制另一个报表服务器实例上的报表服务器环境。部署脚本通常用 Visual Basic 编写,然后使用报表服务器脚本宿主实用程序进行处理。以下列表描述了将报表从一台服务器迁移到另一台服务器的步骤。

  1. 将脚本变量设置为源报表服务器的 URL。
  2. 使用 GetReportDefinition 和 GetProperties 方法来检索报表定义和报表的属性。
  3. 设置 URL 以指向目标服务器。
  4. 使用 CreateReport 方法,传递 GetProperties 返回的属性和 GetReportDefinition 返回的报表定义。

复制报告后,您可以更改报告和模型的数据源(假设您尚未通过 RSS 脚本以编程方式完成此操作):

  • 在报告管理器中,单击工具栏中的“显示详细信息”
  • 浏览到包含您想要更改的对象(报告或模型)的文件夹
  • 单击其属性
  • 在数据源页面中,更改数据源详细信息以指向新数据库(如果需要,也更改凭据)

如果他们使用共享数据源,则更容易保持原样并更改其引用的服务器,而无需触及报告和模型,因此将上面的第二点更改为“查找他们引用的共享数据源”

答案2

我写了一个工具来做同样的事情。也许它也能帮到你。

看一眼: http://code.google.com/p/reportsync/

相关内容