Select PRD.
prd_lvl_number "Código de Producto",
PRD.prd_full_name "Nombre de Prd.",
inv.trans_uom "Unidad",
inv.trans_qty "Cantidad",
inv.trans_cost "Costo Unitario",
decode(inv.inv_eff_cst,
' ',
0,
'-',
inv.trans_ext_cost * -1,
inv.trans_ext_cost) costo_total,
e.inv_type_desc "Tipo de inventario",
c.tbl_code_name "Balance de inventario",
org.des_cadena,
org.org_lvl_number "Local",
org.org_name_full "Nombre de local",
inv.trans_date "Fecha Movimiento",
to_char(inv.posted_date_time, 'dd/mm/yyyy hh24:mi:ss') "Fecha Registro",
m.inv_mrpt_code "Cod Mov. Maestro",
m.inv_mrpt_desc "Descripción Mov. Maestro",
d.inv_drpt_code "Cod. Mov. Detalle",
d.inv_drpt_desc "Descripción Mov. Detalle",
inv.trans_ref "Documento",
PRD.cod_area "Area",
PRD.des_area "Descripción Area",
PRD.cod_sec "Seccion",
PRD.des_sec "Descripción Seccion",
PRD.cod_cat "Linea",
PRD.des_cat "Descripción Linea",
PRD.cod_fam "Familia",
PRD.des_fam "Descripción Familia",
PRD.cod_sfam "Subfamilia",
PRD.des_sfam "Descripción Sub Familia",
a.trans_user "Usuario",
vpc.vendor_number "Código Proveedor",
vpc.vendor_name "Nombre Proveedor",
to_char(nvl(inv.pmg_po_number,'0'),'FM9999999999') "Orden de Compra",
PRD.cod_tipneg||'-'||PRD.des_tipneg "Tipo de Producto",
to_char(inv.audit_number,'FM9999999999999') "Audit_Number",
XX.REB_PCNT "Rebate%",
XX.REB_PCNT / 100 * ( decode(inv.inv_eff_cst,
' ',
0,
'-',
inv.trans_ext_cost * -1,
inv.trans_ext_cost)) "Rebate",
xx.GIC_PCNT "GIC%",
XX.GIC_PCNT / 100 * ( decode(inv.inv_eff_cst,
' ',
0,
'-',
inv.trans_ext_cost * -1,
inv.trans_ext_cost)) "GIC",
xx.GOC_PCNT "GOC%",
XX.GOC_PCNT / 100 * ( decode(inv.inv_eff_cst,
' ',
0,
'-',
inv.trans_ext_cost * -1,
inv.trans_ext_cost)) "GOC",
xx.FPROM_PCNT "F.Prom%",
XX.FPROM_PCNT / 100 * ( decode(inv.inv_eff_cst,
' ',
0,
'-',
inv.trans_ext_cost * -1,
inv.trans_ext_cost)) "Fondo Prom",
xx.NDEV_PCNT "No dev%",
XX.NDEV_PCNT / 100 * ( decode(inv.inv_eff_cst,
' ',
0,
'-',
inv.trans_ext_cost * -1,
inv.trans_ext_cost)) "No Devolucion",
xx.BLOG_PCNT "Bon.Log%",
XX.blog_PCNT / 100 * ( decode(inv.inv_eff_cst,
' ',
0,
'-',
inv.trans_ext_cost * -1,
inv.trans_ext_cost)) "Bonif.Log"
from (select X.Movid,
Sum(REB_PCNT) REB_PCNT,
Sum(GIC_PCNT) GIC_PCNT,
Sum(GOC_PCNT) GOC_PCNT,
Sum(FPROM_PCNT) FPROM_PCNT,
Sum(NDEV_PCNT) NDEV_PCNT,
Sum(BLOG_PCT) BLOG_PCNT
from (select i.rowid MovID,
(RBM.vpc_alw_pcnt) REB_PCNT,
0 GIC_PCNT,
0 GOC_PCNT,
0 FPROM_PCNT,
0 NDEV_PCNT,
0 BLOG_PCT
from invaudee i
inner join (select distinct y.inv_mrpt_code, y.inv_drpt_code --
SACA TODOS LOS MOVIMIENTOS VALIDOS PARA REBATES
from vpcevnee t, rbmvcdcd y
where t.vpc_evnt_key = y.vpc_evnt_key) r
on r.inv_mrpt_code = i.inv_mrpt_code
and r.inv_drpt_code = i.inv_drpt_code
inner join ifhprdmst p
on p.prd_lvl_child = i.trans_prd_child
inner join ifhorgmst o
on o.org_lvl_child = i.trans_org_child
and o.tienda_piloto = 'T'
inner join vpcmstee v
on v.vpc_tech_key = i.vpc_tech_key
inner join tblflcee c
on c.tbl_code = trim(i.inv_eff_bal)
and c.tbl_field = 'INV_BALANCE_EFF'
inner join ifhrbmhst RBM -- INI query acuerdos a procesar
on RBM.vpc_evnt_key = 214 --RBMATE COMPRAS
and RBM.id_backup='@PERIODO YYYYMM@'
-- and RBM.id_backup = '202205'
and RBM.vpc_tech_key = i.vpc_tech_key
and (RBM.prd_lvl_child = p.prd_lvl_child or
RBM.prd_lvl_child = p.area_lvl_child or
RBM.prd_lvl_child = p.secc_lvl_child or
RBM.prd_lvl_child = p.cat_lvl_child or
RBM.prd_lvl_child = p.fam_lvl_child or
RBM.prd_lvl_child = p.sfam_lvl_child)
and (RBM.org_lvl_child = o.org_lvl_child or
RBM.org_lvl_child = o.org_child_cadena or
RBM.org_lvl_child = o.org_child_formato)
where
--to_char(i.trans_date, 'YYYYMM') = '@PERIODO YYYYMM@'
i.trans_date between
to_date('@PERIODO YYYYMM@'||'01','yyyymmdd') and last_day
(to_date('@PERIODO YYYYMM@'||'01','yyyymmdd'))
-- to_date('202205' || '01', 'yyyymmdd') and
--(to_date(to_char(To_number('202205') + 1) || '01', 'yyyymmdd')
- 1)
and v.vendor_number = @COD PROVEEDOR@
UNION ALL
select i.rowid MovID,
0 REB_PCNT,
(RBM.vpc_alw_pcnt) GIC_PCNT,
0 GOC_PCNT,
0 FPROM_PCNT,
0 NDEV_PCNT,
0 BLOG_PCT
from invaudee i
inner join (select distinct y.inv_mrpt_code, y.inv_drpt_code --
SACA TODOS LOS MOVIMIENTOS VALIDOS PARA REBATES
from vpcevnee t, rbmvcdcd y
where t.vpc_evnt_key = y.vpc_evnt_key) r
on r.inv_mrpt_code = i.inv_mrpt_code
and r.inv_drpt_code = i.inv_drpt_code
inner join ifhprdmst p
on p.prd_lvl_child = i.trans_prd_child
inner join ifhorgmst o
on o.org_lvl_child = i.trans_org_child
and o.tienda_piloto = 'T'
inner join vpcmstee v
on v.vpc_tech_key = i.vpc_tech_key
inner join tblflcee c
on c.tbl_code = trim(i.inv_eff_bal)
and c.tbl_field = 'INV_BALANCE_EFF'
inner join ifhrbmhst RBM -- INI query acuerdos a procesar
on RBM.vpc_evnt_key = 219 --GIC
and RBM.id_backup = '@PERIODO YYYYMM@'
--and RBM.id_backup = '202205'
and RBM.vpc_tech_key = i.vpc_tech_key
and (RBM.prd_lvl_child = p.prd_lvl_child or
RBM.prd_lvl_child = p.area_lvl_child or
RBM.prd_lvl_child = p.secc_lvl_child or
RBM.prd_lvl_child = p.cat_lvl_child or
RBM.prd_lvl_child = p.fam_lvl_child or
RBM.prd_lvl_child = p.sfam_lvl_child)
and (RBM.org_lvl_child = o.org_lvl_child or
RBM.org_lvl_child = o.org_child_cadena or
RBM.org_lvl_child = o.org_child_formato)
where
-- to_char(i.trans_date, 'YYYYMM') = '@PERIODO YYYYMM@'
i.trans_date between
to_date('@PERIODO YYYYMM@'||'01','yyyymmdd') and last_day
(to_date('@PERIODO YYYYMM@'||'01','yyyymmdd'))
-- to_date('202205' || '01', 'yyyymmdd') and
-- (to_date(to_char(To_number('202205') + 1) || '01',
-- 'yyyymmdd') - 1)
and v.vendor_number = @COD PROVEEDOR@
-- and v.vendor_number = 2010011361
--group by i.audit_number
UNION ALL
select i.rowid MOVID,
0 REB_PCNT,
0 GIC_PCNT,
(RBM.vpc_alw_pcnt) GOC_PCNT,
0 FPROM_PCNT,
0 NDEV_PCNT,
0 BLOG_PCT
from invaudee i
inner join (select distinct y.inv_mrpt_code, y.inv_drpt_code --
SACA TODOS LOS MOVIMIENTOS VALIDOS PARA REBATES
from vpcevnee t, rbmvcdcd y
where t.vpc_evnt_key = y.vpc_evnt_key) r
on r.inv_mrpt_code = i.inv_mrpt_code
and r.inv_drpt_code = i.inv_drpt_code
inner join ifhprdmst p
on p.prd_lvl_child = i.trans_prd_child
inner join ifhorgmst o
on o.org_lvl_child = i.trans_org_child
and o.tienda_piloto = 'T'
inner join vpcmstee v
on v.vpc_tech_key = i.vpc_tech_key
inner join tblflcee c
on c.tbl_code = trim(i.inv_eff_bal)
and c.tbl_field = 'INV_BALANCE_EFF'
inner join ifhrbmhst RBM -- INI query acuerdos a procesar
on RBM.vpc_evnt_key = 212 --GOC
and RBM.id_backup = '@PERIODO YYYYMM@'
-- and RBM.id_backup = '202205'
and RBM.vpc_tech_key = i.vpc_tech_key
and (RBM.prd_lvl_child = p.prd_lvl_child or
RBM.prd_lvl_child = p.area_lvl_child or
RBM.prd_lvl_child = p.secc_lvl_child or
RBM.prd_lvl_child = p.cat_lvl_child or
RBM.prd_lvl_child = p.fam_lvl_child or
RBM.prd_lvl_child = p.sfam_lvl_child)
and (RBM.org_lvl_child = o.org_lvl_child or
RBM.org_lvl_child = o.org_child_cadena or
RBM.org_lvl_child = o.org_child_formato)
where
-- to_char(i.trans_date, 'YYYYMM') = '@PERIODO YYYYMM@'
i.trans_date between
to_date('@PERIODO YYYYMM@'||'01','yyyymmdd') and last_day
(to_date('@PERIODO YYYYMM@'||'01','yyyymmdd'))
-- to_date('202205' || '01', 'yyyymmdd') and
-- (to_date(to_char(To_number('202205') + 1) || '01',
-- 'yyyymmdd') - 1)
and v.vendor_number = @COD PROVEEDOR@
-- group by i.audit_number
UNION ALL
select i.rowid MOVID,
0 REB_PCNT,
0 GIC_PCNT,
0 GOC_PCNT,
(RBM.vpc_alw_pcnt) FPROM_PCNT,
0 NDEV_PCNT,
0 BLOG_PCT
from invaudee i
inner join (select distinct y.inv_mrpt_code, y.inv_drpt_code --
SACA TODOS LOS MOVIMIENTOS VALIDOS PARA REBATES
from vpcevnee t, rbmvcdcd y
where t.vpc_evnt_key = y.vpc_evnt_key) r
on r.inv_mrpt_code = i.inv_mrpt_code
and r.inv_drpt_code = i.inv_drpt_code
inner join ifhprdmst p
on p.prd_lvl_child = i.trans_prd_child
inner join ifhorgmst o
on o.org_lvl_child = i.trans_org_child
and o.tienda_piloto = 'T'
inner join vpcmstee v
on v.vpc_tech_key = i.vpc_tech_key
inner join tblflcee c
on c.tbl_code = trim(i.inv_eff_bal)
and c.tbl_field = 'INV_BALANCE_EFF'
inner join ifhrbmhst RBM -- INI query acuerdos a procesar
on RBM.vpc_evnt_key = 221 --Fondo Promocional FPROM
and RBM.id_backup='@PERIODO YYYYMM@'
-- and RBM.id_backup = '202205'
and RBM.vpc_tech_key = i.vpc_tech_key
and (RBM.prd_lvl_child = p.prd_lvl_child or
RBM.prd_lvl_child = p.area_lvl_child or
RBM.prd_lvl_child = p.secc_lvl_child or
RBM.prd_lvl_child = p.cat_lvl_child or
RBM.prd_lvl_child = p.fam_lvl_child or
RBM.prd_lvl_child = p.sfam_lvl_child)
and (RBM.org_lvl_child = o.org_lvl_child or
RBM.org_lvl_child = o.org_child_cadena or
RBM.org_lvl_child = o.org_child_formato)
where
--to_char(i.trans_date, 'YYYYMM') = '@PERIODO YYYYMM@'
i.trans_date between
to_date('@PERIODO YYYYMM@'||'01','yyyymmdd') and last_day
(to_date('@PERIODO YYYYMM@'||'01','yyyymmdd'))
-- to_date('202205' || '01', 'yyyymmdd') and
--(to_date(to_char(To_number('202205') + 1) || '01',
-- 'yyyymmdd') - 1)
and v.vendor_number = @COD PROVEEDOR@
-- group by i.audit_number
UNION ALL
select i.rowid MOVID,
0 REB_PCNT,
0 GIC_PCNT,
0 GOC_PCNT,
0 FPROM_PCNT,
(RBM.vpc_alw_pcnt) NDEV_PCNT,
0 BLOG_PCT
from invaudee i
inner join (select distinct y.inv_mrpt_code, y.inv_drpt_code --
SACA TODOS LOS MOVIMIENTOS VALIDOS PARA REBATES
from vpcevnee t, rbmvcdcd y
where t.vpc_evnt_key = y.vpc_evnt_key) r
on r.inv_mrpt_code = i.inv_mrpt_code
and r.inv_drpt_code = i.inv_drpt_code
inner join ifhprdmst p
on p.prd_lvl_child = i.trans_prd_child
inner join ifhorgmst o
on o.org_lvl_child = i.trans_org_child
and o.tienda_piloto = 'T'
inner join vpcmstee v
on v.vpc_tech_key = i.vpc_tech_key
inner join tblflcee c
on c.tbl_code = trim(i.inv_eff_bal)
and c.tbl_field = 'INV_BALANCE_EFF'
inner join ifhrbmhst RBM -- INI query acuerdos a procesar
on RBM.vpc_evnt_key = 213 --No Devolucion NDEV
and RBM.id_backup='@PERIODO YYYYMM@'
-- and RBM.id_backup = '202205'
and RBM.vpc_tech_key = i.vpc_tech_key
and (RBM.prd_lvl_child = p.prd_lvl_child or
RBM.prd_lvl_child = p.area_lvl_child or
RBM.prd_lvl_child = p.secc_lvl_child or
RBM.prd_lvl_child = p.cat_lvl_child or
RBM.prd_lvl_child = p.fam_lvl_child or
RBM.prd_lvl_child = p.sfam_lvl_child)
and (RBM.org_lvl_child = o.org_lvl_child or
RBM.org_lvl_child = o.org_child_cadena or
RBM.org_lvl_child = o.org_child_formato)
where
--to_char(i.trans_date, 'YYYYMM') = '@PERIODO YYYYMM@'
i.trans_date between
to_date('@PERIODO YYYYMM@'||'01','yyyymmdd') and last_day
(to_date('@PERIODO YYYYMM@'||'01','yyyymmdd'))
-- to_date('202205' || '01', 'yyyymmdd') and
-- (to_date(to_char(To_number('202205') + 1) || '01',
-- 'yyyymmdd') - 1)
and v.vendor_number = @COD PROVEEDOR@
-- group by i.audit_number
UNION ALL
select i.rowid MOVID,
0 REB_PCNT,
0 GIC_PCNT,
0 GOC_PCNT,
0 FPROM_PCNT,
0 NDEV_PCNT,
(RBM.vpc_alw_pcnt) BLOG_PCNT
from invaudee i
inner join (select distinct y.inv_mrpt_code, y.inv_drpt_code --
SACA TODOS LOS MOVIMIENTOS VALIDOS PARA REBATES
from vpcevnee t, rbmvcdcd y
where t.vpc_evnt_key = y.vpc_evnt_key) r
on r.inv_mrpt_code = i.inv_mrpt_code
and r.inv_drpt_code = i.inv_drpt_code
inner join ifhprdmst p
on p.prd_lvl_child = i.trans_prd_child
inner join ifhorgmst o
on o.org_lvl_child = i.trans_org_child
and o.tienda_piloto = 'T'
inner join vpcmstee v
on v.vpc_tech_key = i.vpc_tech_key
inner join tblflcee c
on c.tbl_code = trim(i.inv_eff_bal)
and c.tbl_field = 'INV_BALANCE_EFF'
inner join ifhrbmhst RBM -- INI query acuerdos a procesar
on RBM.vpc_evnt_key = 216 --Bonificacion Logistica BONLOG
and RBM.id_backup='@PERIODO YYYYMM@'
-- and RBM.id_backup = '202205'
and RBM.vpc_tech_key = i.vpc_tech_key
and (RBM.prd_lvl_child = p.prd_lvl_child or
RBM.prd_lvl_child = p.area_lvl_child or
RBM.prd_lvl_child = p.secc_lvl_child or
RBM.prd_lvl_child = p.cat_lvl_child or
RBM.prd_lvl_child = p.fam_lvl_child or
RBM.prd_lvl_child = p.sfam_lvl_child)
and (RBM.org_lvl_child = o.org_lvl_child or
RBM.org_lvl_child = o.org_child_cadena or
RBM.org_lvl_child = o.org_child_formato)
where
--to_char(i.trans_date, 'YYYYMM') = '@PERIODO YYYYMM@'
i.trans_date between
to_date('@PERIODO YYYYMM@'||'01','yyyymmdd') and last_day
(to_date('@PERIODO YYYYMM@'||'01','yyyymmdd'))
-- to_date('202205' || '01', 'yyyymmdd') and
-- (to_date(to_char(To_number('202205') + 1) || '01',
-- 'yyyymmdd') - 1)
and v.vendor_number = @COD PROVEEDOR@
) X --Extraccion individual de movimientos y descuentos
group by X.MOVID) XX --DEscuentos sumados consolidados por movimiento
(INVAUDEEE.ROWID)
inner join Invaudee Inv
on inv.rowid = XX.MOVID
inner join IFHPRDMST Prd
on prd.prd_lvl_child = inv.trans_prd_child
inner join ifhorgmst Org
on org.org_lvl_child = inv.trans_org_child
and org.tienda_piloto = 'T'
inner join vpcmstee vpc
on vpc.vpc_tech_key = inv.vpc_tech_key
inner join invtrmee m
on m.inv_mrpt_code = inv.inv_mrpt_code
inner join invtrdee d
on d.inv_mrpt_code = inv.inv_mrpt_code
and d.inv_drpt_code = inv.inv_drpt_code
inner join invtypee e
on e.inv_type_code = inv.trans_type_code
inner join tblflcee c
on c.tbl_code = trim(inv.inv_eff_bal)
and c.tbl_field = 'INV_BALANCE_EFF'
inner join invahree a
on a.trans_session = inv.trans_session