带分页符的RDLC报表中的可变行数

时间:2013-08-12 20:05:38

标签: .net reporting-services reporting rdlc

首先,这是这篇文章的副本:How to page break after specific row(Suppose 25 rows) in rdlc reporting该帖子解决了我的问题的一部分,但我被困在第二部分。

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


第1节

支付[数据集字段]

金额:[数据集字段]

日期:[数据集字段]


第2节

付款项目1

付费第2项

付款项目3

付款项目4


第3节

付款项目1

付费第2项

付款项目3

付款项目4


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

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

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

似乎我可以通过对分页符的某种操作来实现这一点,但我无法弄明白。如果我能更清楚地知道任何事情,请告诉我!

1 个答案:

答案 0 :(得分:0)

你遇到的问题很有意思,我会根据我的建议提供两个部分。

  1. 您需要创建一个数据集,其中包含可以说明不同部分的列,以便您可以对其进行“分组”。如果这不存在,您可以创建它。

  2. 您可能需要Tablix报告中控件框中的“列表”项,因此您可以显示不同于“详细信息”部分下的列值。 SSRS认为,如果您正在对您的细节进行分组,那么组将是相同的值,但组织方式不同。您希望第1部分下的数据不同于第2部分和第3部分下的数据。出于这个原因,我会使用第1部分的列表项来按照它的数量进行分组。

  3. 尽管如此,您可能仍会遇到有关数据的问题。在这种情况下,您可能必须聪明并做一些将表示控件的逻辑带到另一个报表的东西。这将是一个“子报告”,您可能只是一个不同的报告。但是......我没有使用RDLC报告,只有RDL HOSTED报告。如果您可以在一份报告中调用其他报告,我在申请中不确定。如果这是不可能的,你可能只需要像主要对象一样嵌套对象作为Tablix,第一个标题获取一个列表,其他标题在其中得到一个nother tablix。

    此时,将两个Tablix对象相互对接可能更简单,一个过滤器只显示第一个数据,另一个过滤到不等于第一个的任何数据。 RDLC报告肯定需要一些创造性思维。