新規投稿
フォローする

関連レコードの項目を条件付きで集計について

いつも大変お世話になっております。

関連レコードの項目を条件付きで集計 を

①kintone.api()を用いた実装に変え ②小計を数値フィールドに登録するようにしたいですが、小計を求めるコードを書けず躓いております。コードのアドバイスいただけますでしょうか?よろしくお願い致します。

(function() {
"use strict";

//レコードのsubmit時に適用する
var events = ['app.record.create.submit', 'app.record.edit.submit']
kintone.events.on(events, function(event) {
var record = event.record;

var amount = 0;
for (var i = 0; i < records.length; i++) {
amount = amount + parseFloat(records[i].数値.value);
}
var related = kintone.app.getRelatedRecordsTargetAppId('関連レコード一覧');

return kintone.api(kintone.api.url('/k/v1/records', true), "GET", {
app: related,

query: '顧客情報レコード番号="' + client_rid +'" and ドロップダウン not in ("受注")' +' limit 100 offset ' + offset;
}).then(function(res) {
record["小計"].value =amount;
return event;
});

});
})();

0

2件のコメント

Avatar
江田篤史

サラ様

お世話になっております。 cstapの江田と申します。

下記のようなコードになるかと思います。

ただし、サンプルコードでは取得できるレコード数の上限がありませんが、下記のコードでは500件までとなります。 kintone.api()でも全件取得は実装できますが、大量のレコードを扱う場合はkintone Utility Library for JavaScriptを用いると便利です。

(function () {
  "use strict";
  //レコードのsubmit時に適用する
  var events = ['app.record.create.submit', 'app.record.edit.submit']
  kintone.events.on(events, function (event) {
    var record = event.record;
    var client_rid = event.recordId;
    var related = kintone.app.getRelatedRecordsTargetAppId('関連レコード一覧');
    return kintone.api(kintone.api.url('/k/v1/records', true), "GET", {
      app: related,
      query: '顧客情報レコード番号="' + client_rid + '" and ドロップダウン not in ("受注") limit 500';
    }).then(function (res) {
      var amount = 0;
      var records = res.records;
      for (var i = 0; i < records.length; i++) {
        amount = amount + parseFloat(records[i].数値.value);
      }
      record["小計"].value = amount;
      return event;
    });
  });
})();
1
Avatar
サラ

江田篤史

お世話になっております。

とても助かりました。勉強になります。本当にありがとうございました。

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