適用対象: キャンバス アプリ
デスクトップ フロー
Power Platform CLI
Dataverse 関数
グローバル変数の値を設定します。
概要
Set関数を使用して、ユーザーがボタンを選択した回数やデータ操作の結果などの情報を一時的に保持するグローバル変数の値を設定します。
グローバル変数はお使いのアプリ全体で、どの画面でも利用できます。 グローバル変数は最も単純な種類の変数であり、たいていの状況でニーズを満たせます。 単一の画面でのみスコープをもつコンテキスト変数や行レベルでテーブルを変更できるコレクションもあります。 これらの他のオプションの詳細については、変数について を確認してください。
Power Apps では基本的に、ユーザーがアプリを操作すると、計算式が自動的に再計算されます。 変数に依存する計算式は、変更されると自動的に更新されます。 ただし、 Set 関数で使用される数式の値が変更された場合、変数は自動的に更新されません。 このため、アプリメーカーは変数を手動で更新する必要があり、エラーが発生しやすく、他の人が理解するのが難しくなる可能性があります。 変数を使用する前に、変数について のページを確認してください。
内容
グローバル変数は、 Set 関数を使用して暗黙的に作成されます。 明示的な宣言は必要ありません。 グローバル変数のすべての Set 関数を削除すると、そのグローバル変数は存在しなくなります。 変数をクリアするには、その値を Blank 関数 の結果に設定します。
Power Apps Studio 内の ファイル メニューの変数ビューで、変数の値、定義、使用について確認できます。
具体例はこのトピックで後ほど紹介しますが、グローバル変数には以下をはじめとするさまざまな情報が含まれます。
- 単一の値
- レコード
- テーブル
- オブジェクト参照
- 計算式の結果
アプリが終了するまで、グローバル変数の値は保持されます。 アプリを終了すると、グローバル変数の値は失われ、アプリが再び読み込みされたときに再作成されます。
グローバル変数に既存のコレクションやコントロールと同じ名前は使用できません。 同じ名前がコンテキスト変数として使用されることがあります。 この 2 つの間の曖昧さを解消するには、曖昧性除去演算子 を使用します。
Set には戻り値がないため、 動作式内でのみ使用できます。
構文
Set( VariableName, Value )
- VariableName - 必須。 作成または更新するグローバル変数の名前。
- 値 - 必須。 コンテキスト変数に割り当てる値。
例
| 計算式 | 内容 | 結果 |
|---|---|---|
| Set( カウンター, 1 ) | グローバル変数 Counter を作成または変更し、その値を 1 に設定します。 | カウンター の値は 1です。 数式に Counter という名前を使用することで、この変数をどの画面からでも参照できます。 |
| Set( Counter, 2 ) | 前の例のグローバル変数 Counter の値を 2 に設定します。 | カウンター の値は 2です。 |
| Set( カウンター、 カウンター + 1 ) | 前の例のグローバル変数 Counter の値を 3 に増やします。 | カウンター の値は 3です。 |
| Set( Name, "Lily" ) | グローバル変数 Counter を作成または変更し、その値を Lily に設定します。 | 名前 の値は Lilyです。 |
| Set( Person, { Name: "Milton", Address: "1 Main St" } ) | グローバル変数 Person を作成または変更し、その値をレコードに設定します。 このレコードには、Name と Address の 2 つの列が存在します。 Name 列の値は Milton、Address 列の値は 1 Main St です。 |
人物 には、レコード { の名前:「Milton」、住所:「1 Main St」 }の値があります。 このレコード全体を参照するには Person という名前を使用し、このレコードの個別の列を参照する場合には、Person.Name または Person.Address を使用します。 |
| Set( Person, Patch( Person, {Address: "2 Main St" } ) ) | Patch 関数を操作してグローバル変数 Person の Address 列の値を 2 Main St に更新します。 | 現在、人物 のレコードの値は { 名前:「Milton」、住所:「2 Main St」 }です。 |