カテゴリー内の他の記事

URL内のクエリで、表示するレコードの条件を指定

URL内のクエリで、表示するレコードの条件を指定

  • アップデートオプションで「「モバイル版でレコードを絞り込む機能」を無効にする」を選択している場合は、モバイル画面で利用できません。

使用できるクエリは、レコードの一括取得(クエリで条件を指定)(注)をご確認ください。
クエリは、UTF-8でURLエンコードしてご利用ください。

注: "order by", "limit", "offset" による指定は反映されません。

例1:一覧を指定したURLの例

https://{sub-domain}.cybozu.com/k/{appId}/?view={viewId}

例2:絞り込み条件を指定したURLの例

https://{sub-domain}.cybozu.com/k/{appId}/?query={クエリをUTF-8でURLエンコードした文字列}

サンプル

次の絞り込み条件を指定したURLです。

フィールドコードが「文字列__1行」のフィールドの値

項目
サブドメイン example
アプリID 123
フィールドコードが「文字列__1行」のフィールドの値 サイボウズ
フィールドコードが「ラジオボタン」のフィールドの値 A

 

https://example.cybozu.com/k/123/?query=%e6%96%87%e5%ad%97%e5%88%97__1%e8%a1%8c_%3d%22%e3%82%b5%e3%82%a4%e3%83%9c%e3%82%a6%e3%82%ba%22%20and%20%e3%83%a9%e3%82%b8%e3%82%aa%e3%83%9c%e3%82%bf%e3%83%b3%20in%20%28%22A%22%29

※クエリ部分は、「文字列__1行_="サイボウズ" and ラジオボタン in ("A")」をUTF-8でURLエンコードしています。
※上記のクエリは、画面上で指定する次の絞り込み条件と同等です。

記事に関するフィードバック

記事のコメント欄は記事に対するフィードバックをする場となっております。
右の記事フィードバックのためのガイドを参照してコメントしてください。
記事のリンク切れなど、気になる点がある場合も、こちらのフォームからフィードバックいただけますと幸いです。

Avatar
西尾英道

レポートでも同じような指定はできませんか?

Avatar
cybozu Development team

西尾様

はい、集計機能の「条件」でも、同じような指定は可能です。
この記事では、画面上の一覧の絞込機能とAPIのクエリによる絞込が同等であることを示しています。

Avatar
瀬戸 晴生

ソート(order by)は指定出来ないのでしょうか?

Avatar
maaai

瀬戸 晴生さん

この記事に記載のある、下記の「レコードの一括取得(クエリで条件を指定)」というリンクの先に
「order by」の記載があるので、利用できると思います。

> 使用できるクエリは、レコードの一括取得(クエリで条件を指定)をご確認ください。

Avatar
瀬戸 晴生

maaiさん

お返事ありがとうございます。

私もそう思い、試してみたのですが、クエリ内のorder byは、無視され、表示中のビューの並び順が反映されている気がするのです。

Avatar
cybozu Development team

瀬戸様

私どもの環境でも試したところ、一覧画面のクエリ指定においてorder byの並び順は無視されるようです。

記事に「注: order by による指定は反映されません。」と記載いたしました。ご指摘をありがとうございました。

Avatar
TAKA

コミュニティでもご質問させていただいているのですが、
選択項目(DROP_DOWN、MULTI_SELECT)での指定方法はありますでしょうか?

選択項目の場合、仮に「A」という選択肢を指定したい場合、
「選択項目 in ("A")」では指定できず、「選択項目 in ("9999")」のような、ユニークな数値を指定する必要があります。

下記を参考にAPIで項目の情報を取得しても、このユニークな数値を取得することは出来ませんでした。

https://developer.cybozu.io/hc/ja/articles/204783170

なんらかの方法で、このユニークな数値を取得するか、それ以外の方法で選択肢を指定することはできますでしょうか?

TAKAにより編集されました
Avatar
cookie

TAKAさん

URLでも複数選択の値は指定できますよ。「?query=」でURLエンコードしたクエリを指定してみてください。

「?q=」と間違えていませんか?

アプリID「1」、クエリ「複数選択 in ("A")」なら以下のようなURLになります。

https://example.cybozu.com/k/1/?query=%E8%A4%87%E6%95%B0%E9%81%B8%E6%8A%9E%20in%20(%22A%22)

Avatar
TAKA

cookie様

コミュニティでもご指摘いただきましたが、query=で指定する方法で希望の結果を得ることが出来ました。
大変助かりました。
ありがとうございました!

Avatar
aiko

レコード一覧画面表示後イベント(app.record.index.show)で
発生タイミングで「レコード一覧画面の絞り込み条件を適用した時」とあるのですが
このようにURL内のクエリで、表示するレコードの条件を指定して一覧を表示させた場合
app.record.index.showでイベントを発生させることはできないのでしょうか?

Avatar
cybozu Development team

aiko 様

お世話になっております。cybozu developer network事務局でございます。

URL内のクエリで条件を指定して一覧画面を表示した場合も、レコード一覧画面の表示後イベント(app.record.index.show)は発生します。

クエリ指定のURL生成後、何らかの形で生成したURLの一覧画面を開く処理を実行いただくかと思いますが、
その画面を開いたタイミングで当該イベントが発生いたします。
※「イベントが発生するタイミング」としては、「レコード一覧画面の表示時」の扱いとなります。

以上、よろしくお願いいたします。

Avatar
puchida

お世話になります!

/report?groups=f12345&summaries=COUNT&sort=s0%3Adesc&chart=column&stack=clustered
のようなレポートに
/report?groups=f12345&summaries=COUNT&sort=s0%3Adesc&chart=column&stack=clustered&query=(ステータス in ("完了"))
のような指定は可能ですか?

試した感触では、
/?query=(ステータス in ("完了"))
のような一覧画面ではいけるけど、上記のような report には適用されてないように見えます

puchidaにより編集されました
Avatar
cybozu Development team

puchida 様

お世話になっております。cybozu developer network 運営でございます。

レポートに対しては、queryを指定してレコードの条件を指定することはできません。
現状非対応となっております。

 
 
Avatar
箭内淳之介

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

次のルールに従い画面遷移を行いました。(xx番号が001に該当する条件で絞込)

https://{sub-domain}.cybozu.com/k/{appId}/?query=xx番号%20like%20"001"

レコード一覧画面表示後イベント(app.record.index.show)は発生しているのですが、kintone.app.getHeaderMenuSpaceElement()や、kintone.app.getId()などを取得すると全てnull状態になってしまいます。原因や回避策はありますか?

Avatar
cybozu Development team

箭内 様

お世話になっております。cybozu developer network 事務局です。
こちらでは同様の現象を確認できておりません。

以下についてご確認をお願いします。

  1. クエリを利用せずレコード一覧画面を開いた場合、当該の API は正常に実行できる状態でしょうか?
  2. クエリは UTF-8でURLエンコードした文字列となっているでしょうか?
Avatar
箭内淳之介

cybozu developer network 事務局 様

1についですが、何も指定せずに遷移した場合は、正常にAPIを実行できることを確認しております。

2についてですが、下記のようにURLをエンコードしておりますが、同様に取得した値がnullとなっております。

const encoded = encodeURI(uri);

実際に発行しているURLは次の通りです。(ドメイン名等は伏せております)

https://サブドメイン名.cybozu.com//k/appID/?query=%E5%8F%97%E6%B3%A8%E7%95%AA%E5%8F%B7%20like%20%2262-001%22

気になる点は、遷移先の絞り込みで同じ内容で絞り込んだ場合とURLが変わっている点ですが、影響はありますか?(実際に遷移先でフィルターをかけた際のURLは次の通りです)

https://サブドメイン名.cybozu.com/k/appID/?view=20&q=f5519954%20like%20%2262-001%22#sort_0=f5519941&order_0=desc&size=20

 

箭内淳之介により編集されました
Avatar
cybozu Development team

箭内淳之介 様

お世話になっております。cybozu developer network 事務局です。

https://サブドメイン名.cybozu.com//k/appID/?query=%E5%8F%97%E6%B3%A8%E7%95%AA%E5%8F%B7%20like%20%2262-001%22

上記の実際に発行している URL を拝見いたしましたところ、サブドメイン名の少し後あたりの部分が「//k/appID/〜」となっており、JavaScript API が対応している画面ではないと判定されていない可能性がございます。

以下のように URL を修正していただき、再度絞り込んでいただくようお願いいたします。

https://サブドメイン名.cybozu.com/k/appID/?query=%E5%8F%97%E6%B3%A8%E7%95%AA%E5%8F%B7%20like%20%2262-001%22

また、URL 内のクエリで絞り込んだ場合と、kintone の画面上で絞り込みを行った場合の遷移先の URL が異なるのは kintone の仕様となっております。
そのため、今回絞り込みを行うことができないことについてこの仕様は影響はございません。

以上、よろしくお願いいたします。

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