【问题标题】:SSRS giving a blank page at the end of report [duplicate]SSRS 在报告末尾给出一个空白页 [重复]
【发布时间】:2009-04-06 20:34:47
【问题描述】:
我在 SSRS 2005 的报告末尾得到一个空白页。
我有一个页眉徽标和页脚日期值,我已将两者都设置为 PrintOnLastPage = False,但我仍然得到一个空白的最后一页。
任何想法如何消除它?谢谢!
【问题讨论】:
标签:
reporting-services
reportingservices-2005
【解决方案1】:
此解决方案适用于 SSRS 2008 R2。我不确定早期版本。
在 Report Properties 页面的 Other 类别下,将 ConsumeContainerWhitespace 设置为 True。
其他建议仍然适用:确保您的纸张大小可以包含报告宽度和边距。删除您的报告中可能存在的任何空白。
祝你好运。
【解决方案2】:
设置ConsumeContainerWhitespace 有效,但可能会导致报告生成时间的灾难性增加,尤其是对于非常大的报告。
另一种解决方案如下,包括自己跟踪哪条记录是数据集中的最后一条记录。
SQL - 跟踪行数与总行数
您可以使用上述技术来跟踪当前行数与总行数,只需确保您的“排序依据”机制与您的主选择语句的机制相匹配。
为除最后一条记录之外的所有记录添加记录结束分页符
- 在报表正文的末尾添加一个垂直的小矩形
- 矩形属性 -> PageBreak -> BreakLocation -> End
现在,我们希望这个矩形在我们需要分页时可见,而我们希望在我们不想分页时隐藏它。
因此,在 Rectanble Properties(右键单击)-> Visibility -> Show or hide based on an expression -> Expression Edit
=Fields!RowNumber.Value=Fields!TotalRows.Value
这将导致在每条记录的末尾出现分页符,最后一条记录除外
【解决方案4】:
我有一份不断打印第二页的报告。
其他人添加了 tablix 并为 tablix 设置了“分页符”END 属性。
当我将其更改为 NONE 时,它解决了问题。
【解决方案5】:
我有一份包含子报告的报告。子报表有一个“PageBreak”属性,“BreakLocation”设置为“Start”。将其改回“无”会删除我得到的空白页。
【解决方案6】:
添加到 MikeGee 的回答并考虑到这是一个非常古老的线程,我想我会加上我的 2 美分。
为避免出现空白页,请将每个 tablix 的每个“BreakLocation”属性设置为“None”。有时它默认为“结束”,空白页的数量取决于报告中的 tablix 数量。
例如,如果您的报表中有 3 个 tablix,并且每个 tablix 的“BreakLocation”属性设置为“End”,那么您将有 3 个空白页。
【解决方案7】:
如果是 2008 R2,请将 ConsumeContainerWhitespace 设置为 True。
【解决方案8】:
我在最后一页上有一张图片,当它的尺寸设置为 210 毫米、297 毫米 (A4) 时,它会在报告末尾生成一个空白页。但是当我将高度尺寸从 297mm 更改为 296.9mm 时,空白页消失了。这是使用VS2013。
【解决方案9】:
如上所述检查您的边距
+
如果您有一个可以动态向报表添加列的 tablix,请检查 tablix 的“运行时宽度”是否在您的边距内。在运行时,它可能大于您在设计器中指定的 body-width。
(注意:设计师无法做到这一点;尝试减小列的大小以查看空白页是否消失)。