【问题标题】:Report showing 'The definition of the report is invalid' in SSDT 2015在 SSDT 2015 中显示“报告的定义无效”的报告
【发布时间】:2016-08-03 16:57:16
【问题描述】:
我有一个带有一些报告的 SSRS 2008 项目,最近我们更新了版本,现在我用 SQL Server Data Tools 2015 打开项目,一切正常很好,我可以部署、编辑、更新一切都很好。
当我想创建一个新报表时,问题就来了,当我向报表添加一个数据集时,预览选项卡显示:
本地报告处理过程中发生错误
报表“报表名称”的定义无效
什么都没有发生,我不能再预览报告了。
有谁知道这是否是升级/打开使用 SSDT 2015 的 SSRS 2008 解决方案的问题?
【问题讨论】:
标签:
reporting-services
ssrs-2008-r2
sql-server-data-tools
【解决方案1】:
经过一番研究...我找不到任何东西。
所以我尝试在 Reporting Services 2008 中创建报告,并且在添加 DataSet 后尝试预览报告时,它显示了同样的错误:
本地报告处理过程中发生错误
报表“报表名称”的定义无效
但现在,它多了一行:
共享数据集定义无效。详细说明所需
缺少属性“名称”
在谷歌输入第一个搜索结果后,看起来问题是我的数据集是共享数据集,JoannaK也发现了同样的问题和还找到了解决方法:
暂时找到解决方法:将数据集创建为嵌入的> 转换
到共享数据集看起来像在您启动时设置了名称属性
与嵌入式。报表运行,可以将数据集上传到
报表服务器
这解决了我的问题。希望它对未来的人有所帮助。
来源:JoannaK from SQL Server Data Tools Preview update for April 2016
【解决方案2】:
SSDT 正在生成损坏的数据集定义。修复它:
- 在文本编辑器中打开共享数据集的
.rsd 文件。
- 在其中的 xml 中找到
<DataSet> 开始标记。
- 将属性
Name(区分大小写)添加到该标签,例如:<DataSet Name="SomeDataSet">
可能应该将Name 设置为与filename 相同,但据我所知似乎没有任何区别。
感谢existing answer,没有它我根本无法使用它。
VS2015 / SSRS2012
【解决方案3】:
我遇到了类似的错误。它主要发生在“共享数据集”的更改中。
- 检查“共享数据库属性”中的查询字段,如果没有字段,只需添加已包含在查询中的字段即可。
- 检查数据库连接
- 如果您使用了存储过程,请检查“存储过程”和结果。
- 可以删除旧数据集并重新创建相同的名称。
- 作为最后一个选项,您可以创建“新数据集”(另一个)并将新数据集与报表绑定(注意在选择创建新数据集后再次映射所有字段。