レコード一覧画面の集計で条件指定

初めての投稿となります。よろしくお願いします。

kintone)レコード一覧画面 集計について で一覧画面の上部に小計の合計を表示していますが、試してみたところ現在表示されている20行分しか合計されていないようで、これを全ての行を合計するようにすることは可能なのでしょうか。

また、確度が「A」の行のみを集計するということは可能なのでしょうか。

お手数ですが、ご教示よろしくお願いします。

こばやしさん

 

イベントオブジェクトのレコードは、表示されている分しか保持しないので、そのようになっています。

全件取得したいのであれば、REST APIを使用する必要があります。
また、APIを使用すれば、「確度がAのレコード」のみを取得することが可能です。
https://developer.cybozu.io/hc/ja/articles/202331474#step2

HANSA様

 

ご回答ありがとうございます。

重ねて申し訳ないのですが、REST APIを使用した場合の集計方法が載った記事等をご存知でしたら、お教えいただきたいです。

お手数ですが、よろしくお願いします。

集計方法については、

集計する記事は知りませんが、
ご質問時に貼っていただいたリンク先のコードが使えそうです。

event.records.reduce(function(previousValue,record){returnpreviousValue+Number(record.小計.value);},0).toLocaleString();

上のコードはevent.recordsに対して、reduce()を使って合計を出していますが、
APIを使う場合は、GETリクエストのレスポンスに対し、reduce()を使用すれば、集計可能かと思います。

https://developer.cybozu.io/hc/ja/articles/202331474#step2

レスポンスとはこの記事のサンプルコードでいうrespです。

ご回答ありがとうございます。

教えていただいた内容で、下記のようなコードで組んだところ望む結果が得られました。

 

(function() {

   “use strict”;

   kintone.events.on(“app.record.index.show”, function(event) {

        var params = {

            app: 1,

            query: “確度 = "A"”

        };

       
kintone.api(‘/k/v1/records’, ‘GET’, params, function(resp) {

            //success:小計行の合計をヘッダーに表示する
            kintone.app.getHeaderMenuSpaceElement().innerHTML =‘合計:’ + resp.records.reduce(function(previousValue, record) {

                return previousValue + Number(record.小計.value);

            }, 0).toLocaleString();

        }, function(resp) {

            //error:エラーの場合はメッセージを表示する

            var errmsg = ‘レコード取得時にエラーが発生しました。’;

            //レスポンスにエラーメッセージが含まれる場合はメッセージを表示する

            if (resp.message !== undefined) {

                errmsg += ‘’ + resp.message;

            }

            alert(errmsg);

        })

   });

})();

大変助かりました。ありがとうございました。