Se mejora vista de articulos precio última compra
git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES2/trunk@170 b2cfbe5a-eba1-4a0c-8b32-7feea0a119f2
This commit is contained in:
parent
2685536cdc
commit
6382f4d630
@ -34,37 +34,49 @@ facturas_proveedor.ID_EMPRESA,
|
|||||||
facturas_proveedor_detalles.ID_ARTICULO
|
facturas_proveedor_detalles.ID_ARTICULO
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
CREATE VIEW V_INF_ULTCOM(
|
CREATE VIEW V_INF_ULTCOM(
|
||||||
ID_EMPRESA,
|
ID_EMPRESA,
|
||||||
ID_ARTICULO,
|
ID_ARTICULO,
|
||||||
|
FECHA,
|
||||||
IMPORTE_UNIDAD_COMPRA,
|
IMPORTE_UNIDAD_COMPRA,
|
||||||
IMPORTE_NETO_COMPRA,
|
IMPORTE_NETO_COMPRA,
|
||||||
IMPORTE_PORTE_COMPRA)
|
IMPORTE_PORTE_COMPRA)
|
||||||
AS
|
AS
|
||||||
|
|
||||||
|
select id_empresa, id_articulo, fecha_factura, sum(IMPORTE_UNIDAD_COMPRA) as importe_unidad, sum(IMPORTE_NETO_COMPRA) as importe_neto_compra, sum(IMPORTE_PORTE_COMPRA) as importe_porte_compra
|
||||||
|
|
||||||
|
from
|
||||||
|
(
|
||||||
|
/*Se hace agrupación de articulos de los detalles de la factura por si se compra el mismo articulo en distintas lineas con distinto precio por ello se hace la media*/
|
||||||
select
|
select
|
||||||
facturas_proveedor.id_empresa,
|
facturas_proveedor.id_empresa,
|
||||||
facturas_proveedor_detalles.ID_ARTICULO,
|
facturas_proveedor_detalles.ID_ARTICULO,
|
||||||
|
0 as ult_com,
|
||||||
|
facturas_proveedor.fecha_factura,
|
||||||
avg(facturas_proveedor_detalles.IMPORTE_UNIDAD) as IMPORTE_UNIDAD_COMPRA,
|
avg(facturas_proveedor_detalles.IMPORTE_UNIDAD) as IMPORTE_UNIDAD_COMPRA,
|
||||||
avg(facturas_proveedor_detalles.IMPORTE_UNIDAD - (facturas_proveedor_detalles.IMPORTE_UNIDAD * (facturas_proveedor_detalles.DESCUENTO / 100))) AS IMPORTE_NETO_COMPRA,
|
avg(facturas_proveedor_detalles.IMPORTE_UNIDAD - (facturas_proveedor_detalles.IMPORTE_UNIDAD * (facturas_proveedor_detalles.DESCUENTO / 100))) AS IMPORTE_NETO_COMPRA,
|
||||||
avg(facturas_proveedor_detalles.IMPORTE_PORTE) as IMPORTE_PORTE_COMPRA
|
avg(facturas_proveedor_detalles.IMPORTE_PORTE) as IMPORTE_PORTE_COMPRA
|
||||||
|
|
||||||
from facturas_proveedor_detalles
|
from facturas_proveedor_detalles
|
||||||
|
|
||||||
left outer join facturas_proveedor
|
left outer join facturas_proveedor
|
||||||
on (facturas_proveedor.id = facturas_proveedor_detalles.id_factura)
|
on (facturas_proveedor.id = facturas_proveedor_detalles.id_factura)
|
||||||
|
|
||||||
left outer join v_inf_fec_ultcom
|
|
||||||
on (v_inf_fec_ultcom.id_empresa = facturas_proveedor.id_empresa)
|
|
||||||
and (v_inf_fec_ultcom.id_articulo = facturas_proveedor_detalles.id_articulo)
|
|
||||||
|
|
||||||
WHERE (facturas_proveedor_detalles.ID_ARTICULO IS NOT NULL) AND (facturas_proveedor_detalles.ID_ARTICULO > 0) /*Quitamos conceptos libres*/
|
WHERE (facturas_proveedor_detalles.ID_ARTICULO IS NOT NULL) AND (facturas_proveedor_detalles.ID_ARTICULO > 0) /*Quitamos conceptos libres*/
|
||||||
and (facturas_proveedor_detalles.cantidad > 0) /*Quitamos los abonos*/
|
and (facturas_proveedor_detalles.cantidad > 0) /*Quitamos los abonos*/
|
||||||
|
group by 1,2,3,4
|
||||||
|
|
||||||
|
union
|
||||||
|
/*Se hace la unión con la vista de fecha de ultima compra de cada articulo y empresa poniendo un parametro a 1 para cuando se agrupen saber que es la última compra*/
|
||||||
|
/*todo articulo tendrá ultima compra ya que tiramos de facturas de proveedor*/
|
||||||
|
select v_inf_fec_ultcom.id_empresa, v_inf_fec_ultcom.id_articulo, 1, v_inf_fec_ultcom.fecha, 0,0,0
|
||||||
|
from v_inf_fec_ultcom
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
/*finalmente se hace la grupacion de la unión y se suma para el tema del parametro de ultima compra, quitamos las compras de articulos con parametro 0 ya que son compras antiguas*/
|
||||||
|
group by 1,2,3
|
||||||
|
having (sum(ult_com)=1);
|
||||||
|
|
||||||
and (facturas_proveedor.FECHA_FACTURA = v_inf_fec_ultcom.fecha) /*nos quedamos con las ultimas compras*/
|
|
||||||
|
|
||||||
group by 1, 2
|
|
||||||
;
|
|
||||||
|
|
||||||
CREATE VIEW V_INF_ULTCOM_PORARTICULO(
|
CREATE VIEW V_INF_ULTCOM_PORARTICULO(
|
||||||
ID_EMPRESA,
|
ID_EMPRESA,
|
||||||
|
|||||||
Reference in New Issue
Block a user