若需要将金额以大写国字呈现,除了可以使用 SPELLNUMBER 公式以外,也可以透过写程序来新增一个可以填入大写国字的动作单击钮,请依照以下步骤设置。
在任一表单名称上单击下右键,并选择 JavaScript 工作流程。
拷贝并贴上以下程序代码:
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(); }
上述程序代码中,有三个部分需要依据你的表单进行调整:
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");
var n=entry.getFieldValue(field ID);
请将 field ID 替换为数字金额字段的字段 ID。例如,若该字段的 ID 为 1002374,则填入:
var n=entry.getFieldValue(1002374);
entry.setFieldValue(field ID, n2);
将 field ID 替换为你希望填入大写金额的字段 ID。例如,若大写字段的 ID 为 1008313,则填入:
entry.setFieldValue(1008313, n2);
完成后,别忘了保存设置再离开画面喔!
前往想要增加动作单击钮的表单设计模式,点选左侧的表单设置 > 动作单击钮。接着,使用以下设置手动新增一个动作单击钮:
单击钮名称:可以自由命名动作单击钮
单击钮类型:请选择 JS Workflow
动作:请填入 dx({id})
其他自订动作单击钮的相关设置可以参阅这里。
设置完成后,点选新增单击钮并保存设计,即可在表单页右下角看到你新增的动作单击钮,点击单击钮便可以在指定字段填入大写金额了。