使用 rs.exe 发布报表时出错



使用报告脚本工具从命令行发布报告时出现以下错误:

System.Web.Services.Protocols.SoapException:这个的定义 此版本的报告无效或不支持报告 服务业。报表定义可能是使用更高版本创建的 版本,或包含非 格式正确或基于报告服务架构无效

关于此错误还有其他问题,解决方案似乎始终是安装SQL Server 2016或将我的报表项目更改为 2014 年的输出。 事实上,这确实有效,但不应该是必需的。 我的SQL Server版本是 13.0.4446.0 ,这是 2016 年。 此外,我可以在 VS 中发布得很好,并将其设置为 2016。

有人知道是什么原因造成的吗?

可以尝试的几件事:

  1. 您使用的是哪个版本的 VS?我遇到了一个问题,我会在VS 2015中打开一个解决方案(我认为),它升级了报表定义而不告诉我。在 VS 中选择部署目标时,它会动态更改文件,而不是解决方案中的源文件。因此,您看到的结果不同。
  2. 可以通过从 SSRS 下载报告并在文本编辑器中打开 RDL 来检查这一点。与您的解决方案 RDL 进行比较并检查标头。顶部的架构是您要比较的内容:

    Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"

  3. 另一种选择:您是否尝试过使用 PowerShell 进行部署?查看 SSRS GitHub 以获取命令,但它将是 2 行,也许是 3 行代码。非常易于使用。

最新更新