diff --git a/src/UnicaenOracle/Service/DataService.php b/src/UnicaenOracle/Service/DataService.php
index e039554373ebe030d6b22232ee2eb638cef6b192..69e449cec92ead748e10c96ee0fcecec296c1698 100644
--- a/src/UnicaenOracle/Service/DataService.php
+++ b/src/UnicaenOracle/Service/DataService.php
@@ -26,7 +26,7 @@ class DataService
         }
         $results = $stmt->fetchAll();
         $preparedTablesMetadata = $this->prepareTablesMetadata($results);
-        //var_dump(prepareTablesMetadata($results));
+
         $outputFilePaths = [];
 
         foreach ($preparedTablesMetadata as $tableName => $columnsConfig) {
@@ -51,8 +51,11 @@ class DataService
                     if ($columnValue === null) {
                         $formattedColumnValue = 'NULL';
                     } else {
-                        $formatter = $columnMetadata['formatter'];
-                        $formattedColumnValue = $formatter($columnValue);
+                        $formatters = $columnMetadata['formatters'];
+                        $formattedColumnValue = $columnValue;
+                        foreach ($formatters as $formatter) {
+                            $formattedColumnValue = $formatter($formattedColumnValue);
+                        }
                     }
                     $formattedColumnValues[$columnName] = $formattedColumnValue;
                 }
@@ -99,16 +102,21 @@ EOS;
             $colName = $row['COLUMN_NAME'];
             $dataType = $row['DATA_TYPE'];
 
+            $formatters = [];
+
+            //
+            // formatteur selon le type de la colonne
+            //
             switch (true) {
 
                 case $dataType === 'NUMBER':
-                    $formatter = function ($value) {
+                    $formatters[] = function ($value) {
                         return $value;
                     };
                     break;
 
                 case $dataType === 'VARCHAR2':
-                    $formatter = function ($value) {
+                    $formatters[] = function ($value) {
                         $value = str_replace("'", "''", $value);
 
                         return "'$value'";
@@ -116,7 +124,7 @@ EOS;
                     break;
 
                 case $dataType === 'CLOB':
-                    $formatter = function ($value) {
+                    $formatters[] = function ($value) {
                         $value = str_replace("'", "''", $value);
                         // découpage en morceaux de 4000 caractères pour éviter l'erreur ORA-01704: string literal too long.
                         $lineEnding = '######';
@@ -131,7 +139,7 @@ EOS;
 
                 case $dataType === 'DATE':
                 case substr($dataType, 0, 9) === 'TIMESTAMP':
-                    $formatter = function ($value) {
+                    $formatters[] = function ($value) {
                         return "TO_DATE('$value', 'YYYY-MM-DD HH24:MI:SS')";
                     };
                     break;
@@ -139,9 +147,24 @@ EOS;
                 default:
                     throw new RuntimeException("Type imprévu rencontré dans la table '$tableName' : $dataType.");
             }
+
+            //
+            // formatteur selon le nom de la colonne
+            //
+            switch (true) {
+                // repérage des valeurs de colonnes d'historique, permettant si besoin une substitution de valeur ultérieure
+                case $colName === 'HISTO_CREATEUR_ID':
+                case $colName === 'HISTO_MODIFICATEUR_ID':
+                case $colName === 'HISTO_DESTRUCTEUR_ID':
+                    $formatters[] = function ($value) {
+                        return '/*HISTO::*/' . $value;
+                    };
+                    break;
+            }
+
             $cfg = [
                 'DATA_TYPE' => $dataType,
-                'formatter' => $formatter,
+                'formatters' => $formatters,
             ];
 
             if (!isset($formatted[$tableName])) {