Stocker une table

Effectué

Dans les exemples précédents, les tables étaient utilisées uniquement dans le contexte actuel du contrôle Table de données ou Liste déroulante. Vous avez souvent besoin de stocker une table et de l’utiliser à plusieurs endroits dans votre application. Pour ce faire, Power Apps propose une variable de table nommée collection.

Les collections sont un type de variable dans Power Apps

Les collections sont des variables de table dans lesquelles vous pouvez stocker des données dans un format structuré, comme vous le feriez dans une source de données tabulaire, sans écrire dans une source de données. Autrement dit, les collections stockent des valeurs dans des lignes et des colonnes. Vous pouvez utiliser des collections avec des fonctions de table comme vous le feriez pour toute autre source de données. Toutefois, vous ne pouvez pas utiliser une collection avec le contrôle Formulaire. Si vous êtes développeur, vous pouvez considérer une collection comme un tableau. Vous n’êtes pas obligé d’initialiser ni de predéfinir une collection. Quand vous la créez et définissez des valeurs, Power Apps la configure pour vous.

Créer une collection

La création d’une collection peut être effectuée dans votre application partout où une action peut normalement être entreprise. Par exemple, vous pouvez créer une collection en appuyant sur un bouton en modifiant la propriété OnSelect du bouton. Vous pouvez également créer une collection chaque fois que vous arrivez sur un certain écran en modifiant la propriété OnVisible de cet écran. Vous pouvez créer une collection nommée collectMyFirstCollection à l’aide de cette formule.

Collect(collectMyFirstCollection, {Name: "George", FavoriteColor:"Orange"})

Une collection nommée collectMyFirstCollection est alors créée. La collection comporte une colonne nommée Name et une autre nommée FavoriteColor. Elle a un seul enregistrement (ligne) de données avec George comme valeur Name et Orange comme valeur FavoriteColor. Remarquez que la syntaxe est similaire à celle de la fonction Table mentionnée précédemment dans ce module.

Vous pouvez ajouter un autre enregistrement à la collection à l’aide de cette formule.

Collect(collectMyFirstCollection, {Name: "Nicole", FavoriteColor:"Purple"})

Vous pouvez également ajouter plusieurs enregistrements à la fois à l’aide de cette formule.

Collect(collectMyFirstCollection, {Name: "Jeff", FavoriteColor:"Blue"}, {Name: "Ralph", FavoriteColor: "Red"})

Si vous avez exécuté toutes ces commandes, votre collection ressemble à cette table :

Name FavoriteColor
George Orange
Nicole Purple
Jeff Blue
Ralph Red

Vous pouvez utiliser cette collection comme source de données pour tout contrôle ayant besoin d’une table, par exemple dans un contrôle Galerie ou Liste déroulante.

Supprimer des données de votre collection

Vous pouvez effacer les données existantes de votre collection avant d’ajouter de nouvelles données à l’aide de la fonction ClearCollect. En prenant la collection existante de l’exemple précédent, vous pouvez utiliser cette formule :

ClearCollect(collectMyFirstCollection, {Name: "Fred", FavoriteColor:"Green"})

Tous les enregistrements de la table sont alors effacés avant d’ajouter le nouvel enregistrement. Votre collection ressemble désormais à ceci :

Name FavoriteColor
Fred Green

Vous pouvez également supprimer tous les enregistrements d’une collection à l’aide de la fonction Clear. Cette formule supprime tous les enregistrements de la collection sans toucher aux colonnes :

Clear(collectMyFirstCollection)