历史版本29 :填报分页 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 问题描述

填报前端预览时,所有数据都是在一页展示,如果数据量过大,由于前端浏览器的性能限制,将数据全部展现出来,速度会非常的慢,极大影响用户体验。

那么填报能否像分页预览一样进行分页展示,从而提高填报预览的速度呢?效果如下图所示:

1600755483707602.gif

1.2 解决思路

在填报预览(op=write)下,使用__cutpage__=v参数(即在 URL 后增加 &__cutpage__=v),来启用填报分页效果。

注1:该方法不支持新填报预览。

注2:该方法同样适用于多 sheet 填报。

注3:__是两个下划线,填报分页预览不支持列分页(列后分页和列前分页)。

注4:由于填报分页下,移动端无法一次提交所有页面,因此移动端不支持该参数该功能。

2. 示例编辑

2.1 准备数据

新建普通报表,新建数据库查询数据集,SQL 语句为:SELECT * FROM 订单明细 limit 1000

Snag_5a6df4a.png

2.2 设计填报表格

设计填报表格,将数据集字段拖到对应单元格中,A2~F2 单元格添加文本控件,如下图所示:

Snag_5ab3b23.png

2.3 设置填报属性

菜单栏点击模板>报表填报属性,新增内置 SQL 提交,如下图所示:

1600757253152484.png

2.4 设置行后分页

设置行后分页是为了限制每页展示多少行数据,通过分页>行后分页条件属性实现,公式为:(row() - 1) % 200 = 0,如下图所示

注:此公式中的 -1 是因为示例中有一行为表头标题,所以需要减去不参与计算,实际应用时请根据自己的报表表头的行数进行减行!

1600756672658751.png

2.5 设置模板参数

打开目录,找到对应的报表,类型选择填报,并设置参数名称为__cutpage__=v,类型为字符串,值为 v

image.png

2.6 冻结标题行

为了翻页时冻结标题行,需要如下图设置:

1600757728870525.png

2.7 效果预览

保存模板,点击填报预览,并在 URL 后面添加参数&__cutpage__=v并回车重新预览模板,效果如下图所示

1600758908932843.png

注:不支持移动端预览。

3. 模板下载编辑

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\Cutpage\填报分页.cpt

点击下载模板:填报分页.cpt