rex0220 ユーザー選択プラグイン

kintone アプリのユーザー選択で、ユーザー情報を取得して項目に設定するプラグインです。

- 追加・編集画面で、ユーザー選択時にユーザー情報を項目にセット
- 複数のユーザー選択項目に対応
- テーブル内のユーザー選択項目に対応
- ユーザー情報のカスタマイズ項目に対応
- 一覧画面でユーザー情報の一括処理
- 既存レコードの更新機能
- プラグイン設定のダウンロード＆アップロード機能

※動作環境は、PC・スマホです。

**ゲストユーザーは、ユーザ情報を取得するAPIの権限が無くエラーになります。
そのためゲストスペースでは、ユーザー選択プラグインを使用できません。**

[rex0220 stores](https://rex0220.stores.jp/)で、販売中です。

# 直近の変更点

Ver.11
・アクション機能でレコード追加画面表示時にエラーになる不具合対応
　※アクション機能でレコード追加画面表示イベント前に、項目の値変更イベントが発生する場合にエラーとなる。

# ユーザー選択プラグインの使用例

- ユーザー情報を項目にセット

<img width="595" alt="2018-08-06_12h58_15.png" src="https://qiita-image-store.s3.amazonaws.com/0/100572/a3a19182-73ff-39d2-6ecc-84b53d76cb8d.png">

- テーブル内のユーザー選択で、ユーザー情報を項目にセット

<img width="1093" alt="2018-08-06_12h59_38.png" src="https://qiita-image-store.s3.amazonaws.com/0/100572/68e5f090-93c9-bd57-d29f-b1171989d4b5.png">

- スマホの編集画面例

<img width="650" alt="2018-08-06_13h02_58.png" src="https://qiita-image-store.s3.amazonaws.com/0/100572/192fddbf-2c9a-566c-4663-ece798b4a078.png">

# ユーザー選択の操作例

![2018-08-06_13h11_28.gif](https://qiita-image-store.s3.amazonaws.com/0/100572/09f83a9a-fdf2-b1b4-64b0-9ae6d8b584eb.gif)


# 一覧画面でユーザー情報を一括取得

csv 読み込み等でレコードを追加・更新した場合は、ユーザー選択プラグインが動作しませんが、一覧画面でユーザー情報を一括取得することができます。

- 対象レコードは、一覧の表示条件となります。
- 更新レコード数：(更新したレコード数 / 更新対象レコード数 / 対象レコード数 )
    - 実際に項目の値が変更された場合のみ、レコード更新が行われます。

![2022-04-29_13h30_41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/100572/b8a2bee5-b242-cb31-3670-7f0df121521c.png)

ユーザー情報を一括取得の操作例
![2022-04-29_13h34_53.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/100572/3eeff6c6-7ab9-cb33-8bf4-127310ad48c9.gif)



# ユーザー選択プラグインの設定手順

## 対象アプリにユーザー情報設定用項目を追加

ユーザー選択項目とユーザー情報設定用項目を追加し、運用環境に反映します。

ユーザー情報に合わせて、文字列（1行）・文字列（複数行）・数値・日付・日時の項目を追加します。、

項目指定例

- よみがな：文字列（1行）
- コメント：文字列（複数行）
- ID：数値
- 誕生日：日付
- 登録日時：日時


<img width="1096" alt="2018-08-06_13h19_35.png" src="https://qiita-image-store.s3.amazonaws.com/0/100572/0550bec5-ed6f-7b0f-9ee2-36fa72d3acbf.png">


## プラグインの追加

- 「kintone システム管理 > プラグイン」で追加します。
- 「アプリの設定 > プラグイン」で、アプリに追加します。


<img width="1138" alt="2018-08-06_13h26_50.png" src="https://qiita-image-store.s3.amazonaws.com/0/100572/0ebd56e6-0458-be19-cf40-48a6d4ac3f72.png">


## プラグインの設定

ユーザー選択項目ごとに、ユーザー情報のセット先項目を指定します。

- プラグイン有効
- 区切り：　「複数ユーザー」チェック時に、値の区切り文字を指定。規定値「, 」
- 設定するユーザー選択項目のチェック欄を選択
- 編集ボタンをクリックして、編集ダイアログを表示
- 複数ユーザー：　チェック時に、複数ユーザーの値を取得
    - ※項目タイプが、日付・日時・数値の場合は、先頭ユーザーの情報のみ設定

![2023-04-07_12h41_35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/100572/36afe2b5-4ef5-aaf9-b033-06633a73ae87.png)


編集ダイアログ画面で、コピー項目とユーザー情報を指定します。

![2022-04-29_13h26_50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/100572/7e156aa8-83b6-b4a5-6842-2a84866a5cec.png)


- コピー項目の設定

コピー項目欄をダブルクリックすると、選択肢が表示されます。

項目名を一部入力すると、フィルターとなります。

<img width="712" alt="2018-08-06_13h34_40.png" src="https://qiita-image-store.s3.amazonaws.com/0/100572/f70882e8-5b22-2527-51dc-1900678a6d9e.png">

- ユーザー情報の設定

ユーザー情報欄をダブルクリックすると、選択肢が表示されます。

項目名を一部入力すると、フィルターとなります。


<img width="679" alt="2018-08-06_13h39_18.png" src="https://qiita-image-store.s3.amazonaws.com/0/100572/9a17ab32-47a3-f54b-4563-56211ca787b5.png">



# 既存レコードの更新

設定内容に従い、対象アプリの既存レコードを更新できます。
全レコードを取得・更新します。

![2018-08-06_13h46_36.gif](https://qiita-image-store.s3.amazonaws.com/0/100572/b0123238-7d2b-9a7b-30f1-10fe75fee6aa.gif)


# プラグイン設定のダウンロード

- プラグイン設定をダウンロードできます。
- 設定変更している場合は、変更後の設定が対象です。
- ブラウザ IE については、プラグイン設定のダウンロードの動作対象外です。

<img width="855" alt="2018-08-06_13h49_07.png" src="https://qiita-image-store.s3.amazonaws.com/0/100572/8b521c66-81a2-b9bf-4483-6ef2b1f67466.png">



# プラグイン設定のアップロード

- プラグイン設定をアップロードできます。
- ブラウザ IE については、プラグイン設定のアップロードの動作対象外です。


<img width="855" alt="2018-08-06_13h51_49.png" src="https://qiita-image-store.s3.amazonaws.com/0/100572/17d28e8c-9199-df4d-0e47-034d5f9df681.png">


<img width="851" alt="2018-08-06_13h52_09.png" src="https://qiita-image-store.s3.amazonaws.com/0/100572/cb478687-4e7a-73a9-fbca-0fd39b73cd31.png">


# 注意事項

- 既に、JavaScript によるカスタマイズを行っているアプリの場合、処理が競合して、エラーになる場合があります。その場合は、該当するアプリでプラグインの使用を中止してください。