• 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。

  • 相关阅读:
    CAS在tomcat6.0.18下的SSO
    CAS在tomcat6.0.18下的SSO
    PL/SQL 0.几秒出结果,SQL效率一定高吗?
    优化大型复杂SQL
    C++ ProtoBuf小结
    protobuf c++入门
    Oracle_inner join,left join,right join,full join 的区别,用例子说明
    Linux_查看修改SWAP大小
    Oracle 优化器
    Oracle 行转列两种方法
  • 原文地址:https://www.cnblogs.com/liang123/p/6325096.html
Copyright © 2020-2023  润新知