トップページ

クエリで条件を指定して kintone からレコードを取得する

クエリで条件を指定して kintone からレコードを取得する

使い方

kintone から指定のクエリでレコードを取得します。

アクションの結果はレコードの配列になります。結果が1件でも要素が1つの配列になります。結果が0件の場合は空の配列になります。

取得したレコードの件数を調べたい場合は、count関数を使用します。例えばアクション1番でレコードを取得した場合、以下の式で取得したレコードの件数を得ることができます。

= count($1)

設定するパラメーター

取得元アプリ

どのkintoneアプリからレコードを取得するかを指定します。kintoneアプリIDの数値を入力してください。

kintone 接続設定

kintone 接続設定を指定します。API トークンにレコード閲覧権限が必要です。

「認証が必要 / ユーザー指定あり」タイプの接続設定を使用する場合、「検索条件」で指定したクエリに加えて、接続設定の「認証時に実行するクエリ」が自動的に and で付加されます。

検索条件

kintone レコードを取得する際の検索条件(クエリ)を入力します。kintone API の query パラメーターの情報をそのまま入力してください。

検索条件(クエリ)の記法については、Cybozu公式のドキュメントをご参照ください。

式を用いて入力アイテムの値やアクションの結果値をクエリに埋め込むことも可能です。この場合、式の値に対し kintone クエリとしてのエスケープは行われません。エスケープについては、Cybozu公式ドキュメントをご参照ください。

工事コード = "${item1}"

最大取得件数

取得件数を制限します。このパラメーター値を省略すると、検索条件に合致するレコードをすべて取得します。

合致するレコードの数が多いと、すべて取得するのは時間がかかります。そのような場合、このパラメーターを小さめの値にしておくと処理時間を短くすることができます。

指定できる上限値は 500 です。

最大取得件数を指定しなかった場合は、100 になります。

取得するフィールド(省略時はすべて)

取得するフィールドを制限したい場合に指定します。指定することで、転送するデータが小さくなってパフォーマンスが向上したり、不要なデータが公開されてしまうリスクを軽減することができます。その代わり、取得していないフィールドの内容を式で参照することはできなくなります。

kintone フィールドのフィールドコードを、改行区切りまたはカンマ区切りで指定します。ワイルドカードや正規表現での指定はできません。

なお、「検索条件」が同じでも、取得するフィールドが異なっている場合は別々にキャッシュされます。

kintone の REST API 仕様(Cybozu 公式ドキュメント)により、以下の制限があります。

テーブル内フィールドは指定できません。

キャッシュが無効になる日時

取得したレコードのキャッシュが無効になる日時を指定します。指定されている場合、キャッシュがあればキャッシュからレコードを返します。キャッシュがなければ kintone からレコードを取得し、指定の日時を期限としてキャッシュします。

このパラメーターを空にした場合、キャッシュは行われません。つまり、キャッシュの有無にかかわらず kintone からレコードを取得し、取得したレコードはキャッシュしません。

日時は以下の形式で入力できます。

  • ISO 8601形式の日時
    • 2025-05-06T04:30:00Z のような形式です。
  • ローカル時刻
    • 2025-05-06 04:30:00 のように時差情報を含めない形式です。この場合、時刻は「タイムゾーンをセットする」でセットしたタイムゾーンで解釈されます。
  • 日付
    • 2025-05-06 のように時刻を含まない形式です。この場合、時刻は「タイムゾーンをセットする」でセットしたタイムゾーンにおける 00:00:00 と解釈されます。
  • 時刻
    • 07:30 のように日付を含まない形式です。この場合、ダミーで日付が 1970-01-01 であるとみなされます。タイムゾーンは「タイムゾーンをセットする」でセットしたタイムゾーンになります。

キャッシュを期間で指定したい場合、アクションを使う方法と関数を使う方法があります。例えばキャッシュの有効期間を最大1週間にしたい場合は、以下のいずれかの方法を使用できます。

  • アクションで指定 ...「日時を計算する」で現在日時から1週間後を計算し、そのアクションを = $1 のように式で参照する。
  • 関数で指定 ... fromnow 関数を使用して = fromnow(1, "weeks") と記述する。

結果値

レコードの配列です。フィールドの値はフィールドコードをキーとして参照することができます。

= $1[0].文字列_1行_0

既知の問題

  • エブリサイトのデータ取得では、取得できるデータのサイズに上限があります。この上限を超える量のデータを一度に取得しようとするとネットワークエラーが発生します。

制限事項

  • 一度に500件以上のレコードを取得することはできません。

  • 「取得するフィールド(省略時はすべて)」で指定可能なフィールド数は1000件までです。

  • 「取得するフィールド(省略時はすべて)」でテーブル内フィールドを指定することはできません。

  • kintone 標準の「検索条件」文法では、「limit 10」のように limit をつけて取得件数を制限する機能がありますが、「クエリで条件を指定して kintone からレコードを取得する」の「検索条件」ではこの構文は使えません。代わりに、「最大取得件数」パラメーターを使用してください。

  • その他、細かい挙動(存在しないフィールドを指定した場合にエラーが返るか否かなど)は kintone の仕様に依存します。kintone REST API の 公式ドキュメントもご確認ください。

Copyright © R3 institute. All rights reserved.

Powered by Everysite