本文以填报报表为例,通过分页的方式,来解决大数据集展示的问题。
实现的思想就是通过在SQL里筛选部分数据库数据,以达到浏览器可以合理的展示报表页面。(数据分段,语句我这采用的是MYSQL,如果要用其他数据库,请查看FineReport帮助文档)
步骤一:打开fenye.cpt文件。
模板界面如下
两个ds,和一部分数据,及隐藏的一行。
隐藏一行内容如下
这里数据的功能会在下面说起。
ds1 里的内容如下
语句内容 SELECT * from aaa limit ${f},${p}
目的是从第${f}跳开始,选择${p}数据(这个$p就是展示的页数,$f的计算可以下面公式($page-1)*$p,mysql的limit的偏移量是从0开始)。
在模板参数里,我设置了他们的默认值
$P=20
$page=1;
这个和全局参数同理,在模板预览的时候是看不到数据的,必须到展示页