web報表工具FineReport常用函數的用法總結(報表函數),報表finereport

來源:互聯網
上載者:User

web報表工具FineReport常用函數的用法總結(報表函數),報表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。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.