「一覧画面で条件に応じたレコード件数を取得するテクニック」を利用して複数のレコード件数を表示させたい

はじめて投稿します。掲題の通りなのですが、

「一覧画面で条件に応じたレコード件数を取得するテクニック」では処理中のレコード件数を表示させるようになっています。そこを、未処理のレコード件数も表示させたい場合、どのようにプログラムを変更すればよいかご教授いただければと思います。

よこい様

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

同じくkintone REST APIで件数を取得して、DOMを書き換えればよいです。
また、「totalCount」というプロパティが追加されたので、記事のコードより簡単に書けます。

(function () {
  "use strict";
  kintone.events.on([
    'app.record.index.show',
  ], function (event) {
    kintone.Promise.all([
      kintone.api(kintone.api.url('/k/v1/records', true), 'GET', {
        app: kintone.app.getId(),
        query: kintone.app.getQueryCondition() + ' ステータス = "未処理" limit 0',
        totalCount: true,
      }),
      kintone.api(kintone.api.url('/k/v1/records', true), 'GET', {
        app: kintone.app.getId(),
        query: kintone.app.getQueryCondition() + ' ステータス = "処理中" limit 0',
        totalCount: true,
      })
    ]).then(function (responses) {
      kintone.app.getHeaderMenuSpaceElement().innerHTML =
        '未処理のレコード件数:' + responses[0].totalCount + ' 処理中のレコード件数:' + responses[1].totalCount;
    });
  });
})();

江田様

 

ありがとうございます!無事、レコード件数を表示させることができました。

 

ところで、私の作成しているアプリではフィールドがラジオボタンだったからか、

ステータス = "処理中"では動かず、ステータス in (“処理中”)とすることで動作しました。

この違いは何だったのでしょうか?

よこい様

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

プロセス管理によって自動生成される「ステータス」ではなく、「ステータス」というラジオボタンフィールドを自作しているということでしょうか?

こちらの「フィールド、システム識別子ごとの利用可能な演算子と関数一覧」から、各フィールドタイプごとの利用できる演算子が確認できます。
ラジオボタンの場合は「in」と「not in」のみ利用できます。

江田様

演算子と関数一覧のページ、非常に勉強になりました。ありがとうございます!

 

> プロセス管理によって自動生成される「ステータス」ではなく、「ステータス」というラジオボタンフィールドを自作しているということでしょうか?

おっしゃる通りです。自前のアプリでステータスをラジオボタンフィールドで作成しています。

 

今回、質問するために使用したアプリでは問題なく動作しているのですが、

別のアプリにも同じようにレコード件数を表示させようとして躓いています。

Uncaught (in promise)というエラーと400 (Bad Request)が出ています。

おそらく、作成している「一覧」にステータスが完了以外を表示するよう条件指定しているためかと考えているのですが、

どのように対処すべきなのでしょうか?

自己解決できました。