次の方法で共有


PeoplePicker コントロール (プレビュー)

[この記事はプレリリース ドキュメントであり、変更されることがあります。]

読み込みエクスペリエンスを作成するために使用されるコントロール。

Note

説明書の全文とソース コードは、GitHub コード コンポーネント リポジトリ を参照してください。

ユーザー ピッカー コントロール。

重要

  • これはプレビュー機能です。
  • プレビュー機能は運用環境での使用を想定しておらず、機能が制限されている可能性があります。 これらの機能を公式リリースの前に使用できるようにすることで、顧客が一足先にアクセスし、そこからフィードバックを得ることができます。

説明設定

ユーザー ピッカー (PeoplePicker) は、人やグループなどの 1 つ以上のエンティティをリストから選択するために使用されます。 フルネームやメールアドレスがわからない場合でも、メールを作成したり、グループに追加したりするのが簡単になります。

このコード コンポーネントは、キャンバス アプリおよびカスタム ページで使用するための Fluent UI ユーザー ピッカー コントロールのラッパーを提供します。 ベスト プラクティスについては、コンポーネントの説明書を参照してください。

重要なプロパティ

Property 説明設定
Items Peoplepicker に表示される事前選択されたペルソナ (メンバー)
Suggestions_Items 選択する推奨メンバーのリスト。 これは必須のデータセット プロパティです。
PeoplePickerType 使用する Peoplepicker の種類
MaxPeople 選択できるユーザーの最大数
NoResultFoundMesage 指定された検索テキストに基づいて結果が見つからない場合に表示されるメッセージ。
MinimumSearchTermLength 提案を提供する前に入力する 検索語句 の最小の長さ。
SearchTermToShortMessage 検索テキストが 最小検索語長 以下の場合に表示されるカスタム メッセージ。
Error ユーザー ピッカーを赤で強調表示して、検証が必要な特定のエラーがあることを表します。
ShowSecondaryText セカンダリ テキスト (JobTitle など) を表示するかどうかに応じて、はい または いいえ を指定します。

Items のプロパティ

Property 説明設定
PersonaName ペルソナの表示名。
PersonaKey 特定のアイテムを識別するキー。 このキーは一意である必要があります。
PersonaImgUrl ペルソナ画像 (プロフィール画像) の URL または Base64 コンテンツ。
PersonaRole 二次テキスト、できればペルソナの役職
PersonaPresence オプション - 表示する人物のプレゼンス - 未定義の場合、プレゼンスは表示されません。 値は次のうち一つにする必要があります: away, blocked, busy, dnd, none, offline, online
PersonaOOF オプション - ペルソナが不在かどうかに基づいて、True または False。

Suggestions_Items のプロパティ

Property 説明設定
SuggestionName ペルソナの表示名。
SuggestionKey 特定のアイテムを識別するキー。 このキーは一意である必要があります。
SuggestionImgUrl ペルソナ画像 (プロフィール画像) の URL または Base64 コンテンツ。
SuggestionRole 二次テキスト、できればペルソナの役職
SuggestionPresence オプション - 表示する人物のプレゼンス - 未定義の場合、プレゼンスは表示されません。 値は次のうち一つにする必要があります: away, blocked, busy, dnd, none, offline, online
SuggestionOOF オプション - ペルソナが不在かどうかに基づいて、True または False。

追加のプロパティ

Property 説明設定
Theme Fluent UI テーマ デザイナー (windows.net) を使用して生成された JSON 文字列を受け入れます。 これを空白のままにすると、Power Apps が定義した既定のテーマが使用されます。
AccessibilityLabel スクリーン リーダーの aria-label
InputEvent コントロールに送信するイベント。 SetFocusInputEvent としてサポートします。

使用例

PeoplePicker は入力コレクションを取得できる他のソースをサポートします。 次は、PeoplePicker コンポーネントを使用する方法の例です。

Office 365 ユーザー コネクタ

  1. データ ソースとして Office 365 ユーザー コネクタを追加します。

  2. 以下の Power Fx 式をコントロールの On Search プロパティに割り当て、UserCollection を呼ばれるコレクションを作成します。

    ClearCollect(
        UserCollection,
        AddColumns(
            Filter(
                Office365Users.SearchUser(
                    {
                        searchTerm: Self.SearchText,
                        top: 500
                    }
                ),
                !(Mail in Self.SelectedPeople.PersonaKey)
            ),
            "SuggestionImgUrl",
            Substitute(
                JSON(
                    Office365Users.UserPhotoV2(Id),
                    JSONFormat.IncludeBinaryData
                ),
                """",
                ""
            ),
            "SuggestionKey",
            Mail,
            "SuggestionName",
            DisplayName,
            "SuggestionRole",
            JobTitle,
            "SuggestionPresence",
            "away"
        )
    )
    
  3. Suggestions_Items プロパティを UserCollection に設定します。

    Note

    上記の式には、UserPhoto を取得するための連続した要求が含まれているため、読み込み時間が長くなります。 写真が不要で検索時間を短縮したい場合は、UserCollection の代わりにコントロールの Suggestions_Items プロパティの次の式を使用します。

    AddColumns(
        Office365Users.SearchUser({ searchTerm: Self.SearchText, top: 500 }),
        "SuggestionKey", Mail, 
        "SuggestionName", DisplayName,
        "SuggestionRole", JobTitle
    )
    

この時点で、コントロールは機能しており、選択したメンバーはSelectedPeople財産。

PeoplePicker1.SelectedPeople

Dataverse テーブルと - Microsoft Entra AAD ユーザーまたはユーザー

  1. 以下のコード スニペット を指定して Suggestions_Items プロパティのセットアップします。

    ユーザーまたは特定のユーザーを (以下のコードを使用して) テーブルから PeoplePicker の項目コレクション (Suggestions_Items プロパティ下) に追加します。

    -AAD Users テーブル

    Search('AAD Users', Self.SearchText,"displayname" ,"mail")
    

    -Users テーブル

    Search('Users', Self.SearchText,"fullname","internalemailaddress")
    
  2. AddColumns() を使用して、必要に応じて列をマップします。 以下は、列プロパティ マッピングの例です。

    プロパティ名 AADUser テーブル列 ユーザー テーブル列
    SuggestionKey "mail" "internalemailaddress"
    SuggestionName "displayname" "fullname"
    SuggestionRole "jobtitle" "jobtitle"

この時点で、ユーザー ピッカーが機能し、選択されたメンバーを SelectedPeople プロパティから取得できるようになります。

PeoplePicker1.SelectedPeople

制限

このキャンバス コンポーネントは、キャンバス アプリとカスタム ページでのみ使用できます。