找回密码
 立即注册

QQ登录

只需一步,快速开始

hua0287

新手上路

2

主题

3

帖子

38

积分

新手上路

积分
38
  • 35

    金币

  • 主题

  • 帖子

最新发帖
hua0287
新手上路   /  发表于:2011-5-5 11:22  /   查看:10360  /  回复:3
情况描述:
报表设计时如下:
       报表页头
         报表分组头
            明细
         报表分组尾
     报表页尾

属性设置:
报表分组头 RepeatStyle:OnPageIncludeNoDetail; GroupKeepTogether:FirstDetail;  GroupKeepTogether:True
明细 KeepTogether:True

正常情况下事件触发顺序为:GroupHeader_Format --> Detail_Format -->GroupFooter_Format
当一页刚好结束,并且刚好是一个分组的最后一行明细需要显示时,该明细行只能在当前页显示下半行,因为KeepTogether:True属性的原因,明细行自动换到下一页显示了,这时候事件触发的顺序为etail_Format -->GroupHeader_Format --> GroupFooter_Format

我的问题:
我能否在明细的事件中知道这分组的最后一行明细将要因为显示不下而自动换到下一页呢,从而可以根据知道的情况来控制该明细元素的显示?

3 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2011-5-5 11:56:00
沙发
在明细的事件中无法得到分组的情况
回复 使用道具 举报
hua0287
新手上路   /  发表于:2011-5-6 08:25:00
板凳
那我描述的这种情况下,有没有其他解决方案呢?我在做报表的时候,最让我感到头痛的就是对于组和明细之间的直线的控制:组结束用实线,明细之间用虚线,但是碰到上面描述的情况下就很难控制,不是上一页结束时缺少虚线,就是下一页上出现实线和虚线重叠的现象,好长时间都没办法解决,头痛...
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2011-5-6 09:02:00
地板
报表的这类问题比较难调试,很多情况需要结合实际的报表寻找特定的解决方法。下面列出了两种通用的解决方法,你可以选择最适合你:

方法1、调整明细区域的高度。假如现在明细的高度是1.0,那么你可以将明细的高度以0.01(或者0.001)为单位进行递减操作,如果0.999不行,就再试一试0.998。因为每个报表的设计不一样,所以只能不断的尝试,然后选择一个最合适的值。同时还可以同时修改明细和报表分组头的高度。

方法2、将报表分组头的GroupKeepTogether = All、KeepTogether = True、RepeatStyle = OnPage;明细的KeepTogether = True。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部