请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

lingee

初级会员

33

主题

105

帖子

318

积分

初级会员

积分
318
lingee
初级会员   /  发表于:2025-4-7 18:15  /   查看:69  /  回复:3
需求:

报表中有Detail和groupfooter,明细行数不定,需要判定detail或者groupfooter是不是在一页开始的第一行。
比如,
多行明细的情况下,换页后的第一行显示为true,第二行以后显示false。
如果明细正好整页显示完毕,那换页后的第一个groupfooter显示true,其他显示false。

我现在的做法是,在script里面加了个变量,detail或者groupfooter的format事件中将其置为false。pageheader的时候重置为true。
但是,奇怪的是,
换页后(第二页以后开始),无论是detail还是groupfooter,都是第二行为true,第一行及其他为false。

附上了代码,能帮忙看下是哪里出错了吗?
rpx文件在 \WinFormsApp1\bin\Reports 目录下

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

3 个回复

倒序浏览
Felix.LiWyn认证
超级版主   /  发表于:2025-4-8 09:55:17
沙发
您好,这个原因是因为明细行的属性:显示在一起 keepTogether导致的。

他会让报表的单元格可以被完整的显示在一页。所以您看到的下一页的第一行,其实本质上应该显示在上一页,因为这个属性,所以他才出现在下一页。它本质上在上一页的detail被计算好了,所以才看到这个情况。您把这个属性关了,在跑一下结果的Demo就知道为什么了:


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
lingee
初级会员   /  发表于:2025-4-8 10:04:15
板凳
那我如果还是需要一个detail作为整体出现在一页上呢?去掉这个属性并不符合需求呢。。。有啥别的解决方法吗?
回复 使用道具 举报
Felix.LiWyn认证
超级版主   /  发表于:2025-4-8 15:55:37
地板
抱歉,这个我们试了一下,确实在这个高度不确定的情况下,还没办法做到这个
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部