Skip to content

BDD-132 — Traitement Colonne texte

Objectif

Permettre à l’administrateur d’ajouter une ou plusieurs colonnes à valeur texte fixe sur toutes les lignes d’un flux (libellé de campagne, version, identifiant d’export, etc.), sans modifier les colonnes existantes sauf en cas de collision de nom.

Périmètre livré

  • Sous-type Traitement : colonne_texte (libellé UI : Colonne texte).
  • Panneau de configuration avec plusieurs colonnes dans un même bloc (columns[] : columnName, textValue).
  • Compatibilité avec l’ancien format à une seule colonne (columnName / textValue au niveau racine).
  • Prévisualisation éditeur (5 premières lignes) : colonnes ajoutées en fin de tableau.
  • Indications qualité (amont manquant, colonnes vides, doublons internes, écrasement d’une colonne amont).
  • Exécution run : staging SQL (WorkflowColonneTexteStagingService) et chemin mémoire legacy dans WorkflowRunService.

Format de configuration JSONB

json
{
  "type": "colonne_texte",
  "columns": [
    { "columnName": "campagne", "textValue": "Q2-2026" },
    { "columnName": "version", "textValue": "v1" }
  ]
}

Limites : nom de colonne ≤ 120 caractères, valeur ≤ 500 caractères ; noms uniques (insensible à la casse) dans le bloc.

Fichiers principaux

RôleChemin
Moteur frontfront/src/pages/admin/workflows/workflow-colonne-texte.engine.js
Panneau UIfront/src/components/workflows/WorkflowColonneTextePanel.vue
Moteur back (validation)back/src/api/workflows/execution/workflow-colonne-texte.engine.ts
Staging SQLback/src/api/workflows/staging/workflow-colonne-texte-staging.service.ts
Options type traitementfront/src/pages/admin/workflows/workflow-treatment-type-options.js
Indications qualitéfront/src/pages/admin/workflows/workflow-block-quality-hints.js (buildColonneTexteQualityHints)

API

  • PUT /workflows/:uuid/canvas : nodes[].config pour les nœuds traitement (type: "colonne_texte").

Tests

  • Front : workflow-colonne-texte.engine.spec.js, workflow-block-quality-hints.spec.js, preview / sync specs associés.
  • Back : workflow-colonne-texte.engine.spec.ts, workflow-colonne-texte-staging.service.spec.ts, workflow-run-staging-execution.service.spec.ts.