From 1b64a2f745b6bd60450d9ece7c277f9540eb8ec5 Mon Sep 17 00:00:00 2001 From: GiuseppeS Date: Mon, 16 Dec 2024 17:00:27 +0100 Subject: [PATCH] Migliorato log errore in exchange fornitori --- .../model/Migration_20241213163759.java | 98 +++++++++---------- .../ExchangeFornitoriImportService.java | 12 ++- 2 files changed, 58 insertions(+), 52 deletions(-) diff --git a/ems-core/src/main/java/it/integry/ems/migration/model/Migration_20241213163759.java b/ems-core/src/main/java/it/integry/ems/migration/model/Migration_20241213163759.java index 4a057b58f1..42e2bd5b5a 100644 --- a/ems-core/src/main/java/it/integry/ems/migration/model/Migration_20241213163759.java +++ b/ems-core/src/main/java/it/integry/ems/migration/model/Migration_20241213163759.java @@ -333,56 +333,56 @@ public class Migration_20241213163759 extends BaseMigration implements Migration executeStatement(Query.format( - "INSERT INTO mtb_colr (gestione, ser_collo, num_collo, data_collo, riga, cod_mart, cod_col, cod_tagl, partita_mag, gestione_rif, data_collo_rif, ser_collo_rif, num_collo_rif, datetime_row,\n" + + "INSERT INTO mtb_colr (gestione, ser_collo, num_collo, data_collo, riga, cod_mart, cod_col, cod_tagl, partita_mag, gestione_rif, data_collo_rif, ser_collo_rif, num_collo_rif, datetime_row,\n" + " cod_jcom, qta_col, num_cnf, qta_cnf)" + - " SELECT {} AS gestione,\n" + - " {} AS ser_collo,\n" + - " {} AS num_collo,\n" + - " CAST({} AS DATE) AS data_collo,\n" + - " ROW_NUMBER() OVER (PARTITION BY (SELECT NULL) ORDER BY v.data_collo) AS riga,\n" + - " v.cod_mart,\n" + - " v.cod_col,\n" + - " v.cod_tagl,\n" + - " v.partita_mag,\n" + - " v.gestione AS gestion_rif,\n" + - " v.data_collo AS data_collo_rif,\n" + - " v.ser_collo AS ser_collo_rif,\n" + - " v.num_collo AS num_collo_rif,\n" + - " GETDATE() AS datetime_row,\n" + - " v.cod_jcom,\n" + - " v.qta_col,\n" + - " v.num_cnf,\n" + - " v.qta_cnf\n" + - "FROM mvw_sitart_udc_det_inventario v\n" + - " INNER JOIN (SELECT ser_collo,\n" + - " gestione,\n" + - " data_collo,\n" + - " num_collo,\n" + - " cod_mdep,\n" + - " posizione,\n" + - " cod_mart,\n" + - " partita_mag,\n" + - " cod_jcom-- Elenca tutte le colonne coinvolte\n" + - " FROM mvw_sitart_udc_det_inventario\n" + - "\n" + - " EXCEPT\n" + - "\n" + - " SELECT ser_collo,\n" + - " gestione,\n" + - " data_collo,\n" + - " num_collo,\n" + - " cod_mdep,\n" + - " posizione,\n" + - " cod_mart,\n" + - " partita_mag,\n" + - " cod_jcom -- Elenca le stesse colonne dalla vista vecchia\n" + - " FROM mvw_sitart_udc_det_inventario_old) t\n" + - " ON v.num_collo = t.num_collo AND v.data_collo = t.data_collo AND\n" + - " v.ser_collo = t.ser_collo AND v.gestione = t.gestione AND\n" + - " v.cod_mart = t.cod_mart AND v.cod_mdep = t.cod_mdep AND\n" + - " ISNULL(v.partita_mag, '') = ISNULL(t.partita_mag, '') AND\n" + - " ISNULL(v.posizione, '') = ISNULL(t.posizione, '') AND\n" + - " ISNULL(v.cod_jcom, '') = ISNULL(t.cod_jcom, '')", + " SELECT {} AS gestione,\n" + + " {} AS ser_collo,\n" + + " {} AS num_collo,\n" + + " CAST({} AS DATE) AS data_collo,\n" + + " ROW_NUMBER() OVER (PARTITION BY (SELECT NULL) ORDER BY v.data_collo) AS riga,\n" + + " v.cod_mart,\n" + + " v.cod_col,\n" + + " v.cod_tagl,\n" + + " v.partita_mag,\n" + + " v.gestione AS gestion_rif,\n" + + " v.data_collo AS data_collo_rif,\n" + + " v.ser_collo AS ser_collo_rif,\n" + + " v.num_collo AS num_collo_rif,\n" + + " GETDATE() AS datetime_row,\n" + + " v.cod_jcom,\n" + + " v.qta_col,\n" + + " v.num_cnf,\n" + + " v.qta_cnf\n" + + "FROM mvw_sitart_udc_det_inventario v\n" + + " INNER JOIN (SELECT ser_collo,\n" + + " gestione,\n" + + " data_collo,\n" + + " num_collo,\n" + + " cod_mdep,\n" + + " posizione,\n" + + " cod_mart,\n" + + " partita_mag,\n" + + " cod_jcom-- Elenca tutte le colonne coinvolte\n" + + " FROM mvw_sitart_udc_det_inventario\n" + + "\n" + + " EXCEPT\n" + + "\n" + + " SELECT ser_collo,\n" + + " gestione,\n" + + " data_collo,\n" + + " num_collo,\n" + + " cod_mdep,\n" + + " posizione,\n" + + " cod_mart,\n" + + " partita_mag,\n" + + " cod_jcom -- Elenca le stesse colonne dalla vista vecchia\n" + + " FROM mvw_sitart_udc_det_inventario_old) t\n" + + " ON v.num_collo = t.num_collo AND v.data_collo = t.data_collo AND\n" + + " v.ser_collo = t.ser_collo AND v.gestione = t.gestione AND\n" + + " v.cod_mart = t.cod_mart AND v.cod_mdep = t.cod_mdep AND\n" + + " ISNULL(v.partita_mag, '') = ISNULL(t.partita_mag, '') AND\n" + + " ISNULL(v.posizione, '') = ISNULL(t.posizione, '') AND\n" + + " ISNULL(v.cod_jcom, '') = ISNULL(t.cod_jcom, '')", mtbColt.getGestione(), mtbColt.getSerCollo(), mtbColt.getNumCollo(), mtbColt.getDataCollo())); diff --git a/ems-engine/src/main/java/it/integry/ems/system/exchange/service/ExchangeFornitoriImportService.java b/ems-engine/src/main/java/it/integry/ems/system/exchange/service/ExchangeFornitoriImportService.java index e43b093a43..08381a3c64 100644 --- a/ems-engine/src/main/java/it/integry/ems/system/exchange/service/ExchangeFornitoriImportService.java +++ b/ems-engine/src/main/java/it/integry/ems/system/exchange/service/ExchangeFornitoriImportService.java @@ -9,6 +9,7 @@ import it.integry.ems.system.exchange.service.structure.ExchangeImportSchemaMana import it.integry.ems_model.base.EquatableEntityInterface; import it.integry.ems_model.entity.AtbForn; import it.integry.ems_model.entity.GtbAnag; +import it.integry.ems_model.exception.EntityException; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; @@ -74,10 +75,15 @@ public class ExchangeFornitoriImportService { internalMultiDb.commitAll(); exchangeMultiDb.commitAll(); } catch (Exception ex) { - if (firstExceptionToThrow[0] == null) firstExceptionToThrow[0] = ex; - - logger.error("Errore durante l'importazione del fornitore", ex); internalMultiDb.rollbackAll(); + exchangeMultiDb.commitAll(); + + GtbAnag gtbAnagError = (GtbAnag) dataToSave; + Exception newException = new EntityException("Errore durante l'importazione del fornitore [" + + "cod_anag: " + gtbAnagError.getCodAnag() + "]", ex); + + if (firstExceptionToThrow[0] == null) firstExceptionToThrow[0] = newException; + logger.error(newException); } }