常见问题
遇到问题了吗?不用担心,答案都在这。
全站搜索

    如何透过程序将金额转换为大写国字?

    若需要将金额以大写国字呈现,除了可以使用 SPELLNUMBER 公式以外,也可以透过写程序来新增一个可以填入大写国字的动作单击钮,请依照以下步骤设置。

    步骤一:打开 JavaScript 工作流程编辑器

    在任一表单名称上单击下右键,并选择 JavaScript 工作流程

    步骤二:选择表单并切换至 Installed sheet scope

    拷贝并贴上以下程序代码:

    function dx(nodeId) {
    var query = db.getAPIQuery("/ragicforms8/20004");
    var entry = query.getAPIEntry(nodeId); 
    var n=entry.getFieldValue(field ID);
    
    if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n))
    return "非法数据";
    //var unit = "千百拾亿千百拾万千百拾元角分", str = "";
    var unit = "千佰拾亿千佰拾万千佰拾元角分", str = "";
    n += "00";
    var p = n.indexOf('.');
    if (p >= 0)
    n = n.substring(0, p) + n.substr(p+1, 2);
    unit = unit.substr(unit.length - n.length);
    for (var i=0; i < n.length; i++)
    str += '零壹贰叄肆伍陆柒捌玖'.charAt(n.charAt(i)) + unit.charAt(i);
    var n2= str.replace(/零(千|佰|拾|角)/g, "零").replace(/(零)+/g, "零").replace(/零(万|亿|元)/g, "$1").replace(/(亿)万|壹(拾)/g, "$1$2").replace(/^元零?|零分/g, "").replace(/元$/g, "元整");
    entry.setFieldValue(field ID, n2);
    entry.save();
    }
    

    上述程序代码中,有三个部分需要依据你的表单进行调整:

    1. 表单路径

    var query = db.getAPIQuery("/ragicforms8/20004");
    

    请将 /ragicforms8/20004 替换为想新增动作单击钮的表单路径,

    例如:https://www.ragic.com/accountname/tabname/1?PAGEID=wSM (忽略后面的 ?PAGEID=wSM 部分)

    便在此处填入:

    var query = db.getAPIQuery("/tabname/1");
    

    2. 参照字段 ID

    var n=entry.getFieldValue(field ID);
    

    请将 field ID 替换为数字金额字段的字段 ID。例如,若该字段的 ID 为 1002374,则填入:

    var n=entry.getFieldValue(1002374);
    

    3. 填入显示大写金额的字段 ID

    entry.setFieldValue(field ID, n2);
    

    field ID 替换为你希望填入大写金额的字段 ID。例如,若大写字段的 ID 为 1008313,则填入:

    entry.setFieldValue(1008313, n2);
    

    完成后,别忘了保存设置再离开画面喔!

    步骤三:手动创建动作单击钮

    前往想要增加动作单击钮的表单设计模式,点选左侧的表单设置 > 动作单击钮。接着,使用以下设置手动新增一个动作单击钮:

    单击钮名称:可以自由命名动作单击钮

    单击钮类型:请选择 JS Workflow

    动作:请填入 dx({id})

    其他自订动作单击钮的相关设置可以参阅这里

    设置完成后,点选新增单击钮并保存设计,即可在表单页右下角看到你新增的动作单击钮,点击单击钮便可以在指定字段填入大写金额了。

    提供回馈给 Ragic

    请告诉我们您的意见:(多选, 必填)

    请针对上方勾选项目提供详细说明:

    截屏能够让我们更清楚了解您的建议:

    感谢您的宝贵意见!

    马上登记
    免费试用 Ragic!

    用 Google 帐号登记

    立即科技 Ragic, Inc.
    02-7728-8692
    info@ragic.com
    台北市中正区南昌路二段81号9楼
    用户条款 | 隐私权政策