0

首先,这不是这篇文章的重复:如何在 rdlc 报告中的特定行(假设 25 行)之后分页该帖子解决了我的一部分问题,但我被困在第二部分。

我有一份代表支票的报告。该报告看起来(粗略地)是这样的:


第 1 节

支付给 [数据集字段]

金额:[数据集字段]

日期:[数据集字段]


第 2 节

付费项目 1

付费项目 2

付费项目 3

付费项目 4


第 3 节

付费项目 1

付费项目 2

付费项目 3

付费项目 4


此报告通过单个数据集进行控制。

第 2 节和第 3 节是我的问题所在。这些部分代表数据集中的每一行数据,因此,如果我现在要打印一张包含 4 条数据记录的支票,第 2 部分和第 3 部分将显示相同的数据。此数据包含在 List 控件中。

这是我的问题:我需要每个列表控件显示 10 条记录,然后将超过 10 条记录的任何内容打印到单独的页面上。当我使用上面 SO 文章中描述的技术时,它可以工作,但是当它插入分页符时,它也会将第 3 节分到另一个页面上。

似乎我可以通过对分页符的某种操作来实现这一点,但我无法弄清楚。请让我知道我是否可以更清楚地了解任何事情!

4

1 回答 1

0

您遇到的问题很有趣,我将提出我的建议的两个部分。

  1. 您需要创建一个数据集,该数据集具有一个可以解释不同部分的列,以便您可以按它“分组”。如果这不存在,您可以创建它。

  2. 您可能需要 tablix 报告内的 Controlbox 中的“List”项,以便您可以显示与“Details”部分不同的列值。SSRS 认为,如果您正在对细节进行分组,那么组将是相同的值,但组织方式会有所不同。您希望第 1 节下的数据与第 2 节和第 3 节下的数据不同。出于这个原因,我将使用第 1 节的列表项来按相当于它​​的内容进行分组。

不过,您可能仍然会遇到试图在第一节中详细说明的数据问题。在这种情况下,您可能必须变得聪明并做一些将演示控件的逻辑带到另一个报表的事情。这将是一个“子报告”,您基本上只是您可以调用的不同报告。但是...我没有对 RDLC 报告执行此操作,只有 RDL HOSTED 报告。我不确定在应用程序中是否可以让一个报告调用其他报告。如果这是不可能的,您可能只需要嵌套对象,例如主对象是一个 tablix,第一个标题得到一个列表,其他标题在其中得到另一个 tablix。

在这一点上,让两个 tablix 对象相互对接可能会更简单,一个对象有一个过滤器,只显示第一个部分的数据,另一个显示不等于第一个部分的任何内容。RDLC 报告有时肯定需要一些创造性思维。

于 2013-08-12T22:13:27.310 回答