Fonctions Collect, Clear et ClearCollect dans PowerAppsCollect, Clear, and ClearCollect functions in PowerApps

Permet de créer et de supprimer des collections, ainsi que d’ajouter des enregistrements à une source de données.Creates and clears collections and adds records to any data source.

DescriptionDescription

CollectCollect

La fonction Collect ajoute des enregistrements à une source de données.The Collect function adds records to a data source. Les éléments ajoutés sont du type :The items to be added can be:

  • Une valeur unique : la valeur est placée dans le champ Value d’un nouvel enregistrement.A single value: The value is placed in the Value field of a new record. Toutes les autres propriétés sont vides.All other properties are left blank.
  • Un enregistrement : chaque propriété nommée est placée dans la propriété correspondante d’un nouvel enregistrement.A record: Each named property is placed in the corresponding property of a new record. Toutes les autres propriétés sont laissées vides.All other properties are left blank.
  • Une table : chaque enregistrement de la table est ajouté sous forme d’enregistrement séparé de la source de données, comme décrit ci-dessus.A table: Each record of the table is added as a separate record of the data source as described above. La table n’est pas ajoutée à un enregistrement sous forme de table imbriquée.The table is not added as a nested table to a record. Pour cela, incluez tout d’abord la table dans un enregistrement.To accomplish this, wrap the table in a record first.

Si vous utilisez une collection, d’autres colonnes sont créées si nécessaire.When used with a collection, additional columns will be created as needed. Les colonnes d’autres sources de données sont définies par la source de données et aucune nouvelle colonne ne peut être ajoutée.The columns for other data sources are fixed by the data source and new columns cannot be added.

Si la source de données n’existe pas, une collection est créée.If the data source doesn't already exist, a collection is created.

Les collections sont parfois utilisées pour contenir les variables globales ou effectuer une copie temporaire d’une source de données.Collections are sometimes used to hold global variables or make a temporary copy of a data source. Les applications PowerApps dépendent de formules recalculées automatiquement lorsque l’utilisateur interagit avec une application.PowerApps are based on formulas that automatically recalculate as the user interacts with an app. Les collections ne proposent pas cet avantage et peuvent compliquer la création et la compréhension de votre application.Collections do not enjoy this benefit and their use can make your app harder to create and understand. Avant d’utiliser une collection de cette manière, examinez l’utilisation des variables.Before using a collection in this manner, review working with variables.

Vous pouvez également utiliser la fonction Patch pour créer des enregistrements dans une source de données.You can also use the Patch function to create records in a data source.

La fonction Collect renvoie la source de données modifiée en tant que table.Collect returns the modified data source as a table. La fonction Collect peut uniquement être utilisée dans une formule de comportement.Collect can only be used in a behavior formula.

ClearClear

La fonction Clear supprime tous les enregistrements d’une collection,The Clear function deletes all the records of a collection. à l’exception des colonnes.The columns of the collection will remain.

Notez que Clear fonctionne uniquement sur les collections et non sur d’autres sources de données.Note that Clear only operates on collections and not other data sources. Utilisez RemoveIf( DataSource, true ) dans ce deuxième cas.You can use RemoveIf( DataSource, true ) for this purpose. Soyez prudent, car vous supprimez alors tous les enregistrements de la zone de stockage de la source de données, ce qui peut avoir une incidence sur d’autres utilisateurs.Use caution as this will remove all records from the data source's storage and can affect other users.

Utilisez la fonction Remove pour supprimer les enregistrements de manière sélective.You can use the Remove function to selectively remove records.

Aucune valeur n’est renvoyée avec la fonction Clear.Clear has no return value. qui peut uniquement être utilisée dans une formule de comportement.It can only be used in a behavior formula.

ClearCollectClearCollect

La fonction ClearCollect supprime tous les enregistrements d’une collection, puis ajoute un autre jeu d’enregistrements à la même collection.The ClearCollect function deletes all the records from a collection and then adds a different set of records to the same collection. ClearCollect regroupe Clear et Collect dans une même fonction.With a single function, ClearCollect offers the combination of Clear and then Collect.

ClearCollect renvoie la collection modifiée en tant que table.ClearCollect returns the modified collection as a table. La fonction ClearCollect peut uniquement être utilisée dans une formule de comportement.ClearCollect can only be used in a behavior formula.

SyntaxeSyntax

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

  • DataSource : requis.DataSource – Required. Source de données à laquelle ajouter des données.The data source that you want to add data to. Si elle n’existe pas déjà, une nouvelle collection est créée.If it does not already exist, a new collection is created.
  • Item(s) : requis.Item(s) - Required. Un ou plusieurs enregistrements ou tables à ajouter à la source de données.One or more records or tables to add to the data source.

Clear( Collection )Clear( Collection )

  • Collection : requis.Collection – Required. Collection à effacer.The collection that you want to clear.

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

  • Collection : requis.Collection – Required. Collection à effacer et à laquelle vous voulez ajouter des données.The collection that you want to clear and then add data to.
  • Item(s) : requis.Item(s) - Required. Un ou plusieurs enregistrements ou tables à ajouter à la source de données.One or more records or tables to add to the data source.

ExemplesExamples

Suppression et ajout d’enregistrements à une source de donnéesClearing and adding records to a data source

Dans ces exemples, vous devez effacer une collection appelée IceCream puis y ajouter des éléments.In these examples, you'll erase and add to a collection that's named IceCream. La source de données commence par le contenu suivant :The data source begins with these contents:

FormuleFormula DescriptionDescription RésultatResult
ClearCollect( IceCream, { Flavor: "Strawberry", Quantity: 300 } )ClearCollect( IceCream, { Flavor: "Strawberry", Quantity: 300 } ) Efface toutes les données à partir de la collection IceCream, puis ajoute un enregistrement qui inclut une quantité de glace à la fraise.Clears all data from the IceCream collection and then adds a record that includes a quantity of strawberry ice cream.

La source de données IceCream a également été modifiée.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 } ) Ajoute deux enregistrements à la collection IceCream avec une certaine quantité de glace à la pistache et de glace à l’orange.Adds two records to the IceCream collection that includes a quantity of pistachio and Orange ice cream.

La source de données IceCream a également été modifiée.The IceCream data source has also been modified.
Clear( IceCream )Clear( IceCream ) Supprime tous les enregistrements à partir de la collection IceCream.Removes all records from the IceCream collection.

La source de données IceCream a également été modifiée.The IceCream data source has also been modified.

Étape par étapeStep by step

  1. Ajoutez un bouton, puis définissez sa propriété OnSelect en utilisant la fonction suivante :Add a button, and set its OnSelect property to this function:
    Collect(Products, "Europa", "Ganymede", "Callisto")Collect(Products, "Europa", "Ganymede", "Callisto")

    Cette fonction crée une collection appelée Products qui contient une ligne pour chacun des trois noms de produits.This function creates a collection that's named Products that contains a row for each of three product names.

  2. Appuyez sur F5, cliquez sur le bouton, puis appuyez sur la touche ÉCHAP pour revenir à l’espace de conception.Press F5, click the button, and then press the Esc key to return to the design workspace.
  3. (facultatif) Pour afficher un aperçu de la collection que vous avez créée, cliquez sur Collections dans l’onglet Contenu.(optional) To display a preview of the collection that you created, click Collections on the Content tab.