Commutateur (Switch) et Étendue (Scope)
Deux actions de la catégorie Contrôle qui complètent Condition et les boucles dans les flux cloud.
Commutateur (Switch)
Le commutateur compare une valeur unique à plusieurs cas possibles, chacun déclenchant sa propre branche d'actions. C'est l'équivalent d'une série de conditions imbriquées, en plus lisible.
Ajouter un commutateur
- Dans le concepteur, cliquer sur + > Ajouter une action.
- Rechercher Commutateur (catégorie Contrôle).
- Dans la zone Activé, sélectionner la valeur à tester (contenu dynamique ou expression), par exemple le champ Statut d'un élément SharePoint.
- Dans chaque bloc Cas, saisir la valeur d'égalité attendue (par exemple Approuvé, Refusé) puis les actions de la branche.
- Le bloc Cas par défaut s'exécute si aucun cas ne correspond.
Points de vigilance
- Le commutateur ne teste que l'égalité stricte : pour des comparaisons (supérieur à, contient...), utiliser l'action Condition.
- Pour un choix SharePoint ou Dataverse, tester la valeur avec l'expression appropriée (par exemple triggerOutputs()?['body/Statut/Value']).
- Limite de la plateforme : 8 niveaux d'imbrication maximum (étendues, conditions, cas de commutateur et boucles cumulés).
À ne pas confondre : la fonction Power Fx Switch() utilisée dans Power Apps Canvas répond au même besoin mais s'écrit en formule ; l'action Commutateur de Power Automate se construit graphiquement.
Étendue (Scope)
L'étendue est un conteneur qui regroupe des actions liées : le bloc s'exécute comme un tout, se replie dans le concepteur et renvoie un statut global (Réussi, Échec, Ignoré, Expiré).
Ajouter une étendue
- Dans le concepteur, + > Ajouter une action.
- Rechercher Étendue (catégorie Contrôle).
- Glisser ou créer les actions à regrouper à l'intérieur du bloc.
Modèle try / catch / finally
Usage principal de l'étendue : la gestion des erreurs.
- Créer une étendue Try contenant le traitement principal.
- Créer une étendue Catch juste après, contenant la notification d'erreur (mail, Teams...).
- Sur l'étendue Catch : Ellipses > Exécuter après, cocher uniquement A échoué, A expiré ou Est ignoré.
- Facultatif : une étendue Finally configurée pour s'exécuter dans tous les cas (toutes les cases cochées).
Bonnes pratiques
- Laisser le déclencheur et les actions de réponse hors des étendues.
- Nommer les étendues selon leur rôle (Try - Traitement commande, Catch - Notification erreur).
- En cas d'échec, déplier l'étendue pour identifier l'action fautive : le statut Échec est global au bloc.
Travaux pratiques
- Créer un flux déclenché à la modification d'un élément d'une liste SharePoint avec une colonne de choix Statut.
- Ajouter un commutateur sur Statut : cas Approuvé (mail au demandeur), cas Refusé (mail avec motif), cas par défaut (notification Teams à l'approbateur).
- Encapsuler le traitement dans une étendue Try et ajouter une étendue Catch (Exécuter après : A échoué) qui envoie un mail à l'administrateur avec le nom du flux.
- Provoquer volontairement une erreur (adresse mail invalide) et vérifier le déclenchement du Catch dans l'historique d'exécution.