我的 ASP.NET 站点使用 Report Viewer 9.0 从 Reporting Services 2008 R2 服务器运行报告。对于大多数报表,报表查看器准确地显示报表将打印的页数(即在页眉的分页字段中)。但是,有一份报告始终显示为仅使用 1 页,而它始终打印为 2 页。
(这可能是一个微不足道的问题,因为对实际打印没有影响,但它是“客户感到困惑”的事情之一,因此必须进行调查:))。
一些细节:
- 所有显示准确页数的报告都是相当简单的“记录列表”样式报告 - 基于一个/多个 tablix,标题为 texbox
- 有问题的一份报告是 2 页的“客户发票”,其结构如下:
- 数据集是包含订单详细信息(客户名称、订单日期等)的单个记录
- 报告由 2 个垂直排列的矩形组成,宽度和高度都适合 1 个 A4 页面(19 厘米 x 27.7 厘米,允许在报告上留出 1 厘米的边距)
- 没有在任何控件上设置“自动分页符”属性(例如,矩形#1 之后的分页符)。这不是必需的,因为矩形的大小使报告可以完美地打印在 2 页上。
- (这可能无关紧要)每个矩形的可见性都可以通过布尔报告参数切换 - “打印页面 #1”和“打印页面 #2”。这也适用于控制打印哪些页面。
我不想在任一矩形上设置“自动分页符”,因为如果报表参数导致一个或其他矩形被隐藏,这将导致打印空白页。
我还能做些什么来让 Report Viewer 意识到有 2 个页面?
编辑:仅报告查看器不是问题 - SSRS 报告管理器将报告显示为 1 页,预览报告时 Visual Studio 报告设计器也是如此。但是,在进行打印预览时,两者都显示 2 页。