PowerApps の Collect、Clear、および ClearCollect 関数Collect, Clear, and ClearCollect functions in PowerApps

コレクションの作成とクリアおよび任意のデータ ソースへのレコードの追加を行います。Creates and clears collections and adds records to any data source.

説明Description

CollectCollect

Collect 関数は、データ ソースにレコードを追加します。The Collect function adds records to a data source. 次の項目を追加できます。The items to be added can be:

  • 1 つの値: 値は新しいレコードの Value フィールドに配置されます。A single value: The value is placed in the Value field of a new record. その他のプロパティはすべて空白のままになります。All other properties are left blank.
  • レコード: 指定した各プロパティは、新しいレコードの対応するプロパティに配置されます。A record: Each named property is placed in the corresponding property of a new record. その他のプロパティはすべて空白のままになります。All other properties are left blank.
  • テーブル: テーブルの各レコードは、前述のように、データ ソースの個別のレコードとして追加されます。A table: Each record of the table is added as a separate record of the data source as described above. テーブルが入れ子になったテーブルとしてはレコードに追加されることはありません。The table is not added as a nested table to a record. これを行うには、先にレコードでテーブルをラップします。To accomplish this, wrap the table in a record first.

コレクションに対して使用した場合は、必要に応じて追加のが作成されます。When used with a collection, additional columns will be created as needed. その他のデータ ソースの列はデータ ソースによって固定されており、新しい列を追加することはできません。The columns for other data sources are fixed by the data source and new columns cannot be added.

データ ソースがまだ存在しない場合は、コレクションが作成されます。If the data source doesn't already exist, a collection is created.

コレクションは、グローバル変数を保持するためや、データ ソースの一時的なコピーを作成するために、使用されることがあります。Collections are sometimes used to hold global variables or make a temporary copy of a data source. PowerApps では基本的に、ユーザーがアプリを操作すると、数式が自動的に再計算されます。PowerApps are based on formulas that automatically recalculate as the user interacts with an app. コレクションでは再計算されません。そのため、コレクションを使うと、アプリの作成が難しく、わかりにくくなる場合があります。Collections do not enjoy this benefit and their use can make your app harder to create and understand. この方法でコレクションを使用する場合は、先に変数の使用方法を確認してください。Before using a collection in this manner, review working with variables.

また、Patch 関数を使用して、データ ソースのレコードを作成することもできます。You can also use the Patch function to create records in a data source.

Collect は、変更されたデータ ソースをテーブルとして返します。Collect returns the modified data source as a table. Collect は、動作の数式内でのみ使用できます。Collect can only be used in a behavior formula.

ClearClear

Clear 関数は、コレクションのすべてのレコードを削除します。The Clear function deletes all the records of a collection. コレクションの列は残ります。The columns of the collection will remain.

Clear は、コレクションに対してのみ動作し、その他のデータ ソースでは動作しません。Note that Clear only operates on collections and not other data sources. その他のデータ ソースには、RemoveIf( DataSource, true ) を使用できます。You can use RemoveIf( DataSource, true ) for this purpose. ただし、データ ソースのストレージからすべてのレコードが削除され、他のユーザーに影響する可能性があるため、注意してください。Use caution as this will remove all records from the data source's storage and can affect other users.

Remove 関数を使用すると、レコードを選択して削除できます。You can use the Remove function to selectively remove records.

Clear には、戻り値がありません。Clear has no return value. Clear は、動作の数式内でのみ使用できます。It can only be used in a behavior formula.

ClearCollectClearCollect

ClearCollect 関数は、コレクションからすべてのレコードを削除し、同じコレクションに異なるレコード セットを追加します。The ClearCollect function deletes all the records from a collection and then adds a different set of records to the same collection. ClearCollect は、1 つの関数で、Clear の後に Collect を実行します。With a single function, ClearCollect offers the combination of Clear and then Collect.

ClearCollect は、変更されたコレクションをテーブルとして返します。ClearCollect returns the modified collection as a table. ClearCollect は、動作の数式内でのみ使用できます。ClearCollect can only be used in a behavior formula.

構文Syntax

Collect( DataSource, Item, ... )Collect( DataSource, Item, ... )

  • DataSource – 必須。DataSource – Required. データを追加するデータ ソース。The data source that you want to add data to. 存在しない場合は、新しいコレクションが作成されます。If it does not already exist, a new collection is created.
  • Item(s) - 必須。Item(s) - Required. データ ソースに追加する 1 つ以上のレコードまたはテーブル。One or more records or tables to add to the data source.

Clear( Collection )Clear( Collection )

  • Collection - 必須。Collection – Required. クリアするコレクション。The collection that you want to clear.

ClearCollect( Collection, Item, ... )ClearCollect( Collection, Item, ... )

  • Collection - 必須。Collection – Required. クリアした後にデータを追加するコレクション。The collection that you want to clear and then add data to.
  • Item(s) - 必須。Item(s) - Required. データ ソースに追加する 1 つ以上のレコードまたはテーブル。One or more records or tables to add to the data source.

Examples

データ ソースのクリアとレコードの追加Clearing and adding records to a data source

次の例では、IceCream という名前のコレクションに対して消去および追加を行います。In these examples, you'll erase and add to a collection that's named IceCream. このデータ ソースの先頭には、次の内容が含まれています。The data source begins with these contents:

数式Formula 説明Description 結果Result
ClearCollect( IceCream, { Flavor: "Strawberry", Quantity: 300 } )ClearCollect( IceCream, { Flavor: "Strawberry", Quantity: 300 } ) IceCream コレクションのすべてのデータをクリアし、その後、ストロベリー アイスクリームの数量を含むレコードを追加します。Clears all data from the IceCream collection and then adds a record that includes a quantity of strawberry ice cream.

IceCream データ ソースも変更されています。The IceCream data source has also been modified.
Collect( IceCream, { Flavor: "Pistachio", Quantity: 40 }, { Flavor: "Orange", Quantity: 200 } )Collect( IceCream, { Flavor: "Pistachio", Quantity: 40 }, { Flavor: "Orange", Quantity: 200 } ) ピスタチオとオレンジ アイスクリームの数量を含む 2 つのレコードを IceCream コレクションに追加します。Adds two records to the IceCream collection that includes a quantity of pistachio and Orange ice cream.

IceCream データ ソースも変更されています。The IceCream data source has also been modified.
Clear( IceCream )Clear( IceCream ) IceCream コレクションからすべてのレコードを削除します。Removes all records from the IceCream collection.

IceCream データ ソースも変更されています。The IceCream data source has also been modified.

ステップ バイ ステップStep by step

  1. ボタンを追加し、その OnSelect プロパティを次の関数に設定します。Add a button, and set its OnSelect property to this function:
    Collect(Products, "Europa", "Ganymede", "Callisto")Collect(Products, "Europa", "Ganymede", "Callisto")

    この関数では、3 つの各製品名の行を含む Products という名前のコレクションを作成します。This function creates a collection that's named Products that contains a row for each of three product names.

  2. F5 キーを押し、ボタンをクリックしてから、Esc キーを押して、デザイン ワークスペースに戻ります。Press F5, click the button, and then press the Esc key to return to the design workspace.
  3. (省略可能) 作成したコレクションのプレビューを表示するには、[コンテンツ] タブで [コレクション] をクリックします。(optional) To display a preview of the collection that you created, click Collections on the Content tab.