移动端报表JS开发示例
最近对移动端的报表开发颇有研究,细磨精算了好久,虽然到现在还是”囊中羞涩”,但决定还是先抛砖引玉,拿点小干货出来和大家分享。
研究的工具是比较有代表性的FineReport。
1、 移动端哪些地方支持调用js
web事件 | 分页预览 | 填报预览 |
加载结束事件 | √ | X |
填报成功事件 | -- | √ |
报表内部js | 单元格 | 图表 |
超级链接js | √ | √ |
控件事件 | 参数控件 | 填报控件 | 表单控件 |
初始化后事件 | √ | √ | X |
编辑前 | √ | √ | X |
编辑后 | √ | √ | X |
编辑结束 | √ | √ | X |
点击 | √ | √ | X |
状态改变 | √ | √ | √ |
2、报表控件支持的脚本函数
函数名 | 函数描述 | 填报控件 | 参数控件 | 表单控件 |
setEnable | 设置控件的可用性 | √ | √ | √ |
isEnable | 判断控件是否可用 | √ | √ | √ |
setVisible | 设置控件的可见性 | √ | √ | √ |
isVisible | 判断控件的可见性 | √ | √ | √ |
setValue | 设置控件值 | √ | √ | √ |
getValue | 获取控件的值 | √ | √ | √ |
setText | 设置控件的显示值 | √ | √ | √ |
getText | 获取控件的显示值 | √ | √ | √ |
reset | 重置控件 | √ | √ | √ |
fireEvent | 触发指定名字的事件 | √ | √ | √ |
3、报表控件支持的脚本函数
函数名 | 函数描述 | 补充说明 | 实现 |
contentPane | 当前报表对象 | 无 | √ |
currentPageIndex | 当前所在页 | contentPane常用属性 只有分页预览报表才有 | √ |
reportTotalPage | 总页数 | contentPane常用属性 只有分页预览报表才有 | √ |
gotoFirstPage | 首页 | 无 | √ |
gotoPreviousPage | 上一页 | 无 | √ |
gotoNextPage | 下一页 | 无 | √ |
gotoLastPage | 末页 | 无 | √ |
gotoPage(n) | 跳转到某一页 | 包含1个参数,表示跳转到第几页 | √ |
4、 填报预览报表支持的脚本函数
函数名 | 函数描述 | 补充说明 | 实现 |
contentPane | 当前报表对象 | 无 | √ |
verifyReport | 数据校验 | 只有填报表才可以用,contentPane常用方法 | √ |
writeReport | 提交报表 | 只有填报表才可以用,contentPane常用方法 | √ |
verifyAndWriteReport | 数据校验后提交报表 | 只有填报表才可以用,contentPane常用方法 | √ |
curLGP | current logicpane | contentPane常用属性,只有填报预览及表单预览下才有 | √ |
getCellValue(cell) | 获取指定格子的值 | 包含1个参数,单元格,只有填报下有,curLGP常用方法 | √ |
getCellValue(col, row) | 获取指定格子的值 | 包含2个参数,列和行,只有填报下有,curLGP常用方法 | √ |
setCellValue(cell, null, value) | 设置指定格子的值 | 包含3个参数,单元格,空和值,只有填报下有,curLGP常用方法 | √ |
setCellValue(col, row, value) | 设置指定格子的值 | 包含3个参数,列,行和值,只有填报下有,curLGP常用方法 | √ |
getWidgetByCell | 获取指定单元格中的控件 | 包含1个参数,单元格,contentPane常用方法 | √ |
getWidgetByName | 获取指定名字的控件 | 包含1个参数,控件名,contentPane常用方法 | √ |
getWidgetsByName | 获取指定名称的扩展控件,返回一个数组 | 包含1个参数,控件名,contentPane常用方法 | √ |
5、常用的工具类脚本函数
函数名 | 函数描述 | 补充说明 | 实现 |
FR.Msg.alert | 弹出消息框函数 | 包含3个参数,分别表示:标题,内容,回调函数 | √ |
FR.Msg.confirm | 值确认弹出框函数 | 包含3个参数,分别表示:标题,值,回调函数 | √ |
FR.Msg.prompt | 可修改值的值确认弹出框函数 | 包含4个参数,分别表示:标题,说明,值,回调函数 | √ |
FR.Msg.toast | 在页面边缘出现的消息提示块,一小段时间后自动消失 | 包含1个参数,表示要提示的信息 | √ |
FR.cjkEncode | 进行cjk编码 | 包含1个参数,字符串 | √ |
FR.cjkDecode | 进行cjk解码 | 包含1个参数,字符串 | √ |
FR.location | 地理位置获取 | 包含一个回掉函数返回获取状态及信息 | √ |
FR.doHyperlinkByGet /FR.doHyperlinkByPost | 超级连接 | 包含2个参数,分别表示:超链的url, 传递的参数 | √ |
FR.ajax | 异步请求函数 | / | √ |
_g().parameterCommit() | 分页预览及填报预览自动查询 | / | √ |
contentPane.setAppearRefresh() | 页面再现的时候自动刷新 | / | √ |
以上对应着报表的功能大致罗列了以下框架,下面先举一些小示例
获取控件的一系列方法
this.options.form.getWidgetByName("控件名"); //参数界面及表单中获取控件
contentPane.getWidgetByCell("单元格"); //填报界面获取控件
contentPane.getWidgetByName("控件名"); //填报界面获取控件
填报成功后刷新当前页
var url = "/WebReport/ReportServer?reportlet=js/shauxindangqian.cpt&op=write&__replaceview__=true";
FR.doHyperlinkByGet(url,{para:paravalue}); //刷新当前页面
js获取表单图表组件并刷新数据
var c=FR.Chart.WebUtils.getChart("chart0");
c.dataRefresh();
延时函数
setTimeout(function() { }, 500);
A超链至B填报,B提交数据后返回A时,A自动刷新显示新的数据
contentPane.setAppearRefresh(); //在A的加载结束后事件中添加js
以后会陆续分享一些移动端实用功能的应用实例啦,还有HTML5。
移动端报表JS开发示例相关推荐
- 移动端报表JS开发示例--获取定位
上次分享了移动端报表JS开发的系统概念,后来我又回去摸索了一些案例.之前接触到的FineReport的APP客户端可以用来打卡签到,就好奇研究了以下,这次就来聊一聊报表移动端开发如何实现定位功能. 1 ...
- java获取移动端定位_移动端报表JS开发示例--获取定位
上次分享了移动端报表JS开发的系统概念,后来我又回去摸索了一些案例.之前接触到的FineReport的APP客户端可以用来打卡签到,就好奇研究了以下,这次就来聊一聊报表移动端开发如何实现定位功能. 1 ...
- 移动端报表JS开发演示样例
近期对移动端的报表开发颇有研究,细磨精算了好久,尽管到如今还是"囊中羞涩",但决定还是先抛砖引玉,拿点小干货出来和大家分享. 研究的工具是比較有代表性的FineReport. 1. ...
- js 点击button切换颜色_ThingJS 和three.js开发示例对比,让开发早点下班回家!3D 可视化...
ThingJS 3D框架简化了开发工作,面向对象和模块化的特点使得网页代码更加易于管理和维护,并且提供近200个官方示例,直接获取API能力,不需要基于3D概念进行开发,适合3D商业项目快速生成!距离 ...
- SharePoint 2013 APP 开发示例 (六)服务端跨域访问 Web Service (REST API)
上个示例(SharePoint 2013 APP 开发示例 (五)跨域访问 Web Service (REST API))是基于JavaScript,运行在web browser内去访问REST AP ...
- 《Three.js 开发指南》源码示例说明以及在线demo(原书第二版)附第三版的代码下载
<Three.js 开发指南>基于原书第二版 源码来自华章出版社官网随书源码,修改替换了其中不能跑的示例,保证每个demo都可以运行. 源码以及示例说明下载: git下载地址 huazha ...
- Node.js开发入门—语音合成示例
出于项目需要,搞了一个语音合成(TTS)的小示例,使用的是OKVoice. 我想在PC上测试,OKVoice的快速接入API可以实现我的目的,文档在这里:http://dev.okvoice.com/ ...
- Java Web 后台中餐饮业报表系统开发实例
本期葡萄城公开课,我们诚邀石家庄品智技术有限公司,高级软件工程师--刘永政先生,为大家在线分享餐饮业报表系统设计模式,以及在 HTML5 报表浏览器.Java 架构中跨平台使用ActiveReport ...
- LR敏捷软件平台v7开发示例,功能设计模块化,UI特色明显(长文)
*框架整体代码层次 整体采用多层工厂/依赖注入模式. *开发示例 力软框架提供了比较友好的开发向导 在用力软框架进行快速开发时有两种开发模式,一种是纯自定义表单无需编译的,一种是需要生成代码,重新编译 ...
最新文章
- x264代码剖析(一):图文详解x264在Windows平台上的搭建
- python中如何在写文件之前删除文件内容_Python:文件的读取、创建、追加、删除、清空...
- ACE框架解读 - 源码篇
- access在sql中横向求和_access在sql中横向求和_求和还用Sum函数就out了,快捷键Alt+=一秒搞定,操作简单更高效......
- springboot创建多个对象
- 9206-1118-周三 猜拳小游戏一次性版本
- (21)xilinx PCIE 开发方法(学无止境)
- 软件究竟是如何传播的?
- Android 10.0修改语言设置简体中文(中国)为简体中文(中国大陆)
- Qt视频播放器界面Demo
- ROS 安装教程Ubuntu16.04(2022年最新)
- 数据库:order by排序语句的用法
- 计算机管理格式化硬盘,磁盘管理格式化硬盘出错的解决方法
- 国际象棋 java_A和B和国际象棋
- python打开伪终端_关于 macOS 伪终端(PTY)的学习
- 入手评测 华硕灵耀Pro16和联想YOGA 16s哪个好
- TVS (瞬态二极管)
- MFO问题与MFEA算法
- 「文献」杂合基因组的策略思路
- 图纸打印什么时候用蓝图_cad图怎么打印成施工蓝图
热门文章
- week06 12 我们准备数据 前端调用rpc 前后端联调一下
- 小心sae的jvm异常导致的Error 404 – Not Found.No context on this server matched or handled this request....
- Form验证之简单应用
- 简单实现 C# TabControl 不显示选项卡标题
- 幼儿使用计算机亮度,使用夜灯会影响孩子的视力?真相究竟是什么
- ReentrantLock1.8源码
- Centos7下搭建FastDFS+Nginx
- 第二阶段冲刺 第四天
- getFullYear 方法
- HDU4619--Warm up 2