Aller au contenu principal

Switch

Aiguillage multi-branches selon la valeur d'une expression. Chaque cas (case) dirige le flux vers une branche differente. Un cas par defaut (fallback) capture les valeurs non prevues.

Parametres

ParametreTypeRequisVariableDescription
switchExpressionvaleur dynamiqueOuiOuiExpression a evaluer pour le branchement. Chaque item est compare aux cases definis.
caseslisteOuiNonListe des cases. Chaque case a un identifiant, un libelle, un operateur de comparaison et une valeur.
options.fallbackchoix (none, extraOutput, firstOutput)NonNonComportement si aucun case ne correspond : ignorer, router vers une sortie fallback, ou router vers le premier case. (Defaut: "extraOutput")
options.itemModechoix (each, first, all)NonNonMode de traitement : evaluer chaque item individuellement, router selon le premier item, ou router si tous les items correspondent. (Defaut: "each")
options.matchStrategychoix (firstMatch, allMatches)NonNonStrategie de correspondance : s'arreter au premier case qui correspond, ou envoyer a tous les cases correspondants. (Defaut: "firstMatch")
options.typeValidationchoix (strict, loose)NonNonValidation de type : strict (erreur si types incompatibles) ou permissif (conversion automatique). (Defaut: "loose")
options.ignoreCaseoui/nonNonNonIgnorer la casse lors des comparaisons de texte. (Defaut: false)
outputVariabletexteNonNonNom de la variable de sortie pour le resultat du branchement.

Les parametres marques Variable = Oui acceptent la syntaxe {{nomBloc.champ}}.

Sortie

Variable de sortie : switchResult

{
"matchedCase": "..."
}

Exemple

Diriger le flux selon le type de demande.

Entree :

{"type": "urgent"}

Sortie :

{"matchedCase": "urgent"}
Astuce

{{switchResult.matchedCase}} contient le nom du cas qui a ete selectionne. Si aucun cas ne correspond, le flux passe par la branche "fallback".