レコード作成時にシート上の計算式がトリガーされず、レコードを自動保存した直後に計算式の再計算をトリガーしたい場合は、このガイドに従ってスクリプトを追加してください:
Step 1: Ragicのワークフローエディターを開く
タブからシートの矢印アイコンをクリックし、 Javascriptワークフローを選択すると、 ワークフローモジュールに遷移します。
Step 2: 編集ページを " Post-workflow " に切り替える。.
Step 3: 以下のコードを貼り付け、編集して保存してください。
var nodeId = param.getNewNodeId(Key Field); var path = '/tab_path/sheet_path'; var query = db.getAPIQuery(path); var entry = query.getAPIEntry(nodeId); entry.recalculateAllFormulas(); entry.setIfDoLnls(true); entry.setCreateHistory(true); entry.save();
キーフィールド をシートのキーフィールドIDに置き換えてください。ワークフローエディターで見つけることができますし、 データベースの定義ファイルで調べることもできます。
この例では、以下のように置き換える必要があります:
var nodeId = param.getNewNodeId(1001404);
そして、 '/tab_path/sheet_path' を自分のタブとシートのパスに置き換えてください。
例えば 、シートのURLが'www.ragic.com/sample/sales/3'の場合、この行は以下のように記述されます:
var path = '/sales/3';
特定のフィールドの数式のみを再計算する場合は、
entry.recalculateAllFormulas();
を
entry.recalculateFormula(field id);
に置き換えることができます
フィールドID は、再計算するフィールドのフィールドIDに置き換えてください。例えば、フィールドIDが1000001,1000002,1000003のフィールドを再計算したい場合、結果は以下のようになります:
entry.recalculateFormula(1000001); entry.recalculateFormula(1000002); entry.recalculateFormula(1000003);