選択と選択肢の値の変更

完了

テーブルに選択肢列の値を設定する最も簡単な方法は、編集フォームを使用する方法です。 フォームに選択肢列を追加すると、次のタスクを完了するためのフィールドが設定されます。

  • ドロップダウン メニュー (単一選択) またはコンボ ボックス (複数選択) のいずれかとして設定します。 (編集フォームを追加すると、Power Apps ではコンボ ボックスを使用して両方を設定します。)

  • Choices() 関数を使用して、ユーザーが選択できる値のリストを入力します (これも編集フォームを使用すると自動的に行われます)。

  • 行の列値からコントロールの現在の値を設定します。

  • コントロールの SubmitForm 関数 (ボタンなど) を使用して値をテーブルに保存します。

既定では、フォームに列が追加されると、その列は編集可能になります。 フォームに選択肢列を表示するが、編集可能にしない場合は、コントロール タイプ フォーム フィールドを表示オプションに変更します。

修正プログラムを使用した作成または更新

Patch() 関数を使用して、選択肢列を作成または変更することもできます。 この方法は、少数のフィールドだけを更新し、ユーザー入力をほとんど、またはまったく必要としない場合に適しています。 たとえば、ギャラリー アイテムに、OnSelect 動作を使用して Patch() 関数を実行することで行を更新する選択ボタンを設定できます。

次の例では、ギャラリー アイテムに、アカウントを優先顧客にするためのボタンが設定されています。 このボタンを選択する目的は、行のカテゴリ選択フィールドを優先顧客に設定することです。 このタスクを実行するために、ギャラリー アイテムに VIP にするボタンを追加しました。

以下に示すように、VIP にするボタンの OnSelect プロパティには Patch() 式が含まれています。

Patch(Accounts, ThisItem, {Category: Category.'Preferred Customer'})

テーブル列で選択セットが使用されている場合、Patch を使用する際に、値の先頭に選択セット名を付ける必要があります。これを行わないと、"OptionSetValue" エラーが発生します。 選択セット名は、Dataverse のテーブルにアクセスし、編集モードでその列を選択して、この選択肢を同期する相手フィールドを探すことで確認できます。 その列の直下に、選択セットの名前が表示されます。

このような状況では、類似のテーブル内のボタンの Patch() は、次のようになります。

Patch(Accounts, ThisItem, {'Customer Type': Category.Preferred})