移动端报表实现离线填报功能解决方案

1.描述

对于经常填报报表的人而言,经常会面临以下的情况:比如在有些场景下没有网络,只能将数据暂存到本地,等有网络时,再将数据提交入库;或者有时需要将数据暂存下来,过段时间后再补充完整。那么在离线的情况下这些情况该如何实现呢,以我平时的工作经验对这些问题做一个归纳总结,下面用我常用的报表开发工具FineReport 移动端给大家做一个详细的演示。

2. 实现方法

2.1 暂存

移动端填报模板,加一个“暂存”按钮,如下图:

点击暂存后,如下图,可为暂存的填报模板命名,文本框内,默认有根据模板名自动生成的名字(模板名+自动编号),如“员工信息录入1”,可修改。如果重名,要给出提示。

数据暂存成功后,给出toast,“已存入设置-未提交数据中”,并将页面内容清空,以便进行下一次填写。

注:a.通过“提交”按钮的显示隐藏来控制”暂存“按钮显示隐藏,即如果某个模板的没有提交,则也没有暂存。

b.暂存成功后,将数据清空,暂时不提供事件,使其不清空。

c.“提交”按钮始终存在,不受模式影响。

d.点击暂存的同时,生成缓存数据的封面缩率图,此时封面缩率图为该模板当时填写的情况。当然如果某一张模板通过fs自定义了封面,还用原封面。

e.退出模板时,如果有数据没有暂存,或没有提交,则会有未提交提醒,当然前提是模板配置了该选项。若模板没有数据需要暂存或提交,则不会有该提醒

2.2 暂存后处理

在设置中,加一按钮,点击进入未提交数据。


 

a.提交全部

这时点击,提交全部,会将所有缓存数据全部提交。提交全部时,按照表单先后顺序进行入库。

b.编辑某套模板的数据(进入模板)

点击某套模板,进入编辑数据,若点击提交,则将这套缓存数据直接入库,原”未提交数据“中,这套数据去掉;若点击暂存,则是修改这套暂存数据;点击返回,是返回到“未提交数据”目录。

c.编辑

点击编辑,变化如下图,可“删除”选中数据,可“提交选中”数据。


 

若没有选中,提交或删除时会给出提示。

再编辑时:

如果存在文件控件,且单文件上传了照片,则再编辑时,可以看到照片;文件上传控件,再编辑时可以使用;

如果有超链,则不支持;

如果有下拉框,下拉树,复选框,单选框等需要数据字典的控件,则只缓存当时模板参数对应的数据字典,而不支持联动。

d.数据提交

数据提交,有进度提示,提交时会执行校验,校验失败会给出提示,并且会有标记。标记出这套模板提交时校验出错。

修改后,校验通过,填报成功。


 

 

时间: 2024-08-09 06:32:10

移动端报表实现离线填报功能解决方案的相关文章

实现高端报表工具的缓存功能

高端的报表工具都提供了缓存机制,避免报表重复计算带来额外性能开销,节省CPU资源,实现结果共享.报表在计算过程中,大部分时间(85%以上)都消耗在数据源(准备)上,集算器可以用简单的方法实现数据源的缓存复用,让普通报表工具也拥有缓存机制. 实现数据源缓存有两个关键,根据报表不同的参数和宏生成不同的报表缓存:缓存超时时间需要重新计算.下面以实例说明. 报表描述 根据销售记录表计算各销售人员本年销售额和上年销售额,及其增长率,统计客户数与大客户数(订单金额超过10000).报表样式如下: 该报表供公

移动端报表如何实现离线查看报表功能

1. 描述 对于移动端报表而言,查看报表经常会有以下问题:查看缓存数据相比于实时数据,减少了数据传输时间,效率提高:而且部分客户不需要实时看数据,定期取数据,或者手动更新数据已经能满足需求了:有时由于网络环境不好,或者流量有限的时候,看不了实时报表.最好的解决办法就是实现离线查看报表,根据我平时报表的开发经验,以自己常用的报表开发工具FineReport 移动端为例,具体给大家讲讲这个离线查看的功能可以如何实现. 2. 移动端离线模式 2.1 离线模式 登录服务器前,若网络异常,则使用弹窗提示

润乾报表与 ActiveReport JS 功能对比

简介 润乾报表是用于报表制作的大型企业级报表软件,核心特点在于开创性地提出了非线性报表数学模型,采用了革命性的多源关联分片.不规则分组.自由格间运算.行列对称等技术,使得复杂报表的设计简单化,以往难以实现的报表可以轻松实现,避免了大量的复杂 SQL 编写与前期数据准备,报表设计的效率提高了一个数量级.润乾报表大概有 20 年的历史,产品成熟稳定. ActiveReport JS 是一个轻量级的报表解决方案,提供简单丰富的 API,是目前葡萄城新推出的报表工具,所以还在测试和不断完善中. 开发语言

移动端报表JS开发示例--获取定位

上次分享了移动端报表JS开发的系统概念,后来我又回去摸索了一些案例.之前接触到的FineReport的APP客户端可以用来打卡签到,就好奇研究了以下,这次就来聊一聊报表移动端开发如何实现定位功能. 1. 解决思路 在用FineReport设计模板的时候添加一个按钮控件,点击该按钮的时候,获取当前地理位置,并将该位置信息复制给某个单元格,最后在客户端填报当前模板即可. 2. 示例 实现如下图所示效果,点击地理位置按钮获取当前位置与当前时间,并显示在下方对应的单元格中: 2.1 模板制作 打开设计器

在离线填报的场景下,用SpreadJS完成权限控制

SpreadJS ,作为一款基于 HTML5 的纯前端电子表格控件,兼容 450 种以上的 Excel 公式,可为用户带来亲切的 Excel 使用体验,并可满足企业IT部门 Web Excel 组件开发.数据填报.Excel 类报表设计.表格文档协同编辑等业务场景. 离线填报,作为数据填报的典型应用场景之一,可以让业务人员在生产环境中,随时随地随心的完成填报工作,而不受限于网络. 离线填报的一般实现流程是: 输出HTML 离线报表 非网络环境下进行数据填报 联网后,再进行数据提交 因为涉及到异步

【转】可在广域网部署运行的QQ高仿版 -- GG叽叽V3.2,增加离线消息、离线文件功能(源码)

(几句题外话:虽然就如何将GG发展为一个有商业价值的产品,我还没有很清晰明确的思路,但是从GG发布以来,通过GG认识了一些朋友,也接了一些小单子,赚了一点小钱.有了一点甜头,目前和2.3个好朋友一起做做小项目也是不错的,这未尝不是一条养家糊口之路了?呵呵) 距离上次更新(GG叽叽V3.0,完善基础功能)正好有1个月了,在这个月中,我主要为GG增加了离线消息和离线文件的功能.之所以将这两个功能提前实现,是因为至GG发布以来,就有很多朋友问我在GG的基础上如何实现离线消息和离线文件.看来作为一个能用

可在广域网部署运行的QQ高仿版 -- GG叽叽V3.2,增加离线消息、离线文件功能(源码)

(几句题外话:虽然就如何将GG发展为一个有商业价值的产品,我还没有很清晰明确的思路,但是从GG发布以来,通过GG认识了一些朋友,也接了一些小单子,赚了一点小钱.有了一点甜头,目前和2.3个好朋友一起做做小项目也是不错的,这未尝不是一条养家糊口之路了?呵呵) 距离上次更新(GG叽叽V3.0,完善基础功能)正好有1个月了,在这个月中,我主要为GG增加了离线消息和离线文件的功能.之所以将这两个功能提前实现,是因为至GG发布以来,就有很多朋友问我在GG的基础上如何实现离线消息和离线文件.看来作为一个能用

移动端报表使用教程-如何查看报表

根据我的上一篇博文中我已经演示过如何绑定或撤销移动设备,如果配置好服务器,管理员对该设备授权之后,就可以在设备上查看FineReport报表了. 1. 操作步骤 移动端登录系统之后,进入报表查看界面,如下图: 1.1 普通报表查看 点击报表查看,段落明细表,可查看报表,如下图: 从图中可看到该报表有2页,如果我们需要查看第2页,则需要点击,进行翻页,进入第2页,如下图: 1.2 参数报表查看 打开一张参数查询报表,我们这打开员工信息报表. 下拉框选择 下拉框复选框选择 其它控件的操作过程相似,这

HTML5 的 applicationCache 应用程序缓存离线存储功能与 manifest 文件

一. 实现 HTML5 applicationCache 的步骤 一般的操作步骤 1. 新建 manifest 文件 如文件名为  lzwme.manifest,内容配置参考如下: 01 CACHE MANIFEST 02   03 # version 1.2  for update cop help 04   05 # 直接缓存的文件 06 CACHE: 07     /wp-content/themes/weisayheibai/images/meta_author.png 08     /