若需要將金額以大寫國字呈現,除了可以使用 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})
其他自訂動作按鈕的相關設定可以參考這裡。
設定完成後,點選新增按鈕並儲存設計,即可在表單頁右下角看到你新增的動作按鈕,點擊按鈕便可以在指定欄位填入大寫金額了。