From de62e4cdb893bd071421f3cda1605a9186c07c42 Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Sun, 3 Jul 2016 11:11:43 +0200 Subject: [PATCH] CSV import : refactor SQL insert construction --- .../modules/import/import_csv.modules.php | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/htdocs/core/modules/import/import_csv.modules.php b/htdocs/core/modules/import/import_csv.modules.php index 895ed6de89d..3fbbae17a9e 100644 --- a/htdocs/core/modules/import/import_csv.modules.php +++ b/htdocs/core/modules/import/import_csv.modules.php @@ -557,22 +557,22 @@ class ImportCsv extends ModeleImports if ($listfields) { //var_dump($objimport->array_import_convertvalue); exit; + + // Build SQL UPDATE request + $sqlstart = 'UPDATE '.$tablename; - // Build SQL request - if (empty($tablewithentity_cache[$tablename])) - { - $sql ='INSERT INTO '.$tablename.'('.$listfields.', import_key'; - if (! empty($objimport->array_import_tables_creator[0][$alias])) $sql.=', '.$objimport->array_import_tables_creator[0][$alias]; - $sql.=') VALUES('.$listvalues.", '".$importid."'"; + // Build SQL INSERT request + $sqlstart = 'INSERT INTO '.$tablename.'('.$listfields.', import_key'; + $sqlend = ') VALUES('.$listvalues.", '".$importid."'"; + if (! empty($tablewithentity_cache[$tablename])) { + $sqlstart.= ', entity'; + $sqlend.= ', '.$conf->entity; + } + if (! empty($objimport->array_import_tables_creator[0][$alias])) { + $sqlstart.= ', '.$objimport->array_import_tables_creator[0][$alias]; + $sqlend.=', '.$user->id; } - else - { - $sql ='INSERT INTO '.$tablename.'('.$listfields.', import_key, entity'; - if (! empty($objimport->array_import_tables_creator[0][$alias])) $sql.=', '.$objimport->array_import_tables_creator[0][$alias]; - $sql.=') VALUES('.$listvalues.", '".$importid."', ".$conf->entity ; - } - if (! empty($objimport->array_import_tables_creator[0][$alias])) $sql.=', '.$user->id; - $sql.=')'; + $sql = $sqlstart.$sqlend.')'; dol_syslog("import_csv.modules", LOG_DEBUG); //print '> '.join(',',$arrayrecord);