Power Appsで使用できる変数のうち、宣言した画面内でのみ使用できるコンテキスト変数を宣言する、UpdateContext関数について解説します。
UpdateContext関数とは
現在の画面のコンテキスト変数 を作成または更新します。
公式より引用
UpdateContext関数はコンテキスト変数を定義、変更する関数です。
コンテキスト変数とは
コンテキスト変数とは、宣言した画面上でしかその値が保持されない変数のことです。
Navigate関数やBack関数の引数に指定することで、他の画面に値を渡すこともできます。
似たような変数を定義できる関数としてSet関数がありますが、こちらは画面を遷移しても値が保持されます。
使い分けについては以下の記事で詳しく解説しています。
構文
UpdateContext({コンテキスト変数1:値1 [, コンテキスト変数2: 値2 [, ... ] ] } )
// コンテキスト変数には
・単一の値
・レコード
・テーブル
・オブジェクト参照
・計算式の結果
を入れることができます。
[]内は省略可能です。Set関数とは違い、連続して変数を宣言することができます。
使い方
実際に画面を見ながら使い方を見ていきましょう。ボタンの上の文字がボタンのOnSelectに与えられた指示です。
一番上のボタンを押してりんごの値を0にしました。
ばなながtrueなので、一番下のIf文ではりんごの値である0が表示されています。
真ん中のボタンを二回押したところです。りんごの値を1にして、みかんの値にりんごを加えています。
ばなながfalseなので、一番下のIf文ではみかんの値である2が表示されています。
ブール値(true/false)の前に!を付けることで、その値を反転させることができます。
UpdateContext関数でブール値を設定しておくことで、このようにボタンを押すごとに表示させるものを変えることもできます。
使用例
一つの画面でしか使用しないコンテキスト変数を宣言するときに使います。
変数の使い分けについては色々な考え方がありますが、アプリで使用する変数が多い場合にはコンテキスト変数を使用した方がいいと思います。
コメント
[…] Power Appsには、グローバル変数(Set関数)、コンテキスト変数(UpdateContext関数)の他にコレクションという変数(配列)があります。 […]
[…] コンテキスト変数→UpdateContext関数の使い方、解説 […]
[…] また、本来宣言した画面上でしか保持されないUpdateContext関数もNavigate関数によってその値を保持させることができます。 […]