# 「URL内のクエリで、表示するレコードの条件を指定」でビューとクエリを同時に指定する方法

**URL:** <https://community.cybozu.dev/t/topic/8770>\
**Category:** kintone 開発相談\
**Created:** [2024 年 3 月 4 日午前 8:59 UTC](https://community.cybozu.dev/t/topic/8770 "2024-03-04T08:59:39Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![usa\_pyon](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/usa_pyon/32/547_2.png) [@usa\_pyon](https://community.cybozu.dev/u/usa_pyon)\
**Post date:** [2024 年 3 月 4 日午前 8:59 UTC](https://community.cybozu.dev/t/topic/8770/1 "2024-03-04T08:59:39Z")

</div>

### 何を実現したいのかを書きましょう

> [@「URL内のクエリで、表示するレコードの条件を指定」でビューとクエリを同時に指定することは出来るのか？](https://community.cybozu.dev/t/topic/1748):
>
> 7月の更新で使えるようになった、「URL内のクエリで、表示するレコードの条件を指定」をさっそく使っていろいろ試しているのですが、１つ疑問点が出てきました。 [https://cybozudev.zendesk.com/hc/ja/articles/202388664-URL内のクエリで-表示するレコードの条件を指定](https://cybozudev.zendesk.com/hc/ja/articles/202388664-URL%E5%86%85%E3%81%AE%E3%82%AF%E3%82%A8%E3%83%AA%E3%81%A7-%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%9D%A1%E4%BB%B6%E3%82%92%E6%8C%87%E5%AE%9A) こちらには、ビューのIDを指定した場合と、クエリーを指定した場合がそれぞれ出てお…

↑の投稿を参考に「URL内のクエリで、表示するレコードの条件を指定」を試しており、一覧の絞り込み＆ソートの条件に特定のクエリを追加して一覧に表示させたいです。

### 発生した問題やエラーメッセージを具体的に書きましょう

クエリの条件だけ反映されて、一覧の絞り込み＆ソートの条件が無視されてしまいます。

### 実行したコードをコピー＆ペーストしましょう

Chromeのアドレスバーから、「/?」以降をコピーしてみました。  
どこがおかしいかご教授いただけないでしょうか。

```javascript
/?view=6429537&query=エンドユーザー名%20like%20"西日本"

```

よろしくお願いします。

---

<div class="post-metadata">

**Author:** ![mura](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/mura/32/41_2.png) [@mura](https://community.cybozu.dev/u/mura)\
**Post date:** [2024 年 3 月 4 日午後 11:22 UTC](https://community.cybozu.dev/t/topic/8770/2 "2024-03-04T23:22:06Z")

</div>

たしかに、試してみると `query=` で指定していると一覧は指定されますが、一覧で保存した絞り込み＆ソートは上書きされてしまいますね。  
`query` の指定と保存した条件は競合もありえることを考えると仕様にもみえますね（厳格に知りたければ問い合わせるしかないかと）。  
一覧で保存した絞り込みはあくまでデフォルトの絞り込み、と思ったほうがよさそうですね。

ではどう回避するかですが、その `query` に絞り込み＆ソート自体指定にいれちゃえばいいかと思いますがどうでしょうか。

---

<div class="post-metadata">

**Author:** ![usa\_pyon](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/usa_pyon/32/547_2.png) [@usa\_pyon](https://community.cybozu.dev/u/usa_pyon)\
**Post date:** [2024 年 3 月 5 日午前 12:13 UTC](https://community.cybozu.dev/t/topic/8770/3 "2024-03-05T00:13:48Z")

</div>

muraさんありがとうございます。

確かにそのあたりを考慮すると仕様なのかもしれないですね。

回避方法についてご指摘の通りだと思います。  
試しに「kintone.app.getQueryCondition()」で一覧画面開いたときの絞り込み＆ソートを取得しqueryに追加する方法も考えたのですが、これだと続けて別のqueryを指定したい時に、その前に指定していたqueryもくっついちゃうので何かいい方法はないでしょうか。  
※後だしになって申し訳ないのですが、一覧に検索ボックスを置いて簡易検索させたいと考えています。

一覧の設定情報を取得できるAPIもあるみたいですが、ちょっと大掛かりになる気がするのでできれば他の方法で回避できると嬉しいなと思っています。

---

<div class="post-metadata">

**Author:** ![mura](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/mura/32/41_2.png) [@mura](https://community.cybozu.dev/u/mura)\
**Post date:** [2024 年 3 月 5 日午後 3:54 UTC](https://community.cybozu.dev/t/topic/8770/4 "2024-03-05T15:54:18Z")

</div>

> これだと続けて別のqueryを指定したい時に、その前に指定していたqueryもくっついちゃうので何かいい方法はないでしょうか。

あーなんとなくイメージはわかりました、検索を続けてやる場合がありうるってことですね。その時のデフォルトのQueryの保持どうするかと。  
`getQueryCondition()` で取得して保持するパターンだと、パッと思いついたのは下記ですかね。

1. デフォルトとなる検索条件を `query` 以外のkintoneでも利用されないパラメータで保持し、実際に検索するときにそれを利用して組み立てる
2. デフォルトとなる検索条件をローカルストレージ等に保存して実際に検索するときにそれを利用して組み立てる

etc

ただ、そうするとデフォルトの検索条件を保持してるのか、検索した後の条件を保持してるのかは判定むずかしいような気がしますね  
かといってコードに埋め込むと設定変更したときに差分がでてしまうのもありますよね

一覧の設定を替えうること、 `query` 付きでアクセスしたときにはデフォルトが取得できない等々を考えると、まわりまわって設定情報を取得するAPIを呼んだほうが低コストな気もしてきましたねｗ

> **[一覧の設定を取得する](https://cybozu.dev/ja/kintone/docs/rest-api/apps/view/get-views/)**
>
> アプリの一覧の設定を取得します。

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex015/uploads/cybozu/original/1X/d5c841c3c5a6cb66eed514001c1b45147c9e1f4f.png) [@system](https://community.cybozu.dev/u/system)\
**Post date:** [2024 年 5 月 31 日午前 7:24 UTC](https://community.cybozu.dev/t/topic/8770/5 "2024-05-31T07:24:00Z")

</div>

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。
