【发布时间】:2016-03-17 20:34:59
【问题描述】:
我正在使用 Visual Studio SSDT BI 插件为 SQL Server Reporting Services 创建报告。我创建的项目配置为面向 SQL Server 版本 2008/2012/2014,因为这些是我们客户拥有的目标 SQL Server。
但是,在 Visual Studio 中创建的报告文件似乎都针对 SQL Server 2016。如果我将 rdl 文件复制到另一台服务器并通过浏览器上传它们,我会被告知它们来自较新的版本SSRS,无法上传。
问题是双重的:
-
<Report>标记包含一个新的 2016 命名空间,它取代了之前版本中存在的 2010 命名空间:<Report xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner" xmlns:cl="http://schemas.microsoft.com/sqlserver/reporting/2010/01/componentdefinition" xmlns="http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition"> -
新文件格式包括在 2016 命名空间中定义的参数布局部分,但在 2010 命名空间中没有:
<ReportParametersLayout> . . . </ReportParametersLayout>
如果我将命名空间改回 2010 并删除 ReportParametersLayout 部分,则报表在 SQL 2012 中运行良好,但 Visual Studio 会在我下次打开报表时将其放回原处。
(有趣的是,如果我直接从 VS 部署报告,我会收到一条警告,指出参数布局在 2012 年不受支持并被删除,这意味着 Visual Studio 正在即时修复报告定义。)
有什么办法可以强制 VS 保留以前版本格式的报告文件?
【问题讨论】:
-
有没有人找到解决方法?拉米的评论。 A 没有解决实际问题。
-
在 SSDT 16.3(内部版本号:14.0.60812.0)中,他们说:“修复了为 SQL Server 2008 R2、2012 和 2014 生成无效报告的问题。”有谁知道这是否解决了问题?
标签: reporting-services visual-studio-2015 ssdt-bi