Finalización del modulo de informes
git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES/trunk@123 c93665c3-c93d-084d-9b98-7d5f4a9c3376
This commit is contained in:
parent
211a73b55b
commit
85ce477aed
Binary file not shown.
6111
Build/buildlog.html
6111
Build/buildlog.html
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@ -2,10 +2,18 @@ DROP VIEW V_VENTAS_ARTICULOS;
|
||||
|
||||
|
||||
DROP VIEW V_INF_VENTAS_ARTICULOS;
|
||||
|
||||
DROP VIEW V_INF_MARGEN_VENTAS_ARTICULOS;
|
||||
DROP VIEW V_INF_ULTIMA_COMPRA;
|
||||
|
||||
DROP VIEW V_INF_MARGEN_ARTICULOS;
|
||||
DROP VIEW V_INF_MARGEN_COMPRAS;
|
||||
DROP VIEW V_INF_MARGEN_VENTAS;
|
||||
DROP VIEW V_INF_PROMEDIO_COMPRA;
|
||||
DROP VIEW V_INF_PROMEDIO_VENTA;
|
||||
DROP VIEW V_INF_ULTIMA_COMPRA;
|
||||
DROP VIEW V_INF_ULTIMA_VENTA;
|
||||
DROP VIEW V_INF_FEC_ULTIMA_COMPRA;
|
||||
DROP VIEW V_INF_FEC_ULTIMA_VENTA;
|
||||
|
||||
|
||||
DROP VIEW V_INV_DETALLE_RESERVAS;
|
||||
@ -2273,34 +2281,33 @@ and (facturas_proveedor_detalles.cantidad > 0)
|
||||
|
||||
group by
|
||||
facturas_proveedor.ID_EMPRESA,
|
||||
facturas_proveedor_detalles.ID_ARTICULO
|
||||
;
|
||||
facturas_proveedor_detalles.ID_ARTICULO;
|
||||
|
||||
|
||||
CREATE VIEW V_INF_PROMEDIO_COMPRA(
|
||||
CREATE VIEW V_INF_FEC_ULTIMA_VENTA(
|
||||
ID_EMPRESA,
|
||||
ID_CLIENTE,
|
||||
ID_ARTICULO,
|
||||
IMPORTE_UNIDAD_COMPRA,
|
||||
IMPORTE_NETO_COMPRA,
|
||||
IMPORTE_PORTE_COMPRA)
|
||||
FECHA)
|
||||
AS
|
||||
select
|
||||
facturas_proveedor.id_empresa,
|
||||
facturas_proveedor_detalles.ID_ARTICULO,
|
||||
facturas_cliente.ID_EMPRESA,
|
||||
facturas_cliente.ID_CLIENTE,
|
||||
facturas_cliente_detalles.ID_ARTICULO,
|
||||
max(facturas_cliente.FECHA_FACTURA)
|
||||
|
||||
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_PORTE) as IMPORTE_PORTE_COMPRA
|
||||
from facturas_cliente_detalles
|
||||
left join facturas_cliente
|
||||
on (facturas_cliente.id = facturas_cliente_detalles.id_factura)
|
||||
WHERE (ID_ARTICULO IS NOT NULL)
|
||||
AND (ID_ARTICULO > 0)
|
||||
and (facturas_cliente_detalles.cantidad > 0)
|
||||
|
||||
from facturas_proveedor_detalles
|
||||
group by
|
||||
facturas_cliente.ID_EMPRESA,
|
||||
facturas_cliente.ID_CLIENTE,
|
||||
facturas_cliente_detalles.ID_ARTICULO;
|
||||
|
||||
left outer join facturas_proveedor
|
||||
on (facturas_proveedor.id = facturas_proveedor_detalles.id_factura)
|
||||
|
||||
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*/
|
||||
|
||||
group by 1, 2;
|
||||
|
||||
CREATE VIEW V_INF_ULTIMA_COMPRA(
|
||||
ID_EMPRESA,
|
||||
@ -2334,71 +2341,208 @@ and (facturas_proveedor.FECHA_FACTURA = v_inf_fec_ultima_compra.fecha) /*nos que
|
||||
group by 1, 2;
|
||||
|
||||
|
||||
CREATE VIEW V_INF_MARGEN_VENTAS_ARTICULOS(
|
||||
ID_FACTURA,
|
||||
CREATE VIEW V_INF_ULTIMA_VENTA(
|
||||
ID_EMPRESA,
|
||||
REFERENCIA_FACTURA,
|
||||
FECHA_FACTURA,
|
||||
IMPORTE_TOTAL_FACTURA,
|
||||
ID_COMISION_FACTURA,
|
||||
ID_CLIENTE,
|
||||
ID_ARTICULO,
|
||||
IMPORTE_UNIDAD_VENTA,
|
||||
IMPORTE_NETO_VENTA,
|
||||
IMPORTE_PORTE_VENTA)
|
||||
AS
|
||||
select
|
||||
facturas_cliente.id_empresa,
|
||||
facturas_cliente.id_cliente,
|
||||
facturas_cliente_detalles.ID_ARTICULO,
|
||||
|
||||
avg(facturas_cliente_detalles.IMPORTE_UNIDAD) as IMPORTE_UNIDAD_VENTA,
|
||||
avg(facturas_cliente_detalles.IMPORTE_UNIDAD - (facturas_cliente_detalles.IMPORTE_UNIDAD * (facturas_cliente_detalles.DESCUENTO / 100))) AS IMPORTE_NETO_VENTA,
|
||||
avg(facturas_cliente_detalles.IMPORTE_PORTE) as IMPORTE_PORTE_VENTA
|
||||
|
||||
from facturas_cliente_detalles
|
||||
|
||||
left outer join facturas_cliente
|
||||
on (facturas_cliente.id = facturas_cliente_detalles.id_factura)
|
||||
|
||||
left outer join v_inf_fec_ultima_venta
|
||||
on (v_inf_fec_ultima_venta.id_empresa = facturas_cliente.id_empresa)
|
||||
and (v_inf_fec_ultima_venta.id_cliente = facturas_cliente.id_cliente)
|
||||
and (v_inf_fec_ultima_venta.id_articulo = facturas_cliente_detalles.id_articulo)
|
||||
|
||||
WHERE (facturas_cliente_detalles.ID_ARTICULO IS NOT NULL) AND (facturas_cliente_detalles.ID_ARTICULO > 0) /*Quitamos conceptos libres*/
|
||||
and (facturas_cliente_detalles.cantidad > 0) /*Quitamos los abonos*/
|
||||
and (facturas_cliente.FECHA_FACTURA = v_inf_fec_ultima_venta.fecha) /*nos quedamos con las ultimas compras*/
|
||||
|
||||
group by 1, 2, 3;
|
||||
|
||||
|
||||
CREATE VIEW V_INF_PROMEDIO_COMPRA(
|
||||
ID_EMPRESA,
|
||||
ID_ARTICULO,
|
||||
IMPORTE_UNIDAD_COMPRA,
|
||||
IMPORTE_NETO_COMPRA,
|
||||
IMPORTE_PORTE_COMPRA)
|
||||
AS
|
||||
select
|
||||
facturas_proveedor.id_empresa,
|
||||
facturas_proveedor_detalles.ID_ARTICULO,
|
||||
|
||||
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_PORTE) as IMPORTE_PORTE_COMPRA
|
||||
|
||||
from facturas_proveedor_detalles
|
||||
|
||||
left outer join facturas_proveedor
|
||||
on (facturas_proveedor.id = facturas_proveedor_detalles.id_factura)
|
||||
|
||||
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*/
|
||||
|
||||
group by 1, 2;
|
||||
|
||||
|
||||
CREATE VIEW V_INF_PROMEDIO_VENTA(
|
||||
ID_EMPRESA,
|
||||
ID_CLIENTE,
|
||||
ID_ARTICULO,
|
||||
IMPORTE_UNIDAD_VENTA,
|
||||
IMPORTE_NETO_VENTA,
|
||||
IMPORTE_PORTE_VENTA)
|
||||
AS
|
||||
select
|
||||
facturas_cliente.id_empresa,
|
||||
facturas_cliente.id_cliente,
|
||||
facturas_cliente_detalles.ID_ARTICULO,
|
||||
|
||||
avg(facturas_cliente_detalles.IMPORTE_UNIDAD) as IMPORTE_UNIDAD_VENTA,
|
||||
avg(facturas_cliente_detalles.IMPORTE_UNIDAD - (facturas_cliente_detalles.IMPORTE_UNIDAD * (facturas_cliente_detalles.DESCUENTO / 100))) AS IMPORTE_NETO_VENTA,
|
||||
avg(facturas_cliente_detalles.IMPORTE_PORTE) as IMPORTE_PORTE_VENTA
|
||||
|
||||
from facturas_cliente_detalles
|
||||
|
||||
left outer join facturas_cliente
|
||||
on (facturas_cliente.id = facturas_cliente_detalles.id_factura)
|
||||
|
||||
WHERE (facturas_cliente_detalles.ID_ARTICULO IS NOT NULL) AND (facturas_cliente_detalles.ID_ARTICULO > 0) /*Quitamos conceptos libres*/
|
||||
and (facturas_cliente_detalles.cantidad > 0) /*Quitamos los abonos*/
|
||||
|
||||
group by 1, 2, 3;
|
||||
|
||||
|
||||
CREATE VIEW V_INF_MARGEN_COMPRAS(
|
||||
ID_EMPRESA,
|
||||
ID_ARTICULO,
|
||||
IMPORTE_UNIDAD_ULT_COMP,
|
||||
IMPORTE_NETO_ULT_COMP,
|
||||
IMPORTE_PORTE_ULT_COMP,
|
||||
IMPORTE_UNIDAD_PRO_COMP,
|
||||
IMPORTE_NETO_PRO_COMP,
|
||||
IMPORTE_PORTE_PRO_COMP)
|
||||
AS
|
||||
select ID_EMPRESA, ID_ARTICULO, COALESCE(SUM(IMPORTE_UNIDAD_ULT_COMP),0), COALESCE(SUM(IMPORTE_NETO_ULT_COMP),0), COALESCE(SUM(IMPORTE_PORTE_ULT_COMP),0),
|
||||
COALESCE(SUM(IMPORTE_UNIDAD_PRO_COMP),0), COALESCE(SUM(IMPORTE_NETO_PRO_COMP),0), COALESCE(SUM(IMPORTE_PORTE_PRO_COMP),0)
|
||||
|
||||
from
|
||||
(select ID_EMPRESA, ID_ARTICULO,
|
||||
IMPORTE_UNIDAD_COMPRA as IMPORTE_UNIDAD_ULT_COMP, IMPORTE_NETO_COMPRA as IMPORTE_NETO_ULT_COMP, IMPORTE_PORTE_COMPRA as IMPORTE_PORTE_ULT_COMP,
|
||||
null as IMPORTE_UNIDAD_PRO_COMP, null as IMPORTE_NETO_PRO_COMP, null as IMPORTE_PORTE_PRO_COMP
|
||||
from v_inf_ultima_compra
|
||||
|
||||
union all
|
||||
|
||||
select ID_EMPRESA, ID_ARTICULO,
|
||||
null, null, null,
|
||||
IMPORTE_UNIDAD_COMPRA as IMPORTE_UNIDAD_PRO_COMP, IMPORTE_NETO_COMPRA as IMPORTE_NETO_PRO_COMP, IMPORTE_PORTE_COMPRA as IMPORTE_PORTE_PRO_COMP
|
||||
from v_inf_promedio_compra)
|
||||
|
||||
GROUP BY 1, 2;
|
||||
|
||||
|
||||
CREATE VIEW V_INF_MARGEN_VENTAS(
|
||||
ID_EMPRESA,
|
||||
ID_CLIENTE,
|
||||
ID_ARTICULO,
|
||||
IMPORTE_UNIDAD_ULT_VENT,
|
||||
IMPORTE_NETO_ULT_VENT,
|
||||
IMPORTE_PORTE_ULT_VENT,
|
||||
IMPORTE_UNIDAD_PRO_VENT,
|
||||
IMPORTE_NETO_PRO_VENT,
|
||||
IMPORTE_PORTE_PRO_VENT)
|
||||
AS
|
||||
select ID_EMPRESA, ID_CLIENTE, ID_ARTICULO, COALESCE(SUM(IMPORTE_UNIDAD_ULT_VENT),0), COALESCE(SUM(IMPORTE_NETO_ULT_VENT),0), COALESCE(SUM(IMPORTE_PORTE_ULT_VENT),0), COALESCE(SUM(IMPORTE_UNIDAD_PRO_VENT),0),
|
||||
COALESCE(SUM(IMPORTE_NETO_PRO_VENT),0), COALESCE(SUM(IMPORTE_PORTE_PRO_VENT),0)
|
||||
|
||||
from
|
||||
|
||||
(select ID_EMPRESA, ID_CLIENTE, ID_ARTICULO,
|
||||
IMPORTE_UNIDAD_VENTA as IMPORTE_UNIDAD_ULT_VENT, IMPORTE_NETO_VENTA as IMPORTE_NETO_ULT_VENT, IMPORTE_PORTE_VENTA as IMPORTE_PORTE_ULT_VENT,
|
||||
null as IMPORTE_UNIDAD_PRO_VENT, null as IMPORTE_NETO_PRO_VENT, null as IMPORTE_PORTE_PRO_VENT
|
||||
from v_inf_ultima_venta
|
||||
|
||||
union all
|
||||
|
||||
select ID_EMPRESA, ID_CLIENTE, ID_ARTICULO,
|
||||
null, null, null,
|
||||
IMPORTE_UNIDAD_VENTA as IMPORTE_UNIDAD_PRO_VENT, IMPORTE_NETO_VENTA as IMPORTE_NETO_PRO_VENT, IMPORTE_PORTE_VENTA as IMPORTE_PORTE_PRO_VENT
|
||||
from v_inf_promedio_venta)
|
||||
|
||||
GROUP BY 1, 2, 3;
|
||||
|
||||
|
||||
CREATE VIEW V_INF_MARGEN_ARTICULOS(
|
||||
ID_EMPRESA,
|
||||
ID_CLIENTE,
|
||||
ID_ARTICULO,
|
||||
NIF_CIF_CLIENTE,
|
||||
NOMBRE_CLIENTE,
|
||||
NOMBRE_COMERCIAL_CLIENTE,
|
||||
NIF_CIF_AGENTE,
|
||||
NOMBRE_AGENTE,
|
||||
FAMILIA,
|
||||
REFERENCIA,
|
||||
REFERENCIA_PROV,
|
||||
DESCRIPCION,
|
||||
COMISIONABLE,
|
||||
INVENTARIABLE,
|
||||
IMPORTE_UNIDAD_COSTE,
|
||||
DESCUENTO_PROVEEDOR_COSTE,
|
||||
IMPORTE_NETO_COSTE,
|
||||
IMPORTE_PORTE_COSTE,
|
||||
IMPORTE_UNIDAD_ULTIMA_COMPRA,
|
||||
IMPORTE_NETO_ULTIMA_COMPRA,
|
||||
IMPORTE_PORTE_ULTIMA_COMPRA,
|
||||
IMPORTE_UNIDAD_PROMEDIO_COMPRA,
|
||||
IMPORTE_NETO_PROMEDIO_COMPRA,
|
||||
IMPORTE_PORTE_PROMEDIO_COMPRA,
|
||||
CANTIDAD,
|
||||
IMPORTE_UNIDAD_VENTA,
|
||||
DESCUENTO_CLIENTE_VENTA,
|
||||
IMPORTE_NETO_VENTA,
|
||||
IMPORTE_PORTE_VENTA,
|
||||
IMPORTE_TOTAL_VENTA,
|
||||
IMPORTE_MARGEN_COSTE,
|
||||
PORCENTAJE_MARGEN_COSTE,
|
||||
IMPORTE_MARGEN_ULT_COMPRA,
|
||||
PORCENTAJE_MARGEN_ULT_COMPRA,
|
||||
IMPORTE_MARGEN_PROM_COMPRA,
|
||||
PORCENTAJE_MARGEN_PROM_COMPRA,
|
||||
NIF_CIF_PROVEEDOR,
|
||||
NOMBRE_PROVEEDOR,
|
||||
CALLE_PROVEEDOR,
|
||||
POBLACION_PROVEEDOR,
|
||||
PROVINCIA_PROVEEDOR,
|
||||
NIF_CIF_CLIENTE,
|
||||
NOMBRE_CLIENTE,
|
||||
NOMBRE_COMERCIAL_CLIENTE,
|
||||
CALLE_CLIENTE,
|
||||
POBLACION_CLIENTE,
|
||||
PROVINCIA_CLIENTE,
|
||||
NIF_CIF_AGENTE,
|
||||
NOMBRE_AGENTE,
|
||||
CALLE_AGENTE,
|
||||
POBLACION_AGENTE,
|
||||
PROVINCIA_AGENTE,
|
||||
COMISION_AGENTE,
|
||||
IMPORTE_COMISION_AGENTE)
|
||||
IMP_UNIDAD_ULT_VENT,
|
||||
IMP_NETO_ULT_VENT,
|
||||
IMP_PORTE_ULT_VENT,
|
||||
IMP_UNIDAD_PRO_VENT,
|
||||
IMP_NETO_PRO_VENT,
|
||||
IMP_PORTE_PRO_VENT,
|
||||
IMP_UNIDAD_COMPRA,
|
||||
IMP_NETO_COMPRA,
|
||||
IMP_PORTE_COMPRA,
|
||||
IMP_UNIDAD_ULT_COMP,
|
||||
IMP_NETO_ULT_COMP,
|
||||
IMP_PORTE_ULT_COMP,
|
||||
IMP_UNIDAD_PRO_COMP,
|
||||
IMP_NETO_PRO_COMP,
|
||||
IMP_PORTE_PRO_COMP,
|
||||
IMP_MARGEN_ULT_VENT_COMPRA,
|
||||
POR_MARGEN_ULT_VENT_COMPRA,
|
||||
IMP_MARGEN_ULT_VENT_ULT_COMP,
|
||||
POR_MARGEN_ULT_VENT_ULT_COMP,
|
||||
IMP_MARGEN_ULT_VENT_PRO_COMP,
|
||||
POR_MARGEN_ULT_VENT_PRO_COMP,
|
||||
IMP_MARGEN_PRO_VENT_COMPRA,
|
||||
POR_MARGEN_PRO_VENT_COMPRA,
|
||||
IMP_MARGEN_PRO_VENT_ULT_COMP,
|
||||
POR_MARGEN_PRO_VENT_ULT_COMP,
|
||||
IMP_MARGEN_PRO_VENT_PRO_COMP,
|
||||
POR_MARGEN_PRO_VENT_PRO_COMP)
|
||||
AS
|
||||
|
||||
select
|
||||
FACTURAS_CLIENTE.ID,
|
||||
FACTURAS_CLIENTE.ID_EMPRESA,
|
||||
FACTURAS_CLIENTE.REFERENCIA,
|
||||
FACTURAS_CLIENTE.FECHA_FACTURA,
|
||||
FACTURAS_CLIENTE.IMPORTE_TOTAL,
|
||||
FACTURAS_CLIENTE.ID_COMISION_LIQUIDADA,
|
||||
V_INF_MARGEN_VENTAS.id_empresa,
|
||||
V_INF_MARGEN_VENTAS.id_cliente,
|
||||
V_INF_MARGEN_VENTAS.id_articulo,
|
||||
|
||||
FACTURAS_CLIENTE_DETALLES.ID_ARTICULO,
|
||||
CLIENTES.NIF_CIF,
|
||||
CLIENTES.NOMBRE,
|
||||
CLIENTES_DATOS.NOMBRE_COMERCIAL,
|
||||
|
||||
AGENTES.NIF_CIF,
|
||||
AGENTES.NOMBRE,
|
||||
|
||||
ARTICULOS.FAMILIA,
|
||||
ARTICULOS.REFERENCIA,
|
||||
@ -2407,95 +2551,101 @@ ARTICULOS.DESCRIPCION,
|
||||
ARTICULOS.COMISIONABLE,
|
||||
ARTICULOS.INVENTARIABLE,
|
||||
|
||||
ARTICULOS.PRECIO_COSTE,
|
||||
ARTICULOS.DESCUENTO,
|
||||
ARTICULOS.PRECIO_NETO,
|
||||
ARTICULOS.PRECIO_PORTE,
|
||||
COALESCE(V_INF_MARGEN_VENTAS.importe_unidad_ult_vent, 0),
|
||||
COALESCE(V_INF_MARGEN_VENTAS.importe_neto_ult_vent, 0),
|
||||
COALESCE(V_INF_MARGEN_VENTAS.importe_porte_ult_vent, 0),
|
||||
|
||||
V_INF_ULTIMA_COMPRA.importe_unidad_compra,
|
||||
V_INF_ULTIMA_COMPRA.importe_neto_compra,
|
||||
V_INF_ULTIMA_COMPRA.importe_porte_compra,
|
||||
COALESCE(V_INF_MARGEN_VENTAS.importe_unidad_pro_vent, 0),
|
||||
COALESCE(V_INF_MARGEN_VENTAS.importe_neto_pro_vent, 0),
|
||||
COALESCE(V_INF_MARGEN_VENTAS.importe_porte_pro_vent, 0),
|
||||
|
||||
V_INF_PROMEDIO_COMPRA.importe_unidad_compra,
|
||||
V_INF_PROMEDIO_COMPRA.importe_neto_compra,
|
||||
V_INF_PROMEDIO_COMPRA.importe_porte_compra,
|
||||
COALESCE(ARTICULOS.PRECIO_COSTE, 0),
|
||||
COALESCE(ARTICULOS.PRECIO_NETO, 0),
|
||||
COALESCE(ARTICULOS.PRECIO_PORTE, 0),
|
||||
|
||||
FACTURAS_CLIENTE_DETALLES.CANTIDAD,
|
||||
FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD as importe_unidad_venta,
|
||||
FACTURAS_CLIENTE_DETALLES.DESCUENTO,
|
||||
FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100)) as importe_neto_venta,
|
||||
FACTURAS_CLIENTE_DETALLES.IMPORTE_PORTE as importe_porte_venta,
|
||||
FACTURAS_CLIENTE_DETALLES.IMPORTE_TOTAL,
|
||||
COALESCE(V_INF_MARGEN_COMPRAS.importe_unidad_ult_comp, 0),
|
||||
COALESCE(V_INF_MARGEN_COMPRAS.importe_neto_ult_comp, 0),
|
||||
COALESCE(V_INF_MARGEN_COMPRAS.importe_porte_ult_comp, 0),
|
||||
|
||||
(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100))) - ARTICULOS.PRECIO_NETO as importe_margen_compra,
|
||||
CASE WHEN (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100))) - ARTICULOS.PRECIO_NETO > 0
|
||||
THEN
|
||||
(ARTICULOS.PRECIO_NETO * 100) / (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100)))
|
||||
else
|
||||
0
|
||||
COALESCE(V_INF_MARGEN_COMPRAS.importe_unidad_pro_comp, 0),
|
||||
COALESCE(V_INF_MARGEN_COMPRAS.importe_neto_pro_comp, 0),
|
||||
COALESCE(V_INF_MARGEN_COMPRAS.importe_porte_pro_comp, 0),
|
||||
|
||||
|
||||
/*MARGEN CON ULTIMA VENTA*/
|
||||
|
||||
V_INF_MARGEN_VENTAS.importe_neto_ult_vent - ARTICULOS.PRECIO_NETO as imp_margen_ult_vent_compra,
|
||||
CASE
|
||||
WHEN ARTICULOS.PRECIO_NETO = 0 THEN 100
|
||||
WHEN (V_INF_MARGEN_VENTAS.importe_neto_ult_vent - ARTICULOS.PRECIO_NETO) > 0 THEN
|
||||
(ARTICULOS.PRECIO_NETO * 100) / V_INF_MARGEN_VENTAS.importe_neto_ult_vent
|
||||
ELSE 0
|
||||
END
|
||||
as porcentaje_margen_compra,
|
||||
as por_margen_ult_vent_compra,
|
||||
|
||||
(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100))) - V_INF_ULTIMA_COMPRA.importe_neto_compra as importe_margen_ultima_compra,
|
||||
CASE WHEN (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100))) - V_INF_ULTIMA_COMPRA.importe_neto_compra > 0
|
||||
THEN
|
||||
(V_INF_ULTIMA_COMPRA.importe_neto_compra * 100) /(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100)))
|
||||
ELSE
|
||||
0
|
||||
V_INF_MARGEN_VENTAS.importe_neto_ult_vent - V_INF_MARGEN_COMPRAS.importe_neto_ult_comp as imp_margen_ult_vent_ult_comp,
|
||||
CASE
|
||||
WHEN V_INF_MARGEN_COMPRAS.importe_neto_ult_comp = 0 THEN 100
|
||||
WHEN (V_INF_MARGEN_VENTAS.importe_neto_ult_vent - V_INF_MARGEN_COMPRAS.importe_neto_ult_comp) > 0 THEN
|
||||
(V_INF_MARGEN_COMPRAS.importe_neto_ult_comp * 100) / V_INF_MARGEN_VENTAS.importe_neto_ult_vent
|
||||
ELSE 0
|
||||
END
|
||||
as porcentaje_margen_ultima_compra,
|
||||
as por_margen_ult_vent_ult_comp,
|
||||
|
||||
(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100))) - V_INF_PROMEDIO_COMPRA.importe_neto_compra as importe_margen_promedio_compra,
|
||||
CASE WHEN (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100))) - V_INF_PROMEDIO_COMPRA.importe_neto_compra > 0
|
||||
THEN
|
||||
(V_INF_PROMEDIO_COMPRA.importe_neto_compra * 100) /(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETALLES.DESCUENTO/100)))
|
||||
ELSE
|
||||
0
|
||||
V_INF_MARGEN_VENTAS.importe_neto_ult_vent - V_INF_MARGEN_COMPRAS.importe_neto_pro_comp as imp_margen_ult_vent_pro_comp,
|
||||
CASE
|
||||
WHEN V_INF_MARGEN_COMPRAS.importe_neto_pro_comp = 0 THEN 100
|
||||
WHEN (V_INF_MARGEN_VENTAS.importe_neto_ult_vent - V_INF_MARGEN_COMPRAS.importe_neto_pro_comp) > 0 THEN
|
||||
(V_INF_MARGEN_COMPRAS.importe_neto_pro_comp * 100) / V_INF_MARGEN_VENTAS.importe_neto_ult_vent
|
||||
ELSE 0
|
||||
END
|
||||
as porcentaje_promedio_compra,
|
||||
|
||||
PROVEEDORES.NIF_CIF,
|
||||
PROVEEDORES.NOMBRE,
|
||||
PROVEEDORES.CALLE,
|
||||
PROVEEDORES.POBLACION,
|
||||
PROVEEDORES.PROVINCIA,
|
||||
|
||||
CLIENTES.NIF_CIF,
|
||||
CLIENTES.NOMBRE,
|
||||
CLIENTES_DATOS.NOMBRE_COMERCIAL,
|
||||
CLIENTES.CALLE,
|
||||
CLIENTES.POBLACION,
|
||||
CLIENTES.PROVINCIA,
|
||||
|
||||
AGENTES.NIF_CIF,
|
||||
AGENTES.NOMBRE,
|
||||
AGENTES.CALLE,
|
||||
AGENTES.POBLACION,
|
||||
AGENTES.PROVINCIA,
|
||||
|
||||
COALESCE(AGENTES_COMISIONES.COMISION, 0) AS COMISION,
|
||||
|
||||
(CASE COALESCE(AGENTES_COMISIONES.COMISION, 0) WHEN 0 THEN 0
|
||||
ELSE ((FACTURAS_CLIENTE_DETALLES.IMPORTE_TOTAL * AGENTES_COMISIONES.COMISION)/100) END) as IMPORTE_COMISION
|
||||
as por_margen_ult_vent_pro_comp,
|
||||
|
||||
|
||||
from FACTURAS_CLIENTE_DETALLES
|
||||
left join V_INF_ULTIMA_COMPRA on (V_INF_ULTIMA_COMPRA.ID_ARTICULO = FACTURAS_CLIENTE_DETALLES.ID_ARTICULO)
|
||||
left join V_INF_PROMEDIO_COMPRA on (V_INF_PROMEDIO_COMPRA.ID_ARTICULO = FACTURAS_CLIENTE_DETALLES.ID_ARTICULO)
|
||||
left join ARTICULOS on (ARTICULOS.ID = FACTURAS_CLIENTE_DETALLES.ID_ARTICULO)
|
||||
left join CONTACTOS PROVEEDORES on (PROVEEDORES.ID = ARTICULOS.ID_PROVEEDOR)
|
||||
left join FACTURAS_CLIENTE on (FACTURAS_CLIENTE.ID = FACTURAS_CLIENTE_DETALLES.ID_FACTURA)
|
||||
left join CONTACTOS CLIENTES on (CLIENTES.ID = FACTURAS_CLIENTE.ID_CLIENTE)
|
||||
/*MARGEN CON VENTAS PROMEDIO*/
|
||||
|
||||
V_INF_MARGEN_VENTAS.importe_neto_pro_vent - ARTICULOS.PRECIO_NETO as imp_margen_pro_vent_compra,
|
||||
CASE
|
||||
WHEN ARTICULOS.PRECIO_NETO = 0 THEN 100
|
||||
WHEN (V_INF_MARGEN_VENTAS.importe_neto_pro_vent - ARTICULOS.PRECIO_NETO) > 0 THEN
|
||||
(ARTICULOS.PRECIO_NETO * 100) / V_INF_MARGEN_VENTAS.importe_neto_pro_vent
|
||||
ELSE 0
|
||||
END
|
||||
as por_margen_pro_vent_compra,
|
||||
|
||||
V_INF_MARGEN_VENTAS.importe_neto_pro_vent - V_INF_MARGEN_COMPRAS.importe_neto_ult_comp as imp_margen_pro_vent_ult_comp,
|
||||
CASE
|
||||
WHEN V_INF_MARGEN_COMPRAS.importe_neto_ult_comp = 0 THEN 100
|
||||
WHEN (V_INF_MARGEN_VENTAS.importe_neto_pro_vent - V_INF_MARGEN_COMPRAS.importe_neto_ult_comp) > 0 THEN
|
||||
(V_INF_MARGEN_COMPRAS.importe_neto_ult_comp * 100) / V_INF_MARGEN_VENTAS.importe_neto_pro_vent
|
||||
ELSE 0
|
||||
END
|
||||
as por_margen_pro_vent_ult_comp,
|
||||
|
||||
V_INF_MARGEN_VENTAS.importe_neto_pro_vent - V_INF_MARGEN_COMPRAS.importe_neto_pro_comp as imp_margen_pro_vent_pro_comp,
|
||||
CASE
|
||||
WHEN V_INF_MARGEN_COMPRAS.importe_neto_pro_comp = 0 THEN 100
|
||||
WHEN (V_INF_MARGEN_VENTAS.importe_neto_pro_vent - V_INF_MARGEN_COMPRAS.importe_neto_pro_comp) > 0 THEN
|
||||
(V_INF_MARGEN_COMPRAS.importe_neto_pro_comp * 100) / V_INF_MARGEN_VENTAS.importe_neto_pro_vent
|
||||
ELSE 0
|
||||
END
|
||||
as por_margen_pro_vent_pro_comp
|
||||
|
||||
|
||||
from V_INF_MARGEN_VENTAS
|
||||
|
||||
left join v_inf_margen_compras
|
||||
on (v_inf_margen_compras.id_empresa = v_INF_MARGEN_ventas.id_empresa)
|
||||
and (v_inf_margen_compras.id_articulo = v_INF_MARGEN_ventas.id_articulo)
|
||||
|
||||
left join ARTICULOS
|
||||
on (ARTICULOS.ID = v_INF_MARGEN_ventas.id_articulo)
|
||||
|
||||
left join CONTACTOS CLIENTES on (CLIENTES.ID = V_INF_MARGEN_VENTAS.ID_CLIENTE)
|
||||
left join CLIENTES_DATOS on (CLIENTES_DATOS.ID_CLIENTE = CLIENTES.ID)
|
||||
left join CONTACTOS AGENTES on (AGENTES.ID = CLIENTES_DATOS.ID_AGENTE)
|
||||
left join AGENTES_COMISIONES
|
||||
on ((AGENTES_COMISIONES.ID_AGENTE = AGENTES.ID) and (AGENTES_COMISIONES.ID_PROVEEDOR = PROVEEDORES.ID))
|
||||
|
||||
where (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO is not null) and (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO > 0) /*Quitamos conceptos libres*/
|
||||
and (FACTURAS_CLIENTE_DETALLES.cantidad > 0) /*Quitamos los abonos*/
|
||||
and (ARTICULOS.INVENTARIABLE = 1); /*Solo nos quedamos con los inventariables*/
|
||||
|
||||
|
||||
where (ARTICULOS.INVENTARIABLE = 1);
|
||||
|
||||
|
||||
/* Al igual que en Varela tendremos esta vista para hacer todos los informes que queramos de ventas, ya que estará desglosado por artículo */
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user