intranet-queries/2011-10-14-recaudos_por_ano.sql

35 lines
1.3 KiB
SQL

-- Documentos por año con recaudo
SELECT suc.nombre_sucursal AS Branch_Office,
dv.id_documento AS Invoice_No,
dv.fecha AS Invoice_Date,
rec.fecha_vencimiento AS Invoice_Due_Date,
MAX(rec.fecha) AS Payment_Date,
cs.id_cliente AS ID_Customer,
cs.nombre_cliente AS Customer_Name,
SUM(dvi.cantidad * i.peso * (IF(dvi.valor>0,1,-1))) AS Invoice_qty_Kg,
SUM(dvi.valor) AS Amount,
"COP" AS Currency
FROM
documento_ventas_has_item dvi
JOIN item i
ON ( dvi.id_item=i.id_item AND dvi.id_sucursal=i.id_sucursal )
JOIN documento_ventas dv
ON ( dv.id_documento=dvi.id_documento AND dv.id_sucursal=dvi.id_sucursal )
JOIN cliente_has_sucursal cs
ON ( dv.id_sucursal=cs.id_sucursal AND dv.id_cliente=cs.id_cliente )
JOIN forma_pago fp
ON ( dv.id_formapago = fp.id_formapago AND dv.id_sucursal = fp.id_sucursal )
JOIN recaudo rec
ON ( dv.id_documento = rec.id_documento_cruce AND dv.id_sucursal = rec.id_sucursal )
JOIN sucursal suc
ON ( dv.id_sucursal = suc.id_sucursal )
WHERE
YEAR(dv.fecha) = 2011
AND (rec.id_documento <> rec.id_documento_cruce)
AND LEFT(dv.id_documento,1) = "F"
AND fp.formapago = "Credito"
AND NOT (i.tipo LIKE "5")
AND NOT (dv.id_cliente LIKE "999")
GROUP BY Branch_Office, Invoice_No