第1章 概述
打印时,有时报表内容过多时,使用预览打印,可以正常的打印;而如果使用一键打印,不经过预览,就会出现最后一行打印不出来,这种情况需要实现翻页的功能。
报表需要实现翻页,并且有如下两点要求:
(1)翻页后,要求显示表头。
(2)翻页后,如果当前页只有一条数据,剩余的空白处需要用空白行补全。
针对上述问题,UniEAP Report能够支持该功能,本文就来介绍这种空白处用空白行补全的实现方法。
例如下图中的产品入库通知单,实现了当前页数据条数不满时,剩余的空白处需要用空白行补全。
第2章 空白补行实现方法
针对第1章截图中的需求,报表的定义如下图所示。
当前页数据条数不满时,剩余的空白处需要用空白行补全。
下面分别介绍其中的几个关键点。
2.1 ‘表头’与‘标题’
需要每页都显示的部分,需要设置为‘表头’,而不是‘标题’。
如下图:
2.2 groupbyRow公式
每页显示8行数据,需使用groupbyRow公式,groupbyrow('ds2','rownum',null,8),含义是按照指定行数分组(注意sql中有行号)。
2.3 topn公式
不足8条数据,请使用topn公式,第三个参数为true,实现空白补行;若参数设为false,则不能实现空白补行。
topn(select('ds2','PRODUCT_ID'),8,true)
2.4 格下分页
在B12里面设置了格下分页。
2.5 ‘表尾’与‘尾标题’
报表中的‘制单人’,如果希望每页显示,请设置为‘表尾’;如果仅在最后一页的末尾显示,请设置为‘尾标题’。
如下图,将其设置为‘尾标题’,则打印效果中(见第一章图),仅在最后一页的末尾显示。
2.6 打印效果
如果希望web页面显示与打印效果相同,html导出属性请设置为‘按照页面大小分页’。如下图: