Fusion
Fusionne les resultats de plusieurs branches paralleles en un seul flux. Attend que toutes les branches soient terminees avant de continuer.
Parametres communs
| Parametre | Type | Requis | Variable | Description |
|---|---|---|---|---|
mergeStrategy | choix (all, first, last, race, concat, zip) | Oui | Non | Strategie de fusion des branches paralleles. (Defaut: "all") |
branchCount | nombre | Oui | Non | Nombre de branches d'entree a fusionner. (Defaut: 2, min 2, max 8) |
outputVariable | texte | Non | Non | Nom de la variable de sortie contenant le resultat fusionne. |
Parametres par strategie
all — Toutes
Attend et collecte toutes les branches avant de continuer.
| Parametre | Type | Requis | Variable | Description |
|---|---|---|---|---|
waitForAll | oui/non | Non | Non | Bloquer jusqu'a ce que toutes les branches terminent. (Defaut: true) |
first — Premiere
Retourne le resultat de la premiere branche completee.
last — Derniere
Retourne le resultat de la derniere branche completee.
race — Course
La premiere branche a terminer gagne. Les autres sont ignorees.
| Parametre | Type | Requis | Variable | Description |
|---|---|---|---|---|
raceTimeout | nombre | Non | Non | Timeout en millisecondes. Erreur si aucune branche ne termine a temps. 0 ou vide = pas de timeout. (min 0, max 60000) |
concat — Concatener
Concatene les tableaux issus de chaque branche en un seul tableau.
| Parametre | Type | Requis | Variable | Description |
|---|---|---|---|---|
order | choix (sequential, completion) | Non | Non | Ordre de concatenation : sequentiel (ordre des branches) ou par ordre de completion. (Defaut: "sequential") |
zip — Zip
Combine les resultats element par element, comme un zip de tableaux.
| Parametre | Type | Requis | Variable | Description |
|---|---|---|---|---|
zipMode | choix (shortest, longest) | Non | Non | Mode zip : s'arreter au plus court tableau, ou remplir les manquants. (Defaut: "shortest") |
fillValue | valeur dynamique | Non | Oui | Valeur de remplissage pour le mode 'longest' quand un tableau est plus court. |
Les parametres marques Variable = Oui acceptent la syntaxe
{{nomBloc.champ}}.
Sortie
Variable de sortie : mergedData
{
"branches": []
}
Exemple
Fusionner les resultats de deux branches.
Entree :
{}
Sortie :
{"branches": [{"branchId": "branch-1", "data": {"score": 85}}, {"branchId": "branch-2", "data": {"score": 92}}]}
{{mergedData.branches}} est un tableau contenant le resultat de chaque branche. Utilisez un bloc Transform apres le merge pour restructurer les donnees.