ReportViewer列组分页符

时间:2016-02-07 14:50:58

标签: c# asp.net reporting-services reportviewer

我需要使用ASP.NET ReportView生成每日员工出勤报告。它必须按月分组,这意味着我必须根据monthName字段设置分页符。

我在RDLC报告中提出了以下设计:

enter image description here

结果是: enter image description here

起初,一切都很好。第一页显示1月份的出勤率,从1月1日到31日。点击报告上的“下一页”按钮显示下个月(即2月份)的员工出勤记录。

但员工数量可能很多,因此最好将其呈现为行而不是列。没问题。我可以重新设计报告,然后再将分页符设置为[monthName],例如:

enter image description here

令我惊讶的是,它不起作用。我在MSDN中发现列组中不允许分页

我的问题是:

  1. 设置列组分页符有什么问题?为什么呢 他们设置此限制?

  2. 完成此任务的解决方法是什么?我相信你们有人 也试图完成同样的任务并取得成功。

1 个答案:

答案 0 :(得分:1)

  1. 恐怕我不知道为什么他们做任何事情。像这一样,还有许多不必要的限制。这是我能想到人们使用Crystal Reports而不是SSRS的唯一原因。
  2. 但总有一种解决方法。并不总是很简单但是当有意志时,通常会有一种方式 我会尽力解释下面可能的解决方法:
  3. 解决方法

    1. 首先,在报告中添加一个只有一列和一行的新Tablix。您将此表绑定到数据集。
    2. monthName上添加一个行组,并将Tablix重新调整为与报告正文相同的大小。
    3. 在Tablix的单元格中放置Rectangle。并将矩形的PageBreak属性BreakLocation设置为结束
    4. 将原始表格放在矩形中。然后调整矩形的高度,使其完美地适合桌子。
    5. 以下是文档大纲的示例: Document Outline

      这使您的表组包裹在一个矩形内。此矩形在monthName上分组,并在末尾省略分页符,这将导致报告者每页打印一个组。

      如果您遇到任何问题,请发表评论。