次の方法で共有


Choices 関数

適用対象: キャンバス アプリ モデル駆動型アプリ Power Pages

検索列で使用可能な値のテーブルを返します。

Description

Choices関数は、参照列に使用できる値のテーブルを返します。

Choices関数を使用して、ユーザーが選択できる選択肢の一覧を指定します。 この関数は、編集フォームで Combo box コントロールと共によく使用されます。

ルックアップの場合、 Choices 返されるテーブルは、ルックアップに関連付けられている外部テーブルと一致します。 Choicesを使用すると、外部テーブルを追加のデータ ソースとして追加する必要がなくなります。 Choices は、外部テーブルのすべての列を返します。

Choicesはテーブルを返すので、FilterSortAddColumns、およびその他のすべてのテーブル操作関数を使用して、テーブルのフィルター処理、並べ替え、および整形を行うことができます。

現時点では、 委任Choicesできません。 この制限によりアプリで問題がある場合は、データ ソースとして外部テーブルを追加し、それを直接使用してください。

Choices では、 ShowColumnsSearch、およびその他のテーブル関数とは異なり、列名を文字列にして二重引用符で囲む必要はありません。 列を直接参照するのと同じように、式を指定します。

列参照は、データ ソースに対して直接行う必要があります。 たとえば、データ ソースが Accounts でルックアップが SLA の場合、列参照は Accounts.SLA になります。 参照は、関数、変数、またはコントロールを経由することはできません。 この例を拡張し、AccountsGallery コントロールにフィードされる場合は、式 Gallery.Selected.SLA を使って選択されたアカウントの SLA を参照します。 ただし、この参照はコントロールを経由したので、Columns 関数に渡されることはできません。やはり Accounts.SLA を使う必要があります。

現時点では、ルックアップ列を使用できるのは SharePoint および Microsoft Dataverse のみです。

構文

Choices( column-reference [, text-filter ] )

  • 列参照 - 必須。 データ ソースのルックアップ列です。 列名を二重引用符で囲まないでください。 参照は、データ ソースの列に対して直接行う必要があり、関数またはコントロールを経由してはなりません。
  • text-filter - オプション。 text-filter で指定されたテキストで始まる選択肢のみを返すことにより、選択肢のリストをフィルターします。 空の文字列を指定すると、すべての選択肢が返されます。

使用例

Choices ルックアップの場合

  1. Dataverseデータベースを作成し、 サンプル アプリとデータを含める ボックスを 選択 します。

    取引先企業 などの多数のテーブルが作成されます。

    : テーブル名は、make.powerapps.comでは単数形、 Power Apps Studio では複数形です。

    取引先企業 テーブルには 取引先責任者 列があり、これは 取引先担当者 テーブルに対するルックアップです。

    Dataverse の連絡先テーブルのフィールドの部分的なリスト。

    各アカウントについて、取引先担当者が取引先責任者として指定されているか、または取引先責任者が空白になっています。

  2. Accountsテーブルからアプリ を生成します。

  3. 左端にある画面とコントロールのリストで、EditScreen1 が表示されるまで下にスクロールし、そのすぐ下にある EditForm1 を選択します。

    左側のナビゲーション バーで、EditScreen1 の EditForm1 を選択します。

  4. 右側のウィンドウのプロパティ タブでフィールドの編集を選択します。

    データ ウィンドウを開きます。

  5. フィールド ウィンドウで、フィールドの追加を選択します。

  6. 取引先責任者フィールドを検索し、そのチェックボックスを選択してから、追加を選択します。

    取引先企業を選択して、データ ウィンドウを開きます。

    取引先責任者フィールドは、フォームの下部に表示されます。 フィールドにエラーが表示された場合は、ビュー タブでデータ ソースを選択し、取引先企業データ ソースの省略記号 (...) を選択し、更新を選択します。

  7. (オプション) 取引先責任者のフィールドをフィールド一覧の下部から先頭にドラッグします。

  8. 取引先責任者のカードで、Combo box コントロールを選択します。

    そのコントロールの Items プロパティは、最初の例のように表示名、または 2 番目の例のように論理名で列を識別する式に設定されます。

    • Choices( Accounts.'Primary Contact' )

    • Choices( Accounts.primarycontactid )

      フォーム コントロールを含むキャンバス画面。[プライマリ連絡先] カード内のコンボ ボックス コントロールが選択され、数式 Choices( [取引先企業].'[主連絡先]) を持つ Items プロパティが表示されます。

  9. 説明のために、データ テーブル コントロールの Choices 関数によって返される完全な テーブル を表示できます。 ホーム タブの新しい画面を選択し、空白を選択します。

  10. 挿入タブのData tableを選択します。

  11. Data table コントロールの Items プロパティを次の数式に設定します。

    Choices( Accounts.'Primary Contact' )

  12. Data table コントロールの中央で、フィールドを選んでください ... で始まるリンクを選択してから、表示するフィールド (たとえば、firstname および lastname) のチェック ボックスを選択します。

    データ テーブル コントロールを含むキャンバス画面。Items プロパティは数式 Choices( Accounts.'Primary Contact' ) に設定され、テーブルには連絡先テーブルのレコードの最初のセットの姓と姓の列が表示されます。