润乾报表 --- 分页控制
润乾报表提供了丰富的分页控制方式,以满足报表用户在不同情况下的需求,包括:按纸分页、按行分页、不分页、行后分页、列后分页等。
下面就润乾报表的分页控制详细加以介绍。
按纸分页
按纸分页主要用于打印,也是润乾报表默认的分页方式,报表在打印时按照报表设定的纸张(默认是 A4)大小进行自动分页,超出纸张的部分会在下一页打印,这种分页方式适用于用户对一页纸上打印几条记录没有要求,希望记录数充满纸张时设置。
在“报表属性 - 分页”选项下可以设置报表分页方式为:按纸分页。
由于润乾报表提供了多种纸张类型(包括自定义纸张),使用按纸分页可以满足对打印纸张有特殊要求的报表用户需求。
与上述描述一致,按纸分页的应用场景是为打印服务,设置按纸分页的报表打印预览时可以看到如下效果:
第一页
最后页
按行分页
有时报表除了打印还需要需要在 WEB 上呈现,这时常常希望每页显示的固定指定行数的记录,按设定的每页显示的数据行数自动进行分页,超出设定的行数的数据在下一页。
在“报表属性 - 分页”选项下可以设置报表分页方式为:按行分页,并设置每页行数。
按行分页主要用于报表展现,在页面上每页显示固定行数,设置按行分页(每页 10 行)的报表在页面上预览可以看到如下效果:
第一页
第二页
设置按行分页的报表最后打印时也可以得到固定行数的打印效果。
有时最后一页的数据较少,打印出来的最后一页明显比前几页会短一些,这时用户可能希望最后一页补足空行,此时就可以通过设置按行分页来完成。补足空行除了设置按行分页(如每页 10 行)外,还需要在报表中新增一行并设置其首格表达式为:to(1,10-ds1.count()%10),并取消其首格“可视”属性。
补足空白行具体示例可以参考: 补足空白行的实现
不分页
除了按纸和按行分页,润乾报表还可以不分页,报表在页面展现时有时希望所有信息展现在一页中,并通过页面滚动来查看所有报表信息。
在“报表属性 - 分页”选项下可以设置报表分页方式为:不分页。
与按行分页类似,不分页常用于报表页面展现,较大的报表设置不分页在页面上可以通过滚动条查看报表信息,在页面上查看如下:
固定表头设置可以参考: 像 excel 一样轻松冻结 web 报表表头 (锁定表头)
行后分页
以上分页方式都是报表自动进行分页控制,但有时希望在报表中的指定行位置进行强制分页,这时就需要使用行后分页。
行后分页需要在报表设计器右侧的属性面板中设置:
使用行后分页与其他设置结合可以实现很多丰富的效果,常用于按组分页中,希望每一页正好呈现一个分组的内容,从而能清晰地分拆出各个组。
还可以通过报表表达式控制行后分页,所以在使用上比起先前的分页方式更加灵活。行后分页具体示例可以参考: 像 word 手动插入分页符一样实现报表中强制分页(强制分页)
设置按组行后分页的报表在页面上展现效果如下:
第 2 页
第 3 页
列后分页
在润乾报表中行列对称,与行后分页类似,列后分页可以在指定列位置进行强制分页。列后分页仍然可以通过表达式控制,设置列后分页也同样在报表设计器右侧的属性面板中:
特殊分页
比如 WEB 展现时需要横向不分页,但纵向分页,这个时候不管选择不分页或者按纸分页和按行分页都没有办法实现需求。选择不分页没有纵向分页,选择按纸分页或者是按行分页时,若横向较长时,就会有横向分页。此时可以通过 jsp 标签属性来实现。
width="-1"//当报表的纸张方向是纵向时,使用此属性就可以满足用户的需求,将横向固定为一页。
height="-1"//当报表的纸张方向是横向时,使用此属性就可以满足用户的需求,将横向固定为一页。
比如纵向纸张的报表设置 width="-1" 属性后,分页报表在页面上展现效果如下:
未设置属性时,分页情况如下,列会被分到下一页:
属性说明:
width 表示报表分页宽度,负数表示无穷大,默认是报表设计页面宽度
height 表示报表分页高度,负数表示无穷大,默认是报表设计页面高度
PS:
所有报表展现使用同一个 jsp 展现时,需要根据不同报表动态控制是否横向不分页,那么可以动态设置 width/height 的属性值,比如:
width="<%=变量名%>"
URL 中拼 &width=-1 时,表示横向不分页,不传值时则按照原有分页设置展现。
对润乾产品感兴趣的小伙伴,一定要知道软件还能这样卖哟性价比还不过瘾? 欢迎加入好多乾计划。
这里可以低价购买软件产品,让已经亲民的价格更加便宜!
这里可以销售产品获取佣金,赚满钱包成为土豪不再是梦!
这里还可以推荐分享抢红包,每次都是好几块钱的巨款哟!
来吧,现在就加入,拿起手机扫码,开始乾包之旅
嗯,还不太了解好多乾?
请问针式打印机连续打印会导致空纸的问题怎么解决呢?可以通过设置分页吗?可能是因为打印机默认 A4 纸打印
看一下报表打印预览时是否有空白页面,如果有,那么删除下报表设计页面中多余的空白行列,因为多余空白行列可能会引起空白页
如果打印预览没有空白页,实际打印出来有空白页,那么可以和虚拟打印机的结果对比下,如果虚拟打印机打印正常,那么建议排查下打印机本身的设置,比如报表设置的打印纸张属性和打印机用的纸张是否一致
你好 jsp 使用 width="-1" 控制这个分页,展示的时候没问题,但是点击打印或者打印预览,如果列数超过纸张宽度还是分页了,请问怎么解决。
在报表设计器下打开报表,在报表属性中设置打印缩放的方式为:与纸张等宽