前言:在报表设计中咱们常常会用到表达式,就像在 excel 中用到公式一样,有了表达式会使咱们的报表设计工作事倍功半。
积木报表蕴含哪些表达式?
积木报表欠缺了原有表达式,在原有根底上,扩大了数据集表达式、单元格表达式、统计函数、行号函数、日期函数、数学函数、字符串函数、条件表达式、色彩表达式、判断函数,根本运算符函数及零碎函数。
上面咱们就来看一下都包含哪些表达式及其用法吧。
1. 数据集函数
数据集函数蕴含 sum(求和)、average(求平均值)、max(求最大值)、min(求最小值) 及根底运算符(+-*/)
示例: 以 sum 为例
- =sum(#{jm.money},#{jm.extend_money}) 能够对多列求和
#{jm.money} # 示意数据集 jm 是一个汇合
${jm.money} $ 示意数据集 jm 是一个对象(单数据)
2. 单元格函数
单元格函数也蕴含:sum(求和)、average(求平均值)、max(求最大值)、min(求最小值) 及根底运算符(+-*/)
示例: 以 sum 为例
- =sum(C6) 对 C6 单元格求和,如果 C6 单元格是表达式如 ${db.count},将对该页面表达式循环进去的所有数据求和
- =sum(A6,C6) 对 A6 和 C6 单元格求和
- =sum(A6:C6) 对 A6 到 C6 单元格求和
3. 统计函数
统计函数蕴含 dbsum(求和)、dbmax(求最大值)、dbmin(求最小值)、dbaverage (求平均值)
是对指定数据集指定字段,对该字段所有数据进行计算
例如 dbsum 比照 sum 函数区别:dbsum 统计数据集所有数据,sum 只反对当前页数据
示例 以 dbsum 为例
- =dbsum(jm.money)
4. 行号函数
行号函数:通过行号函数实现自增序号
示例:
- =row()
- 多个列表须要行号,须要设置一个数字 参数辨别计数器如:=row(1) =row(2)
5. 日期函数
日期函数蕴含 date(获取年月日)、time(获取时分秒)、year(获取年)、month(获取月)、day(获取天)、now(获取以后工夫长整型数值)、nowstr(获取以后工夫字符串)
示例: 以 date 为例
- =date(“1982-08-09”) 返回日期:1982-08-09 00:00:00
- =date(“1982-08-09 10:20:30”) 返回日期:1982-08-09 00:00:00
- 汇合:=date(‘#{jm.create_time}’)
- 对象:=date(‘${jm.create_time}’)
- 单元格:=date(A1)
6. 数学函数
数学函数蕴含 rand(获取随机数)、round(四舍五入)、abs(取绝对值)、floor(取整)、ceil(取整)、trunc(取整)
示例: 以 round 为例
- =round(3451251.274,0)
- =round(#{db.salary}, 2)
7、字符串函数
字符串函数蕴含 char(unicode 编码或者 ascii 编码转换)、cnmoney(大写金额转换)、concat(字符串拼接)、lower(转小写)、upper(转大写)、date_str(日期转为字符串)
示例: 以 cnmoney 为例
- =cnmoney(1.232) 返回:壹元贰角叁分
- 汇合:=cnmoney(#{jm.money})
- 对象:=cnmoney(${jm.money})
- 单元格:=cnmoney(A1)
8、条件表达式
条件表达式是对数据进行条件判断,蕴含 case、if
示例:
- =case(‘#{dd.sex}’==’1′,’ 男 ’,’ 女 ’)
- =case(1==1,1,2) ->1
- =(let sex= ‘#{dd.sex}’; if(sex== ‘1’){‘ 男 ’}elsif(sex== ‘2’){‘ 女 ’}else{‘ 未知 ’})
- =(if(A1==1){return (A1+B1)*200;})
9、色彩表达式
色彩表达式蕴含:color(单元格字体 / 背景色彩)、=rowcolor(整行字体 / 背景色彩)
示例: 以 color 为例
- 汇合:=color(‘#{jm.salse}’,’#ffffff’,’#171516′)
- 对象:=color(‘${jm.salse}’,’#ffffff’,’#171516′)
- 单元格:=color(A1,’#ffffff’,’#171516′)
- 固定值:=color(‘2′,’#ffffff’,’#171516′)
10、判断函数
判断函数是对数据进行判断; 蕴含 istime(工夫判断)、isdate(期间判断)、isnumber(数字判断)、intval(参数为空则返回默认值 0)、strval(参数为空则返回默认值 nil)
示例: 以 istime 为例
- =istime(“10:20:30”) 返回 true
- =istime(‘#{jm.create_time}’)
- =istime(‘${jm.create_time}’)
- =istime(A1)
我想试一试