You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何设置Crystal Report,使内容无法容纳的节自动移至下一页?

Crystal Report 实现整节(含动态子报表)跨页时自动移至下一页的方法

一、基础设置(Section Expert)

  1. 打开Section Expert:点击菜单栏Report -> Section Expert,或右键报表节空白处选择该选项。
  2. 选中需要控制的目标节(比如包含评论子报表的组页眉/Detail节):
    • 取消勾选Underlay Following Sections,避免节内容被后续节覆盖,确保高度计算准确。
    • 勾选Keep Together,让节内内容尽量保持连续(配合后续公式实现整节跳转)。

二、子报表适配设置

右键目标节内的子报表,选择Format Subreport,勾选Can Grow,确保子报表能根据动态评论行数自动调整高度,保证节高度计算的准确性。

三、用公式控制“整节移至下一页”

在Section Expert中,选中目标节,找到New Page Before选项,点击右侧的公式按钮(x+2图标),输入以下公式:

// 判断当前页面剩余空间是否不足以容纳该节,是则跳转新页
If PageRemaining < SectionHeight({目标节名称}) Then
    True
Else
    False
  • 替换{目标节名称}为实际节的名称,比如GroupHeader1、Detail1等(需与报表中节的命名一致)。
  • 公式逻辑:PageRemaining返回当前页面剩余可用高度(单位:缇),SectionHeight()返回目标节的实际高度,若剩余空间小于节高度,则触发新页跳转,让整节内容显示在下一页。

补充说明

  • 检查页面边距:通过File -> Page Setup确认上下左右边距设置,避免剩余空间计算偏差。
  • 若节内包含多个元素(比如文本框+子报表),SectionHeight()会自动计算整个节的总高度,无需单独计算每个元素。

内容的提问来源于stack exchange,提问作者krunal.cp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 08:42:11