made a copy
git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES/trunk@145 c93665c3-c93d-084d-9b98-7d5f4a9c3376
This commit is contained in:
commit
b557eb4781
@ -87,99 +87,103 @@ object srvInfMargenArticulo: TsrvInfMargenArticulo
|
||||
'ARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - ARTICULOS.PRECIO_NETO AS IM' +
|
||||
'P_MARGEN_ULT_VENT_COMPRA,'#10'CASE'#10'WHEN ARTICULOS.PRECIO_NETO = 0 T' +
|
||||
'HEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - ARTICULOS.PR' +
|
||||
'ECIO_NETO) > 0 THEN'#10' (ARTICULOS.PRECIO_NETO * 100) / MARGEN_' +
|
||||
'VENTAS.IMPORTE_NETO_ULT_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_ULT_VENT_C' +
|
||||
'OMPRA,'#10#10'MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - MARGEN_COMPRAS.IMP' +
|
||||
'ORTE_NETO_ULT_COMP AS IMP_MARGEN_ULT_VENT_ULT_COMP,'#10'CASE'#10'WHEN M' +
|
||||
'ARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP = 0 THEN 100'#10'WHEN (MARGEN_VE' +
|
||||
'NTAS.IMPORTE_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_ULT_COM' +
|
||||
'P) > 0 THEN'#10' (MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP * 100) / ' +
|
||||
'MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_ULT' +
|
||||
'_VENT_ULT_COMP,'#10#10'MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - MARGEN_CO' +
|
||||
'MPRAS.IMPORTE_NETO_PRO_COMP AS IMP_MARGEN_ULT_VENT_PRO_COMP,'#10'CAS' +
|
||||
'E'#10'WHEN MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP = 0 THEN 100'#10'WHEN (' +
|
||||
'MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NET' +
|
||||
'O_PRO_COMP) > 0 THEN'#10' (MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP ' +
|
||||
'* 100) / MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT'#10'ELSE 0'#10'END'#10'AS POR_M' +
|
||||
'ARGEN_ULT_VENT_PRO_COMP,'#10#10#10#10'MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT ' +
|
||||
'- ARTICULOS.PRECIO_NETO AS IMP_MARGEN_PRO_VENT_COMPRA,'#10'CASE'#10'WHEN' +
|
||||
' ARTICULOS.PRECIO_NETO = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE' +
|
||||
'_NETO_PRO_VENT - ARTICULOS.PRECIO_NETO) > 0 THEN'#10' (ARTICULOS' +
|
||||
'.PRECIO_NETO * 100) / MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT'#10'ELSE 0' +
|
||||
#10'END'#10'AS POR_MARGEN_PRO_VENT_COMPRA,'#10#10'MARGEN_VENTAS.IMPORTE_NETO_' +
|
||||
'PRO_VENT - MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP AS IMP_MARGEN_PR' +
|
||||
'O_VENT_ULT_COMP,'#10'CASE'#10'WHEN MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP' +
|
||||
' = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN' +
|
||||
'_COMPRAS.IMPORTE_NETO_ULT_COMP) > 0 THEN'#10' (MARGEN_COMPRAS.IM' +
|
||||
'PORTE_NETO_ULT_COMP * 100) / MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT' +
|
||||
#10'ELSE 0'#10'END'#10'AS POR_MARGEN_PRO_VENT_ULT_COMP,'#10#10'MARGEN_VENTAS.IMPO' +
|
||||
'RTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP AS IMP_' +
|
||||
'MARGEN_PRO_VENT_PRO_COMP,'#10'CASE'#10'WHEN MARGEN_COMPRAS.IMPORTE_NETO' +
|
||||
'_PRO_COMP = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT' +
|
||||
' - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP) > 0 THEN'#10' (MARGEN_C' +
|
||||
'OMPRAS.IMPORTE_NETO_PRO_COMP * 100) / MARGEN_VENTAS.IMPORTE_NETO' +
|
||||
'_PRO_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_PRO_VENT_PRO_COMP'#10#10'FROM'#10#10#10'(SE' +
|
||||
'LECT ID_EMPRESA, ID_CLIENTE, ID_ARTICULO, COALESCE(SUM(IMPORTE_U' +
|
||||
'NIDAD_ULT_VENT),0) AS IMPORTE_UNIDAD_ULT_VENT,'#10' COALESCE(S' +
|
||||
'UM(IMPORTE_NETO_ULT_VENT),0) AS IMPORTE_NETO_ULT_VENT, COALESCE(' +
|
||||
'SUM(IMPORTE_PORTE_ULT_VENT),0) AS IMPORTE_PORTE_ULT_VENT,'#10' ' +
|
||||
' COALESCE(SUM(IMPORTE_UNIDAD_PRO_VENT),0) AS IMPORTE_UNIDAD_PRO_' +
|
||||
'VENT, COALESCE(SUM(IMPORTE_NETO_PRO_VENT),0) AS IMPORTE_NETO_PRO' +
|
||||
'_VENT,'#10' COALESCE(SUM(IMPORTE_PORTE_PRO_VENT),0) AS IMPORTE' +
|
||||
'_PORTE_PRO_VENT'#10#10' FROM'#10' (SELECT'#10' ID_EMPRESA, ID_CLIENTE, ' +
|
||||
'ID_ARTICULO,'#10' IMPORTE_UNIDAD_VENTA AS IMPORTE_UNIDAD_ULT_VE' +
|
||||
'NT, IMPORTE_NETO_VENTA AS IMPORTE_NETO_ULT_VENT, IMPORTE_PORTE_V' +
|
||||
'ENTA AS IMPORTE_PORTE_ULT_VENT,'#10' NULL AS IMPORTE_UNIDAD_PRO' +
|
||||
'_VENT, NULL AS IMPORTE_NETO_PRO_VENT, NULL AS IMPORTE_PORTE_PRO_' +
|
||||
'VENT'#10#10' FROM V_INF_ULTIMA_VENTA'#10#10' UNION ALL'#10#10' SELECT'#10' ' +
|
||||
' FACTURAS_CLIENTE.ID_EMPRESA,'#10' FACTURAS_CLIENTE.ID_CLIENT' +
|
||||
'E,'#10' FACTURAS_CLIENTE_DETALLES.ID_ARTICULO,'#10' NULL, NULL' +
|
||||
', NULL,'#10' AVG(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD) AS I' +
|
||||
'MPORTE_UNIDAD_PRO_VENT,'#10' AVG(FACTURAS_CLIENTE_DETALLES.IMPO' +
|
||||
'RTE_UNIDAD - (FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTUR' +
|
||||
'AS_CLIENTE_DETALLES.DESCUENTO / 100))) AS IMPORTE_NETO_PRO_VENT,' +
|
||||
#10' AVG(FACTURAS_CLIENTE_DETALLES.IMPORTE_PORTE) AS IMPORTE_P' +
|
||||
'ORTE_PRO_VENT'#10#10' FROM FACTURAS_CLIENTE_DETALLES'#10' LEFT OUTER' +
|
||||
' JOIN FACTURAS_CLIENTE'#10' ON (FACTURAS_CLIENTE.ID = FACTURAS_CL' +
|
||||
'IENTE_DETALLES.ID_FACTURA)'#10#10' WHERE (FACTURAS_CLIENTE_DETALLES' +
|
||||
'.ID_ARTICULO IS NOT NULL) AND (FACTURAS_CLIENTE_DETALLES.ID_ARTI' +
|
||||
'CULO > 0)'#10' AND (FACTURAS_CLIENTE_DETALLES.CANTIDAD > 0)'#10' ' +
|
||||
' AND (FACTURAS_CLIENTE.FECHA_FACTURA BETWEEN :FECHAINI AND :FE' +
|
||||
'CHAFIN)'#10' GROUP BY 1, 2, 3)'#10#10' GROUP BY 1, 2, 3) MARGEN_VENTAS'#10 +
|
||||
#10#10'LEFT JOIN'#10#10#10'(SELECT'#10' ID_EMPRESA, ID_ARTICULO, COALESCE(SUM(' +
|
||||
'IMPORTE_UNIDAD_ULT_COMP),0) AS IMPORTE_UNIDAD_ULT_COMP, COALESCE' +
|
||||
'(SUM(IMPORTE_NETO_ULT_COMP),0) AS IMPORTE_NETO_ULT_COMP,'#10' COA' +
|
||||
'LESCE(SUM(IMPORTE_PORTE_ULT_COMP),0) AS IMPORTE_PORTE_ULT_COMP, ' +
|
||||
'COALESCE(SUM(IMPORTE_UNIDAD_PRO_COMP),0) AS IMPORTE_UNIDAD_PRO_C' +
|
||||
'OMP,'#10' COALESCE(SUM(IMPORTE_NETO_PRO_COMP),0) AS IMPORTE_NETO_' +
|
||||
'PRO_COMP, COALESCE(SUM(IMPORTE_PORTE_PRO_COMP),0) AS IMPORTE_POR' +
|
||||
'TE_PRO_COMP'#10#10' FROM'#10' (SELECT'#10' ID_EMPRESA, ID_ARTICULO,'#10' ' +
|
||||
' IMPORTE_UNIDAD_COMPRA AS IMPORTE_UNIDAD_ULT_COMP, IMPORTE_NET' +
|
||||
'O_COMPRA AS IMPORTE_NETO_ULT_COMP, IMPORTE_PORTE_COMPRA AS IMPOR' +
|
||||
'TE_PORTE_ULT_COMP,'#10' NULL AS IMPORTE_UNIDAD_PRO_COMP, NULL A' +
|
||||
'S IMPORTE_NETO_PRO_COMP, NULL AS IMPORTE_PORTE_PRO_COMP'#10#10' FRO' +
|
||||
'M V_INF_ULTIMA_COMPRA'#10#10' UNION ALL'#10#10' SELECT'#10' FACTURAS_' +
|
||||
'PROVEEDOR.ID_EMPRESA,'#10' FACTURAS_PROVEEDOR_DETALLES.ID_ARTIC' +
|
||||
'ULO,'#10' NULL, NULL, NULL,'#10' AVG(FACTURAS_PROVEEDOR_DETALL' +
|
||||
'ES.IMPORTE_UNIDAD) AS IMPORTE_UNIDAD_PRO_COMP,'#10' AVG(FACTURA' +
|
||||
'S_PROVEEDOR_DETALLES.IMPORTE_UNIDAD - (FACTURAS_PROVEEDOR_DETALL' +
|
||||
'ES.IMPORTE_UNIDAD * (FACTURAS_PROVEEDOR_DETALLES.DESCUENTO / 100' +
|
||||
'))) AS IMPORTE_NETO_PRO_COMP,'#10' AVG(FACTURAS_PROVEEDOR_DETAL' +
|
||||
'LES.IMPORTE_PORTE) AS IMPORTE_PORTE_PRO_COMP'#10#10' FROM FACTURAS_' +
|
||||
'PROVEEDOR_DETALLES'#10' LEFT OUTER JOIN FACTURAS_PROVEEDOR'#10' ON' +
|
||||
' (FACTURAS_PROVEEDOR.ID = FACTURAS_PROVEEDOR_DETALLES.ID_FACTURA' +
|
||||
')'#10#10' WHERE (FACTURAS_PROVEEDOR_DETALLES.ID_ARTICULO IS NOT NUL' +
|
||||
'L) AND (FACTURAS_PROVEEDOR_DETALLES.ID_ARTICULO > 0)'#10' AND (' +
|
||||
'FACTURAS_PROVEEDOR_DETALLES.CANTIDAD > 0)'#10' AND (FACTURAS_PR' +
|
||||
'OVEEDOR.FECHA_FACTURA BETWEEN :FECHAINI AND :FECHAFIN)'#10' GROUP' +
|
||||
' BY 1, 2)'#10#10' GROUP BY 1, 2) MARGEN_COMPRAS'#10#10#10'ON (MARGEN_COMPRAS.' +
|
||||
'ID_EMPRESA = MARGEN_VENTAS.ID_EMPRESA)'#10'AND (MARGEN_COMPRAS.ID_AR' +
|
||||
'TICULO = MARGEN_VENTAS.ID_ARTICULO)'#10#10#10'LEFT JOIN ARTICULOS ON (AR' +
|
||||
'TICULOS.ID = MARGEN_VENTAS.ID_ARTICULO)'#10'LEFT JOIN CONTACTOS CLIE' +
|
||||
'NTES ON (CLIENTES.ID = MARGEN_VENTAS.ID_CLIENTE)'#10'LEFT JOIN CLIEN' +
|
||||
'TES_DATOS ON (CLIENTES_DATOS.ID_CLIENTE = CLIENTES.ID)'#10'LEFT JOIN' +
|
||||
' CONTACTOS AGENTES ON (AGENTES.ID = CLIENTES_DATOS.ID_AGENTE)'#10'WH' +
|
||||
'ERE ARTICULOS.INVENTARIABLE = 1 ) INF_MARGEN_ARTICULOS'
|
||||
'ECIO_NETO) > 0 THEN'#10' ((MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT -' +
|
||||
' ARTICULOS.PRECIO_NETO) * 100) / MARGEN_VENTAS.IMPORTE_NETO_ULT_' +
|
||||
'VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_ULT_VENT_COMPRA,'#10#10'MARGEN_VENTAS.IM' +
|
||||
'PORTE_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP AS IM' +
|
||||
'P_MARGEN_ULT_VENT_ULT_COMP,'#10'CASE'#10'WHEN MARGEN_COMPRAS.IMPORTE_NE' +
|
||||
'TO_ULT_COMP = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_ULT_VE' +
|
||||
'NT - MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP) > 0 THEN'#10' ((MARGE' +
|
||||
'N_VENTAS.IMPORTE_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_ULT' +
|
||||
'_COMP) * 100) / MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT'#10'ELSE 0'#10'END'#10'A' +
|
||||
'S POR_MARGEN_ULT_VENT_ULT_COMP,'#10#10'MARGEN_VENTAS.IMPORTE_NETO_ULT_' +
|
||||
'VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP AS IMP_MARGEN_ULT_VE' +
|
||||
'NT_PRO_COMP,'#10'CASE'#10'WHEN MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP = 0' +
|
||||
' THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT - MARGEN_COM' +
|
||||
'PRAS.IMPORTE_NETO_PRO_COMP) > 0 THEN'#10' ((MARGEN_VENTAS.IMPORT' +
|
||||
'E_NETO_ULT_VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP) * 100) /' +
|
||||
' MARGEN_VENTAS.IMPORTE_NETO_ULT_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_UL' +
|
||||
'T_VENT_PRO_COMP,'#10#10#10#10'MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - ARTICU' +
|
||||
'LOS.PRECIO_NETO AS IMP_MARGEN_PRO_VENT_COMPRA,'#10'CASE'#10'WHEN ARTICU' +
|
||||
'LOS.PRECIO_NETO = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_PR' +
|
||||
'O_VENT - ARTICULOS.PRECIO_NETO) > 0 THEN'#10' ((MARGEN_VENTAS.IM' +
|
||||
'PORTE_NETO_PRO_VENT - ARTICULOS.PRECIO_NETO) * 100) / MARGEN_VEN' +
|
||||
'TAS.IMPORTE_NETO_PRO_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_PRO_VENT_COMP' +
|
||||
'RA,'#10#10'MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORT' +
|
||||
'E_NETO_ULT_COMP AS IMP_MARGEN_PRO_VENT_ULT_COMP,'#10'CASE'#10'WHEN MARG' +
|
||||
'EN_COMPRAS.IMPORTE_NETO_ULT_COMP = 0 THEN 100'#10'WHEN (MARGEN_VENTA' +
|
||||
'S.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORTE_NETO_ULT_COMP) ' +
|
||||
'> 0 THEN'#10' ((MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN_COM' +
|
||||
'PRAS.IMPORTE_NETO_ULT_COMP) * 100) / MARGEN_VENTAS.IMPORTE_NETO_' +
|
||||
'PRO_VENT'#10'ELSE 0'#10'END'#10'AS POR_MARGEN_PRO_VENT_ULT_COMP,'#10#10'MARGEN_VEN' +
|
||||
'TAS.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP' +
|
||||
' AS IMP_MARGEN_PRO_VENT_PRO_COMP,'#10'CASE'#10'WHEN MARGEN_COMPRAS.IMPO' +
|
||||
'RTE_NETO_PRO_COMP = 0 THEN 100'#10'WHEN (MARGEN_VENTAS.IMPORTE_NETO_' +
|
||||
'PRO_VENT - MARGEN_COMPRAS.IMPORTE_NETO_PRO_COMP) > 0 THEN'#10' (' +
|
||||
'(MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT - MARGEN_COMPRAS.IMPORTE_NE' +
|
||||
'TO_PRO_COMP) * 100) / MARGEN_VENTAS.IMPORTE_NETO_PRO_VENT'#10'ELSE 0' +
|
||||
#10'END'#10'AS POR_MARGEN_PRO_VENT_PRO_COMP'#10#10'FROM'#10#10#10'(SELECT ID_EMPRESA,' +
|
||||
' ID_CLIENTE, ID_ARTICULO, COALESCE(SUM(IMPORTE_UNIDAD_ULT_VENT),' +
|
||||
'0) AS IMPORTE_UNIDAD_ULT_VENT,'#10' COALESCE(SUM(IMPORTE_NETO_' +
|
||||
'ULT_VENT),0) AS IMPORTE_NETO_ULT_VENT, COALESCE(SUM(IMPORTE_PORT' +
|
||||
'E_ULT_VENT),0) AS IMPORTE_PORTE_ULT_VENT,'#10' COALESCE(SUM(IM' +
|
||||
'PORTE_UNIDAD_PRO_VENT),0) AS IMPORTE_UNIDAD_PRO_VENT, COALESCE(S' +
|
||||
'UM(IMPORTE_NETO_PRO_VENT),0) AS IMPORTE_NETO_PRO_VENT,'#10' CO' +
|
||||
'ALESCE(SUM(IMPORTE_PORTE_PRO_VENT),0) AS IMPORTE_PORTE_PRO_VENT'#10 +
|
||||
#10' FROM'#10' (SELECT'#10' ID_EMPRESA, ID_CLIENTE, ID_ARTICULO,'#10' ' +
|
||||
' IMPORTE_UNIDAD_VENTA AS IMPORTE_UNIDAD_ULT_VENT, IMPORTE_NETO' +
|
||||
'_VENTA AS IMPORTE_NETO_ULT_VENT, IMPORTE_PORTE_VENTA AS IMPORTE_' +
|
||||
'PORTE_ULT_VENT,'#10' NULL AS IMPORTE_UNIDAD_PRO_VENT, NULL AS I' +
|
||||
'MPORTE_NETO_PRO_VENT, NULL AS IMPORTE_PORTE_PRO_VENT'#10#10' FROM V' +
|
||||
'_INF_ULTIMA_VENTA'#10#10' UNION ALL'#10#10' SELECT'#10' FACTURAS_CLIE' +
|
||||
'NTE.ID_EMPRESA,'#10' FACTURAS_CLIENTE.ID_CLIENTE,'#10' FACTURA' +
|
||||
'S_CLIENTE_DETALLES.ID_ARTICULO,'#10' NULL, NULL, NULL,'#10' AV' +
|
||||
'G(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD) AS IMPORTE_UNIDAD_PR' +
|
||||
'O_VENT,'#10' AVG(FACTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD - (FA' +
|
||||
'CTURAS_CLIENTE_DETALLES.IMPORTE_UNIDAD * (FACTURAS_CLIENTE_DETAL' +
|
||||
'LES.DESCUENTO / 100))) AS IMPORTE_NETO_PRO_VENT,'#10' AVG(FACTU' +
|
||||
'RAS_CLIENTE_DETALLES.IMPORTE_PORTE) AS IMPORTE_PORTE_PRO_VENT'#10#10' ' +
|
||||
' FROM FACTURAS_CLIENTE_DETALLES'#10' LEFT OUTER JOIN FACTURAS_C' +
|
||||
'LIENTE'#10' ON (FACTURAS_CLIENTE.ID = FACTURAS_CLIENTE_DETALLES.I' +
|
||||
'D_FACTURA)'#10#10' WHERE (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO IS ' +
|
||||
'NOT NULL) AND (FACTURAS_CLIENTE_DETALLES.ID_ARTICULO > 0)'#10' ' +
|
||||
'AND (FACTURAS_CLIENTE_DETALLES.CANTIDAD > 0)'#10' AND (FACTURAS' +
|
||||
'_CLIENTE.FECHA_FACTURA BETWEEN :FECHAINI AND :FECHAFIN)'#10' GROU' +
|
||||
'P BY 1, 2, 3)'#10#10' GROUP BY 1, 2, 3) MARGEN_VENTAS'#10#10#10'LEFT JOIN'#10#10#10'(S' +
|
||||
'ELECT'#10' ID_EMPRESA, ID_ARTICULO, COALESCE(SUM(IMPORTE_UNIDAD_U' +
|
||||
'LT_COMP),0) AS IMPORTE_UNIDAD_ULT_COMP, COALESCE(SUM(IMPORTE_NET' +
|
||||
'O_ULT_COMP),0) AS IMPORTE_NETO_ULT_COMP,'#10' COALESCE(SUM(IMPORT' +
|
||||
'E_PORTE_ULT_COMP),0) AS IMPORTE_PORTE_ULT_COMP, COALESCE(SUM(IMP' +
|
||||
'ORTE_UNIDAD_PRO_COMP),0) AS IMPORTE_UNIDAD_PRO_COMP,'#10' COALESC' +
|
||||
'E(SUM(IMPORTE_NETO_PRO_COMP),0) AS IMPORTE_NETO_PRO_COMP, COALES' +
|
||||
'CE(SUM(IMPORTE_PORTE_PRO_COMP),0) AS IMPORTE_PORTE_PRO_COMP'#10#10' FR' +
|
||||
'OM'#10' (SELECT'#10' ID_EMPRESA, ID_ARTICULO,'#10' IMPORTE_UNIDA' +
|
||||
'D_COMPRA AS IMPORTE_UNIDAD_ULT_COMP, IMPORTE_NETO_COMPRA AS IMPO' +
|
||||
'RTE_NETO_ULT_COMP, IMPORTE_PORTE_COMPRA AS IMPORTE_PORTE_ULT_COM' +
|
||||
'P,'#10' NULL AS IMPORTE_UNIDAD_PRO_COMP, NULL AS IMPORTE_NETO_P' +
|
||||
'RO_COMP, NULL AS IMPORTE_PORTE_PRO_COMP'#10#10' FROM V_INF_ULTIMA_C' +
|
||||
'OMPRA'#10#10' UNION ALL'#10#10' SELECT'#10' FACTURAS_PROVEEDOR.ID_EMP' +
|
||||
'RESA,'#10' FACTURAS_PROVEEDOR_DETALLES.ID_ARTICULO,'#10' NULL,' +
|
||||
' NULL, NULL,'#10' AVG(FACTURAS_PROVEEDOR_DETALLES.IMPORTE_UNIDA' +
|
||||
'D) AS IMPORTE_UNIDAD_PRO_COMP,'#10' AVG(FACTURAS_PROVEEDOR_DETA' +
|
||||
'LLES.IMPORTE_UNIDAD - (FACTURAS_PROVEEDOR_DETALLES.IMPORTE_UNIDA' +
|
||||
'D * (FACTURAS_PROVEEDOR_DETALLES.DESCUENTO / 100))) AS IMPORTE_N' +
|
||||
'ETO_PRO_COMP,'#10' AVG(FACTURAS_PROVEEDOR_DETALLES.IMPORTE_PORT' +
|
||||
'E) AS IMPORTE_PORTE_PRO_COMP'#10#10' FROM FACTURAS_PROVEEDOR_DETALL' +
|
||||
'ES'#10' LEFT OUTER JOIN FACTURAS_PROVEEDOR'#10' ON (FACTURAS_PROVE' +
|
||||
'EDOR.ID = FACTURAS_PROVEEDOR_DETALLES.ID_FACTURA)'#10#10' WHERE (FA' +
|
||||
'CTURAS_PROVEEDOR_DETALLES.ID_ARTICULO IS NOT NULL) AND (FACTURAS' +
|
||||
'_PROVEEDOR_DETALLES.ID_ARTICULO > 0)'#10' AND (FACTURAS_PROVEED' +
|
||||
'OR_DETALLES.CANTIDAD > 0)'#10' AND (FACTURAS_PROVEEDOR.FECHA_FA' +
|
||||
'CTURA BETWEEN :FECHAINI AND :FECHAFIN)'#10' GROUP BY 1, 2)'#10#10' GRO' +
|
||||
'UP BY 1, 2) MARGEN_COMPRAS'#10#10#10'ON (MARGEN_COMPRAS.ID_EMPRESA = MAR' +
|
||||
'GEN_VENTAS.ID_EMPRESA)'#10'AND (MARGEN_COMPRAS.ID_ARTICULO = MARGEN_' +
|
||||
'VENTAS.ID_ARTICULO)'#10#10#10'LEFT JOIN ARTICULOS ON (ARTICULOS.ID = MAR' +
|
||||
'GEN_VENTAS.ID_ARTICULO)'#10'LEFT JOIN CONTACTOS CLIENTES ON (CLIENTE' +
|
||||
'S.ID = MARGEN_VENTAS.ID_CLIENTE)'#10'LEFT JOIN CLIENTES_DATOS ON (CL' +
|
||||
'IENTES_DATOS.ID_CLIENTE = CLIENTES.ID)'#10'LEFT JOIN CONTACTOS AGENT' +
|
||||
'ES ON (AGENTES.ID = CLIENTES_DATOS.ID_AGENTE)'#10'WHERE ARTICULOS.IN' +
|
||||
'VENTARIABLE = 1) INF_MARGEN_ARTICULOS'
|
||||
StatementType = stSQL
|
||||
ColumnMappings = <
|
||||
item
|
||||
|
||||
Reference in New Issue
Block a user