Objectif et prérequis

Réunissez deux jeux de ventes dans un tableau selon les noms de colonnes, même si leur ordre diffère.

Cet exemple utilise des données et paramètres de démonstration. Validez le résultat attendu dans votre propre environnement avant de connecter des destinations de production. Les identifiants demo_* sont illustratifs : sélectionnez vos propres connexions ou sources pédagogiques dans l’éditeur. Le JSON ci-dessous présente la structure des blocs et connexions, pas une archive de flux prête à transférer.

Données d’entrée pédagogiques

north.csv

Branch;Amount
North;100
North;40

south.csv

Amount;Branch
80;South

Blocs, connexions et paramètres exacts

Schéma explicatifAgrandir ↗09. Union : réunir les données des agences. Topologie de l’exemple 09 : 4 blocs, 3 connexions. Les identifiants de nœuds et les ports du graphe configuré sont conservés.
Schéma du flux 09

Topologie de l’exemple 09 : 4 blocs, 3 connexions. Les identifiants de nœuds et les ports du graphe configuré sont conservés.

Ajoutez les blocs listés dans le concepteur, ouvrez les propriétés de chacun et définissez ces valeurs. Les noms demo_* désignent les sources et connexions pédagogiques.

BlocParamètre
1
Fichier
north
  • Rôle: source
  • Source: demo_north
  • Paramètres de lecture:
    • Feuille: CSV
    • Plage: A1:B3
    • La première ligne contient les en-têtes: так
    • Séparateur: ;
2
Fichier
south
  • Rôle: source
  • Source: demo_south
  • Paramètres de lecture:
    • Feuille: CSV
    • Plage: A1:B2
    • La première ligne contient les en-têtes: так
    • Séparateur: ;
3
Union
union
  • Entrées:
      • Identifiant: north
      • Libellé: Північ
      • Identifiant: south
      • Libellé: Південь
  • Mode: by_name
4
Exportation de données
out
  • Format: csv
  • Nom du fichier: all_branches
  • Rôle: download
  • Séparateur: ;
  • Fuseau horaire: Europe/Kyiv

Connexions des ports

  • north out → union north
  • south out → union south
  • union out → out in
Configuration complète du graphe en JSON
{
  "version": 3,
  "nodes": [
    {
      "id": "north",
      "type": "file",
      "label": "north",
      "config": {
        "role": "source",
        "source_id": "demo_north",
        "options": {
          "sheet": "CSV",
          "range": "A1:B3",
          "header": true,
          "delimiter": ";"
        }
      }
    },
    {
      "id": "south",
      "type": "file",
      "label": "south",
      "config": {
        "role": "source",
        "source_id": "demo_south",
        "options": {
          "sheet": "CSV",
          "range": "A1:B2",
          "header": true,
          "delimiter": ";"
        }
      }
    },
    {
      "id": "union",
      "type": "union",
      "label": "union",
      "config": {
        "inputs": [
          {
            "id": "north",
            "label": "Північ"
          },
          {
            "id": "south",
            "label": "Південь"
          }
        ],
        "mode": "by_name"
      }
    },
    {
      "id": "out",
      "type": "export",
      "label": "out",
      "config": {
        "format": "csv",
        "filename": "all_branches",
        "destination": "download",
        "delimiter": ";",
        "timezone": "Europe/Kyiv"
      }
    }
  ],
  "edges": [
    {
      "source": "north",
      "target": "union",
      "source_port": "out",
      "target_port": "north"
    },
    {
      "source": "south",
      "target": "union",
      "source_port": "out",
      "target_port": "south"
    },
    {
      "source": "union",
      "target": "out",
      "source_port": "out",
      "target_port": "in"
    }
  ]
}

Résultat attendu

BranchAmount
North100
North40
South80

Union ajoute des lignes ; il ne totalise pas Amount et ne supprime pas les doublons. Le résultat comporte 3 lignes pour un montant total de 220.

Exécuter et vérifier

  1. Chargez les fichiers dont l’ordre des colonnes diffère sans les réorganiser manuellement.
  2. Choisissez by_name dans Union et deux entrées distinctes, north/south.
  3. Vérifiez que South apparaît dans Branch et 80 dans Amount.

Erreurs courantes

  • mode=position rapproche les positions et inverserait le sens des colonnes dans ce jeu de données.
  • Branch et branch sont des noms différents ; harmonisez d’abord les noms par mappage.
  • Si des totaux sont nécessaires, ajoutez Regroupement après Union ; Union ne les crée pas lui-même.