From 4140671ad94d4150c2d524232c1accca9abe86c9 Mon Sep 17 00:00:00 2001 From: AnthonyS Date: Tue, 18 Mar 2025 09:45:44 +0100 Subject: [PATCH] Fix nome colunna flag_escludi_ven --- .../model/Migration_20250318093455.java | 198 ++++++++++++++++++ 1 file changed, 198 insertions(+) create mode 100644 ems-core/src/main/java/it/integry/ems/migration/model/Migration_20250318093455.java diff --git a/ems-core/src/main/java/it/integry/ems/migration/model/Migration_20250318093455.java b/ems-core/src/main/java/it/integry/ems/migration/model/Migration_20250318093455.java new file mode 100644 index 0000000000..7e047f22cf --- /dev/null +++ b/ems-core/src/main/java/it/integry/ems/migration/model/Migration_20250318093455.java @@ -0,0 +1,198 @@ +package it.integry.ems.migration.model; + +import it.integry.ems.migration._base.BaseMigration; +import it.integry.ems.migration._base.IntegryCustomerDB; +import it.integry.ems.migration._base.MigrationModelInterface; + +public class Migration_20250318093455 extends BaseMigration implements MigrationModelInterface { + + @Override + public void up() throws Exception { + if (isHistoryDB()) + return; + + if (isCustomerDb(IntegryCustomerDB.Siciliani_DMS)) + return; + + dropDefault("mrl_depo_art_esclusi_wms", "flag_escludi_vend"); + + executeStatement( + "ALTER TABLE mrl_depo_art_esclusi_wms\n" + + " DROP COLUMN flag_escludi_vend;\n" + + "ALTER TABLE mrl_depo_art_esclusi_wms\n" + + " ADD flag_escludi_ven BIT DEFAULT 1 NOT NULL;" + ); + + createOrUpdateView("mvw_articoli_esclusi_wms", "CREATE VIEW dbo.mvw_articoli_esclusi_wms AS\n" + + "SELECT DISTINCT mrl_depo_art_esclusi_wms.cod_mdep,\n" + + " ma.cod_mart,\n" + + " ma.cod_mgrp,\n" + + " ma.cod_msgr,\n" + + " ma.cod_msfa,\n" + + " ma.cod_mtip,\n" + + " ma.cod_mstp,\n" + + " mrl_depo_art_esclusi_wms.flag_escludi_lav,\n" + + " mrl_depo_art_esclusi_wms.flag_escludi_acq,\n" + + " mrl_depo_art_esclusi_wms.flag_escludi_ven\n" + + "FROM mrl_depo_art_esclusi_wms\n" + + " INNER JOIN mtb_aart ma\n" + + " ON (ISNULL(mrl_depo_art_esclusi_wms.cod_mgrp, ma.cod_mgrp) = ma.cod_mgrp AND\n" + + " ISNULL(mrl_depo_art_esclusi_wms.cod_msgr, ma.cod_msgr) = ma.cod_msgr AND\n" + + " ISNULL(ISNULL(mrl_depo_art_esclusi_wms.cod_msfa, ma.cod_msfa), '') = ISNULL(ma.cod_msfa, '') AND\n" + + " ISNULL(ISNULL(mrl_depo_art_esclusi_wms.cod_mtip, ma.cod_mtip), '') = ISNULL(ma.cod_mtip, '') AND\n" + + " ISNULL(ISNULL(mrl_depo_art_esclusi_wms.cod_mstp, ma.cod_mstp), '') = ISNULL(ma.cod_mstp, '') AND\n" + + " ISNULL(mrl_depo_art_esclusi_wms.cod_mart, ma.cod_mart) = ma.cod_mart)" + ); + + createOrUpdateView("ovw_situazione_qta_ordini_wms_vend", "CREATE VIEW [dbo].[ovw_situazione_qta_ordini_wms_vend] AS\n" + + " /*Vista usata dal WMS per individuare gli ordini da evadere e le righe gia' caricate su un viaggio*/\n" + + "WITH custom_mtb_colr AS (SELECT mtb_colr.gestione,\n" + + " mtb_colr.data_ord,\n" + + " mtb_colr.num_ord,\n" + + " mtb_colr.riga_ord,\n" + + " SUM(qta_col) AS qta_col,\n" + + " SUM(num_cnf) AS num_cnf,\n" + + " SUM(qta_col / qta_cnf) AS cnf_col\n" + + " FROM mtb_colt,\n" + + " mtb_colr\n" + + " WHERE mtb_colr.gestione = mtb_colt.gestione\n" + + " AND mtb_colr.data_collo = mtb_colt.data_collo\n" + + " AND mtb_colr.ser_collo = mtb_colt.ser_collo\n" + + " AND mtb_colr.num_collo = mtb_colt.num_collo\n" + + " AND mtb_colt.cod_dtip IS NULL\n" + + " GROUP BY mtb_colr.gestione, mtb_colr.data_ord, mtb_colr.num_ord, mtb_colr.riga_ord),\n" + + " sit_ord_wms AS (SELECT mum.unt_mis,\n" + + " mum.cifre_dec,\n" + + " dtb_ordr.gestione,\n" + + " dtb_ordr.data_ord,\n" + + " dtb_ordr.num_ord,\n" + + " dtb_ordt.rif_ord,\n" + + " dtb_ordr.partita_mag,\n" + + " CASE dtb_ordr.gestione WHEN 'A' THEN '1' WHEN 'L' THEN '2' WHEN 'V' THEN '3' END +\n" + + " REPLACE(CONVERT(VARCHAR(10), dtb_ordr.data_ord, 105), '-', '') +\n" + + " REPLICATE('0', 5 - LEN(dtb_ordr.num_ord)) +\n" + + " CONVERT(VARCHAR(6), dtb_ordr.num_ord) AS chiave_ordine,\n" + + " dtb_ordr.unt_ord,\n" + + " dtb_ordr.cod_alis,\n" + + " dtb_ordr.cod_art_for,\n" + + " dtb_ordr.riga_ord,\n" + + " dtb_ordr.qta_ord,\n" + + " dtb_ordr.qta_cnf * dtb_ordr.rap_conv AS qta_cnf,\n" + + " dtb_ordr.descrizione,\n" + + " dtb_ordr.descrizione_estesa,\n" + + " ISNULL(SUM(mtb_colr.qta_col), 0) AS qta_col,\n" + + " CONVERT(DECIMAL(20, 5), ROUND(ISNULL(SUM(mtb_colr.cnf_col), 0), 2)) AS cnf_col,\n" + + " dtb_ordr.qta_evasa,\n" + + " SUM(dtb_ordr.qta_ord * dtb_ordr.val_unt * (1 - sconto1 / 100) * (1 - sconto2 / 100) *\n" + + " (1 - sconto3 / 100) * (1 - sconto4 / 100) * (1 - sconto5 / 100) * (1 - sconto6 / 100) *\n" + + " (1 - sconto7 / 100) * (1 - sconto8 / 100)) AS importorigaord,\n" + + " SUM(CASE\n" + + " WHEN (dtb_ordr.qta_ord > dtb_ordr.qta_evasa) AND dtb_ordr.flag_evaso = 'I' THEN\n" + + " (dtb_ordr.qta_ord - dtb_ordr.qta_evasa) * dtb_ordr.val_unt *\n" + + " (1 - sconto1 / 100) * (1 - sconto2 / 100) * (1 - sconto3 / 100) *\n" + + " (1 - sconto4 / 100) * (1 - sconto5 / 100) * (1 - sconto6 / 100) *\n" + + " (1 - sconto7 / 100) * (1 - sconto8 / 100)\n" + + " ELSE 0 END) AS importoinevaso,\n" + + " SUM(CASE\n" + + " WHEN (dtb_ordr.qta_ord > dtb_ordr.qta_evasa) AND dtb_ordr.flag_evaso = 'I' THEN\n" + + " (dtb_ordr.qta_ord - dtb_ordr.qta_evasa) * dtb_ordr.val_unt *\n" + + " (1 + gtb_aliq.perc_aliq / 100) * (1 - sconto1 / 100) * (1 - sconto2 / 100) *\n" + + " (1 - sconto3 / 100) * (1 - sconto4 / 100) * (1 - sconto5 / 100) *\n" + + " (1 - sconto6 / 100) * (1 - sconto7 / 100) * (1 - sconto8 / 100)\n" + + " ELSE 0 END) AS importoinevasoivato,\n" + + " CASE\n" + + " WHEN ((dtb_ordr.qta_ord * rap_conv) - ISNULL(SUM(mtb_colr.qta_col), 0) -\n" + + " dtb_ordr.qta_evasa * rap_conv) > 0 THEN (dtb_ordr.qta_ord * rap_conv -\n" + + " ISNULL(SUM(mtb_colr.qta_col), 0) -\n" + + " dtb_ordr.qta_evasa * rap_conv)\n" + + " ELSE 0 END AS qta_da_evadere,\n" + + " dtb_ordr.num_cnf,\n" + + " dtb_ordr.num_cnf_evasa AS num_cnf_evase,\n" + + " ISNULL(SUM(mtb_colr.num_cnf), 0) AS num_cnf_col,\n" + + " CASE\n" + + " WHEN dtb_ordr.num_cnf - dtb_ordr.num_cnf_evasa - ISNULL(SUM(mtb_colr.num_cnf), 0) > 0\n" + + " THEN dtb_ordr.num_cnf - dtb_ordr.num_cnf_evasa - ISNULL(SUM(mtb_colr.num_cnf), 0)\n" + + " ELSE 0 END AS num_cnf_da_evadere,\n" + + " SUM(mvw_art_depo_disp.qta_disp_xpick) AS qta_disp,\n" + + " SUM(mvw_art_depo_disp.num_disp_xpick) AS cnf_disp,\n" + + " dtb_ordr.cod_jcom,\n" + + " dtb_ordr.cod_mart,\n" + + " dtb_ordr.cod_col,\n" + + " dtb_ordr.cod_tagl,\n" + + " ISNULL(vtb_viaggi.data_ora_iniz_trasp, dtb_ordr.data_cons) AS data_cons,\n" + + " dtb_ordr.flag_evaso,\n" + + " dtb_ordr.id_viaggio,\n" + + " SUM(CASE\n" + + " WHEN sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100 OR sconto8 = 100 THEN qta_ord\n" + + " ELSE 0 END) AS qta_omg\n" + + " FROM dtb_ordt,\n" + + " dtb_ordr\n" + + " LEFT OUTER JOIN custom_mtb_colr mtb_colr ON dtb_ordr.gestione = mtb_colr.gestione AND\n" + + " dtb_ordr.data_ord = mtb_colr.data_ord AND\n" + + " dtb_ordr.num_ord = mtb_colr.num_ord AND\n" + + " dtb_ordr.riga_ord = mtb_colr.riga_ord\n" + + " LEFT OUTER JOIN vtb_viaggi ON dtb_ordr.id_viaggio = vtb_viaggi.id_viaggio\n" + + " LEFT OUTER JOIN mvw_art_depo_disp ON dtb_ordr.cod_mdep = mvw_art_depo_disp.cod_mdep AND\n" + + " dtb_ordr.cod_mart = mvw_art_depo_disp.cod_mart\n" + + " LEFT OUTER JOIN gtb_aliq ON dtb_ordr.cod_aliq = gtb_aliq.cod_aliq\n" + + " INNER JOIN mtb_aart ON dtb_ordr.cod_mart = mtb_aart.cod_mart\n" + + " INNER JOIN mtb_unt_mis mum ON mtb_aart.unt_mis = mum.unt_mis\n" + + " LEFT OUTER JOIN mvw_articoli_esclusi_wms\n" + + " ON dtb_ordr.cod_mart = mvw_articoli_esclusi_wms.cod_mart AND\n" + + " dtb_ordr.cod_mdep = mvw_articoli_esclusi_wms.cod_mdep AND\n" + + " mvw_articoli_esclusi_wms.flag_escludi_ven = 1\n" + + " WHERE dtb_ordt.gestione = dtb_ordr.gestione\n" + + " AND dtb_ordt.data_ord = dtb_ordr.data_ord\n" + + " AND dtb_ordt.num_ord = dtb_ordr.num_ord\n" + + " AND dtb_ordt.flag_annulla = 'N'\n" + + " AND mvw_articoli_esclusi_wms.cod_mart IS NULL\n" + + " GROUP BY dtb_ordr.gestione, dtb_ordr.data_ord, dtb_ordr.num_ord, dtb_ordt.rif_ord,\n" + + " dtb_ordr.riga_ord, dtb_ordr.unt_ord, dtb_ordr.cod_alis, dtb_ordr.cod_art_for,\n" + + " dtb_ordr.riga_ord, dtb_ordr.qta_ord, dtb_ordr.partita_mag, dtb_ordr.descrizione,\n" + + " dtb_ordr.descrizione_estesa, dtb_ordr.qta_ord, dtb_ordr.qta_evasa, dtb_ordr.rap_conv,\n" + + " dtb_ordr.num_cnf, dtb_ordr.qta_cnf, dtb_ordr.cod_jcom, dtb_ordr.cod_mart,\n" + + " dtb_ordr.cod_col, dtb_ordr.cod_tagl, dtb_ordr.data_cons, dtb_ordr.flag_evaso,\n" + + " dtb_ordr.num_cnf_evasa, vtb_viaggi.data_ora_iniz_trasp, mtb_colr.gestione,\n" + + " dtb_ordr.id_viaggio, mum.unt_mis, mum.cifre_dec)\n" + + "SELECT gestione,\n" + + " data_ord,\n" + + " num_ord,\n" + + " rif_ord,\n" + + " partita_mag,\n" + + " chiave_ordine,\n" + + " unt_ord,\n" + + " cod_alis,\n" + + " cod_art_for,\n" + + " riga_ord,\n" + + " ROUND(qta_ord, cifre_dec) AS qta_ord,\n" + + " qta_cnf,\n" + + " descrizione,\n" + + " descrizione_estesa,\n" + + " qta_col,\n" + + " cnf_col,\n" + + " qta_evasa,\n" + + " importorigaord,\n" + + " importoinevaso,\n" + + " importoinevasoivato,\n" + + " qta_da_evadere,\n" + + " num_cnf,\n" + + " num_cnf_evase,\n" + + " num_cnf_col,\n" + + " num_cnf_da_evadere,\n" + + " qta_disp,\n" + + " cnf_disp,\n" + + " cod_jcom,\n" + + " cod_mart,\n" + + " cod_col,\n" + + " cod_tagl,\n" + + " data_cons,\n" + + " flag_evaso,\n" + + " id_viaggio,\n" + + " qta_omg\n" + + "FROM sit_ord_wms"); + } + + @Override + public void down() throws Exception { + } +} \ No newline at end of file