1

SSSRS 2008 R2

我的 BIDS 项目有一些报告,但这些报告引用了大量的子报告。如何将所有子报表移动到它们自己的文件夹中并在我的主报表正文中引用它们?

我尝试创建一个文件夹并手动将子报表移动到其中。那没有用。BIDS 找不到子报表,并且该文件夹没有出现在项目结构中。

4

4 回答 4

3

这里的问题是 BIDS 期望所有子报表与主报表位于同一文件夹中,您不能使用路径或子文件夹。

但是,当部署到报表服务器时,相对路径(例如 /SomeFolder/MyReport)将起作用,因此您可以更改主报告以指向任何子文件夹或相对路径中的报告,这将在部署后起作用。但是,在 BIDS 中运行主报表时,您将无法在主报表中看到子报表。

于 2012-09-27T22:03:56.277 回答
1

在 Visual Studio 中开发时,不能使用文件夹路径引用。如果这样做,您将收到一条错误消息“<em>找不到文件路径的一部分”。

对于开发,您需要确保子报表在您的项目中,然后使用下拉菜单选择报表。开发完成后,需要更改主报表以引用正确的文件夹( /Sub reports/myReport.rdl),并且需要将子报表部署到正确的文件夹( /Sub reports)。这意味着将有 2 个子报表副本——1 个在您的 MainReport 项目中,1 个在您的 SubReport 项目中。有两个副本要保持最新并不理想,但它可以工作。

此外,如果不包括第一个正斜杠 ( Sub reports/myReport.rdl),则您的参考是在子文件夹中查找。以正斜杠开头 ( /Sub reports/myReport.rdl),您的参考路径从 SSRS Web 门户的根文件夹开始。

在此处输入图像描述

于 2018-07-20T19:55:14.853 回答
0

万一有人在几年后发现这个。我当前的解决方案是使用报表生成器打开报表。在该界面中,您可以将子报表设置为服务器上的相对路径以及与主父报表不同的文件夹路径。您似乎无法通过 SSDT 或 BIDS 进行操作。

然后,您可以将主报告下载到 SSDT 并将其带回您的项目中。

要运行报告,您必须在项目 Bin\Debug 文件夹中设置报告管理器用于报告的相同文件夹结构。如果您不这样做,则会错误地要求该文件夹结构出现在那里。

那个黑客对我有用。

于 2016-08-17T13:35:10.287 回答
0

通过创建指向您的项目文件夹\bin\debug\full\subreport\path 的符号链接,我找到了一个不错的解决方法

详细信息和屏幕截图在这里:http ://www.andrewmosey.com/subreport-in-a-sub-folder-working-in-visual-studio-and-ssrs

于 2017-06-30T01:47:51.600 回答