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

目录:

1. 概述编辑

1.1 应用场景

部分填报报表较大,需要填写的内容很多,填一次耗时较长,期间可能遇到误操作、网络中断、服务器问题等突发状况,可能导致用户辛苦填写的数据,在提交时数据完全丢失。

有时,填写的内容处于待定状态,用户可能需要修改但未确定如何修改,此时数据不需要进入数据库,希望可以进行临时存储。

1.2 功能简介

FineReport 提供填报暂存功能。在填报报表 Web 页面,业务人员可以随时进行数据的暂存和清空操作。

暂存的数据临时保存在 FineReport 内置的 HSQL 数据库中,用户可以手动清空。在正式提交后,这些暂存的数据也会自动清空。

注:不支持图片、附件的暂存

2. 操作步骤编辑

2.1 暂存设置

2.1.1 手动暂存

打开模板%FR_HOME%\webapps\webroot\WEB-INF\reportlets\demo\form\简单自由填报.cpt

点击模板>模板 Web 属性>填报页面属性,双击暂存按钮,添加到工具栏中,如下图所示:

1577671925543446.png

保存模板,点击填报预览,填报部分信息,点击暂存按钮后,手动暂存数据成功,如下图所示:
1577672128962217.png

2.1.2 自动暂存

点击模板>模板 Web 属性>填报页面属性,勾选自动暂存,如下图所示:
1577672873675825.png

设置自动暂存,则控件编辑后,自动保存。

注:自动暂存的数据在提交成功后自动清除。

2.2 暂存查看

填报暂存的数据保存在 FineDB 数据库中的 PUBLIC.FINE_WRITE_STASH 表中。

2.2.1 新建数据连接

点击服务器>定义数据连接,新增一个 JDBC 数据连接,如下图所示:

1577674132361743.png

具体连接信息如下表:

value
数据库others
驱动器com.fr.third.org.hsqldb.jdbcDriver
URL

jdbc:hsqldb:file://${ENV_HOME}/embed/finedb/db

注:Windows/Linux/Mac 通用

用户名sa
密码无需输入

2.2.2 查看暂存数据

查看 PUBLIC.FINE_WRITE_STASH 表,内容即为填报暂存的数据,如下图所示:

1577674536886182.png

表格信息如下表所示:

ID定义解释
id主键-
username用户姓名-
reportpath报表路径是存入报表物理路径,而不是在平台中的路径
data暂存数据存csv格式,单元格+内容

2.3 暂存清空

点击模板>模板 Web 属性>填报页面属性,双击清空按钮,添加到工具栏中,如下图所示:
1577674749637832.png

点击清空按钮,弹出确认框信息:是否要清空暂存数据?点击确认按钮,暂存数据清空,如下图所示:
1577674917592919.png

3. 注意事项编辑

问题描述:

当数据决策系统未开启模板认证,用户不登录系统,直接通过 URL 访问填报模板。

此时暂存数据,数据库表 PUBLIC.FINE_WRITE_STASH 的 username 字段为空。

则不同用户暂存的数据可共享查看,效果如下图所示:

Snag_52cdab.png

解决方案:

决策系统开启模板认证,强制用户登录后查看及操作模板,模板认证开启方法参考 模板认证(模板权限控制)