web报表工具FineReport常用函数的用法总结(报表函数)

说明:本次总结中,凡是以tableName或viewName作为参数因子的。函数在调用的时候均按照先从私有数据源中查找,然后再从公有数据源中查找的顺序。

CLASS

CLASS(object):返回object对象的所属的类。

CNMONEY

CNMONEY(number,unit)返回人民币大写。

number:需要转换的数值型的数。

unit:单位,"s","b","q","w","sw","bw","qw","y","sy","by","qy","wy"分别代表“拾”,“佰”,“仟”,“万”,“拾万”,“佰万”,“仟万”,“亿”,“拾亿”,“佰亿”,“仟亿”,“万亿”。

备注:

单位可以为空,如果为空,则直接将number转换为人民币大写,否则先将number与单位的进制相乘,然后再将相乘的结果转换为人民币大写。

示例:

CNMONEY(1200)等于壹仟贰佰圆整。

CNMONEY(12.5,"w")等于壹拾贰万伍仟圆整。

CNMONEY(56.3478,"bw")等于伍仟陆佰叁拾肆万柒仟捌佰圆整。

CNMONEY(3.4567,"y")等于叁亿肆仟伍佰陆拾柒万圆整。

COL

COL()返回当前单元格的列号。

示例:

如果当前单元格是A5,在A5中写入"=col()"则返回1。

如果当前单元格是C6,在C6中写入"=col()"则返回3。

COLCOUNT

COLCOUNT(tableData):返回tableData中列的个数。

tableData:tableData的名字,字符串形式的。

备注:

先从私有数据源中查找,然后再从公有数据源中查找,返回的是第一个查找到的tableData中列数。

示例:

以我们提供的数据源FRDemo为例

COLCOUNT("Check")等于6。

COLCOUNT("country")等于5。

COLNAME

COLNAME(tableData,colIndex)返回的是tableData中列序号colIndex的列名。

tableData:表示TableData的名字,字符串形式。

colIndex:表示列序号。

备注:

TableData先从私有数据源中查找,再从公有数据源中查找。

示例:

COLNAME("Check",3)等于AcceName。

COLNAME("country",4)等于Area。

EVAL

EVAL(exp):返回表达式exp计算后的结果。

exp:一个表达式形式字符串。

备注:

只要EVAL中的参数exp最终可以转化成一表达式形式的字符串,比如"sum(2,4)","2+7"等等,那么它就可以被计算。

示例:

EVAL("2+5")等于7。

EVAL("count(2,3)")等于2。

EVAL("sum"+"(2,3,5)")等于10。

EVAL(IF(true,"sum", "count") + "(1,2,3,4)")等于10。

EVAL(IF(false,"sum", "count") + "(1,2,3,4)")等于4。

FIELDS

FIELDS(connectionName,tableName):返回tableName这个表中的所有字段名。

示例:

数据库BASE中有个名叫task的表的内容如下:

namestart end

a2008 2009

b2009 2012

那么FIELDS("BASE","task")等于[name,start,end].

FORMAT

FORMAT(object,format):返回object的format格式。

object:需要被格式化对象,可以是String,数字,Object(常用的有Date, Time)。

format:格式化的样式。

备注:

此处的格式中大小写必须严格按照上面例子中的规则,月份:大写MM,年份小写:yyyy或yy,天份:小写dd.

此处作为参数因子的格式可以用‘ ‘也可以用" "引用。

示例:

Format(TODAY(),‘yyyy-MM-dd‘)结果是2008-11-01

INMAP

INMAP(key,value, mapName):判断数据字典mapName中是否包含键值为key,值为value的数据对。返回值为布尔型。有返回TRUE,没有返回FALSE。

key:检测的key。

value:检测的value。

mapName:指定的数据字典名。

备注:

mapName必须为String型的。

示例:

INMAP(1,2, "customerdic")返回 Boolean.TRUE(布尔型的)。

ISNULL

ISNULL(object):判断对象中所有的值是否全部都是Primitive.NULL。

MAP

MAP(key,mapName):返回名字为mapName的数据字典中的key所对应的值。

key:与返回值相应的数据字典中的key。

mapName:指定的数据字典名,注意数据字典名要加引号

示例:

MAP(1,"customername")等于"Yixing HongdaFood Co."。

RECORDS

RECORDS(connection,table,field):返回数据库表table中字段名field下的所有元素。

示例:

数据库BASE中有个名叫task的表的内容如下:

namestart end

a2008 2009

b2009 2012

那么RECORDS("BASE","task","end")等于[2009,2012].

RECORDS(connection,table,field,row)返回table中field字段下的第row行的记录,field可以为列名也可以为列号。

RECORDS("BASE","task","end",2)等于2012.

RECORDS("BASE","task",2,2)等于2009.

REVERSE

REVERSE(value):返回与value相反的逻辑值。

示例:

REVERSE(true)等于false。

ROW

ROW()返回当前单元格的行号

示例:

如果当前单元格为A5,在A5中写入"=ROW()"则返回5。

如果当前单元格为B8,在B8中写入"=ROW()"则返回8。

ROWCOUNT

ROWCOUNT(tableData)返回tableData的行数。

tableData:TableData的名字,字符串形式的。

备注:

先从私有数据源中查找,然后再从公有数据源中查找,返回的是tableData的行数。

示例:

以我们提供的数据源FRDemo为例

ROWCOUNT("Check")等于3。

ROWCOUNT("country")等于18。

TABLEDATAFIELDS

TABLEDATAFIELDS(tableData):返回tableData中所有的字段名。

备注:

先从报表数据集中查找,然后再从服务器数据集中查找,返回的是tableData的列名组成的数组。

示例:

TABLEDATAFIELDS("国家")等于[名字,首都,大陆,面积,人口

TABLEDATES

TABLEDATAS():返回报表数据集和服务器数据集名字。]

示例:

服务器数据集有:ds1,ds2,ds3;报表数据集有dsr1,dsr2.

TABLEDATAS()等于[dsr1,dsr2,ds1,ds2,ds3].

而TABLEDATAS(0)返回服务器数据集名字;TABLEDATAS(1)返回报表数据集名字;

TABLEDATAS(0)等于[ds1,ds2,ds3];TABLEDATAS(1)等于[dsr1,dsr2].

TABLES

TABLEAS(connectionName):返回名为connectionName的数据库中的所有表名。

示例:

假设在FRDemo这个数据库中,有3个表:a,b,c;

那么TABLES("FRDemo")等于[a,b,c].

VALUE

VALUE(tableData,row,col)返回tableData中行号为row,列号为col的值。

tableData:tableData的名字,字符串形式的。

row:行号。

col:列号。

备注:

先从私有数据源中查找,然后再从公有数据源中查找,返回的是tableData的符合条件的值。

示例:

VALUE("country",5,3)等于South America。

VALUE("Simple",8,3)等于jonnason。

时间: 2024-10-08 15:53:44

web报表工具FineReport常用函数的用法总结(报表函数)的相关文章

web报表工具FineReport常用函数的用法总结(数学和三角函数)

最后一次抛砖引玉了,至此finereport所有的常见函数就分享完了,期待能对大家有些许帮助. ABS ABS(number):返回指定数字的绝对值.绝对值是指没有正负符号的数值. Number:需要求出绝对值的任意实数. 示例: ABS(-1.5)等于1.5. ABS(0)等于0. ABS(2.5)等于2.5. ACOS ACOS(number):返回指定数值的反余弦值.反余弦值为一个角度,返回角度以弧度形式表示. Number:需要返回角度的余弦值. 备注: 函数的参数必须在-1和1之间,包

web报表工具FineReport常用函数的用法总结(文本函数)

文本函数 CHAR CHAR(number):根据指定数字返回对应的字符.CHAR函数可将计算机其他类型的数字代码转换为字符. Number:用于指定字符的数字,介于1Number:用于指定字符的数字,介于165535之间(包括1和65535). 示例: CHAR(88)等于"X". CHAR(45)等于"-". CODE CODE(text):计算文本串中第一个字符的数字代码.返回的代码对应于计算机使用的字符集. Text:需要计算第一个字符代码的文本或单元格引用

web报表工具FineReport常用函数的用法总结(日期和时间函数)

DATE DATE(year,month,day):返回一个表示某一特定日期的系列数. Year:代表年,可为一到四位数. Month:代表月份. 若1<=month<= 12,则函数把参数值作为月. 若month>12,则函数从年的一月份开始往上累加.例如: DATE(2000,25,2)等于2002年1月2日的系列数. Day:代表日. 若日期小于等于某指定月的天数,则函数将此参数值作为日. 若日期大于某指定月的天数,则函数从指定月份的第一天开始往上累加.若日期大于两个或多个月的总天

web报表工具finereport常用函数的用法总结(数组函数)

ADD2ARRAY ADDARRAY(array,insertArray, start):在数组第start个位置插入insertArray中的所有元素,再返回该数组. 示例: ADDARRAY([3,4, 1, 5, 7], [23, 43, 22], 3)返回[3, 4, 23, 43, 22, 1, 5, 7]. ADDARRAY([3,4, 1, 5, 7], "测试", 3)返回[3, 4, "测试", 1, 5, 7]. 注意: 如果start为小于1的

java报表工具FineReport常用函数的用法总结(文本和日期函数)

FineReport是比较常用的java报表开发工具,本文总结了常用函数中的文本和日期函数 文本函数 CHAR CHAR(number):根据指定数字返回对应的字符.CHAR函数可将计算机其他类型的数字代码转换为字符. Number:用于指定字符的数字,介于1Number:用于指定字符的数字,介于165535之间(包括1和65535). 示例: CHAR(88)等于"X". CHAR(45)等于"-". CODE CODE(text):计算文本串中第一个字符的数字代

java报表工具FineReport常用函数的用法总结(数学和三角函数)

ABS ABS(number):返回指定数字的绝对值.绝对值是指没有正负符号的数值. Number:需要求出绝对值的任意实数. 示例: ABS(-1.5)等于1.5. ABS(0)等于0. ABS(2.5)等于2.5. ACOS ACOS(number):返回指定数值的反余弦值.反余弦值为一个角度,返回角度以弧度形式表示. Number:需要返回角度的余弦值. 备注: 函数的参数必须在-1和1之间,包括-1和1. 返回的角度值在0和Pi之间. 如果要把返回的角度用度数来表示,用180/PI()乘

web报表工具FineReport最经常用到部分函数详解

之前分别列出来了finereport常用的文本.时间函数的解释,这里应广大朋友的要求,整理了finereport最常用到的一些函数! SUM SUM(number1,number2,-):求一个指定单元格区域中所有数字之和. Number1,number2,-:1到30个参数或指定单元格区域中所有数字. 备注: 函数将直接键入参数中的数值.逻辑值及文本表达式计算在内. 若参数是数组或引用,则只对数组或单元格引用的数值进行计算. 示例: SUM(70,80)等于150. SUM("70"

如何基于报表工具FineReport进行二次开发

随着FineReport的发展,它提供的设计器和服务器应该能够满足绝大部分的需求,完全实现零编码的软件开发.革命性地加快软件的开发以及提高软件的稳定性.但是需求千变万化,而FineReport本身所具备的功能是报表中比较典型的,一些比较有个性的功能无法实现,那么就需要应用开发人间使用网页脚本.API接口等进行深入的开发,而这一点,FineReport报表工具是支持的,那么如何来实现插件开发呢? Ant打包 Ant是一个构建工具,它可以帮助我们将项目开发过程中需要完成的各种步骤组织起来,通过一个简

web报表工具FineReport的SQL编辑框的语法简介

感谢大家捧场,这里继续分享关于SQL编辑框的一些语法心得总结,因为数据集定义的面板,也是FineReport报表中最常用的模块之一. 1.我理解的执行过程. 这里其实是生成一个字符串,FineReport将这个字符串通过设置的数据连接传递到报表中执行.在这个过程中报表应该是先把报表规则的东西,替换成大家都认得的字符串后,对应的数据库执行完,会反馈值,有可能返回报错信息,也有可能返回数据集.这个报错信息应该是对应的数据库给的.所以说同样的sql语句,不同的数据库用不同的sql语法来执行有可能是不同