# アプリを開くとき、ログインユーザー情報でフィルタを実行したい

**URL:** <https://community.cybozu.dev/t/topic/9532>\
**Category:** kintone 開発相談\
**Created:** [2024 年 9 月 20 日午前 7:50 UTC](https://community.cybozu.dev/t/topic/9532 "2024-09-20T07:50:10Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![hiroto](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/hiroto/32/1186_2.png) [@hiroto](https://community.cybozu.dev/u/hiroto)\
**Post date:** [2024 年 9 月 20 日午前 7:50 UTC](https://community.cybozu.dev/t/topic/9532/1 "2024-09-20T07:50:10Z")

</div>

ログインユーザー名：loginUserName ←ログインユーザーの表示名  
フィルタをかけたいフィールド名：ユーザー名

var query = ‘ユーザー名 like "’ + loginUserName + ‘"’;

こちらでアプリを開くときフィルタをかけたいのですが、絞り込みが行われません。

kintoneでは、Javaによる一覧表示のフィルタは表示の絞り込みができないのでしょうか。

コンソールのログは、フィルタがかかっている状態ですが、ひょうじされているレコード数は絞られていません。

 ![１](https://us1.discourse-cdn.com/flex015/uploads/cybozu/original/2X/8/85209c006cb3ac8553955e215b5f0f721a84bf5d.png)

---

<div class="post-metadata">

**Author:** ![lemon\_sour](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/lemon_sour/32/1469_2.png) [@lemon\_sour](https://community.cybozu.dev/u/lemon_sour)\
**Post date:** [2024 年 9 月 22 日午後 2:34 UTC](https://community.cybozu.dev/t/topic/9532/2 "2024-09-22T14:34:37Z")

</div>

おそらく、APIによってレコードを取得しただけで表示に関する処理が考慮されていないのではないでしょうか？

ご要望の動作を満たすには大きく分けて２種類あるかなと思っています。  
1.カスタマイズビューを使用する方法  
参考： [カスタマイズビューを作成してみよう - cybozu developer network](https://cybozu.dev/ja/tutorials/hello-kinapi/customize-view/)  
今されようとしている方法に近いのかもしれません。

2.URLのクエリーを書き換える方法  
参考： [URL内のクエリで、表示するレコードの条件を指定する - cybozu developer network](https://cybozu.dev/ja/kintone/docs/js-api/app/specify-record-list-via-query-string/)  
ざっくり書くと下記のようなコード

```javascript
kintone.events.on(['app.record.index.show'], function (event) {
   const queryStr1 = encodeURIComponent('fXXXX="テスト太郎"'); 
   //上記「XXXX」にはフィールドの内部IDが入ります。
   //F12開発者ツールでフィールドを確認するとクラス名などに使われていたりします。
   const query = "?q=" + queryStr1;
   if (!location.href.includes(query)) {
       const newUrl = location.href + query;

       // 新しいURLに遷移する
       document.location.href = newUrl;
   }
});

```

---

<div class="post-metadata">

**Author:** ![hiroto](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/hiroto/32/1186_2.png) [@hiroto](https://community.cybozu.dev/u/hiroto)\
**Post date:** [2024 年 9 月 27 日午前 3:01 UTC](https://community.cybozu.dev/t/topic/9532/4 "2024-09-27T03:01:02Z")

</div>

ユーザー選択を使わずに、ログインユーザー名でフィルタをかけたいのですが、うまくいきません。

 ![一覧](https://us1.discourse-cdn.com/flex015/uploads/cybozu/original/2X/3/362dca30d92f67e51cbaadc7ea2a7f7b34a95be1.jpeg)

この表示形式ではログイン情報によるフィルタリングはできないのでしょうか。

---

<div class="post-metadata">

**Author:** ![lemon\_sour](https://sea1.discourse-cdn.com/flex015/user_avatar/community.cybozu.dev/lemon_sour/32/1469_2.png) [@lemon\_sour](https://community.cybozu.dev/u/lemon_sour)\
**Post date:** [2024 年 9 月 27 日午後 9:15 UTC](https://community.cybozu.dev/t/topic/9532/6 "2024-09-27T21:15:14Z")

</div>

今、ログインユーザー名でフィルターをかけたい方の氏名はどの種類のフィールドで保有していますか？「ユーザー選択」ですか？「文字列（１行）」ですか？

「ユーザー選択」ならば、  
てんそさんも言われている「アプリの設定」⇒「一覧」から標準設定で絞込が可能です。

「文字列（１行）」ならば、  
JavaScriptを使用した制御が必要になりますが、もしなら「文字列（１行）」を「ユーザー選択」に変更して標準設定で絞込が出来るようにしたほうが後々メンテナンスが楽になると思うのでお勧めです。

---

<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 年 10 月 2 日午前 8:27 UTC](https://community.cybozu.dev/t/topic/9532/7 "2024-10-02T08:27:16Z")

</div>

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