最新历史版本 :本地化公式集合 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

一、概述编辑

1.1 版本

設計器版本jar包版本插件版本
10.02019-07-31V1.0
11.02022-03-28V1.0


1.2 应用场景

FineReport目前預設的函式無法很好地滿足海外各區域的實際使用場景,為了讓產品國際化實例更加全面、完善,新增本土化函式集合。

在本地函式優化集合 V1.2 中,針對已有公式 CNMONEY(傳回金額大寫)、LUNAR(傳回當前日期對應的陰曆時間)、FORMAT(傳回object的format格式)、TODATEPRO(傳回當前日期對應的公曆時間)做了優化和功能擴展,應對不同地區的場景。效果如下图所示:

二、插件介绍编辑

2.1 插件安装

点击下载插件:本地化公式集合

设计器插件安装方法参照:設計器插件管理

服务器安装插件方法参照:服務器插件管理

三、函数说明编辑

3.1 ZHMONEY

实现CNMONEY(返回金额大写)功能的同时,可以指定显示为简体或繁体。具体说明如下表所示。

函数名称
ZHMONEY(number, unit, locale)
参数

说明

number

必填,同CNMONEY中的number

需要转换的数值型的数

unit

选填,同CNMONEY中的unit

单位

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

locale

选填,字符串类型的locale

如:zh, zh_TW

返回值

若locale为zh_TW,则返回繁体的大写数字。

如:

ZHMONEY(1234567890000.31) → 壹萬貳仟叁佰肆拾伍億陸仟柒佰捌拾玖萬圓叁角壹分

ZHMONEY(3.4567,"wy", "zh_TW") → 叁兆肆仟伍佰陸拾柒億圓整

3.2 ZHLUNAR

实现LUNAR(传回当前日期对应的阴历时间),可以指定显示为简体或繁体。具体说明如下表所示。

函数名称
ZHLUNAR(year, month, day, locale)

参数

说明

year

必填,同LUNAR中的year

month

必填,同LUNAR中的month

day

必填,同LUNAR中的day

locale

选填,字符串类型的locale

如:zh, zh_TW

返回值

若locale为zh_TW,则返回繁体的阴历日期,其他情况都返回简体的阴历日期。

E.g. ZHLUNAR(2020, 6, 4) → 庚子年閏四月十三

ZHLUNAR(2020, 6, 4, "zh_TW") → 庚子年閏四月十三

3.3 DATEFORMAT

DATAFORMAT函数可以将date类型按照模式、区域、历法三个参数转换为String。具体说明如下表所示。

函数名称
DATEFORMAT(date, pattern, locale, chronology)

参数

说明

date

必填,Date类型的参数,可以通过FR中的DATE和TIME公式获取

pattern

必填,用于指定日期格式化后的样式

E.g. GGGGYYYY-MM-dd, EEEE, hh:mm:ssa

参考:https://help.gooddata.com/cloudconnect/manual/date-and-time-format.html

locale

选填,字符串类型的locale

如:zh, zh_TW, en_US,ja_JP

chronology

选填,指定历法

"j"表示日本年号,"m"表示台湾民国历,"t"表示泰国佛历

返回值

DATEFORMAT(TODAY(), "YYYY-MM-dd HH:mm:ss") → 2021-11-08 00:00:00

DATEFORMAT(TODAY(), "YYYY-MM-dd, EEEE", "zh_TW") → 2021-11-08, 星期一

DATEFORMAT(TODAY(), "YYYY-MM-dd, EEEE", "en_US") → 2021-11-08, Monday

DATEFORMAT(TODAY(), "GGGGyy-MM-dd, EEEE", "ja_JP", "j") → 令和03-11-08, 月曜日(注意:需要保证JDK版本为Oracle JDK 7u221, 8u211, 11.0.3或OpenJDK 7u221, 8u212-b03, 11.0.3+7等版本之后才会正常显示“令和”年号)

DATEFORMAT(TODAY(), "GGyyy-MM-dd, EEEE", "zh_TW", "m") → 民國110-11-08, 星期一

3.4 TODATEPRO

TODATEPRO函式可以將民國曆、日本年號及泰國佛曆的日期轉換為yyyy-MM-dd形式、date格式的公曆。具體說明如下表所示。

函式名稱
TODATEPRO(date, pattern, chronology, locale)

參數

說明

date

需要被轉換的日期物件,需要為字串格式

pattern

原日期物件的日期格式。

locale

選填,locale 表示語種。

如:“zh”表示“簡體”, “zh_TW”表示“繁體”,“en_US”表示“英語”,“ja_JP”表示“日語”。

注:locale 可以為空,如果為空,預設顯示簡體的西元日期。

chronology

選填,指定曆法。

"j"表示日本年號,"m"表示臺灣民國曆,"t"表示泰國佛曆。

注:chronology 可以為空,如果為空,預設顯示西元日期。

傳回值

TODATEPRO("民國111-07-01", "GGyyy-MM-dd", "m", "zh_TW") => 2022-07-01

TODATEPRO("平成21年12月01日, 火曜日", "Gy年MM月dd日, EEEE", "j", "ja_JP") => 2009-12-01

TODATEPRO("2566/09/21", "yyyy/MM/dd", "t") => 2023-09-21

四、示例编辑

4.1 报表设计

函式示例

=ZHMONEY(3.45,"w","zh_TW")

=ZHLUNAR(2020, 6, 4, "zh_TW")
=DATEFORMAT(TODAY(),"YYYY-MM-dd EEEE")
=DATEFORMAT(TODAY(),"GGyyy-MM-dd, EEEE","zh_TW","m")
=DATEFORMAT(TODAY(),"GGGGyy-MM-dd, EEEE","ja_JP","j")
=DATEFORMAT(TODAY(),"YYYY-MM-dd, EEEE","en_US")
=DATEFORMAT(TODAY(),"YYYY-MM-dd, EEEE","en_US","t")
=TODATEPRO("民國112-11-15", "GGyyy-MM-dd", "m", "zh_TW")
=TODATEPRO("平成35年11月15日, 水曜日", "Gy年MM月dd日, EEEE", "j", "ja_JP")
=TODATEPRO("2566/11/15", "yyyy/MM/dd", "t")


4.2 效果预览

点击保存,预览效果如下图所示:


五、模板下载编辑

点击下载模板:

本地化公式集合.cpt