aggiunto controllo su data fine promozione, modificata vista per statistiche su ordinato, aggiunte nuove voci menu'
This commit is contained in:
@@ -0,0 +1,655 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240614105104 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateView("vsvw_ordinato_old", "CREATE VIEW [dbo].[vsvw_ordinato_old] AS \n" +
|
||||
"wITH ordini as (\n" +
|
||||
"SELECT dtb_ordt.gestione,\n" +
|
||||
" dtb_ordt.data_ord,\n" +
|
||||
" dtb_ordt.num_ord,\n" +
|
||||
" dtb_ordr.riga_ord,\n" +
|
||||
" dtb_ordr.pos_riga,\n" +
|
||||
" dtb_ordt.cod_vage,\n" +
|
||||
" dtb_ordt.cod_anag AS cod_anag,\n" +
|
||||
" dtb_ordt.cod_vdes,\n" +
|
||||
" dtb_ordt.cod_vzon,\n" +
|
||||
" dtb_ordt.cod_mdep,\n" +
|
||||
" dtb_ordr.cod_mart AS cod_mart,\n" +
|
||||
" dtb_ordr.descrizione AS descrizione,\n" +
|
||||
" dtb_ordr.unt_ord,\n" +
|
||||
" dtb_ordt.tot_imponib / gtb_divi.cambio AS tot_imponib,\n" +
|
||||
" dtb_ordt.tot_iva / gtb_divi.cambio AS tot_iva,\n" +
|
||||
" dtb_ordr.importo_riga / gtb_divi.cambio AS importo_riga,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100\n" +
|
||||
" THEN (qta_ord * val_unt) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_lordo,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordt.sconto4 / 100) * (1 - dtb_ordr.sconto5 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto6 / 100) * (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) *\n" +
|
||||
" (dtb_ordr.perc_gest / 100) + qta_ord * val_gest) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_gest,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) * (dtb_ordr.perc_ispe / 100) +\n" +
|
||||
" qta_ord * val_ispe) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_prov_ispe,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) * (dtb_ordr.perc_promo / 100) +\n" +
|
||||
" qta_ord * val_promo) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_promo,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) * (dtb_ordr.perc_oneri / 100) +\n" +
|
||||
" qta_ord * val_oneri) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_oneri,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) * (dtb_ordr.perc_prov / 100) +\n" +
|
||||
" qta_ord * val_prov) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_prov,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN qta_ord\n" +
|
||||
" ELSE 0 END AS qta_vend,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100)) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_vend,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN qta_evasa\n" +
|
||||
" ELSE 0 END AS qta_evaso,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" (qta_evasa * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100)) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_evaso,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100 THEN qta_ord\n" +
|
||||
" ELSE 0 END AS qta_omg,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100 THEN qta_evasa\n" +
|
||||
" ELSE 0 END AS qta_omg_evaso,\n" +
|
||||
" CASE WHEN (dtb_ordt.flag_annulla = 'S' OR dtb_ordr.flag_evaso = 'A') THEN qta_ord ELSE 0 END AS qta_annullato,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN (dtb_ordt.flag_annulla = 'S' OR dtb_ordr.flag_evaso = 'A') THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100)) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_annullato,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'S' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' THEN qta_ord\n" +
|
||||
" ELSE 0 END AS qta_sospeso,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'S' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100)) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sospeso,\n" +
|
||||
" gtb_divi.cod_divi,\n" +
|
||||
" gtb_divi.cambio,\n" +
|
||||
" dtb_ordt.listino AS cod_vlis,\n" +
|
||||
" dtb_ordr.rap_conv,\n" +
|
||||
" CASE WHEN dtb_ordr.qta_cnf = 0 THEN 0 ELSE qta_ord * dtb_ordr.rap_conv / dtb_ordr.qta_cnf END AS confezioni,\n" +
|
||||
" dtb_ordr.num_cnf,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100\n" +
|
||||
" THEN ((qta_ord * val_unt * (dtb_ordt.sconto1 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto1,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (dtb_ordt.sconto2 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto2,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (dtb_ordt.sconto3 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto3,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) * (dtb_ordt.sconto4 / 100))) /\n" +
|
||||
" gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto4,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (dtb_ordr.sconto5 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto5,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (dtb_ordr.sconto6 / 100))) /\n" +
|
||||
" gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto6,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (dtb_ordr.sconto7 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto7,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (dtb_ordr.sconto8 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto8,\n" +
|
||||
" dtb_ordr.flag_evaso,\n" +
|
||||
" dtb_ordt.flag_annulla,\n" +
|
||||
" dtb_ordt.flag_sospeso,\n" +
|
||||
" dtb_ordr.data_cons,\n" +
|
||||
" dtb_ordt.porto,\n" +
|
||||
" dtb_ordt.mezzo,\n" +
|
||||
" dtb_ordt.cod_auto,\n" +
|
||||
" dtb_ordt.causale_trasp,\n" +
|
||||
" dtb_ordt.aspetto_beni,\n" +
|
||||
" dtb_ordt.data_iniz_trasp\n" +
|
||||
"FROM dtb_ordt\n" +
|
||||
" INNER JOIN dtb_ordr ON (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" +
|
||||
" INNER JOIN gtb_divi ON (dtb_ordt.cod_divi = gtb_divi.cod_divi)\n" +
|
||||
"WHERE dtb_ordt.gestione = 'V' )\n" +
|
||||
"\n" +
|
||||
"\n" +
|
||||
"--ALTER VIEW [dbo].[vsvw_ordinato] AS \n" +
|
||||
"\n" +
|
||||
"SELECT ordini.gestione,\n" +
|
||||
" ordini.data_ord,\n" +
|
||||
" ordini.num_ord,\n" +
|
||||
" ordini.riga_ord,\n" +
|
||||
" ordini.pos_riga,\n" +
|
||||
" ordini.cod_vage,\n" +
|
||||
" ISNULL(vtb_clie.cod_anag_stat, ordini.cod_anag) AS cod_anag,\n" +
|
||||
" ordini.cod_vdes,\n" +
|
||||
" ordini.cod_vzon,\n" +
|
||||
" vtb_clie.cod_vtip,\n" +
|
||||
" ordini.cod_mdep,\n" +
|
||||
" ISNULL(mtb_aart.cod_mart_stat, ordini.cod_mart) AS cod_mart,\n" +
|
||||
" mtb_aart.cod_mgrp,\n" +
|
||||
" mtb_aart.cod_msgr,\n" +
|
||||
" mtb_aart.cod_mtip,\n" +
|
||||
" mtb_aart.cod_mstp,\n" +
|
||||
" ISNULL(mtb_aart.descrizione_stat, ordini.descrizione) AS descrizione,\n" +
|
||||
" ordini.unt_ord,\n" +
|
||||
" ordini.tot_imponib,\n" +
|
||||
" ordini.tot_iva,\n" +
|
||||
" ordini.importo_riga,\n" +
|
||||
" ordini.importo_lordo,\n" +
|
||||
" ordini.importo_gest,\n" +
|
||||
" ordini.importo_prov_ispe,\n" +
|
||||
" ordini.importo_promo,\n" +
|
||||
" ordini.importo_oneri,\n" +
|
||||
" ordini.importo_prov,\n" +
|
||||
" ordini.qta_vend,\n" +
|
||||
" ordini.val_vend,\n" +
|
||||
" ordini.qta_evaso,\n" +
|
||||
" ordini.val_evaso,\n" +
|
||||
" ordini.qta_omg,\n" +
|
||||
" ordini.qta_omg_evaso,\n" +
|
||||
" ordini.qta_annullato,\n" +
|
||||
" ordini.val_annullato,\n" +
|
||||
" ordini.qta_sospeso,\n" +
|
||||
" ordini.val_sospeso,\n" +
|
||||
" ordini.cod_divi,\n" +
|
||||
" ordini.cambio,\n" +
|
||||
" ordini.cod_vlis,\n" +
|
||||
" ordini.rap_conv,\n" +
|
||||
" qta_vend * peso_kg AS pesokg,\n" +
|
||||
" ordini.confezioni,\n" +
|
||||
" ordini.num_cnf,\n" +
|
||||
" ordini.val_sconto1,\n" +
|
||||
" ordini.val_sconto2,\n" +
|
||||
" ordini.val_sconto3,\n" +
|
||||
" ordini.val_sconto4,\n" +
|
||||
" ordini.val_sconto5,\n" +
|
||||
" ordini.val_sconto6,\n" +
|
||||
" ordini.val_sconto7,\n" +
|
||||
" ordini.val_sconto8,\n" +
|
||||
" ordini.flag_evaso,\n" +
|
||||
" ordini.flag_annulla,\n" +
|
||||
" ordini.flag_sospeso,\n" +
|
||||
" ordini.data_cons,\n" +
|
||||
" ordini.porto,\n" +
|
||||
" ordini.mezzo,\n" +
|
||||
" ordini.cod_auto,\n" +
|
||||
" ordini.causale_trasp,\n" +
|
||||
" ordini.aspetto_beni,\n" +
|
||||
" ordini.data_iniz_trasp\n" +
|
||||
"FROM ordini INNER JOIN mtb_aart on ordini.cod_mart = mtb_aart.cod_mart \n" +
|
||||
" inner join mtb_sgrp on (mtb_aart.cod_mgrp = mtb_sgrp.cod_mgrp)\n" +
|
||||
" AND (mtb_aart.cod_msgr = mtb_sgrp.cod_msgr)\n" +
|
||||
" inner join vtb_clie on (ordini.cod_anag = vtb_clie.cod_anag)\n" +
|
||||
"WHERE (mtb_sgrp.incl_in_stat = 'S')\n" +
|
||||
"UNION ALL\n" +
|
||||
"SELECT ordini.gestione,\n" +
|
||||
" ordini.data_ord,\n" +
|
||||
" ordini.num_ord,\n" +
|
||||
" ordini.riga_ord,\n" +
|
||||
" ordini.pos_riga,\n" +
|
||||
" ordini.cod_vage,\n" +
|
||||
" ISNULL(vtb_clie.cod_anag_stat, ordini.cod_anag) AS cod_anag,\n" +
|
||||
" ordini.cod_vdes,\n" +
|
||||
" ordini.cod_vzon,\n" +
|
||||
" vtb_clie.cod_vtip,\n" +
|
||||
" ordini.cod_mdep,\n" +
|
||||
" ordini.cod_mart,\n" +
|
||||
" null as cod_mgrp,\n" +
|
||||
" null as cod_msgr,\n" +
|
||||
" null as cod_mtip,\n" +
|
||||
" null as cod_mstp,\n" +
|
||||
" ordini.descrizione AS descrizione,\n" +
|
||||
" ordini.unt_ord,\n" +
|
||||
" ordini.tot_imponib,\n" +
|
||||
" ordini.tot_iva,\n" +
|
||||
" ordini.importo_riga,\n" +
|
||||
" ordini.importo_lordo,\n" +
|
||||
" ordini.importo_gest,\n" +
|
||||
" ordini.importo_prov_ispe,\n" +
|
||||
" ordini.importo_promo,\n" +
|
||||
" ordini.importo_oneri,\n" +
|
||||
" ordini.importo_prov,\n" +
|
||||
" ordini.qta_vend,\n" +
|
||||
" ordini.val_vend,\n" +
|
||||
" ordini.qta_evaso,\n" +
|
||||
" ordini.val_evaso,\n" +
|
||||
" ordini.qta_omg,\n" +
|
||||
" ordini.qta_omg_evaso,\n" +
|
||||
" ordini.qta_annullato,\n" +
|
||||
" ordini.val_annullato,\n" +
|
||||
" ordini.qta_sospeso,\n" +
|
||||
" ordini.val_sospeso,\n" +
|
||||
" ordini.cod_divi,\n" +
|
||||
" ordini.cambio,\n" +
|
||||
" ordini.cod_vlis,\n" +
|
||||
" ordini.rap_conv,\n" +
|
||||
" 0 pesokg,\n" +
|
||||
" ordini.confezioni,\n" +
|
||||
" ordini.num_cnf,\n" +
|
||||
" ordini.val_sconto1,\n" +
|
||||
" ordini.val_sconto2,\n" +
|
||||
" ordini.val_sconto3,\n" +
|
||||
" ordini.val_sconto4,\n" +
|
||||
" ordini.val_sconto5,\n" +
|
||||
" ordini.val_sconto6,\n" +
|
||||
" ordini.val_sconto7,\n" +
|
||||
" ordini.val_sconto8,\n" +
|
||||
" ordini.flag_evaso,\n" +
|
||||
" ordini.flag_annulla,\n" +
|
||||
" ordini.flag_sospeso,\n" +
|
||||
" ordini.data_cons,\n" +
|
||||
" ordini.porto,\n" +
|
||||
" ordini.mezzo,\n" +
|
||||
" ordini.cod_auto,\n" +
|
||||
" ordini.causale_trasp,\n" +
|
||||
" ordini.aspetto_beni,\n" +
|
||||
" ordini.data_iniz_trasp\n" +
|
||||
"FROM ordini inner join vtb_clie on ordini.cod_anag = vtb_clie.cod_anag\n" +
|
||||
"WHERE ordini.cod_mart IS NULL\n" +
|
||||
" AND ordini.qta_vend <> 0");
|
||||
createOrUpdateView("vsvw_ordinato", "CREATE VIEW [dbo].[vsvw_ordinato] AS \n" +
|
||||
"wITH ordini as (\n" +
|
||||
"SELECT dtb_ordt.gestione,\n" +
|
||||
" dtb_ordt.data_ord,\n" +
|
||||
" dtb_ordt.num_ord,\n" +
|
||||
" dtb_ordr.riga_ord,\n" +
|
||||
" dtb_ordr.pos_riga,\n" +
|
||||
" dtb_ordt.cod_vage,\n" +
|
||||
" dtb_ordt.cod_anag AS cod_anag,\n" +
|
||||
" dtb_ordt.cod_vdes,\n" +
|
||||
" dtb_ordt.cod_vzon,\n" +
|
||||
" dtb_ordt.cod_mdep,\n" +
|
||||
" dtb_ordr.cod_mart AS cod_mart,\n" +
|
||||
" dtb_ordr.descrizione AS descrizione,\n" +
|
||||
" dtb_ordr.unt_ord,\n" +
|
||||
" dtb_ordt.tot_imponib / gtb_divi.cambio AS tot_imponib,\n" +
|
||||
" dtb_ordt.tot_iva / gtb_divi.cambio AS tot_iva,\n" +
|
||||
" dtb_ordr.importo_riga / gtb_divi.cambio AS importo_riga,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100\n" +
|
||||
" THEN (qta_ord * val_unt) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_lordo,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordt.sconto4 / 100) * (1 - dtb_ordr.sconto5 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto6 / 100) * (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) *\n" +
|
||||
" (dtb_ordr.perc_gest / 100) + qta_ord * val_gest) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_gest,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) * (dtb_ordr.perc_ispe / 100) +\n" +
|
||||
" qta_ord * val_ispe) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_prov_ispe,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) * (dtb_ordr.perc_promo / 100) +\n" +
|
||||
" qta_ord * val_promo) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_promo,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) * (dtb_ordr.perc_oneri / 100) +\n" +
|
||||
" qta_ord * val_oneri) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_oneri,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) * (dtb_ordr.perc_prov / 100) +\n" +
|
||||
" qta_ord * val_prov) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS importo_prov,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN qta_ord\n" +
|
||||
" ELSE 0 END AS qta_vend,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100)) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_vend,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN qta_evasa\n" +
|
||||
" ELSE 0 END AS qta_evaso,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" (qta_evasa * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100)) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_evaso,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100 THEN qta_ord\n" +
|
||||
" ELSE 0 END AS qta_omg,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 = 100 OR sconto6 = 100 OR sconto7 = 100 THEN qta_evasa\n" +
|
||||
" ELSE 0 END AS qta_omg_evaso,\n" +
|
||||
" CASE WHEN (dtb_ordt.flag_annulla = 'S' OR dtb_ordr.flag_evaso = 'A') THEN qta_ord ELSE 0 END AS qta_annullato,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN (dtb_ordt.flag_annulla = 'S' OR dtb_ordr.flag_evaso = 'A') THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100)) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_annullato,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'S' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' THEN qta_ord\n" +
|
||||
" ELSE 0 END AS qta_sospeso,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'S' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' THEN\n" +
|
||||
" (qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100)) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sospeso,\n" +
|
||||
" gtb_divi.cod_divi,\n" +
|
||||
" gtb_divi.cambio,\n" +
|
||||
" dtb_ordt.listino AS cod_vlis,\n" +
|
||||
" dtb_ordr.rap_conv,\n" +
|
||||
" CASE WHEN dtb_ordr.qta_cnf = 0 THEN 0 ELSE qta_ord * dtb_ordr.rap_conv / dtb_ordr.qta_cnf END AS confezioni,\n" +
|
||||
" dtb_ordr.num_cnf,\n" +
|
||||
" dtb_ordr.num_cnf_evasa,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100\n" +
|
||||
" THEN ((qta_ord * val_unt * (dtb_ordt.sconto1 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto1,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (dtb_ordt.sconto2 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto2,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (dtb_ordt.sconto3 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto3,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (1 - dtb_ordr.sconto8 / 100) * (dtb_ordt.sconto4 / 100))) /\n" +
|
||||
" gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto4,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (dtb_ordr.sconto5 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto5,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (dtb_ordr.sconto6 / 100))) /\n" +
|
||||
" gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto6,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (dtb_ordr.sconto7 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto7,\n" +
|
||||
" CASE\n" +
|
||||
" WHEN dtb_ordt.flag_sospeso = 'N' AND dtb_ordt.flag_annulla = 'N' AND dtb_ordr.flag_evaso <> 'A' AND\n" +
|
||||
" sconto5 <> 100 AND sconto6 <> 100 AND sconto7 <> 100 AND sconto8 <> 100 THEN\n" +
|
||||
" ((qta_ord * val_unt * (1 - dtb_ordt.sconto1 / 100) * (1 - dtb_ordt.sconto2 / 100) *\n" +
|
||||
" (1 - dtb_ordt.sconto3 / 100) * (1 - dtb_ordr.sconto5 / 100) * (1 - dtb_ordr.sconto6 / 100) *\n" +
|
||||
" (1 - dtb_ordr.sconto7 / 100) * (dtb_ordr.sconto8 / 100))) / gtb_divi.cambio\n" +
|
||||
" ELSE 0 END AS val_sconto8,\n" +
|
||||
" dtb_ordr.flag_evaso,\n" +
|
||||
" dtb_ordt.flag_annulla,\n" +
|
||||
" dtb_ordt.flag_sospeso,\n" +
|
||||
" dtb_ordr.data_cons,\n" +
|
||||
" dtb_ordt.porto,\n" +
|
||||
" dtb_ordt.mezzo,\n" +
|
||||
" dtb_ordt.cod_auto,\n" +
|
||||
" dtb_ordt.causale_trasp,\n" +
|
||||
" dtb_ordt.aspetto_beni,\n" +
|
||||
" dtb_ordt.data_iniz_trasp\n" +
|
||||
"FROM dtb_ordt\n" +
|
||||
" INNER JOIN dtb_ordr ON (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" +
|
||||
" INNER JOIN gtb_divi ON (dtb_ordt.cod_divi = gtb_divi.cod_divi)\n" +
|
||||
"WHERE dtb_ordt.gestione = 'V' )\n" +
|
||||
"\n" +
|
||||
"SELECT ordini.gestione,\n" +
|
||||
" ordini.data_ord,\n" +
|
||||
" ordini.num_ord,\n" +
|
||||
" ordini.riga_ord,\n" +
|
||||
" ordini.pos_riga,\n" +
|
||||
" ordini.cod_vage,\n" +
|
||||
" ISNULL(vtb_clie.cod_anag_stat, ordini.cod_anag) AS cod_anag,\n" +
|
||||
" ordini.cod_vdes,\n" +
|
||||
" ordini.cod_vzon,\n" +
|
||||
" vtb_clie.cod_vtip,\n" +
|
||||
" ordini.cod_mdep,\n" +
|
||||
" ISNULL(mtb_aart.cod_mart_stat, ordini.cod_mart) AS cod_mart,\n" +
|
||||
" mtb_aart.cod_mgrp,\n" +
|
||||
" mtb_aart.cod_msgr,\n" +
|
||||
" mtb_aart.cod_mtip,\n" +
|
||||
" mtb_aart.cod_mstp,\n" +
|
||||
" ISNULL(mtb_aart.descrizione_stat, ordini.descrizione) AS descrizione,\n" +
|
||||
" ordini.unt_ord,\n" +
|
||||
" ordini.tot_imponib,\n" +
|
||||
" ordini.tot_iva,\n" +
|
||||
" ordini.importo_riga,\n" +
|
||||
" ordini.importo_lordo,\n" +
|
||||
" ordini.importo_gest,\n" +
|
||||
" ordini.importo_prov_ispe,\n" +
|
||||
" ordini.importo_promo,\n" +
|
||||
" ordini.importo_oneri,\n" +
|
||||
" ordini.importo_prov,\n" +
|
||||
" ordini.qta_vend,\n" +
|
||||
" ordini.val_vend,\n" +
|
||||
" ordini.qta_evaso,\n" +
|
||||
" ordini.val_evaso,\n" +
|
||||
" ordini.qta_omg,\n" +
|
||||
" ordini.qta_omg_evaso,\n" +
|
||||
" ordini.qta_annullato,\n" +
|
||||
" ordini.val_annullato,\n" +
|
||||
" ordini.qta_sospeso,\n" +
|
||||
" ordini.val_sospeso,\n" +
|
||||
" ordini.cod_divi,\n" +
|
||||
" ordini.cambio,\n" +
|
||||
" ordini.cod_vlis,\n" +
|
||||
" ordini.rap_conv,\n" +
|
||||
" qta_vend * peso_kg AS pesokg,\n" +
|
||||
" ordini.confezioni,\n" +
|
||||
" ordini.num_cnf,\n" +
|
||||
" ordini.num_cnf_evasa,\n" +
|
||||
" ordini.val_sconto1,\n" +
|
||||
" ordini.val_sconto2,\n" +
|
||||
" ordini.val_sconto3,\n" +
|
||||
" ordini.val_sconto4,\n" +
|
||||
" ordini.val_sconto5,\n" +
|
||||
" ordini.val_sconto6,\n" +
|
||||
" ordini.val_sconto7,\n" +
|
||||
" ordini.val_sconto8,\n" +
|
||||
" ordini.flag_evaso,\n" +
|
||||
" ordini.flag_annulla,\n" +
|
||||
" ordini.flag_sospeso,\n" +
|
||||
" ordini.data_cons,\n" +
|
||||
" ordini.porto,\n" +
|
||||
" ordini.mezzo,\n" +
|
||||
" ordini.cod_auto,\n" +
|
||||
" ordini.causale_trasp,\n" +
|
||||
" ordini.aspetto_beni,\n" +
|
||||
" ordini.data_iniz_trasp\n" +
|
||||
"FROM ordini INNER JOIN mtb_aart on ordini.cod_mart = mtb_aart.cod_mart \n" +
|
||||
" inner join mtb_sgrp on (mtb_aart.cod_mgrp = mtb_sgrp.cod_mgrp)\n" +
|
||||
" AND (mtb_aart.cod_msgr = mtb_sgrp.cod_msgr)\n" +
|
||||
" inner join vtb_clie on (ordini.cod_anag = vtb_clie.cod_anag)\n" +
|
||||
"WHERE (mtb_sgrp.incl_in_stat = 'S')\n" +
|
||||
"UNION ALL\n" +
|
||||
"SELECT ordini.gestione,\n" +
|
||||
" ordini.data_ord,\n" +
|
||||
" ordini.num_ord,\n" +
|
||||
" ordini.riga_ord,\n" +
|
||||
" ordini.pos_riga,\n" +
|
||||
" ordini.cod_vage,\n" +
|
||||
" ISNULL(vtb_clie.cod_anag_stat, ordini.cod_anag) AS cod_anag,\n" +
|
||||
" ordini.cod_vdes,\n" +
|
||||
" ordini.cod_vzon,\n" +
|
||||
" vtb_clie.cod_vtip,\n" +
|
||||
" ordini.cod_mdep,\n" +
|
||||
" ordini.cod_mart,\n" +
|
||||
" null as cod_mgrp,\n" +
|
||||
" null as cod_msgr,\n" +
|
||||
" null as cod_mtip,\n" +
|
||||
" null as cod_mstp,\n" +
|
||||
" ordini.descrizione AS descrizione,\n" +
|
||||
" ordini.unt_ord,\n" +
|
||||
" ordini.tot_imponib,\n" +
|
||||
" ordini.tot_iva,\n" +
|
||||
" ordini.importo_riga,\n" +
|
||||
" ordini.importo_lordo,\n" +
|
||||
" ordini.importo_gest,\n" +
|
||||
" ordini.importo_prov_ispe,\n" +
|
||||
" ordini.importo_promo,\n" +
|
||||
" ordini.importo_oneri,\n" +
|
||||
" ordini.importo_prov,\n" +
|
||||
" ordini.qta_vend,\n" +
|
||||
" ordini.val_vend,\n" +
|
||||
" ordini.qta_evaso,\n" +
|
||||
" ordini.val_evaso,\n" +
|
||||
" ordini.qta_omg,\n" +
|
||||
" ordini.qta_omg_evaso,\n" +
|
||||
" ordini.qta_annullato,\n" +
|
||||
" ordini.val_annullato,\n" +
|
||||
" ordini.qta_sospeso,\n" +
|
||||
" ordini.val_sospeso,\n" +
|
||||
" ordini.cod_divi,\n" +
|
||||
" ordini.cambio,\n" +
|
||||
" ordini.cod_vlis,\n" +
|
||||
" ordini.rap_conv,\n" +
|
||||
" 0 pesokg,\n" +
|
||||
" ordini.confezioni,\n" +
|
||||
" ordini.num_cnf,\n" +
|
||||
" ordini.num_cnf_evasa,\n" +
|
||||
" ordini.val_sconto1,\n" +
|
||||
" ordini.val_sconto2,\n" +
|
||||
" ordini.val_sconto3,\n" +
|
||||
" ordini.val_sconto4,\n" +
|
||||
" ordini.val_sconto5,\n" +
|
||||
" ordini.val_sconto6,\n" +
|
||||
" ordini.val_sconto7,\n" +
|
||||
" ordini.val_sconto8,\n" +
|
||||
" ordini.flag_evaso,\n" +
|
||||
" ordini.flag_annulla,\n" +
|
||||
" ordini.flag_sospeso,\n" +
|
||||
" ordini.data_cons,\n" +
|
||||
" ordini.porto,\n" +
|
||||
" ordini.mezzo,\n" +
|
||||
" ordini.cod_auto,\n" +
|
||||
" ordini.causale_trasp,\n" +
|
||||
" ordini.aspetto_beni,\n" +
|
||||
" ordini.data_iniz_trasp\n" +
|
||||
"FROM ordini inner join vtb_clie on ordini.cod_anag = vtb_clie.cod_anag\n" +
|
||||
"WHERE ordini.cod_mart IS NULL\n" +
|
||||
" AND ordini.qta_vend <> 0");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -106,6 +106,15 @@ public class SalesRules extends QueryRules {
|
||||
throw new Exception(String.format("Impossibile inserire//modificare una promozione con data fine (%s) antecedente ad oggi",
|
||||
new SimpleDateFormat(CommonConstants.DATE_FORMAT_DMY).format(vtbListData.getDataFine())));
|
||||
}
|
||||
|
||||
if (vtbListData.getCheckDataFine() != null && vtbListData.getCheckDataFine()) {
|
||||
Date dataFineOld = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(
|
||||
conn,
|
||||
Query.format("SELECT data_fine FROM vtb_list_data WHERE cod_vlis = %s AND versione = %S", vtbListData.getCodVlis(),vtbListData.getVersione()));
|
||||
|
||||
if (dataFineOld != null && vtbListData.getDataFine().after(dataFineOld))
|
||||
throw new Exception("Impossibile posticipare la data fine di una promozione.");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user