aggiunto cod_vdes nella vista vvw_sit_consegneXcommessa
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
This commit is contained in:
@@ -0,0 +1,266 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20250610152544 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateView("[dbo].[vvw_sit_consegneXcommessa]", "CREATE VIEW [dbo].[vvw_sit_consegneXcommessa] as \n" +
|
||||
"SELECT \n" +
|
||||
" ordv.gestione AS gestione,\n" +
|
||||
" ordv.cod_jcom AS cod_jcom, \n" +
|
||||
" ordv.data_ord AS data_ord,\n" +
|
||||
" ordv.num_ord AS num_ord,\n" +
|
||||
" ordv.rif_ord AS rif_ord,\n" +
|
||||
" ordv.id_viaggio AS id_viaggio,\n" +
|
||||
" ordv.cod_mart AS cod_mart,\n" +
|
||||
" ordv.cod_alis AS cod_alis,\n" +
|
||||
" ISNULL(ordv.cod_art_for, ordv.cod_mart) AS cod_art_for,\n" +
|
||||
" ISNULL(ordv.descrizione_estesa, ordv.descrizione) AS descrizione,\n" +
|
||||
" SUM(ordv.qta_ord) AS qta_ord,\n" +
|
||||
" ISNULL(orda.qta_da_evadere, 0) AS qta_acq,\n" +
|
||||
" CASE WHEN ISNULL(orda.qta_da_evadere, 0) = 0 THEN NULL ELSE MAX(orda.data_cons) END AS data_cons_acq,\n" +
|
||||
" ISNULL(colv.qta_col, 0) AS qta_riservata,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN ISNULL(mtb_part.qta_esistente, 0) < 0 THEN SUM(ISNULL(cola.qta_col, 0))\n" +
|
||||
" ELSE ISNULL(mtb_part.qta_esistente, 0) + SUM(ISNULL(cola.qta_col, 0)) END AS qta_disp,\n" +
|
||||
" SUM(ordv.qta_evasa) AS qta_consegnata,\n" +
|
||||
" SUM(ordv.importoinevaso) AS importoinevaso,\n" +
|
||||
" SUM(ordv.importoinevasoivato) AS importoinevasoivato,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN SUM(ordv.qta_ord - ordv.qta_evasa) <= SUM(ISNULL(colv.qta_col, 0)) + (CASE\n" +
|
||||
" WHEN ISNULL(mtb_part.qta_esistente, 0) < 0\n" +
|
||||
" THEN SUM(ISNULL(cola.qta_col, 0))\n" +
|
||||
" ELSE ISNULL(mtb_part.qta_esistente, 0) + SUM(ISNULL(cola.qta_col, 0)) END)\n" +
|
||||
" THEN SUM(ordv.importoinevaso)\n" +
|
||||
" ELSE (SUM(ISNULL(colv.qta_col, 0)) + (CASE\n" +
|
||||
" WHEN SUM(ISNULL(cola.qta_col, 0)) +\n" +
|
||||
" ISNULL(mtb_part.qta_esistente, 0) > 0\n" +
|
||||
" THEN SUM(ISNULL(cola.qta_col, 0)) + ISNULL(mtb_part.qta_esistente, 0)\n" +
|
||||
" ELSE 0 END)) * SUM(ordv.importoinevaso) /\n" +
|
||||
" (SUM(ordv.qta_ord) - SUM(ordv.qta_evasa)) END AS importoevadibile,\n" +
|
||||
" ordv.unt_ord AS unt_ord,\n" +
|
||||
" ordv.term_cons,\n" +
|
||||
" jtb_comt.descrizione AS commessa,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN SUM(ordv.qta_ord - ordv.qta_evasa) <= 0 THEN 'CONSEGNATO'\n" +
|
||||
" WHEN SUM(ordv.qta_ord - ordv.qta_evasa) <= SUM(ISNULL(colv.qta_col, 0)) + CASE\n" +
|
||||
" WHEN ISNULL(mtb_part.qta_esistente, 0) < 0\n" +
|
||||
" THEN SUM(ISNULL(cola.qta_col, 0))\n" +
|
||||
" ELSE ISNULL(mtb_part.qta_esistente, 0) + SUM(ISNULL(cola.qta_col, 0)) END\n" +
|
||||
" THEN 'DISPONIBILE'\n" +
|
||||
" ELSE 'NON DISPONIBILE' END AS statoriga,\n" +
|
||||
" SUM(ordv.importorigaord) AS importoriga,\n" +
|
||||
" ordv.data_cons AS data_cons_vend,\n" +
|
||||
" gtb_anag.rag_soc AS cliente,\n" +
|
||||
" ISNULL(vtb_dest.indirizzo, gtb_anag.indirizzo) AS indirizzo,\n" +
|
||||
" CASE WHEN vtb_dest.indirizzo IS NULL THEN gtb_anag.citta ELSE vtb_dest.citta END AS citta,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN ISNULL(vtb_dest.destinatario, '') <> gtb_anag.rag_soc AND vtb_dest.destinatario IS NOT NULL\n" +
|
||||
" THEN vtb_dest.destinatario\n" +
|
||||
" ELSE NULL END AS destinatario,\n" +
|
||||
" ordv.cod_vage,\n" +
|
||||
" vtb_agen.rag_soc AS agente,\n" +
|
||||
" ordv.partita_mag,\n" +
|
||||
" orda.gestione_rif,\n" +
|
||||
" gtb_anag.cod_anag AS cod_anag,\n" +
|
||||
" ordv.num_ord_provv AS num_ord_provv,\n" +
|
||||
" ordv.flag_sospeso AS flag_sospeso,\n" +
|
||||
" MIN(ordv.pos_riga) AS pos_riga,\n" +
|
||||
" ordv.controllato_da AS controllato_da,\n" +
|
||||
" gtb_anag.e_mail AS e_mail,\n" +
|
||||
" ordv.data_ins_ord,\n" +
|
||||
" ordv.flag_evaso,\n" +
|
||||
" ordv.cod_paga,\n" +
|
||||
" ordv.descrizione_paga,\n" +
|
||||
" ordv.cod_vdes \n" +
|
||||
" \n" +
|
||||
"FROM gtb_anag,\n" +
|
||||
" (SELECT dtb_ordt.gestione,\n" +
|
||||
" cod_vage,\n" +
|
||||
" cod_anag,\n" +
|
||||
" cod_vdes,\n" +
|
||||
" term_cons,\n" +
|
||||
" dtb_ordr.unt_ord,\n" +
|
||||
" dtb_ordr.cod_jcom,\n" +
|
||||
" dtb_ordr.cod_mart,\n" +
|
||||
" dtb_ordr.cod_alis,\n" +
|
||||
" dtb_ordr.cod_art_for,\n" +
|
||||
" dtb_ordt.data_ord,\n" +
|
||||
" dtb_ordt.num_ord,\n" +
|
||||
" dtb_ordt.rif_ord,\n" +
|
||||
" dtb_ordr.descrizione,\n" +
|
||||
" dtb_ordr.descrizione_estesa,\n" +
|
||||
" dtb_ordr.data_cons,\n" +
|
||||
" dtb_ordr.riga_ord,\n" +
|
||||
" dtb_ordr.qta_ord,\n" +
|
||||
" dtb_ordr.qta_evasa,\n" +
|
||||
" dtb_ordr.cod_mdep,\n" +
|
||||
" dtb_ordr.flag_evaso,\n" +
|
||||
" SUM(dtb_ordr.qta_ord * dtb_ordr.val_unt * (1 - sconto1 / 100) * (1 - sconto2 / 100) * (1 - sconto3 / 100) *\n" +
|
||||
" (1 - sconto4 / 100) * (1 - sconto5 / 100) * (1 - sconto6 / 100) * (1 - sconto7 / 100) *\n" +
|
||||
" (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 * (1 - sconto1 / 100) *\n" +
|
||||
" (1 - sconto2 / 100) * (1 - sconto3 / 100) * (1 - sconto4 / 100) * (1 - sconto5 / 100) *\n" +
|
||||
" (1 - sconto6 / 100) * (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) * (1 - sconto6 / 100) *\n" +
|
||||
" (1 - sconto7 / 100) * (1 - sconto8 / 100)\n" +
|
||||
" ELSE 0 END) AS importoinevasoivato,\n" +
|
||||
" dtb_ordr.partita_mag,\n" +
|
||||
" dtb_ordt.num_ord_provv,\n" +
|
||||
" dtb_ordt.flag_sospeso,\n" +
|
||||
" dtb_ordr.pos_riga,\n" +
|
||||
" dtb_ordt.controllato_da,\n" +
|
||||
" dtb_ordt.data_ins_ord,\n" +
|
||||
" dtb_ordr.id_viaggio,\n" +
|
||||
" dtb_ordt.cod_paga,\n" +
|
||||
" dtb_ordt.descrizione_paga\n" +
|
||||
" FROM dtb_ordt,\n" +
|
||||
" dtb_ordr\n" +
|
||||
" LEFT OUTER JOIN gtb_aliq ON dtb_ordr.cod_aliq = gtb_aliq.cod_aliq\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.gestione = 'V'\n" +
|
||||
" AND dtb_ordr.cod_mart IS NOT NULL\n" +
|
||||
" AND dtb_ordt.flag_annulla = 'N'\n" +
|
||||
" AND dtb_ordr.flag_evaso <> 'A'\n" +
|
||||
" GROUP BY dtb_ordt.gestione, cod_vage, cod_anag, cod_vdes, term_cons, dtb_ordr.unt_ord, dtb_ordr.cod_jcom,\n" +
|
||||
" dtb_ordr.cod_mart, dtb_ordr.cod_alis, dtb_ordr.cod_art_for, dtb_ordt.data_ord, dtb_ordt.num_ord,\n" +
|
||||
" dtb_ordt.rif_ord, dtb_ordr.descrizione, dtb_ordr.descrizione_estesa, dtb_ordr.data_cons,\n" +
|
||||
" dtb_ordr.riga_ord, dtb_ordr.qta_ord, dtb_ordr.qta_evasa, dtb_ordr.cod_mdep, dtb_ordr.flag_evaso,\n" +
|
||||
" dtb_ordr.partita_mag, dtb_ordt.num_ord_provv, dtb_ordt.flag_sospeso, dtb_ordr.pos_riga,\n" +
|
||||
" dtb_ordt.controllato_da, dtb_ordt.data_ins_ord, dtb_ordr.id_viaggio, dtb_ordt.cod_paga,\n" +
|
||||
" dtb_ordt.descrizione_paga) ordv\n" +
|
||||
" LEFT OUTER JOIN vtb_dest ON ordv.cod_anag = vtb_dest.cod_anag AND ordv.cod_vdes = vtb_dest.cod_vdes\n" +
|
||||
" LEFT OUTER JOIN vtb_agen ON ordv.cod_vage = vtb_agen.cod_vage\n" +
|
||||
" LEFT OUTER JOIN jtb_comt ON ordv.cod_jcom = jtb_comt.cod_jcom\n" +
|
||||
" LEFT OUTER JOIN ( /*Ordini di acquisto a fornitori*/ SELECT dtb_ordr.gestione,\n" +
|
||||
" dtb_ordr.flag_evaso,\n" +
|
||||
" MAX(dtb_ordr.data_cons) AS data_cons,\n" +
|
||||
" dtb_ordr.cod_mart,\n" +
|
||||
" dtb_ordr.cod_col,\n" +
|
||||
" dtb_ordr.cod_tagl,\n" +
|
||||
" dtb_ordr.cod_jcom,\n" +
|
||||
" SUM(qta_ord - qta_evasa) AS qta_da_evadere,\n" +
|
||||
" dtb_ordt.gestione_rif\n" +
|
||||
" FROM dtb_ordt,\n" +
|
||||
" dtb_ordr\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.gestione = 'A'\n" +
|
||||
" AND dtb_ordt.flag_sospeso = 'N'\n" +
|
||||
" AND dtb_ordt.flag_annulla = 'N'\n" +
|
||||
" AND dtb_ordr.flag_evaso = 'I'\n" +
|
||||
" AND dtb_ordr.qta_ord > dtb_ordr.qta_evasa\n" +
|
||||
" GROUP BY dtb_ordr.gestione,\n" +
|
||||
" dtb_ordr.flag_evaso, /*dtb_ordr.data_cons,*/\n" +
|
||||
" dtb_ordr.cod_mart, dtb_ordr.cod_col,\n" +
|
||||
" dtb_ordr.cod_tagl, dtb_ordr.cod_jcom,\n" +
|
||||
" dtb_ordt.gestione_rif) orda\n" +
|
||||
" ON ordv.cod_jcom = orda.cod_jcom AND ordv.cod_mart = orda.cod_mart AND orda.gestione = 'A' AND\n" +
|
||||
" orda.flag_evaso = 'I'\n" +
|
||||
" LEFT OUTER JOIN ( /*Colli di vendita già preparati e accantonati per commessa*/ SELECT cod_mart,\n" +
|
||||
" isnull(mtb_colr.cod_jcom, dtb_ordt.cod_jcom) as cod_jcom,\n" +
|
||||
" mtb_colr.data_ord,\n" +
|
||||
" mtb_colr.num_ord,\n" +
|
||||
" riga_ord,\n" +
|
||||
" mtb_colt.gestione,\n" +
|
||||
" SUM(qta_col) AS qta_col\n" +
|
||||
" FROM mtb_colr inner join mtb_colt on mtb_colr.gestione = mtb_colt.gestione and\n" +
|
||||
" mtb_colr.data_collo = mtb_colt.data_collo and\n" +
|
||||
" mtb_colr.ser_collo = mtb_colt.ser_collo and\n" +
|
||||
" mtb_colr.num_collo = mtb_colt.num_collo\n" +
|
||||
" inner join dtb_ordt on dtb_ordt.data_ord=mtb_colr.data_ord and\n" +
|
||||
" dtb_ordt.num_ord=mtb_colr.num_ord and\n" +
|
||||
" dtb_ordt.gestione=mtb_colr.gestione\n" +
|
||||
" \n" +
|
||||
" WHERE mtb_colt.gestione = 'V'\n" +
|
||||
" AND mtb_colt.cod_dtip IS NULL\n" +
|
||||
" \n" +
|
||||
" \n" +
|
||||
" GROUP BY cod_mart, mtb_colr.cod_jcom, dtb_ordt.cod_jcom,\n" +
|
||||
" mtb_colr.data_ord,\n" +
|
||||
" mtb_colr.num_ord,\n" +
|
||||
" riga_ord,\n" +
|
||||
" mtb_colt.gestione) colv\n" +
|
||||
" ON ordv.gestione = colv.gestione AND ordv.data_ord = colv.data_ord AND\n" +
|
||||
" ordv.num_ord = colv.num_ord AND ordv.riga_ord = colv.riga_ord AND\n" +
|
||||
" ordv.cod_mart = colv.cod_mart AND ordv.cod_jcom = colv.cod_jcom\n" +
|
||||
" LEFT OUTER JOIN ( /*Colli di acquisto o produzione in giacenza con commessa esclusi quelli di reso a fornitore o posizionati in aree escluse dal picking*/ SELECT cod_mart, cod_mdep, cod_jcom AS cod_jcom, SUM(qta_col) AS qta_col\n" +
|
||||
" FROM mvw_sitart_udc_det_inventario\n" +
|
||||
" WHERE (gestione = 'A' OR gestione = 'L')\n" +
|
||||
" AND ISNULL(cod_jcom, 'MAG') <> 'MAG'\n" +
|
||||
" AND ISNULL(priorita, 0) >= 0\n" +
|
||||
" AND segno = 1\n" +
|
||||
" GROUP BY cod_mart, cod_mdep, cod_jcom) cola\n" +
|
||||
" ON ordv.cod_mdep = cola.cod_mdep AND ordv.cod_mart = cola.cod_mart AND\n" +
|
||||
" ordv.cod_jcom = cola.cod_jcom\n" +
|
||||
" LEFT OUTER JOIN ( /*Colli di acquisto o produzione in giacenza senza commessa, esclusi quelli di reso a fornitore o posizionati in aree escluse dal picking*/ SELECT cod_mart, cod_mdep, SUM(qta_col) AS qta_esistente\n" +
|
||||
" FROM mvw_sitart_udc_det_inventario\n" +
|
||||
" WHERE (gestione = 'A' OR gestione = 'L')\n" +
|
||||
" AND (cod_jcom IS NULL OR cod_jcom = 'MAG')\n" +
|
||||
" AND ISNULL(priorita, 0) >= 0\n" +
|
||||
" AND segno = 1\n" +
|
||||
" GROUP BY cod_mart, cod_mdep) mtb_part\n" +
|
||||
" ON ordv.cod_mdep = mtb_part.cod_mdep AND ordv.cod_mart = mtb_part.cod_mart\n" +
|
||||
"WHERE gtb_anag.cod_anag = ordv.cod_anag\n" +
|
||||
"GROUP BY ordv.gestione ,\n" +
|
||||
" ordv.cod_jcom ,\n" +
|
||||
" ordv.data_ord ,\n" +
|
||||
" ordv.num_ord ,\n" +
|
||||
" ordv.rif_ord ,\n" +
|
||||
" ordv.id_viaggio ,\n" +
|
||||
" ordv.cod_mart ,\n" +
|
||||
" ordv.cod_alis ,\n" +
|
||||
" ISNULL(ordv.cod_art_for, ordv.cod_mart) ,\n" +
|
||||
" ISNULL(ordv.descrizione_estesa, ordv.descrizione),\n" +
|
||||
" ISNULL(orda.qta_da_evadere, 0) ,\n" +
|
||||
" ISNULL(colv.qta_col, 0) ,\n" +
|
||||
" mtb_part.qta_esistente ,\n" +
|
||||
" ordv.unt_ord ,\n" +
|
||||
" ordv.term_cons,\n" +
|
||||
" jtb_comt.descrizione ,\n" +
|
||||
" ordv.data_cons,\n" +
|
||||
" gtb_anag.rag_soc,\n" +
|
||||
" ISNULL(vtb_dest.indirizzo, gtb_anag.indirizzo),\n" +
|
||||
" vtb_dest.indirizzo,\n" +
|
||||
" vtb_dest.destinatario,\n" +
|
||||
" gtb_anag.citta,\n" +
|
||||
" vtb_dest.citta,\n" +
|
||||
" ordv.cod_vage,\n" +
|
||||
" vtb_agen.rag_soc ,\n" +
|
||||
" ordv.partita_mag,\n" +
|
||||
" orda.gestione_rif,\n" +
|
||||
" gtb_anag.cod_anag ,\n" +
|
||||
" ordv.num_ord_provv ,\n" +
|
||||
" ordv.flag_sospeso ,\n" +
|
||||
" ordv.controllato_da ,\n" +
|
||||
" gtb_anag.e_mail ,\n" +
|
||||
" ordv.data_ins_ord,\n" +
|
||||
" ordv.flag_evaso,\n" +
|
||||
" ordv.cod_paga,\n" +
|
||||
" ordv.descrizione_paga,\n" +
|
||||
" ordv.cod_vdes");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user