本地化公式集合

  • Last update:  2022-06-06
  • 一、概述

    1.1 版本

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


    1.2 应用场景

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

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

    二、插件介绍

    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, 星期一

    四、示例

    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")



    4.2 效果预览

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


    五、模板下载

    点击下载模板:本地化函数集合示例.cpt


    Attachment List


    Theme: 报表专题
    Already the First
    • Helpful
    • Not helpful
    • Only read

    滑鼠選中內容,快速回饋問題

    滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

    不再提示

    10s後關閉

    Get
    Help
    Online Support
    Professional technical support is provided to quickly help you solve problems.
    Online support is available from 9:00-12:00 and 13:30-17:30 on weekdays.
    Page Feedback
    You can provide suggestions and feedback for the current web page.
    Pre-Sales Consultation
    Business Consultation
    Business: international@fanruan.com
    Support: support@fanruan.com
    Page Feedback
    *Problem Type
    Cannot be empty
    Problem Description
    0/1000
    Cannot be empty

    Submitted successfully

    Network busy