我收到了一位我无法打开的同事的SSRS项目。这是使用SSDT 2015创建的,我试图用相同的方式打开它。我尝试打开它时遇到的错误是:
(项目名称).rptproj:错误:XML文档中存在错误(2,2)。
.rptproj文件采用以下格式:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<FullPath>Debug</FullPath>
<OutputPath>bin\Debug</OutputPath>
<ErrorLevel>2</ErrorLevel>
<OverwriteDatasets>False</OverwriteDatasets>
<OverwriteDataSources>False</OverwriteDataSources>
<TargetServerVersion>SSRS2016</TargetServerVersion>
<Platform></Platform>
<TargetReportFolder></TargetReportFolder>
<TargetDatasetFolder></TargetDatasetFolder>
<TargetDatasourceFolder></TargetDatasourceFolder>
<TargetReportPartFolder></TargetReportPartFolder>
<TargetServerURL></TargetServerURL>
</PropertyGroup>
<State></State>
<DataSources>@(DataSource)</DataSources>
<DataSets>@(DataSet)</DataSets>
<Reports>@(Report)</Reports>
</PropertyGroup>
<ItemGroup>
<DataSet Include="(data source file name).rsd" />
</ItemGroup>
<ItemGroup>
<Report Include="(Report Name).rdl" />
</ItemGroup>
...
我查看了一个我可以打开的SSRS项目,它看起来完全不同:
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ToolsVersion="2.0">
<State></State>
<DataSources>
<ProjectItem>
<Name>(data source name).rds</Name>
<FullPath>(data source name).rds</FullPath>
</ProjectItem>
</DataSources>
<DataSets>
<ProjectItem>
<Name>(dataset name).rsd</Name>
<FullPath>(dataset name).rsd</FullPath>
</ProjectItem>
</DataSets>
<Reports>
<ProjectItem>
<Name>(report name).rdl</Name>
<FullPath>(report name).rdl</FullPath>
</ProjectItem>
<ProjectItem>
...
我希望了解为什么存在这些差异以及如何在Visual Studio中打开项目。
答案 0 :(得分:1)
我遇到了完全相同的问题-在两台不同的计算机上使用Visual Studio 2015 Enterprise Update 3。比较SQL Server Reporting Services的版本后,我注意到它们是不同的(一个使用v13.0,另一个使用v14.0)。
因此,第一步是安装相同版本的 SQL Server数据工具(v14.0.61712.50)。之后,我删除了扩展名为“ .rptproj.rsuser ”的文件。
答案 1 :(得分:0)
检查ToolsVersion
节点上的Project
属性。我发现Visual Studio 2015的SSDT版本无法打开更高版本。 VS2017的SSDT似乎只能在新版本上运行,并将升级现有的报告项目。
如果您的同事升级了该项目,则该文件夹中可能仍有备份。如果他们在2017年从零开始创建它,那么返回的唯一方法是使用.rdl
和其他文件(应该向后兼容)创建一个新的2015年报告项目。
我见过的解决方案可以毫无问题地来回传递。所以解决方案文件夹之类的东西至少会被保留下来。
答案 2 :(得分:0)
您可能需要安装SSDTSetup.exe。有一个更新,使msbuild能够构建rptproj文件。您上面的xml看起来不错。
输入: C:\ Program Files(x86)\ MSBuild
您是否看到一个名为Reporting Services的文件夹(包含用于构建rptproj的10个.dll)
寻找: •下载适用于Visual Studio 2015的SQL Server数据工具 •下载Visual Studio 2017的Reporting Services项目
我正在使用2015 https://docs.microsoft.com/en-us/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-2017
向下滚动到... VS 2015的SSDT(独立安装程序) 下载下载适用于Visual Studio 2015(17.4)的SSDT
安装SSDT之后,您将获得上面提到的Reporting Services文件夹。 您应该现在就可以构建它。 您还需要将其安装在构建服务器上。