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

目录:

1. 版本编辑

报表服务器版本
10.0

2. 概述编辑

2.1 问题描述

进行数据填报时,如果数据量过大,由于前端浏览器的性能限制,如果将数据全部展现出来,速度会非常的慢,影响用户体验。

填报是否能像分页预览一样进行分页呢?实现只加载当前页,从而提高性能?

2.1 解决思路

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

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

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

3. 示例编辑

下面我们以1000行数据为例,每页显示200行,分5页显示。

3.1 模板准备

3.1.1 新建数据集

ds1:SELECT * FROM 订单明细 LIMIT 1000

ds2:SELECT * FROM 产品

3.1.2 模板设计

如下图所示,在模板主体中拖曳数据列至 C2~O2 单元格,并设置标题:

3.2 过滤

数据列来源于2个数据集,需要在单元格中设置过滤条件,选中 E2 单元格,在右侧属性面板中选择单元格元素中的选择过滤

条件设置为产品 ID 等于单元格 D2,如下图所示:
222
注:数据列中来自于 ds1 的数据列的父格需设置为 C2,来自于 ds2 的数据列的父格需设置为 E2 。

3.3 分页设置

形如分页预览中的 每页显示固定行数,填报分页也如此设置。选中 C2 单元格,右击条件属性,属性面板自动切换至条件属性面板,添加一个条件属性,如下图所示:
222

3.4 重复标题行、冻结行列设置

由于上面的报表主体中包含的数据列比较多,并且数据量也比较大,则在 Web 端查看报表时,需要设置重复标题行,并且冻结行列,使查看报表时,仍然能知道该行数据的意义,详细请查看 重复与冻结设置

1)重复标题行

选中标题行,右键,选择设置重复标题行。

2)冻结行列

点击菜单栏的模板>重复与冻结设置,在填报冻结栏里面讲第一行以及第三列冻结起来,如下图所示:

3.5 报表样式设计

给报表设置样式,如下图所示:

4. 效果查看编辑

4.1 PC端

4.1.1 使用 URL 预览

点击填报预览,在 URL 后面添加参数__cutpage__=v,即可启用填报分页来查看效果,如下图所示:


4.1.2 平台中预览

在平台中使用填报分页,在添加模板时,设置参数默认值,添加一个参数,名称:__cutpage__,值:v设置如下图所示:

222

预览效果如下图所示:
222

注:填报分页状态下,翻页前,如果修改了当前页的数据,需先保存该页面内容,即传输到服务器端进行保存,那么下次再查看该页内容时,页面显示内容即为编辑后的内容。

注:在保存的过程中,不允许编辑。

注:保存不是提交,报表会自动保存。

4.2 移动端

移动端不支持该参数,仍以普通填报预览方式展现。无翻页按钮。

5. 已完成模板编辑

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

点击下载模板