1. 问题描述javascript
进行FineReport数据填报时,若是数据量过大,因为前端浏览器的性能限制,若是将数据所有展示出来,速度会很是的慢,影响用户体验,这时候你们就会想,填报是否能像分页预览同样进行分页呢,实现只加载当前页,从而提升性能,下面咱们就来介绍填报分页的制做与浏览过程,在op=write下,使用__cutpage__=v参数(即在url后增长&__cutpage__=v)来启用填报横向不分页纵向分页。前端
2. 示例java
下面咱们以1000行数据为例,每页显示200行,分5页显示。web
2.1 数据准备浏览器
新建数据集ds1:SELECT top 1000 * FROM 订单明细。服务器
ds2:SELECT * FROM 产品。ide
2.2 模板设计性能
以下图所示,在模板主体中拖曳数据列至C2~O2单元格,并设置标题:
url
2.3 过滤spa
数据列来源于2个数据集,须要在单元格中设置过滤条件,双击E2单元格,选择过滤,条件设置为产品id等于单元格D2,以下图:
注:数据列中来自于ds1的数据列的父格需设置为C2,来自于ds2的数据列的父格需设置为E2。
2.4 分页设置
形如分页预览中的每页显示固定行数,填报分页也如此设置,以下图,在C2单元格中添加一个条件属性:
2.5 重复标题行、冻结行列设置
因为上面的报表主体中包含的数据列比较多,而且数据量也比较大,则在web端查看报表时,须要设置重复标题行,而且冻结行列,使查看报表时,仍然能知道该行数据的意义。
重复标题行
选中标题行,右键,选择设置重复标题行。
冻结行列
点击菜单栏的模板>重复与冻结设置,在填报冻结栏里面讲第一行以及第三列冻结起来,以下图:
2.6 报表样式设计
给FineReport报表设置样式,以下图:
2.7 效果查看
点击填报预览,在URL后面添加参数__cutpage__=v,便可启用填报分页,查看效果:
在线查看模板效果请点击Cutpage.cpt
注:填报分页状态下,翻页前,若是修改了当前页的数据,需先保存该页面内容,即传输到服务器端进行保存,那么下次再查看该页内容时,页面显示内容即为编辑后的内容,在保存的过程当中,不容许编辑,保存不是提交,报表会自动保存。
另:__cutpage__参数先后都有2个下划线。