Aller au contenu principal

Aiguillage de flux

Aiguillage de flux (t_route_flow) oriente le lot entier vers une sortie, selon ce qu'il contient. Plusieurs sorties, nommées par vous.

La différence avec Aiguillage​

AiguillageAiguillage de flux
Ce qui est orientéchaque lignele lot entier
Le lot en sortiese disperse entre les sortiespart d'un seul tenant
La question posée« cette ligne remplit-elle la condition ? »« ce lot remplit-il la condition ? »

« Moins de dix factures » n'est pas une propriété d'une ligne : aucune ligne ne sait combien elle a de sœurs. C'est ce que cette brick sait dire, et que l'autre ne peut pas.

Les conditions​

Sur le compte
Le flux est videzéro ligne
Le flux contient des lignesau moins une
Exactement N lignes
Moins de N / Plus de Nseuils exclusifs
Entre N et M lignesbornes incluses
Sur le contenu
Vraie sur au moins une ligne« il y a des rejets »
Vraie sur toutes les lignes« tout est conforme »
Vraie sur aucune ligne« aucun rejet »
Sur la structure
Une colonne est présente / absentepour un flux au schéma variable
Les trois formes d'expression ne disent pas la même chose

« Au moins une ligne en erreur » n'est pas « toutes les lignes en erreur ». Les confondre oriente un lot vers le mauvais traitement, et l'écart ne se voit qu'en aval.

Sur un flux vide, aucune des trois n'est vraie : il n'y a aucune ligne à interroger. La logique classique rendrait « toutes » vrai — rien ne la contredit — mais personne n'entend cela par « toutes les factures sont payées » quand il n'y a aucune facture. C'est « Le flux est vide » qui couvre ce cas.

Première route satisfaite, et elle seule​

Les routes se lisent dans l'ordre, comme un si … sinon si … sinon. Le lot part sur la première qui accepte ; les suivantes ne sont plus consultées.

C'est ce qui permet d'écrire des conditions non exclusives sans y penser :

1. « rien »       → Le flux est vide
2. « petit_lot » → Moins de 3 lignes
3. « normal » → Toujours

Trois lignes prennent normal. Zéro ligne prend rien, et petit_lot — que zéro satisferait aussi — n'est jamais consultée.

La sortie par défaut​

Quand aucune route ne prend, le lot part par default. La couper est un choix légitime — un lot hors norme qui ne doit aller nulle part — mais le lot est alors abandonné, et l'abandon est compté et journalisé. Un aiguillage qui perd des factures en silence est la panne la plus coûteuse à diagnostiquer.

Une route mal réglée arrête tout​

Un seuil illisible, une expression vide : la brick échoue, en nommant la route et le champ. Elle ne passe pas à la route suivante — cela ferait glisser le lot vers un traitement que personne n'a demandé.

Les branches non empruntées ne se plaignent pas​

Par construction, une seule sortie est empruntée à chaque exécution : toutes les autres restent muettes. Le contrôle de clôture le sait et se tait — comme pour Fin de flux, et sur toute la longueur de la branche, pas seulement au premier saut.