新規投稿
フォローする

javascriptで値をセットしたフィールドの計算フィールドでの計算

いつもお世話になっております。
コミュニティを調べたのですが、該当する内容が見つけられなかったため質問いたします。

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

実現したいこと

 サブテーブルの値変更イベントにて、javascriptで下記のようにフィールドに値をセットしています。

フィールド[個数]×フィールド[重さ]=フィールド[全体の重量]

フィールド[全体の重量]の合計を計算フィールドを用いて表示しようとしているのですが、
フィールド[全体の重量]に直接入力した場合は値がセットされますが、
javascriptにてセットした場合は反映されません。

保存後に詳細画面を開くと計算フィールドには合計の値が入っています。

これはkintoneの仕様なのでしょうか?

 

利用したソースコード

  1. kintone.events.on([
  2. 'app.record.create.change.個数',
  3. 'app.record.edit.change.個数',
  4. 'app.record.create.change.重さ',
  5. 'app.record.edit.change.重さ'
  6. ], function(event) {
  7.  
  8.     var changes = event.changes;
  9.     if(changes['row'].value['個数'].value && changes['row'].value['重さ'].value){
  10.         changes['row'].value['全体の重量'].value = parseFloat(changes['row'].value['個数'].value)
  11.                                                                                 *parseFloat(changes['row'].value['重さ'].value);
  12.     }
  13.     return event;
  14.  
  15. });

計算フィールドは図のように設定しています。

0

1件のコメント

Avatar
juridon

こんにちは!はじめまして!

私も同様に、JavaScriptと計算フィールドを組み合わせたときに,計算フィールドが正しく計算されないことがありました。

計算フィールドの計算処理のタイミングの問題?なんでしょうか?答えになってなくて申し訳ないですが

そういうわけで、そういった場合は計算フィールドは使わずにJavaScriptで合計値を計算するようにしていました(><)

0
サインインしてコメントを残してください。