Parfois les formulaires s’avèrent insuffisants

Effectué

Quand vous générez des applications canevas dans Power Apps, vous accédez à Galeries pour afficher les enregistrements de votre source de données et à Formulaires pour afficher, créer et modifier un enregistrement individuel, mais parfois, les formulaires ne sont pas suffisants. Dans ces scénarios, Power Apps dispose de fonctions que vous pouvez utiliser pour mettre à jour vos sources de données tabulaires directement.

Créer et modifier un enregistrement directement

Dans ce module, vous allez découvrir comment utiliser la fonction Patch pour mettre à jour vos sources de données directement, sans utiliser de formulaires.

Vous utilisez essentiellement la fonction Patch lorsque vous avez besoin de prendre des mesures en fonction des données sans interaction utilisateur, de manière répétitive, ou que la conception de votre application ne prend pas en charge l’utilisation de formulaires. Par exemple, si vous souhaitez mettre à jour une source de données de journalisation chaque fois qu’un utilisateur clique sur un bouton pour accéder à un autre écran, vous pouvez utiliser la formule pour la propriété OnSelect du bouton.

Patch(LoggingTable, Defaults(LoggingTable), {WhoClicked:
User().FullName, WhenClicked: Now()}); Navigate(NextScreen,
ScreenTransition.Cover)

Cette formule crée un enregistrement dans la source de données nommée LoggingTable. La colonne WhoClicked est définie sur la propriété FullName de l’utilisateur connecté, tandis que la colonne WhenClicked est définie sur les date et heure auxquelles il a cliqué sur le bouton. Cette opération entraîne l’ouverture de l’écran nommé NextScreen à l’aide de la transition qui recouvre l’écran pour en afficher un nouveau.

Supprimer un enregistrement

Vous disposez également de fonctions pour supprimer un ou plusieurs enregistrements de votre source de données. Ces fonctions sont les suivantes :

  • Remove et RemoveIf : ces fonctions permettent de supprimer ou effacer des enregistrements de la source de données.

  • Clear : utilisez la fonction Clear pour supprimer tous les enregistrements d’une collection.

Par exemple, si vous souhaitez permettre à l’utilisateur de supprimer un enregistrement à partir d’un contrôle Galerie, ajoutez une icône de corbeille à la galerie affichant la source de données CustomerOrders, puis définissez la propriété OnSelect de l’icône comme suit.

Remove(CustomerOrders, ThisItem)

Cette formule supprime de la source de données CustomerOrders l’enregistrement correspondant à l’élément qui affichait l’icône de corbeille. Comme il n’y a aucune confirmation, vous pouvez envisager d’implémenter une boîte de dialogue de contrôle ou contextuelle pour vérifier que l’utilisateur souhaite réellement supprimer l’enregistrement.

Modifications en bloc des enregistrements

Les fonctions Patch et Remove permettent d’affecter un seul enregistrement. Pour effectuer une modification qui affecte plusieurs enregistrements, vous disposez de deux options :

  • Utilisez la fonction ForAll, qui a été présentée dans le module précédent, pour parcourir en boucle une table de données et exécuter une fonction Patch ou Remove pour chaque enregistrement de la table.

  • Utilisez la fonction Collect pour écrire d’une table vers une autre. Chaque enregistrement de la table source est ajouté en tant qu’enregistrement distinct à la table cible.

Ces sujets sont couverts dans d’autres parcours d’apprentissage Power Apps.

Les collections sont des sources de données

Il est important de ne pas oublier que ces fonctions peuvent utiliser une collection comme cible. Vous pouvez utiliser Patch, Remove et RemoveIf pour modifier des collections et des sources de données tabulaires. Lorsque vous créez des applications plus complexes, le stockage de données dans des collections et l’utilisation de ces éléments sont très courants ; ces fonctions constituent une grande partie de cette manipulation.

Le reste de ce module fait référence à la mise à jour d’une source de données. N’oubliez pas qu’une source de données peut être une source de données tabulaires ou une collection sauf indication contraire.

Dans l’unité suivante, vous allez découvrir comment créer et modifier des enregistrements.