FormBridgeの書式設定について

いつも大変お世話になっております。
FormBridgeでの書式設定に関しての質問です。

数値計算フィールドを使用して数値にて入力した数×単価で合計金額を出せるようにしております。
ただ、標準機能では数値計算フィールドで桁数カンマを設定することができません。

実現したいこととしては合計金額の算出と金額に合わせた桁数カンマの実装です。

そもそもFormBridgeにおいて合計金額計算と桁数カンマの実装が
可能なのかも含めてご教示いただければ幸いです。

よろしくお願いいたします。

「いいね!」 1

たとえば、以下の情報で桁区切りの問題はどうなりますか?
以前の情報なので今でも動くかは試してみるのが良さそうです。

FormBridgeで金額の書式設定について - kintone カスタマイズ - cybozu developer community

toLocaleString()で解決できる場合と、できない場合がありますがJavaScript一般の内容なのでなんとかなると思います。

ありがとうございます。
こちらはすでに試してみております。
文字列フィールドに対してjsを適用させた場合はカンマは反映されます。
ただ、kintoneと違い文字列フィールドには計算式を入れることができないので、
数量×単価を反映させることができておりません。

補足検証情報としてですが、
上記コードを単純にフィールドコードだけ書き換えた場合は、
([‘金額項目のフィールドコード’] ⇒ [‘数値計算のフィールドコード’])
何も反映されませんでした。

数値計算で計算された情報を文字列フィールドへ自動転記させることができれば、
上記サンプルコードを使用して桁数カンマを実装できるのではないかとは思っております。

「いいね!」 1
  • 単価・数量を変更した場合に計算フィールドのchageイベントが拾えないようでした。(おそらく自動計算なので、カスタマイズで介入できないようになっているのでは?)
  • そのため個別に単価・数量フィールドの変更イベントを拾う必要がありそうです。単価と数量の項目が複数あったら面倒です。カンマ区切りは諦めるか、別のフォームを使うこともご検討ください。
  • 表示用という文字列フィールドを追加した前提です。
  • コードは動作検証目的で単価欄の変化だけを拾っています。
  • 個数にも対応させるようにしてください。
  • カンマ反映部分は過去ログの例を参考に動作させるようにしてください。
(function () {
    "use strict";

    fb.events.fields['unitPrice'].changed = [
        function (state) {
            const calcvalue = state.record['計算'].value;
            console.log({ calcvalue })
            state.record['表示用'].value = calcvalue
            return state;
        }
    ];
})();

「いいね!」 1

コードの記述もありがとうございます。
試してみたところ文字列フィールドへの反映は実装できました。
後はカンマ反映となりますので、過去ログ見ながら試行錯誤してみます。
大変勉強になりました。

「いいね!」 1

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。