modificata la lettura della qta_cnf e inserita setup per leggere la qta presente nel listino anche quando è 1
This commit is contained in:
@@ -0,0 +1,263 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240416133543 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateFunction("[getListinoAcquisto_old]", "CREATE FUNCTION [dbo].[getListinoAcquisto_old] (@dataValidita datetime, @codAlis varchar(5), @codArtFor varchar(25), @codMart varchar(15), @viewPromo varchar(1), @codMdep varchar(5)) RETURNS TABLE AS \n" +
|
||||
"return \n" +
|
||||
"select listino_base.cod_alis,\n" +
|
||||
" listino_base.descrizione,\n" +
|
||||
" IsNull(promozioni.versione, listino_base.versione) as versione,\n" +
|
||||
" IsNull(promozioni.data_iniz, listino_base.data_iniz) as data_iniz,\n" +
|
||||
" IsNull(promozioni.data_fine, listino_base.data_fine) as data_fine,\n" +
|
||||
" IsNull(promozioni.cod_promo, listino_base.cod_promo) as cod_promo,\n" +
|
||||
" IsNull(promozioni.note_listino, listino_base.note_listino) as note_listino,\n" +
|
||||
" promozioni.flag_tipo_promo,\n" +
|
||||
" listino_base.cod_divi_acq,\n" +
|
||||
" listino_base.expression_costo,\n" +
|
||||
" listino_base.cod_mart,\n" +
|
||||
" listino_base.cod_art_for,\n" +
|
||||
" listino_base.unt_mis_acq,\n" +
|
||||
" listino_base.rap_conv,\n" +
|
||||
" IsNull(promozioni.prz_acq, listino_base.prz_acq) as prz_acq,\n" +
|
||||
" IsNull(promozioni.perc_1, listino_base.perc_1) as perc_1,\n" +
|
||||
" IsNull(promozioni.perc_2, listino_base.perc_2) as perc_2,\n" +
|
||||
" IsNull(promozioni.perc_3, listino_base.perc_3) as perc_3,\n" +
|
||||
" IsNull(promozioni.perc_4, listino_base.perc_4) as perc_4,\n" +
|
||||
" IsNull(promozioni.perc_promo_1,0) as perc_promo_1,\n" +
|
||||
" IsNull(promozioni.perc_promo_2,0) as perc_promo_2,\n" +
|
||||
" IsNull(promozioni.perc_promo_3,0) as perc_promo_3,\n" +
|
||||
" IsNull(promozioni.perc_promo_4,0) as perc_promo_4,\n" +
|
||||
" listino_base.data_agg_prz,\n" +
|
||||
" listino_base.perc_oneri,\n" +
|
||||
" listino_base.val_oneri,\n" +
|
||||
" listino_base.perc_promo,\n" +
|
||||
" listino_base.val_promo,\n" +
|
||||
" listino_base.qta_min_ord,\n" +
|
||||
" listino_base.data_ult_prezzo,\n" +
|
||||
" listino_base.gg_approvig,\n" +
|
||||
" listino_base.flag_forn_pref,\n" +
|
||||
" listino_base.flag_qta_multipla,\n" +
|
||||
" listino_base.tipo_azione,\n" +
|
||||
" listino_base.descr_art_forn,\n" +
|
||||
" listino_base.cod_barre,\n" +
|
||||
" listino_base.cod_barre_imb,\n" +
|
||||
" listino_base.qta_cnf,\n" +
|
||||
" listino_base.colli_strato,\n" +
|
||||
" listino_base.colli_pedana,\n" +
|
||||
" listino_base.cod_aliq,\n" +
|
||||
" listino_base.note,\n" +
|
||||
" listino_base.prz_ven_sug,\n" +
|
||||
" listino_base.famiglia,\n" +
|
||||
" listino_base.flag_attivo,\n" +
|
||||
" listino_base.tipo_variazione,\n" +
|
||||
" listino_base.prz_acq_um,\n" +
|
||||
" listino_base.data_ins,\n" +
|
||||
" listino_base.inserito_da,\n" +
|
||||
" listino_base.modificato_da,\n" +
|
||||
" listino_base.sconto_cartoni,\n" +
|
||||
" listino_base.sconto_pedane,\n" +
|
||||
" listino_base.sconto_stato, \n" +
|
||||
" listino_base.partita_mag,\n" +
|
||||
" listino_base.flag_prz_base_lisv,\n" +
|
||||
" STUFF(( SELECT ',' + atb_promo_depo.cod_mdep AS [text()]\n" +
|
||||
" FROM atb_promo_depo\n" +
|
||||
" WHERE atb_promo_depo.cod_alis = promozioni.cod_alis and\n" +
|
||||
" atb_promo_depo.versione =promozioni.versione\n" +
|
||||
" FOR XML PATH('')), 1, 1, '' ) as lista_depo, \n" +
|
||||
" dbo.f_calcPrzNettoAcq( listino_base.cod_alis, \n" +
|
||||
" listino_base.expression_costo, \n" +
|
||||
" IsNull(promozioni.perc_1, listino_base.perc_1),\n" +
|
||||
" IsNull(promozioni.perc_2, listino_base.perc_2),\n" +
|
||||
" IsNull(promozioni.perc_3, listino_base.perc_3),\n" +
|
||||
" IsNull(promozioni.perc_4, listino_base.perc_4),\n" +
|
||||
" IsNull(promozioni.perc_promo_1,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_2,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_3,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_4,0) ,\n" +
|
||||
" listino_base.perc_promo, \n" +
|
||||
" listino_base.val_promo, \n" +
|
||||
" listino_base.perc_oneri,\n" +
|
||||
" listino_base.val_oneri,\n" +
|
||||
" IsNull(promozioni.prz_acq, listino_base.prz_acq) ) as prz_acq_netto , \n" +
|
||||
" dbo.f_calcPrzNettoAcq( listino_base.cod_alis, \n" +
|
||||
" listino_base.expression_costo, \n" +
|
||||
" IsNull(promozioni.perc_1, listino_base.perc_1),\n" +
|
||||
" IsNull(promozioni.perc_2, listino_base.perc_2),\n" +
|
||||
" IsNull(promozioni.perc_3, listino_base.perc_3),\n" +
|
||||
" IsNull(promozioni.perc_4, listino_base.perc_4),\n" +
|
||||
" IsNull(promozioni.perc_promo_1,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_2,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_3,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_4,0) ,\n" +
|
||||
" listino_base.perc_promo, \n" +
|
||||
" listino_base.val_promo, \n" +
|
||||
" listino_base.perc_oneri,\n" +
|
||||
" listino_base.val_oneri,\n" +
|
||||
" IsNull(promozioni.prz_acq, listino_base.prz_acq_um) ) as prz_acq_netto_um,\n" +
|
||||
" case when listino_base.flag_prz_base_lisv = 'C' OR (listino_base.flag_prz_base_lisv = 'P' AND prz_ven_sug = 0 )THEN \n" +
|
||||
" dbo.f_calcPrzNettoAcq( listino_base.cod_alis, \n" +
|
||||
" listino_base.expression_costo, \n" +
|
||||
" IsNull(promozioni.perc_1, listino_base.perc_1),\n" +
|
||||
" IsNull(promozioni.perc_2, listino_base.perc_2),\n" +
|
||||
" IsNull(promozioni.perc_3, listino_base.perc_3),\n" +
|
||||
" IsNull(promozioni.perc_4, listino_base.perc_4),\n" +
|
||||
" IsNull(promozioni.perc_promo_1,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_2,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_3,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_4,0) ,\n" +
|
||||
" listino_base.perc_promo, \n" +
|
||||
" listino_base.val_promo, \n" +
|
||||
" listino_base.perc_oneri,\n" +
|
||||
" listino_base.val_oneri,\n" +
|
||||
" IsNull(promozioni.prz_acq, listino_base.prz_acq) ) else prz_ven_sug end as prz_base_lisv,\n" +
|
||||
" listino_base.shelf_life,\n" +
|
||||
" atb_list_data.cod_vage,\n" +
|
||||
" atb_list_data.cod_vvet,\n" +
|
||||
" IsNull(promozioni.perc_prov, listino_base.perc_prov) as perc_prov,\n" +
|
||||
" IsNull(promozioni.val_prov, listino_base.val_prov) as val_prov, \n" +
|
||||
" IsNull(promozioni.qta_acq_contr, 0) as qta_acq_contr,\n" +
|
||||
" IsNull(promozioni.costo_trasp, 0) as costo_trasp,\n" +
|
||||
" listino_base.tipo_calc_prz,\n" +
|
||||
" listino_base.note_commerciali\n" +
|
||||
"from (SELECT atb_list.cod_alis,\n" +
|
||||
" atb_list.descrizione,\n" +
|
||||
" atb_list.tipo_calc_prz,\n" +
|
||||
" mtb_lisa_data.versione as versione, \n" +
|
||||
" atb_list_data.data_iniz as data_iniz, \n" +
|
||||
" atb_list_data.data_fine as data_fine, \n" +
|
||||
" atb_list_data.cod_promo as cod_promo, \n" +
|
||||
" atb_list_data.note as note_listino,\n" +
|
||||
" atb_list.cod_divi_acq, \n" +
|
||||
" atb_list.expression_costo, \n" +
|
||||
" mtb_lisa.cod_mart, \n" +
|
||||
" mtb_lisa.cod_art_for, \n" +
|
||||
" mtb_lisa.unt_mis_acq, \n" +
|
||||
" IsNull(mtb_lisa.rap_conv, 1) as rap_conv, \n" +
|
||||
" IsNull(mtb_lisa_data.prz_acq, mtb_lisa.prz_acq) as 'prz_acq',\n" +
|
||||
" IsNull(mtb_lisa_data.perc_1, mtb_lisa.perc_1) as 'perc_1',\n" +
|
||||
" IsNull(mtb_lisa_data.perc_2, mtb_lisa.perc_2) as 'perc_2',\n" +
|
||||
" IsNull(mtb_lisa_data.perc_3, mtb_lisa.perc_3) as 'perc_3',\n" +
|
||||
" IsNull(mtb_lisa_data.perc_4, mtb_lisa.perc_4) as 'perc_4', \n" +
|
||||
" IsNull(mtb_lisa_data.data_agg_prz, mtb_lisa.data_agg_prz) as 'data_agg_prz', \n" +
|
||||
" IsNull(mtb_lisa_data.perc_oneri,mtb_lisa.perc_oneri) as 'perc_oneri',\n" +
|
||||
" IsNull(mtb_lisa_data.val_oneri, mtb_lisa.val_oneri) as 'val_oneri', \n" +
|
||||
" IsNull(mtb_lisa_data.perc_promo, mtb_lisa.perc_promo) as 'perc_promo',\n" +
|
||||
" IsNull(mtb_lisa_data.val_promo, mtb_lisa.val_promo) as 'val_promo',\n" +
|
||||
" mtb_lisa.qta_min_ord,\n" +
|
||||
" mtb_lisa.data_ult_prezzo, \n" +
|
||||
" mtb_lisa.gg_approvig, \n" +
|
||||
" mtb_lisa.flag_forn_pref, \n" +
|
||||
" mtb_lisa.flag_qta_multipla, \n" +
|
||||
" mtb_lisa.tipo_azione, \n" +
|
||||
" mtb_lisa.descr_art_forn, \n" +
|
||||
" mtb_lisa.cod_barre, \n" +
|
||||
" mtb_lisa.cod_barre_imb, \n" +
|
||||
" case when mtb_lisa.qta_cnf is null or mtb_lisa.qta_cnf = 1 or mtb_lisa.qta_cnf = 0 then mtb_aart.qta_cnf else mtb_lisa.qta_cnf end as 'qta_cnf', \n" +
|
||||
" mtb_lisa.colli_strato,\n" +
|
||||
" mtb_lisa.colli_pedana, \n" +
|
||||
" mtb_lisa.cod_aliq, \n" +
|
||||
" mtb_lisa.note, \n" +
|
||||
" IsNull(mtb_lisa_data.prz_ven_sug, mtb_lisa.prz_ven_sug) as prz_ven_sug, \n" +
|
||||
" mtb_lisa.famiglia, \n" +
|
||||
" CASE WHEN atb_list.flag_attivo = 'N' THEN 'N' ELSE mtb_lisa.flag_attivo END flag_attivo, \n" +
|
||||
" mtb_lisa_data.tipo_variazione as tipo_variazione, \n" +
|
||||
" Round(IsNull(mtb_lisa_data.prz_acq, mtb_lisa.prz_acq)/mtb_lisa.rap_conv, 5) as prz_acq_um, \n" +
|
||||
" atb_list_data.data_ins,\n" +
|
||||
" atb_list_data.inserito_da,\n" +
|
||||
" mtb_lisa_data.modificato_da,\n" +
|
||||
" ISNULL(mtb_lisa_data.sconto_cartoni, 0) as sconto_cartoni,\n" +
|
||||
" ISNULL(mtb_lisa_data.sconto_pedane, 0) as sconto_pedane,\n" +
|
||||
" ISNULL(mtb_lisa_data.sconto_strato, 0) as sconto_stato ,\n" +
|
||||
" atb_list_data.FLAG_TIPO_PROMO AS flag_tipo_promo,\n" +
|
||||
" mtb_lisa_data.partita_mag,\n" +
|
||||
" atb_list.flag_prz_base_lisv,\n" +
|
||||
" mtb_lisa.shelf_life,\n" +
|
||||
" mtb_lisa_data.perc_prov,\n" +
|
||||
" mtb_lisa_data.val_prov,\n" +
|
||||
" mtb_lisa_data.qta_acq_contr,\n" +
|
||||
" mtb_lisa_data.note_commerciali\n" +
|
||||
"FROM (select \n" +
|
||||
"atb_list.cod_alis, \n" +
|
||||
"mtb_lisa.cod_art_for,\n" +
|
||||
" max((case when atb_list_data.versione is null then null else IsNull(atb_list_data.cod_promo+ '|', '') + Convert(varchar(10), atb_list_data.data_iniz, 111) + ' ' + replicate('0', 5 - len(atb_list_data.versione)) + Convert(varchar(5), atb_list_data.versione) end ) ) as max_lisa\n" +
|
||||
"from atb_list \n" +
|
||||
" inner join mtb_lisa on atb_list.cod_alis = mtb_lisa.cod_alis\n" +
|
||||
" left outer join mtb_lisa_data on mtb_lisa.cod_alis = mtb_lisa_data.cod_alis and mtb_lisa.cod_art_for = mtb_lisa_data.cod_art_for\n" +
|
||||
" left outer join atb_list_data on atb_list.cod_alis = atb_list_data.cod_alis and \n" +
|
||||
" mtb_lisa_data.versione = atb_list_data.versione and \n" +
|
||||
" atb_list_data.cod_promo is null and\n" +
|
||||
" atb_list_data.data_iniz <= IsNull(@dataValidita, convert(datetime, convert(varchar(10), GetDate(), 121)))\n" +
|
||||
"where (@codAlis is null or atb_list.cod_alis = @codAlis ) and \n" +
|
||||
"(@codArtFor is null or mtb_lisa.cod_art_for = @codArtFor ) and\n" +
|
||||
"(@codMart is null or mtb_lisa.cod_mart = @codMart ) \n" +
|
||||
"group by atb_list.cod_alis, \n" +
|
||||
"mtb_lisa.cod_art_for ) tmp_lisa inner join mtb_lisa on tmp_lisa.cod_art_for = mtb_lisa.cod_art_for and\n" +
|
||||
" tmp_lisa.cod_alis= mtb_lisa.cod_alis \n" +
|
||||
" inner join atb_list on mtb_lisa.cod_alis = atb_list.cod_alis \n" +
|
||||
" inner join gtb_divi on atb_list.cod_divi_acq = gtb_divi.cod_divi \n" +
|
||||
"left outer join mtb_lisa_data on tmp_lisa.cod_alis = mtb_lisa_data.cod_alis and \n" +
|
||||
"tmp_lisa.cod_art_for = mtb_lisa_data.cod_art_for and \n" +
|
||||
"Convert(int, right( tmp_lisa.max_lisa, 5)) = mtb_lisa_data.versione \n" +
|
||||
"left outer join atb_list_data on mtb_lisa_data.cod_alis = atb_list_data.cod_alis and \n" +
|
||||
"mtb_lisa_data.versione = atb_list_data.versione \n" +
|
||||
"left outer join mtb_aart on mtb_lisa.cod_mart = mtb_aart.cod_mart) listino_base \n" +
|
||||
" left outer join ( select atb_list_data.cod_alis, \n" +
|
||||
" mtb_lisa_data.cod_art_for,\n" +
|
||||
" Min(atb_list_data.data_iniz) as data_iniz,\n" +
|
||||
" Min(atb_list_data.data_fine) as data_fine,\n" +
|
||||
" Min(atb_list_data.versione ) as versione,\n" +
|
||||
" Min(atb_list_data.cod_promo) as cod_promo,\n" +
|
||||
" case when atb_list_data.flag_tipo_promo is null then atb_list_data.note else null end as note_listino,\n" +
|
||||
" Min(atb_list_data.flag_tipo_promo) as flag_tipo_promo,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'T' THEN mtb_lisa_data.prz_acq else null end) as prz_acq,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'T' THEN Round(mtb_lisa_data.prz_acq /mtb_lisa.rap_conv, 5) else null end ) as prz_acq_um,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.perc_1 else null end) as perc_1,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.perc_2 else null end) as perc_2,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.perc_3 else null end) as perc_3,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.perc_4 else null end) as perc_4,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'E' THEN mtb_lisa_promo.perc_promo_1 else null end) as perc_promo_1,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'E' THEN mtb_lisa_promo.perc_promo_2 else null end) as perc_promo_2,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'E' THEN mtb_lisa_promo.perc_promo_3 else null end) as perc_promo_3,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'E' THEN mtb_lisa_promo.perc_promo_4 else null end) as perc_promo_4,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.perc_prov ELSE null End ) as perc_prov,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.val_prov ELSE null End ) as val_prov, \n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.qta_acq_contr ELSE null End ) as qta_acq_contr,\n" +
|
||||
" Max(atb_list_data.costo_trasp) as costo_trasp\n" +
|
||||
" from atb_list_data inner join atb_promo_depo on atb_list_data.cod_alis = atb_promo_depo.cod_alis and\n" +
|
||||
" atb_list_data.versione = atb_promo_depo.versione \n" +
|
||||
" inner join mtb_lisa_data on atb_list_data.cod_alis = mtb_lisa_data.cod_alis and atb_list_data.versione = mtb_lisa_data.versione\n" +
|
||||
" inner join mtb_lisa on mtb_lisa_data.cod_alis = mtb_lisa.cod_alis and mtb_lisa_data.cod_art_for = mtb_lisa.cod_art_for\n" +
|
||||
" inner join mtb_lisa_promo on atb_list_data.cod_alis = mtb_lisa_promo.cod_alis and atb_list_data.versione = mtb_lisa_promo.versione and mtb_lisa.cod_art_for = mtb_lisa_promo.cod_art_for\n" +
|
||||
" where atb_list_data.cod_promo is not null and\n" +
|
||||
" atb_list_data.data_iniz <= IsNull(@dataValidita, convert(datetime, convert(varchar(10), GetDate(), 121))) \n" +
|
||||
" and atb_list_data.data_fine >= IsNull(@dataValidita, convert(datetime, convert(varchar(10), GetDate(), 121))) \n" +
|
||||
" and (@codMdep is null or atb_promo_depo.cod_mdep = @codMdep) \n" +
|
||||
" and (@codAlis is null or atb_list_data.cod_alis = @codalis ) \n" +
|
||||
" and (@codArtFor is null or mtb_lisa_data.cod_art_for = @codArtFor )\n" +
|
||||
" and (@codMart is null or mtb_lisa.cod_mart = @codMart ) \n" +
|
||||
" and @viewPromo = 'S'\n" +
|
||||
" group by atb_list_data.cod_alis, \n" +
|
||||
" mtb_lisa_data.cod_art_for,\n" +
|
||||
" case when atb_list_data.flag_tipo_promo is null then atb_list_data.note else null end ) promozioni on listino_base.cod_alis = promozioni.cod_alis and \n" +
|
||||
" listino_base.cod_art_for = promozioni.cod_art_for \n" +
|
||||
" left outer join atb_list_data on atb_list_data.cod_alis = listino_base.cod_alis and isnull(promozioni.versione, listino_base.versione) = atb_list_data.versione\n" +
|
||||
" \n" +
|
||||
"/*select *\n" +
|
||||
"from dbo.getListinoAcquisto_base(@datavalidita, @codAlis, @codArtfor, @codMart, @viewPromo, @codMdep, 1)*/");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
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_20240416133906 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createSetup("MTB_LISA", "SETUP", "IGNORE_QTA_CNF_UNO", "1", "Ignora = 1: se la qta_cnf presente nei listini di acquisto è = 1 prende quella presente in anagrafica articoli", false, null, false, false, false, false, false, null, false, null);
|
||||
|
||||
if (!isCustomerDb(
|
||||
IntegryCustomerDB.Carelli_Carelli,
|
||||
IntegryCustomerDB.Carelli_GestFood,
|
||||
IntegryCustomerDB.Carelli_Panimal,
|
||||
IntegryCustomerDB.Carelli_Format,
|
||||
IntegryCustomerDB.Carelli_Murgia)
|
||||
)
|
||||
return;
|
||||
|
||||
updateSetupValue("MTB_LISA", "SETUP", "IGNORE_QTA_CNF_UNO", "0");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
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_20240416134927 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (!isCustomerDb(
|
||||
IntegryCustomerDB.Carelli_Carelli,
|
||||
IntegryCustomerDB.Carelli_GestFood,
|
||||
IntegryCustomerDB.Carelli_Panimal,
|
||||
IntegryCustomerDB.Carelli_Format,
|
||||
IntegryCustomerDB.Carelli_Murgia)
|
||||
)
|
||||
return;
|
||||
|
||||
executeStatement("update mtb_lisa set mtb_lisa.qta_cnf = mtb_aart.qta_cnf\n" +
|
||||
"from mtb_lisa inner join mtb_aart on mtb_lisa.cod_mart = mtb_aart.cod_mart\n" +
|
||||
"where mtb_lisa.qta_cnf = 1 and mtb_aart.qta_cnf <> 1\n");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,341 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240416135010 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
|
||||
createOrUpdateFunction("getListinoAcquisto", "create FUNCTION [dbo].[getListinoAcquisto] (@dataValidita datetime, @codAlis varchar(5), @codArtFor varchar(25), @codMart varchar(15), @viewPromo varchar(1), @codMdep varchar(5)) \n" +
|
||||
"RETURNS \n" +
|
||||
"@lisa TABLE \n" +
|
||||
"(\n" +
|
||||
" [cod_alis] [varchar](5),\n" +
|
||||
" [descrizione] [varchar](40),\n" +
|
||||
" [versione] [int],\n" +
|
||||
" [data_iniz] [datetime],\n" +
|
||||
" [data_fine] [datetime],\n" +
|
||||
" [cod_promo] [varchar](10),\n" +
|
||||
" [note_listino] [varchar](255),\n" +
|
||||
" [flag_tipo_promo] [varchar](1),\n" +
|
||||
" [cod_divi_acq] [varchar](5),\n" +
|
||||
" [expression_costo] [varchar](1024),\n" +
|
||||
" [cod_mart] [varchar](15),\n" +
|
||||
" [cod_art_for] [varchar](25),\n" +
|
||||
" [unt_mis_acq] [varchar](3),\n" +
|
||||
" [rap_conv] [numeric](15, 5),\n" +
|
||||
" [prz_acq] [numeric](20, 5),\n" +
|
||||
" [perc_1] [numeric](5, 2),\n" +
|
||||
" [perc_2] [numeric](5, 2),\n" +
|
||||
" [perc_3] [numeric](5, 2),\n" +
|
||||
" [perc_4] [numeric](5, 2),\n" +
|
||||
" [perc_promo_1] [decimal](5, 2),\n" +
|
||||
" [perc_promo_2] [decimal](5, 2),\n" +
|
||||
" [perc_promo_3] [decimal](5, 2),\n" +
|
||||
" [perc_promo_4] [decimal](5, 2),\n" +
|
||||
" [data_agg_prz] [datetime],\n" +
|
||||
" [perc_oneri] [numeric](5, 2),\n" +
|
||||
" [val_oneri] [numeric](20, 5),\n" +
|
||||
" [perc_promo] [numeric](5, 3),\n" +
|
||||
" [val_promo] [numeric](15, 5),\n" +
|
||||
" [qta_min_ord] [numeric](15, 5),\n" +
|
||||
" [data_ult_prezzo] [datetime],\n" +
|
||||
" [gg_approvig] [numeric](5, 2),\n" +
|
||||
" [flag_forn_pref] [varchar](1),\n" +
|
||||
" [flag_qta_multipla] [varchar](1),\n" +
|
||||
" [tipo_azione] [varchar](1),\n" +
|
||||
" [descr_art_forn] [varchar](255),\n" +
|
||||
" [cod_barre] [varchar](40),\n" +
|
||||
" [cod_barre_imb] [varchar](40),\n" +
|
||||
" [qta_cnf] [numeric](15, 5),\n" +
|
||||
" [colli_strato] [numeric](20, 5),\n" +
|
||||
" [colli_pedana] [numeric](15, 5),\n" +
|
||||
" [cod_aliq] [varchar](5),\n" +
|
||||
" [note] [varchar](255),\n" +
|
||||
" [prz_ven_sug] [numeric](20, 5),\n" +
|
||||
" [famiglia] [varchar](40),\n" +
|
||||
" [flag_attivo] [varchar](1),\n" +
|
||||
" [tipo_variazione] [varchar](1),\n" +
|
||||
" [prz_acq_um] [numeric](38, 18),\n" +
|
||||
" [data_ins] [datetime],\n" +
|
||||
" [inserito_da] [varchar](40),\n" +
|
||||
" [modificato_da] [varchar](40),\n" +
|
||||
" [sconto_cartoni] [decimal](5, 2),\n" +
|
||||
" [sconto_pedane] [decimal](5, 2),\n" +
|
||||
" [sconto_stato] [decimal](5, 2),\n" +
|
||||
" [partita_mag] [varchar](20),\n" +
|
||||
" [flag_prz_base_lisv] [varchar](1),\n" +
|
||||
" [lista_depo] [nvarchar](max),\n" +
|
||||
" [prz_acq_netto] [decimal](20, 5),\n" +
|
||||
" [prz_acq_netto_um] [decimal](20, 5),\n" +
|
||||
" [prz_base_lisv] [decimal](20, 5),\n" +
|
||||
" [shelf_life] [int],\n" +
|
||||
" [cod_vage] [varchar](5),\n" +
|
||||
" [cod_vvet] [varchar](5),\n" +
|
||||
" [perc_prov] [decimal](5, 2),\n" +
|
||||
" [val_prov] [decimal](20, 5),\n" +
|
||||
" [qta_acq_contr] [numeric](20, 5),\n" +
|
||||
" [costo_trasp] [numeric](20, 5),\n" +
|
||||
" [tipo_calc_prz] [int],\n" +
|
||||
" [note_commerciali] [varchar](1024)\n" +
|
||||
")\n" +
|
||||
"AS\n" +
|
||||
"BEGIN\n" +
|
||||
"declare @ignore bit = 1\n" +
|
||||
"\n" +
|
||||
"SELECT @ignore = Cast(dbo.getGestSetupWithdefault('MTB_LISA', 'SETUP', 'IGNORE_QTA_CNF_UNO', '1') as int)\n" +
|
||||
"\n" +
|
||||
"insert into @lisa\n" +
|
||||
"select listino_base.cod_alis,\n" +
|
||||
" listino_base.descrizione,\n" +
|
||||
" IsNull(promozioni.versione, listino_base.versione) as versione,\n" +
|
||||
" IsNull(promozioni.data_iniz, listino_base.data_iniz) as data_iniz,\n" +
|
||||
" IsNull(promozioni.data_fine, listino_base.data_fine) as data_fine,\n" +
|
||||
" IsNull(promozioni.cod_promo, listino_base.cod_promo) as cod_promo,\n" +
|
||||
" IsNull(promozioni.note_listino, listino_base.note_listino) as note_listino,\n" +
|
||||
" promozioni.flag_tipo_promo,\n" +
|
||||
" listino_base.cod_divi_acq,\n" +
|
||||
" listino_base.expression_costo,\n" +
|
||||
" listino_base.cod_mart,\n" +
|
||||
" listino_base.cod_art_for,\n" +
|
||||
" listino_base.unt_mis_acq,\n" +
|
||||
" listino_base.rap_conv,\n" +
|
||||
" IsNull(promozioni.prz_acq, listino_base.prz_acq) as prz_acq,\n" +
|
||||
" IsNull(promozioni.perc_1, listino_base.perc_1) as perc_1,\n" +
|
||||
" IsNull(promozioni.perc_2, listino_base.perc_2) as perc_2,\n" +
|
||||
" IsNull(promozioni.perc_3, listino_base.perc_3) as perc_3,\n" +
|
||||
" IsNull(promozioni.perc_4, listino_base.perc_4) as perc_4,\n" +
|
||||
" IsNull(promozioni.perc_promo_1,0) as perc_promo_1,\n" +
|
||||
" IsNull(promozioni.perc_promo_2,0) as perc_promo_2,\n" +
|
||||
" IsNull(promozioni.perc_promo_3,0) as perc_promo_3,\n" +
|
||||
" IsNull(promozioni.perc_promo_4,0) as perc_promo_4,\n" +
|
||||
" listino_base.data_agg_prz,\n" +
|
||||
" listino_base.perc_oneri,\n" +
|
||||
" listino_base.val_oneri,\n" +
|
||||
" listino_base.perc_promo,\n" +
|
||||
" listino_base.val_promo,\n" +
|
||||
" listino_base.qta_min_ord,\n" +
|
||||
" listino_base.data_ult_prezzo,\n" +
|
||||
" listino_base.gg_approvig,\n" +
|
||||
" listino_base.flag_forn_pref,\n" +
|
||||
" listino_base.flag_qta_multipla,\n" +
|
||||
" listino_base.tipo_azione,\n" +
|
||||
" listino_base.descr_art_forn,\n" +
|
||||
" listino_base.cod_barre,\n" +
|
||||
" listino_base.cod_barre_imb,\n" +
|
||||
" listino_base.qta_cnf,\n" +
|
||||
" listino_base.colli_strato,\n" +
|
||||
" listino_base.colli_pedana,\n" +
|
||||
" listino_base.cod_aliq,\n" +
|
||||
" listino_base.note,\n" +
|
||||
" listino_base.prz_ven_sug,\n" +
|
||||
" listino_base.famiglia,\n" +
|
||||
" listino_base.flag_attivo,\n" +
|
||||
" listino_base.tipo_variazione,\n" +
|
||||
" listino_base.prz_acq_um,\n" +
|
||||
" listino_base.data_ins,\n" +
|
||||
" listino_base.inserito_da,\n" +
|
||||
" listino_base.modificato_da,\n" +
|
||||
" listino_base.sconto_cartoni,\n" +
|
||||
" listino_base.sconto_pedane,\n" +
|
||||
" listino_base.sconto_stato, \n" +
|
||||
" listino_base.partita_mag,\n" +
|
||||
" listino_base.flag_prz_base_lisv,\n" +
|
||||
" STUFF(( SELECT ',' + atb_promo_depo.cod_mdep AS [text()]\n" +
|
||||
" FROM atb_promo_depo\n" +
|
||||
" WHERE atb_promo_depo.cod_alis = promozioni.cod_alis and\n" +
|
||||
" atb_promo_depo.versione =promozioni.versione\n" +
|
||||
" FOR XML PATH('')), 1, 1, '' ) as lista_depo, \n" +
|
||||
" dbo.f_calcPrzNettoAcq( listino_base.cod_alis, \n" +
|
||||
" listino_base.expression_costo, \n" +
|
||||
" IsNull(promozioni.perc_1, listino_base.perc_1),\n" +
|
||||
" IsNull(promozioni.perc_2, listino_base.perc_2),\n" +
|
||||
" IsNull(promozioni.perc_3, listino_base.perc_3),\n" +
|
||||
" IsNull(promozioni.perc_4, listino_base.perc_4),\n" +
|
||||
" IsNull(promozioni.perc_promo_1,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_2,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_3,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_4,0) ,\n" +
|
||||
" listino_base.perc_promo, \n" +
|
||||
" listino_base.val_promo, \n" +
|
||||
" listino_base.perc_oneri,\n" +
|
||||
" listino_base.val_oneri,\n" +
|
||||
" IsNull(promozioni.prz_acq, listino_base.prz_acq) ) as prz_acq_netto , \n" +
|
||||
" dbo.f_calcPrzNettoAcq( listino_base.cod_alis, \n" +
|
||||
" listino_base.expression_costo, \n" +
|
||||
" IsNull(promozioni.perc_1, listino_base.perc_1),\n" +
|
||||
" IsNull(promozioni.perc_2, listino_base.perc_2),\n" +
|
||||
" IsNull(promozioni.perc_3, listino_base.perc_3),\n" +
|
||||
" IsNull(promozioni.perc_4, listino_base.perc_4),\n" +
|
||||
" IsNull(promozioni.perc_promo_1,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_2,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_3,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_4,0) ,\n" +
|
||||
" listino_base.perc_promo, \n" +
|
||||
" listino_base.val_promo, \n" +
|
||||
" listino_base.perc_oneri,\n" +
|
||||
" listino_base.val_oneri,\n" +
|
||||
" IsNull(promozioni.prz_acq, listino_base.prz_acq_um) ) as prz_acq_netto_um,\n" +
|
||||
" case when listino_base.flag_prz_base_lisv = 'C' OR (listino_base.flag_prz_base_lisv = 'P' AND prz_ven_sug = 0 )THEN \n" +
|
||||
" dbo.f_calcPrzNettoAcq( listino_base.cod_alis, \n" +
|
||||
" listino_base.expression_costo, \n" +
|
||||
" IsNull(promozioni.perc_1, listino_base.perc_1),\n" +
|
||||
" IsNull(promozioni.perc_2, listino_base.perc_2),\n" +
|
||||
" IsNull(promozioni.perc_3, listino_base.perc_3),\n" +
|
||||
" IsNull(promozioni.perc_4, listino_base.perc_4),\n" +
|
||||
" IsNull(promozioni.perc_promo_1,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_2,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_3,0) ,\n" +
|
||||
" IsNull(promozioni.perc_promo_4,0) ,\n" +
|
||||
" listino_base.perc_promo, \n" +
|
||||
" listino_base.val_promo, \n" +
|
||||
" listino_base.perc_oneri,\n" +
|
||||
" listino_base.val_oneri,\n" +
|
||||
" IsNull(promozioni.prz_acq, listino_base.prz_acq) ) else prz_ven_sug end as prz_base_lisv,\n" +
|
||||
" listino_base.shelf_life,\n" +
|
||||
" atb_list_data.cod_vage,\n" +
|
||||
" atb_list_data.cod_vvet,\n" +
|
||||
" IsNull(promozioni.perc_prov, listino_base.perc_prov) as perc_prov,\n" +
|
||||
" IsNull(promozioni.val_prov, listino_base.val_prov) as val_prov, \n" +
|
||||
" IsNull(promozioni.qta_acq_contr, 0) as qta_acq_contr,\n" +
|
||||
" IsNull(promozioni.costo_trasp, 0) as costo_trasp,\n" +
|
||||
" listino_base.tipo_calc_prz,\n" +
|
||||
" listino_base.note_commerciali\n" +
|
||||
"from (SELECT atb_list.cod_alis,\n" +
|
||||
" atb_list.descrizione,\n" +
|
||||
" atb_list.tipo_calc_prz,\n" +
|
||||
" mtb_lisa_data.versione as versione, \n" +
|
||||
" atb_list_data.data_iniz as data_iniz, \n" +
|
||||
" atb_list_data.data_fine as data_fine, \n" +
|
||||
" atb_list_data.cod_promo as cod_promo, \n" +
|
||||
" atb_list_data.note as note_listino,\n" +
|
||||
" atb_list.cod_divi_acq, \n" +
|
||||
" atb_list.expression_costo, \n" +
|
||||
" mtb_lisa.cod_mart, \n" +
|
||||
" mtb_lisa.cod_art_for, \n" +
|
||||
" mtb_lisa.unt_mis_acq, \n" +
|
||||
" IsNull(mtb_lisa.rap_conv, 1) as rap_conv, \n" +
|
||||
" IsNull(mtb_lisa_data.prz_acq, mtb_lisa.prz_acq) as 'prz_acq',\n" +
|
||||
" IsNull(mtb_lisa_data.perc_1, mtb_lisa.perc_1) as 'perc_1',\n" +
|
||||
" IsNull(mtb_lisa_data.perc_2, mtb_lisa.perc_2) as 'perc_2',\n" +
|
||||
" IsNull(mtb_lisa_data.perc_3, mtb_lisa.perc_3) as 'perc_3',\n" +
|
||||
" IsNull(mtb_lisa_data.perc_4, mtb_lisa.perc_4) as 'perc_4', \n" +
|
||||
" IsNull(mtb_lisa_data.data_agg_prz, mtb_lisa.data_agg_prz) as 'data_agg_prz', \n" +
|
||||
" IsNull(mtb_lisa_data.perc_oneri,mtb_lisa.perc_oneri) as 'perc_oneri',\n" +
|
||||
" IsNull(mtb_lisa_data.val_oneri, mtb_lisa.val_oneri) as 'val_oneri', \n" +
|
||||
" IsNull(mtb_lisa_data.perc_promo, mtb_lisa.perc_promo) as 'perc_promo',\n" +
|
||||
" IsNull(mtb_lisa_data.val_promo, mtb_lisa.val_promo) as 'val_promo',\n" +
|
||||
" mtb_lisa.qta_min_ord,\n" +
|
||||
" mtb_lisa.data_ult_prezzo, \n" +
|
||||
" mtb_lisa.gg_approvig, \n" +
|
||||
" mtb_lisa.flag_forn_pref, \n" +
|
||||
" mtb_lisa.flag_qta_multipla, \n" +
|
||||
" mtb_lisa.tipo_azione, \n" +
|
||||
" mtb_lisa.descr_art_forn, \n" +
|
||||
" mtb_lisa.cod_barre, \n" +
|
||||
" mtb_lisa.cod_barre_imb, \n" +
|
||||
" case when mtb_lisa.qta_cnf is null or (@ignore = 1 AND mtb_lisa.qta_cnf = 1) or mtb_lisa.qta_cnf = 0 then mtb_aart.qta_cnf else mtb_lisa.qta_cnf end as 'qta_cnf', \n" +
|
||||
" mtb_lisa.colli_strato,\n" +
|
||||
" mtb_lisa.colli_pedana, \n" +
|
||||
" mtb_lisa.cod_aliq, \n" +
|
||||
" mtb_lisa.note, \n" +
|
||||
" IsNull(mtb_lisa_data.prz_ven_sug, mtb_lisa.prz_ven_sug) as prz_ven_sug, \n" +
|
||||
" mtb_lisa.famiglia, \n" +
|
||||
" CASE WHEN atb_list.flag_attivo = 'N' THEN 'N' ELSE mtb_lisa.flag_attivo END flag_attivo, \n" +
|
||||
" mtb_lisa_data.tipo_variazione as tipo_variazione, \n" +
|
||||
" Round(IsNull(mtb_lisa_data.prz_acq, mtb_lisa.prz_acq)/mtb_lisa.rap_conv, 5) as prz_acq_um, \n" +
|
||||
" atb_list_data.data_ins,\n" +
|
||||
" atb_list_data.inserito_da,\n" +
|
||||
" mtb_lisa_data.modificato_da,\n" +
|
||||
" ISNULL(mtb_lisa_data.sconto_cartoni, 0) as sconto_cartoni,\n" +
|
||||
" ISNULL(mtb_lisa_data.sconto_pedane, 0) as sconto_pedane,\n" +
|
||||
" ISNULL(mtb_lisa_data.sconto_strato, 0) as sconto_stato ,\n" +
|
||||
" atb_list_data.FLAG_TIPO_PROMO AS flag_tipo_promo,\n" +
|
||||
" mtb_lisa_data.partita_mag,\n" +
|
||||
" atb_list.flag_prz_base_lisv,\n" +
|
||||
" mtb_lisa.shelf_life,\n" +
|
||||
" mtb_lisa_data.perc_prov,\n" +
|
||||
" mtb_lisa_data.val_prov,\n" +
|
||||
" mtb_lisa_data.qta_acq_contr,\n" +
|
||||
" mtb_lisa_data.note_commerciali\n" +
|
||||
"FROM (select \n" +
|
||||
"atb_list.cod_alis, \n" +
|
||||
"mtb_lisa.cod_art_for,\n" +
|
||||
" max((case when atb_list_data.versione is null then null else IsNull(atb_list_data.cod_promo+ '|', '') + Convert(varchar(10), atb_list_data.data_iniz, 111) + ' ' + replicate('0', 5 - len(atb_list_data.versione)) + Convert(varchar(5), atb_list_data.versione) end ) ) as max_lisa\n" +
|
||||
"from atb_list \n" +
|
||||
" inner join mtb_lisa on atb_list.cod_alis = mtb_lisa.cod_alis\n" +
|
||||
" left outer join mtb_lisa_data on mtb_lisa.cod_alis = mtb_lisa_data.cod_alis and mtb_lisa.cod_art_for = mtb_lisa_data.cod_art_for\n" +
|
||||
" left outer join atb_list_data on atb_list.cod_alis = atb_list_data.cod_alis and \n" +
|
||||
" mtb_lisa_data.versione = atb_list_data.versione and \n" +
|
||||
" atb_list_data.cod_promo is null and\n" +
|
||||
" atb_list_data.data_iniz <= IsNull(@dataValidita, convert(datetime, convert(varchar(10), GetDate(), 121)))\n" +
|
||||
"where (@codAlis is null or atb_list.cod_alis = @codAlis ) and \n" +
|
||||
"(@codArtFor is null or mtb_lisa.cod_art_for = @codArtFor ) and\n" +
|
||||
"(@codMart is null or mtb_lisa.cod_mart = @codMart ) \n" +
|
||||
"group by atb_list.cod_alis, \n" +
|
||||
"mtb_lisa.cod_art_for ) tmp_lisa inner join mtb_lisa on tmp_lisa.cod_art_for = mtb_lisa.cod_art_for and\n" +
|
||||
" tmp_lisa.cod_alis= mtb_lisa.cod_alis \n" +
|
||||
" inner join atb_list on mtb_lisa.cod_alis = atb_list.cod_alis \n" +
|
||||
" inner join gtb_divi on atb_list.cod_divi_acq = gtb_divi.cod_divi \n" +
|
||||
"left outer join mtb_lisa_data on tmp_lisa.cod_alis = mtb_lisa_data.cod_alis and \n" +
|
||||
"tmp_lisa.cod_art_for = mtb_lisa_data.cod_art_for and \n" +
|
||||
"Convert(int, right( tmp_lisa.max_lisa, 5)) = mtb_lisa_data.versione \n" +
|
||||
"left outer join atb_list_data on mtb_lisa_data.cod_alis = atb_list_data.cod_alis and \n" +
|
||||
"mtb_lisa_data.versione = atb_list_data.versione \n" +
|
||||
"left outer join mtb_aart on mtb_lisa.cod_mart = mtb_aart.cod_mart) listino_base \n" +
|
||||
" left outer join ( select atb_list_data.cod_alis, \n" +
|
||||
" mtb_lisa_data.cod_art_for,\n" +
|
||||
" Min(atb_list_data.data_iniz) as data_iniz,\n" +
|
||||
" Min(atb_list_data.data_fine) as data_fine,\n" +
|
||||
" Min(atb_list_data.versione ) as versione,\n" +
|
||||
" Min(atb_list_data.cod_promo) as cod_promo,\n" +
|
||||
" case when atb_list_data.flag_tipo_promo is null then atb_list_data.note else null end as note_listino,\n" +
|
||||
" Min(atb_list_data.flag_tipo_promo) as flag_tipo_promo,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'T' THEN mtb_lisa_data.prz_acq else null end) as prz_acq,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'T' THEN Round(mtb_lisa_data.prz_acq /mtb_lisa.rap_conv, 5) else null end ) as prz_acq_um,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.perc_1 else null end) as perc_1,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.perc_2 else null end) as perc_2,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.perc_3 else null end) as perc_3,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.perc_4 else null end) as perc_4,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'E' THEN mtb_lisa_promo.perc_promo_1 else null end) as perc_promo_1,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'E' THEN mtb_lisa_promo.perc_promo_2 else null end) as perc_promo_2,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'E' THEN mtb_lisa_promo.perc_promo_3 else null end) as perc_promo_3,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'E' THEN mtb_lisa_promo.perc_promo_4 else null end) as perc_promo_4,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.perc_prov ELSE null End ) as perc_prov,\n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.val_prov ELSE null End ) as val_prov, \n" +
|
||||
" max(case when atb_list_data.flag_tipo_promo is null or atb_list_data.flag_tipo_promo = 'C' THEN mtb_lisa_data.qta_acq_contr ELSE null End ) as qta_acq_contr,\n" +
|
||||
" Max(atb_list_data.costo_trasp) as costo_trasp\n" +
|
||||
" from atb_list_data inner join atb_promo_depo on atb_list_data.cod_alis = atb_promo_depo.cod_alis and\n" +
|
||||
" atb_list_data.versione = atb_promo_depo.versione \n" +
|
||||
" inner join mtb_lisa_data on atb_list_data.cod_alis = mtb_lisa_data.cod_alis and atb_list_data.versione = mtb_lisa_data.versione\n" +
|
||||
" inner join mtb_lisa on mtb_lisa_data.cod_alis = mtb_lisa.cod_alis and mtb_lisa_data.cod_art_for = mtb_lisa.cod_art_for\n" +
|
||||
" inner join mtb_lisa_promo on atb_list_data.cod_alis = mtb_lisa_promo.cod_alis and atb_list_data.versione = mtb_lisa_promo.versione and mtb_lisa.cod_art_for = mtb_lisa_promo.cod_art_for\n" +
|
||||
" where atb_list_data.cod_promo is not null and\n" +
|
||||
" atb_list_data.data_iniz <= IsNull(@dataValidita, convert(datetime, convert(varchar(10), GetDate(), 121))) \n" +
|
||||
" and atb_list_data.data_fine >= IsNull(@dataValidita, convert(datetime, convert(varchar(10), GetDate(), 121))) \n" +
|
||||
" and (@codMdep is null or atb_promo_depo.cod_mdep = @codMdep) \n" +
|
||||
" and (@codAlis is null or atb_list_data.cod_alis = @codalis ) \n" +
|
||||
" and (@codArtFor is null or mtb_lisa_data.cod_art_for = @codArtFor )\n" +
|
||||
" and (@codMart is null or mtb_lisa.cod_mart = @codMart ) \n" +
|
||||
" and @viewPromo = 'S'\n" +
|
||||
" group by atb_list_data.cod_alis, \n" +
|
||||
" mtb_lisa_data.cod_art_for,\n" +
|
||||
" case when atb_list_data.flag_tipo_promo is null then atb_list_data.note else null end ) promozioni on listino_base.cod_alis = promozioni.cod_alis and \n" +
|
||||
" listino_base.cod_art_for = promozioni.cod_art_for \n" +
|
||||
" left outer join atb_list_data on atb_list_data.cod_alis = listino_base.cod_alis and isnull(promozioni.versione, listino_base.versione) = atb_list_data.versione\n" +
|
||||
" \n" +
|
||||
" RETURN \n" +
|
||||
"END");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -184,8 +184,8 @@ public class DocOrdUntMisRules extends QueryRules {
|
||||
|
||||
if (UtilityBigDecimal.isNullOrZero(qtaCnf) && UtilityString.equalsIgnoreCase(gestione, "A") && !UtilityString.isNullOrEmpty(listino)) {
|
||||
sql =
|
||||
Query.format("SELECT qta_cnf FROM mtb_lisa WHERE cod_alis = %s AND cod_mart = %s AND ( %s is null OR cod_art_for = %s) ORDER BY flag_attivo",
|
||||
listino, codMart, codArtFor, codArtFor);
|
||||
Query.format("SELECT qta_cnf FROM dbo.getListinoAcquisto(null, %s, %s, %s, 'N', null) lisa ORDER BY flag_attivo",
|
||||
listino, codArtFor, codMart);
|
||||
qtaCnf = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(connection, sql);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user