在Visual Studio 2017中更改RDLC报告的RDL版本

时间:2022-07-10 08:05:19

I have a project in Visual Studio 2017 with .NET Framework 4. For reports I use the RDLC designer, but I have a problem. The designer creates the reports using RDL 2016 and I need you to use the 2010 definition.

我在.NET Framework 4的Visual Studio 2017中有一个项目。对于报告,我使用RDLC设计器,但是我遇到了问题。设计人员使用RDL 2016创建报告,我需要您使用2010定义。

Can I configure this?

我可以配置吗?

I need it since the program has to be compatible with Windows XP and there is no ReportViewer Runtime that supports RDL 2016 for Windows XP.

我需要它,因为该程序必须与Windows XP兼容,并且没有支持Windows XP的RDL 2016的ReportViewer Runtime。

2 个解决方案

#1


1  

I had the same problem, but if a did a new report it was all right, the new report was created and saved with the old schema: xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition". (report viewed with a text editor)

我遇到了同样的问题,但是如果做了一个新报告就可以了,新报告是用旧架构创建并保存的:xmlns =“http://schemas.microsoft.com/sqlserver/reporting/2008/01 / reportdefinition”。 (使用文本编辑器查看的报告)

When I added a parameters and re-saved, VS turned the schema in new schema: xmlns="http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition"

当我添加参数并重新保存时,VS在新架构中转换了架构:xmlns =“http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition”

But I found a solution that work also with Windows XP:

但我找到了一个适用于Windows XP的解决方案:

I install all necessary to manipulate the report with VS 2017 (in Visual studio 2017 are all external plug-in), then change the reference of my project e take 2 new referenze to this DLL:

我安装了所有必要的操作报告与VS 2017(在Visual Studio 2017中都是外部插件),然后更改我的项目的参考e采取2新的参考到这个DLL:

1)

1)

..\project\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80\lib\net40\Microsoft.ReportViewer.WinForms.dll

.. \项目\包\ Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80 \ LIB \ net40 \ Microsoft.ReportViewer.WinForms.dll

2)

2)

..\project\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80\lib\net40\Microsoft.ReportViewer.Common.dll

.. \项目\包\ Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80 \ LIB \ net40 \ Microsoft.ReportViewer.Common.dll

After that all work.

之后全部工作。

This new version of DLL handle both "old schema" and "new schema"

这个新版本的DLL处理“旧架构”和“新架构”

#2


1  

Reporting solutions in VS have always been tied to the version of SSDT that is current at the time of release. e.g. VS 2015 only supported the Sql Server 2016 report schema.

VS中的报告解决方案始终与发布时当前的SSDT版本相关联。例如VS 2015仅支持Sql Server 2016报表架构。

I think the answer is that you might be able to do something to change the schema it uses by editing the XML directly, as suggested by Ricky A, but for proper, designer support this isn't going to work.

我认为答案是你可以通过直接编辑XML来改变它所使用的模式,正如Ricky A所建议的那样,但是对于正确的设计师支持,这是行不通的。

Article from Microsoft on schema versions supported here doesn't mention anything other than schema v2016 support in VS 2017: https://docs.microsoft.com/en-us/sql/reporting-services/plan-for-report-design-and-report-deployment-reporting-services

Microsoft提供的有关架构版本的文章在VS 2017中没有提及架构v2016支持以外的任何内容:https://docs.microsoft.com/en-us/sql/reporting-services/plan-for-report-design-和报告的部署,报告服务

I am fairly sure that your VS licence will cover old versions, and different versions live happily side by side, so install whichever other version you need for the reporting project you are editing (along with the correct version of SSDT/BIDS etc).

我相当确定你的VS许可证将涵盖旧版本,并且不同的版本并存,并安装您正在编辑的报告项目所需的任何其他版本(以及正确版本的SSDT / BIDS等)。

#1


1  

I had the same problem, but if a did a new report it was all right, the new report was created and saved with the old schema: xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition". (report viewed with a text editor)

我遇到了同样的问题,但是如果做了一个新报告就可以了,新报告是用旧架构创建并保存的:xmlns =“http://schemas.microsoft.com/sqlserver/reporting/2008/01 / reportdefinition”。 (使用文本编辑器查看的报告)

When I added a parameters and re-saved, VS turned the schema in new schema: xmlns="http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition"

当我添加参数并重新保存时,VS在新架构中转换了架构:xmlns =“http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition”

But I found a solution that work also with Windows XP:

但我找到了一个适用于Windows XP的解决方案:

I install all necessary to manipulate the report with VS 2017 (in Visual studio 2017 are all external plug-in), then change the reference of my project e take 2 new referenze to this DLL:

我安装了所有必要的操作报告与VS 2017(在Visual Studio 2017中都是外部插件),然后更改我的项目的参考e采取2新的参考到这个DLL:

1)

1)

..\project\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80\lib\net40\Microsoft.ReportViewer.WinForms.dll

.. \项目\包\ Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80 \ LIB \ net40 \ Microsoft.ReportViewer.WinForms.dll

2)

2)

..\project\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80\lib\net40\Microsoft.ReportViewer.Common.dll

.. \项目\包\ Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80 \ LIB \ net40 \ Microsoft.ReportViewer.Common.dll

After that all work.

之后全部工作。

This new version of DLL handle both "old schema" and "new schema"

这个新版本的DLL处理“旧架构”和“新架构”

#2


1  

Reporting solutions in VS have always been tied to the version of SSDT that is current at the time of release. e.g. VS 2015 only supported the Sql Server 2016 report schema.

VS中的报告解决方案始终与发布时当前的SSDT版本相关联。例如VS 2015仅支持Sql Server 2016报表架构。

I think the answer is that you might be able to do something to change the schema it uses by editing the XML directly, as suggested by Ricky A, but for proper, designer support this isn't going to work.

我认为答案是你可以通过直接编辑XML来改变它所使用的模式,正如Ricky A所建议的那样,但是对于正确的设计师支持,这是行不通的。

Article from Microsoft on schema versions supported here doesn't mention anything other than schema v2016 support in VS 2017: https://docs.microsoft.com/en-us/sql/reporting-services/plan-for-report-design-and-report-deployment-reporting-services

Microsoft提供的有关架构版本的文章在VS 2017中没有提及架构v2016支持以外的任何内容:https://docs.microsoft.com/en-us/sql/reporting-services/plan-for-report-design-和报告的部署,报告服务

I am fairly sure that your VS licence will cover old versions, and different versions live happily side by side, so install whichever other version you need for the reporting project you are editing (along with the correct version of SSDT/BIDS etc).

我相当确定你的VS许可证将涵盖旧版本,并且不同的版本并存,并安装您正在编辑的报告项目所需的任何其他版本(以及正确版本的SSDT / BIDS等)。