报表定义具有无效的目标名称空间rsInvalidReportDefinition [英] The report definition has an invalid target namespace rsInvalidReportDefinition

查看:178
本文介绍了报表定义具有无效的目标名称空间rsInvalidReportDefinition的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已使用Visual Studio数据工具2015创建了一个ReportProject.当我使用报告向导创建report.rdl文件时,rdl文件具有2016架构.我的报告服务器的版本为12.0.4213.0.

I have created a ReportProject with Visual Studio data tools 2015. When I create a report.rdl file using the report wizard, the rdl file has schema for 2016. My reporting server is of version 12.0.4213.0.

如何创建与我的报告服务器兼容的report.rdl.我尝试通过右键单击项目->属性,然后将targetserverversion更改为"Sql server 2008 R2、2012或2014"来更改TargetServerVersion.但这也不起作用.

How can I create a report.rdl which is compatible with my reporting server. I tried changing the TargetServerVersion by right clicking the project -> properties and changing the targetserverversion to "Sql server 2008 R2, 2012 or 2014". But this doesn't work either.

推荐答案

设置为TargetServerVersion属性的报表的特定版本会在BIN(\ debug或构建位置)中创建.因为您没有使用任何2016功能.

我正试图找到相同的答案.您可能会认为,只需按照解决方案的方式设置解决方案的TargetServerVersion即可使它使用正确的报告定义(或者可选地,他们可以为您提供添加2016年前报告项目的选项)

The specific version of the report you set as the TargetServerVersion property gets created in the BIN (\debug or wherever you build to) folder as long as you are not using any 2016 features.

I'm trying to find the same answer. You would think simply setting the solution's TargetServerVersion the way you did would cause it to use the right report definition (or optionally they could give you the option to add a pre-2016 report item)

在此之前,如果右键单击.rdl并单击查看代码",则可以更改以下几行以使其在SQL 2014中起作用-如果发生错误,只需备份原始.rdl:

Until then, if you right click the .rdl and "view code", you can change the following lines to make it work in SQL 2014 - just make a backup of your original .rdl in case you make a mistake:

1)用以下内容替换报告xmlns行:

1) Replace the report xmlns line with the following:

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

2)删除ReportSections和ReportSection行,并在其下方保留子树结构主体标签等).因此删除这些:

2) Remove the ReportSections and ReportSection lines, keeping the child tree structure body tag etc. below it). So remove these:

  <ReportSections>
    <ReportSection>

还有这些...

    </ReportSection>
  </ReportSections>

3)删除整个ReportParametersLayout部分.因此(例如)删除此内容:

3) Remove the entire ReportParametersLayout section. So (e.g.) remove this:

  <ReportParametersLayout>
    <GridLayoutDefinition>
      <NumberOfColumns>4</NumberOfColumns>
      <NumberOfRows>2</NumberOfRows>
    </GridLayoutDefinition>
  </ReportParametersLayout>

保存,返回设计并运行报告.如果您尚未修改设计,它将在SQL2014中运行.更改任何字段的那一刻,它将恢复为2016模式.

Hit save, go back into the design and run the report. If you haven't modified the design it will work in SQL2014. The minute you change any fields it will revert to the 2016 schema.

如果有人看到解决此问题的方法,请告诉我们.谢谢!

If anyone sees a way to fix this behavior let us know. Thanks!

这篇关于报表定义具有无效的目标名称空间rsInvalidReportDefinition的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆