java报表工具FineReport的公式编辑框的语法简介
FINEREPORT用到公式的地方非常多,单元格(以=开头的便被解析为公式),条件显示,数据字典,报表填报属性值定义,图表标题,轴定义,页眉页脚,甚至单元格的其他属性中的鼠标悬浮提示内容都可以写公式,虽然那个编辑框非常不像。
简单的说下自己感觉的公式要注意的几个地方:
1.if语句语法刚接触感觉比较奇怪,if(条件式子,值1,值2),if可以嵌套,if(条件式子1,值1,if(条件式子2,值2,值3))。
2.switch语句也是,具体函数我不说了。
3.对于判断用单等号和双等号都行。
4.对于字符串用单引号和双引号都行。
4.1bool只有true或者false。与逻辑还是&&或逻辑还是||。
4.2判断为空的话用isnull()。
4.3format公式。format公式比较灵活。format($$$,"0.00")可以把当前单元格的数字转换成两位小数的形式,也可以用format(12,"预算值:0.00万元")把12变成预算值:12.00万元,这个是不是和自定义显示数据字典神马的有异曲同工之妙啊。有一点要注意的是,满位数年月日的话样式是"yyyy-MM-dd",而不是"yyyy-mm-dd",小写的mm的意思是分钟(minute)。
5.公式中取单元格的话直接用A1这种或者b2,跨sheet取值的语法是sheet1!A1.(英文情况)这些文档有。
6.sql函数,这个是在公式中直接调用数据库的方法。
7.数据集公式。
数据集公式是公式直接调用数据集的方法。这个公式说明中没有(有几个零散的和数据集相关的函数),我说一下。
比如有个模板数据集ds1,其字段为地区、销售员、销量,则可以用ds1.group(地区)获取ds1的地区字段,group是分组,从而容易知道select是列表,ds1.select(销售员)便是列表形式获取销售员字段,可以加上限制条件,比如ds1.select(销售员,销量=111)就是获取销售量为111的销售员集合。
跟数据集相关的几个函数有colcount colname row rowcount 等。
8.层次坐标。
层次坐标是公式里面比较难点的,“可玩性”非常强,东西比较多,只能记住最常用的几个,能解决各种各样BT的需求。较为常用的一个就是排名公式了=count(B3[!0]{B3 > $B3})+1。自己看吧。http://www.finereporthelp.com/help/1/4/7.html
9.过滤公式。
过滤有两个条件类型,其一是公式条件。这个公式有一点点不同的是,可以直接写当前单元格的字段所在数据集的任何字段,相对于普通公式要灵活很多。还拿自带的销量表为例,给地区字段所在单元格过滤,公式条件可以直接写:销量==111。
10.条件属性。
条件属性要说的不是公式方面的,用的多了感觉很自然,但是刚接触的时候感觉不太好理解。简单说下。条件属性面板,上面是属性,下面是条件。当下面的条件满足,也就是返回值是true的时候,执行上面的属性设置。
java报表工具FineReport的公式编辑框的语法简介的更多相关文章
- java报表工具FineReport的SQL编辑框的语法简介
感谢大家捧场,这里继续分享关于SQL编辑框的一些语法心得总结,因为数据集定义的面板,也是FineReport报表中最常用的模块之一. 1.我理解的执行过程. 这里其实是生成一个字符串,FineRepo ...
- web报表工具FineReport的公式编辑框的语法简介
FINEREPORT用到公式的地方非常多,单元格(以=开头的便被解析为公式),条件显示,数据字典,报表填报属性值定义,图表标题,轴定义,页眉页脚,甚至单元格的其他属性中的鼠标悬浮提示内容都可以写公式, ...
- web报表工具FineReport的SQL编辑框的语法简介
感谢大家捧场,这里继续分享关于SQL编辑框的一些语法心得总结,因为数据集定义的面板,也是FineReport报表中最常用的模块之一. 1.我理解的执行过程. 这里其实是生成一个字符串,FineRepo ...
- java报表工具FineReport的JS编辑框和URL地址栏语法简介
JS编辑框: 1.FineReport的js. 作为一款BS产品,browser端的JavaScript是必不可少的. FineReport中的js是已经调用了finereport.js的. 大家知道 ...
- web报表工具FineReport的JS编辑框和URL地址栏语法简介
JS编辑框: 1.FineReport的js. 作为一款BS产品,browser端的JavaScript是必不可少的. FineReport中的js是已经调用了finereport.js的. 大家知道 ...
- java报表工具FineReport常用函数的用法总结(数学和三角函数)
ABS ABS(number):返回指定数字的绝对值.绝对值是指没有正负符号的数值. Number:需要求出绝对值的任意实数. 示例: ABS(-1.5)等于1.5. ABS(0)等于0. ABS(2 ...
- java报表工具FineReport使用中遇到的常见报错及解决办法(三)
这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己. 出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有.有报错要看日志.下面简单罗列下常见的问题,大多 ...
- Java报表工具FineReport常见的数据集报错错误代码和解释
在使用finereport制作报表,若预览发生错误,很多朋友便手忙脚乱不知所措了,其实没什么,只要看懂报错代码和含义,可以很快的排除错误,这里我就分享一下finereport的数据集报错错误代码和解释 ...
- Java报表工具FineReport导出EXCEL的四种API
在实际的应用中会经常需要将数据导出成excel,导出的方式除原样导出还有分页导出.分页分sheet导出和大数据量导出.对于excel 2003版,由于限制了每个sheet的最大行数和列数,大数据量导出 ...
随机推荐
- mousewheel
判断鼠标往上还是往下滚动 html代码: <div class="div"> </div> css代码: .div{ position:absolute; ...
- 支持10种格式的 HTML 表格导出 jQuery 插件
HTML 表格导出 jQuery 插件可以帮助用户导出 HTML 表格到 JSON.XML.PNG.CSV.TXT.SQL.MS-Word.MS-Excel.MS-PowerPoint 和 PDF 格 ...
- HTML5 模拟现实物理效果,感受 Web 技术魅力
Ball Pool 是一个基于 HTML5 技术的实验,模拟现实物理效果,让你在 Web 中感受自然物体的运动.玩法介绍:可以随意拖动圆球.点击页面背景.晃动浏览器.双击页面背景或者按住鼠标左键,有不 ...
- [js开源组件开发]network异步请求ajax的扩展
network异步请求ajax的扩展 在日常的应用中,你可能直接调用$.ajax是会有些问题的,比如说用户的重复点击,比如说我只希望它成功提交一次后就不能再提交,比如说我希望有个正在提交的loadin ...
- word开发遇到的问题
1.系统不能安装多个office word版本,建议只安装一个2003版本,越完整越好. 2.安装时候ghost系统会遇到问题,由于很多组件没有完整的安装,因此缺少了很多安装时文件保护要进行提醒的dl ...
- SharePoint 2013 通过审计获取文档下载次数
1.创建一个文档库,进入库设置,找到”Information management policy settings”,点进去,如下图: 2.分别设置”Document”.”Folder”两个,如下图: ...
- ora-00119和ora-00132解决方案
win7 64位 oracle 11g 先登录到sqlplus: sqlplus /nolog; 登录数据库: conn system/manager as sysdba; 然后启动数据库: ...
- Android 动态创建Fragment
Fragment是activity的界面中的一部分或一种行为.可以把多个Fragment组合到一个activity中来创建一个多界面并且可以在多个activity中重用一个Fragment.可以把Fr ...
- iOS文件解压&&数据加密
一文件压缩.这里我们需要一个第三方SSZipArchive(需要添加libz.td) #import "ViewController.h" #import "SSZipA ...
- OC 类方法,对象方法,构造方法以及instancetype和id的异同
OC 类方法,对象方法,构造方法以及instancetype和id的异同 类方法: 类方法是可以直接使用类的引用,不需要实例化就可以直接使用的方法.一般写一些工具方法. 类方法: 声明和实现的时候,以 ...