Débuguer les erreurs dans Power Apps

Dans cet article, vous trouverez un recensement de règles et de méthodes utilisées pour débuguer les erreurs dans Power Apps.

Cet article est un complément de l’article sur le Retour d’expériences sur les développements Power Apps.

Gardez à l’esprit que l’interface a pu évoluer fortement depuis que cet article a été rédigé.

Pour vérifier les données

Le plus simple pour tester une formule : insérez un contrôle Étiquette dans votre écran, puis créez votre formule à tester dans sa propriété Text.

Une autre possibilité pour vérifier le contenu d’une liste SharePoint dans votre application Power Apps : insérez un contrôle Table de données dans un écran vide. Cela permet de vérifier ce que Power Apps « voit » comme données. Vous serez peut-être surpris.

Le plus intéressant pour connaître les valeurs renvoyées par une formule valide : cliquez au bout de la formule qui se trouve dans l’éditeur de formule.

Ensuite, cliquez sur le petit chevron qui s’affiche juste en-dessous : la valeur, ou la liste de valeurs, s’affiche.

Le petit chevron se voit à peine. Il est juste à droite du chiffre 2, ci-dessous.

Afficher les liste des valeurs que renvoie une formule
Afficher les liste des valeurs que renvoie une formule

Débuguer les erreurs dans Power Apps

En cas d’erreur (icône rouge), cliquez dans le stéthoscope en haut à droite puis dans Formules. Ensuite, cliquez sur le chevron à droite de l’erreur : lisez l’explication.

Ci-dessous, c’est une fonction appelée dans la mauvaise propriété avec le message Appel de fonction inconnue ou non prise en charge.

Erreur PowerApps
Erreur PowerApps

Autre exemple fréquent, quand on essaie d’appeler une fonction d’action (OnSelect, OnChange, etc.) dans une propriété qui ne le supporte pas (Text, etc.), avec le message Fonction de comportement dans une propriété non-comportementale :

Débuguer les erreurs dans Power Apps: Action dans une propriété non prévue à cet effet
Débuguer les erreurs dans Power Apps: Action dans une propriété non prévue à cet effet

Débuguer les erreurs dans Power Apps lors d’une erreur sur une formule

Version Anglaise et Française

Si vous avez copié une formule Power Apps d’Internet, il est probable qu’elle soit en anglais. Si votre concepteur Power Apps est la version français, remplacez systématiquement et sans exception TOUTES les virgules (« , ») de la formule par des points-virgules (« ; »).

En effet, dans la version anglaise, la virgule est le séparateur de paramètres. Au contraire, dans la version française, le point-virgule est le séparateur de paramètres.

De plus, si dans la formule anglaise, il y a un point-virgule et que vous utilisez la version française du concepteur Power Apps, remplacez TOUS les points-virgules d’origine par deux points-virgules (« ;; »). Dans la version anglaise, le simple point-virgule est le séparateur de fonctions. Dans la version de française, le double point-virgule est le séparateur de fonction.

Rassurez-vous : lorsque que vous passerez de la version française à la version anglaise, et réciproquement, c’est le concepteur Power Apps qui se chargera tout seul et automatiquement de la traduction des virgules et points-virgules.

En cas d’erreur incompréhensible

En cas d’erreur (icône rouge) incompréhensible ou bizarre dans une formule, vérifiez la syntaxe des fonctions.

Les fonctions de Power Apps ont une syntaxe précise avec des paramètres disposées dans un ordre précis et elles sont sensibles à la casse. Pour connaître la syntaxe d’une fonction : https://coudr.com/powfn.

En cas d’erreur (icône rouge) dans une formule, réécrivez votre formule en sélectionnant les champs proposés automatiquement par Power Apps.

En effet, Power Apps est sensible à la casse, y compris pour les valeurs booléennes true, false. Par exemple :

UpdateContext({boolSuppression: True}) génére une erreur.

Tandis que UpdateContext({boolSuppression: true}) est juste.

Si tout est bon et que ça ne marche pas, enregistrez votre application puis fermez l’onglet qui affiche l’application. Ensuite, ouvrez a nouveau l’application en modification avec les 3 petits points (…).

Si les manipulations précédentes ne suffisent pas, enregistrez à nouveau votre application puis fermez l’onglet qui affiche l’application. Ensuite, appuyez simultanément sur les touches du clavier Ctrl + Maj + Suppr. Dans la fenêtre qui s’ouvre, cochez toutes les cases (sauf pour les mots de passe…) et sélectionnez la période Toutes les données. Quand le nettoyage est terminé, fermez TOUS les navigateurs ouverts. Ensuite, ouvrez a nouveau le navigateur puis identifiez vous sur https://office.com.

Demande impromptue de s’authentifier

Si PowerApps vous demande sans arrêt de vous authentifier, enregistrez votre application puis fermez l’onglet qui affiche l’application. Ensuite, appuyez simultanément sur les touches du clavier Ctrl + Maj + Suppr. Dans la fenêtre qui s’ouvre, cochez toutes les cases (sauf pour les mots de passe…) et sélectionnez la période Toutes les données.

Quand le nettoyage est terminé, fermez TOUS les navigateurs ouverts. Ensuite, ouvrez a nouveau le navigateur puis identifiez vous sur https://office.com.

Lisez aussi l’article sur les Problèmes pour se connecter à Microsoft 365.

Liste déroulante vide

Si le champ d’une liste déroulante est vide, alors qu’il devrait être alimenté, utilisez temporairement la fonction Distinct(). Celle-ci oblige PowerApps à alimenter une liste déroulante vide. Ensuite, une fois que la liste déroulante est bien alimentée, enlevez la fonction Distinct(), si vous n’en avez plus besoin.

Lisez aussi l’article sur le Retour d’expériences sur les développements Power Apps.

L’article sur le Traitement des nombres dans Power Apps est aussi à lire pour aller plus en profondeur dans le fonctionnement de Power Apps.

Réécriture des formules pour débuguer les erreurs dans Power Apps

Certaines formules peuvent être en erreur soudainement.

La formule fonctionnait bien puis soudainement, elle ne fonctionne plus.

Pour remédier à ce genre de problèmes, réécrivez votre formule en utilisant des fonctions équivalentes.

Par exemple :

Lookup(Fruits; Title = "Pomme")

peut aussi s’écrire :

First(Filter(Fruits; Title = "Pomme"))

Autre exemple :

RemoveIf(Fruits; Stock < 10)

peut s’écrire :

Remove(Fruits; Filter( Fruits; Stock < 10))

Autre exemple :

Lookup(Fruits; Title = "Pomme")

peut s’écrire

Lookup(Fruits; "Pomme" in Title)

ou, si la recherche est sensible à la casse :

Lookup(Fruits; "Pomme" exactin Title)

La réécriture d’une formule à l’aide de fonctions différentes permet parfois de résoudre ces problèmes.

Pour aller plus loin

Ensuite, procurez-vous gratuitement le tutoriel du Nouveau cours Power Apps gratuit.

Commentaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *