java报表工具FineReport的JS编辑框和URL地址栏语法简介

本文详细介绍了FineReport中JS编辑框的使用方法,包括如何调用finereport.js进行报表预览、填报及表单操作,同时对比了JS编辑框与公式交互的区别,并概述了URL参数的作用。

 

JS编辑框:

1.FineReport的js。

作为一款BS产品,browser端的JavaScript是必不可少的。

FineReport中的js是已经调用了finereport.js的。

大家知道,预览报表时,报表servlet会将cpt模板转为html,在这个html的head头部中会引入FineReport的js,这个finereport.js中包含了许多内置的function以及一些公有的属性,不管在模板中还是其他网页中,只要引入了finereport.js,就能够通过FR.xxx的形式调用公有的属性与方法。上面是盗用FR官方文档上的一段话。自己写的web想用FineReport现成的东西的话需要先引用finereport.js。

 

2.区别。

js大致有两种,页面相关状态的事件还有就是按钮相关的事件。按钮有三类,一类是工具栏的,一类是参数面板或者表单模式的,还有一类是填报页面的。不同按钮的某些语句稍微有些区别的。

表单是form,填报是write,以获取控件并给控件赋值为例

this.options.write.getWidgetByName("p1").setValue("aaa");//填报

this.options.form.getWidgetByName("p1").setValue("aaa");//表单,参数界面

 

3.js编辑框调用公式。

公式放在框架"${}"中。

比如var v1="${len('sdf')}";那么v1就为3.

这个跟数据集定义和公式交互可以比较一下。js中""下面的就是字符串,sql其实就是字符串,sql定义的地方是${}里面的是公式,于是推理下JS编辑框中"${}"就应该是公式。

但是这里要注意下,不能就这样简单类比了,毕竟处理方式上还是有区别的,sql那边是把公式参数什么的都一股脑的在报表中拼接完了,再一起送到数据库来跑,js却不能这么简单拼接。

URL地址栏

这边就谈不上什么语法特点了,实际应用中也不会在url中直接写,大多是嵌入或者跳转的时候用。简单说下url中的参数吧。

首先是op参数。可以参看文档。

报表在默认情况下的预览方式是分页预览,当op参数为write时为填报预览,op=view是数据分析,op=form是表单模式

op=fs,数据决策系统

op=fr_platform,报表平台管理

op=excel_submit,后台excel导入填报

op=auth_login,登录的中间页面,需要fr_username和fr_password参数

op=fr_adhoc&cmd=ac_init_analysispane&viewname=数据集名字,单独打开BS设计器

其他的参数:

__bypagesize__ :控制是否分页

__pi__ :是否显示参数界面

__filename__ :控制导出文件名,没有的话默认用模板名

 

转载于:https://www.cnblogs.com/laoA188/p/4450739.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值