カスタマイズ

グループ(ロール)に所属するユーザーを取得する

概要

グループ選択フィールドで選択されているグループに所属するユーザーを取得します。

使い方

このアクションを実行すると、グループ選択フィールドで選択されているグループに所属するユーザーのリストがアクションの結果として保存されます。

グループ選択フィールドで複数のグループが選択されている場合は、それらすべての所属ユーザーがまとめて取得されます。同じユーザーが複数のグループに所属している場合、重複は除去されますので、結果のリスト内に含まれるそのユーザーは1つとなります。

結果データの構造は Cybozu のドキュメント に記載されている「User 型」のリストになります。

例えば、1人目のユーザーの表示名を取りたい場合は次のようにします。

= $1[0].name

取得したグループを「フィールドに値をセットする」やフィールドマッピングでユーザー選択フィールドへセットしたい場合は、以下のようにします。

= $1

設定するパラメーター

「グループ選択フィールド」「セット先フィールド(省略可)」を指定します。

グループ選択フィールド

グループが選択されているフィールドを指定します。

選択可能なフィールドタイプはグループ選択フィールドのみです。

テーブル内のフィールドを選択した場合、各行に対して取得が行われます。ただしこの場合、アクションの結果を $1 のような式で参照しようとした場合、どの行の結果が返るか不定になります。テーブル内の各行に対して処理を行いたい場合は、「セット先フィールド」を指定してください。

このフィールドでグループが一つも選択されていなかった場合、エラーにはならず、空の配列が結果になります。

セット先フィールド(省略可)

取得したユーザーを他のフィールドにセットする場合に指定します。直接フィールドにはセットせず、結果を別のアクションで使用したい場合は、省略できます。

選択可能なフィールドタイプは以下の通りです。

  • 文字列(1行)
  • 文字列(複数行)
  • リッチエディター
  • ユーザー選択

テーブル内フィールドを指定する場合、「グループ選択フィールド」も同じテーブル内のフィールドを選択しておく必要があります。

セット先をユーザー選択フィールドにした場合、現在選択されている他のユーザーはクリアされたうえで、取得したグループのメンバーがユーザー選択フィールドにセットされた状態になります。

セット先を文字列(1行)等にした場合、ユーザーの表示名をカンマ区切りで並べたものがセットされます。

krewSheet 対応状況

一部対応しています。

「セット先フィールド(省略可)」を省略せずに指定している場合は以下の条件時のみ対応しています。

ただし、以下の制限があります。

  • ルックアップでコピーされるフィールドにはセットできません。
  • 以下のフィールドは「レコードを保存する直前(削除時は除く)」のようにレコード保存のタイミングのみでセット可能です。やや専門的になりますが、より詳しく知りたい方は krewSheet のドキュメント も参考にしてください。
    • krewSheet の表示列に含まれていないフィールド
    • krewSheet で読み取り専用に設定されているフィールド
    • リッチエディターフィールド

「セット先フィールド(省略可)」を省略する場合は、条件に関わらず対応しています。

旧バージョンとの動作の違いについて

グループに所属するユーザーが100ユーザーを超える場合の動きが、バージョンによって異なります。

バージョン 1.211(2024年6月13日リリース)以前の Customine を使用して「kintoneアプリへ登録」していた場合、最大100ユーザーまでが取得されます。

バージョン 1.212(2024年7月18日リリース)以降は、100ユーザーを超えるユーザーも取得可能です。

制限事項

  • 「セット先フィールド」が指定されている場合、以下のいずれかの画面で使用できます。それ以外の画面で使用すると、アプリ実行時にエラーになります。「セット先フィールド」を省略している場合はこれ以外の画面、例えばレコード詳細画面でも使用することができます。
    • レコード追加画面
      • 任意のタイミングで使用可能
    • レコード編集画面
      • 任意のタイミングで使用可能
    • PCのレコード一覧画面インライン編集モード(鉛筆アイコンを押して編集モードになった状態)
      • 「レコードを保存する直前」時のみ使用可能

関連記事