我在 Visual Studio 2015 中创建了一些包含所有最新更新的报告。但是,当我尝试部署报告时,我收到以下消息:
此报表的定义无效或不受此版本的 Reporting Services 支持。
11:40:28 错误
报表定义可能是使用较新版本的 Reporting Services 创建的,或者包含不属于该报表定义的内容。
11:40:28 错误
根据 Reporting Services 架构,格式正确或无效。详细信息:报告定义的目标无效
11:40:28 错误
命名空间'http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition' 无法升级。
.rdl 文件的第一行设置如下:
<?xml version="1.0" encoding="utf-8"?>
<Report MustUnderstand="df"
xmlns="http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition"
xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"
xmlns:df="http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition/defaultfontfamily">
我可以更改架构定义吗?如果是的话,为了什么呢?我尝试将 2016 年更改为 2014 年或 2012 年,但都不起作用。
我可以去哪里查看有效的定义吗?
实际上,我在 2016 年遇到了类似的问题,我需要进行的更改导致了“未记录的错误/无效的 RDL 结构”错误,因此我编辑了 RDL 文件,以便可以在早期版本中打开它并进行更改。不太难,但您需要进行一些标签编辑。
对于新报告,您可能应该只使用旧版本,但对于现有报告,您可以这样做:(我恢复到 2008 年)
- Change the Report tag:
- 删除 MustUnderstand="df"
- 将 xmlns 值更改为“http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition"
- 删除 xmlns:df 属性。
- 删除整个“ReportParametersLayout”块。
- 删除“df”标签及其内容。
- 删除“ReportSections”和“ReportSection”开始和结束标记(不是内容)。
实际上,作为博客文章的一部分,编写了一些超级黑客代码来执行此操作,但手动编辑非常简单。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)