CREAR REPORTE DE FACTURAS CON NOTA DE CRÉDITOS

33 views
Skip to first unread message

Pedro Peñalo

unread,
Jul 27, 2013, 9:56:47 AM7/27/13
to adempier...@googlegroups.com
Buen Día Estoy intentando realizar un reporte, para conseguir las facturas con su nota crédito. Este reporte me servira para para cuadrar la caja en la venta del día
Tengo que hacerlo por usuario. Si la notas de crédito de la factura del día se hace en otra fecha no puede aparecer en ese día; ejemplo el 22 de julio se realizo 22 facturas de las cuales 4 facturas le hicieron las notas de crédito porque tuvieron que devolver el dinero. Pero esta solo dos facturas se la hicieron el mismo días y las otras 2 la realizaron el 23. Solo debe aparecer 2 facturas de las 4, para el día 22 de julio, las otras dos deben aparecer el 23 de julio con las demás facturas de ese día.

Mi ayuda es si alguien puede ayudar a mejorar el lógico.
Estaré agradecido
Adjunto esta el archivo.

Miguel lo último que logre fue traer las facturas exacta del dia con  su nota de crédito comparando la fecha de la factura con la fecha de la nota de crédito, pero como tengo factura 
Con nota del 23/07/2013 ella no trae, pero cuando consulto que traiga la factura del 23/07/2013 no puede traerme la nota crédito porque las factura no que tengo son del 22/07/2013

SELECT DISTINCT b.xx_sede,org.name as organizacon, b.c_bpartner_id, a.c_bpartner_id, d.name as paciente
,a.ad_client_id, a.ad_org_id,
a.c_invoice_id,b.xx_admission AS no_admision,a.c_order_id,a.xx_factura As no_factura,a.dateinvoiced AS fecha_factura,
  
case a.c_doctype_id 
when 1000002 then a.grandtotal
else 0
end as monto_factura
      
,aa.dateinvoiced AS fecha_nota_credito2
,aa.grandtotal::numeric as monto_nota_credito2
,aa.xx_controlnumber AS num_ctrol_factura2
,aa.xx_factura as num_nota_cred2 
,aa.xx_facturaafectada AS num_fact_afect2 
,h.c_bpartner_id, g.ad_user_id, g.name AS usuario,  (COALESCE( ' '||h.name||', '||h.name2)) AS nombre_usr, a.ispaid,a.c_doctype_id,b.xx_insurance_id AS seguroid, f.name AS seguro, a.docstatus, a.c_doctype_id

FROM
---FACTURA------------
c_invoice a
LEFT JOIN c_order b ON a.c_order_id = b.c_order_id
LEFT JOIN c_bpartner c ON b.xx_medical_id = c.c_bpartner_id
LEFT JOIN c_bpartner d ON a.xx_patient_id = d.c_bpartner_id
LEFT JOIN c_bpartner f ON b.xx_insurance_id = f.c_bpartner_id
JOIN c_doctype_trl e ON a.c_doctype_id = e.c_doctype_id
JOIN ad_user g ON a.createdby = g.ad_user_id
LEFT JOIN c_bpartner h ON h.c_bpartner_id = g.c_bpartner_id
JOIN c_bpartner i ON i.c_bpartner_id = a.c_bpartner_id
JOIN adempiere.c_doctype doc on doc.c_doctype_id=a.c_doctype_id
JOIN ad_org org ON a.ad_org_id = org.ad_org_id
JOIN c_doctype dt ON a.c_doctype_id = dt.c_doctype_id
---COMBINACION PARA TRAERME LAS NOTA DE CRÉDITO------
LEFT JOIN c_invoice aa on a.xx_factura=aa.xx_facturaafectada and aa.xx_controlnumberafec>0 AND 
--compracion de fecha FACTURA NOTA DE CRÉDITO--------
a.dateinvoiced=aa.dateinvoiced  
WHERE a.issotrx = 'Y'::bpchar 
and a.grandtotal >= 0::numeric 
AND a.ad_org_id=1000015
and a.c_doctype_id <> 1000050 and a.c_doctype_id <> 1000005
--usuario que hace la fachtura--
AND h.c_bpartner_id=1078530
--fecha de de consulta de factura + nota de crédito---
AND a.dateinvoiced='22-07-2013'  
AND (a.docstatus = ANY (ARRAY['CO'::bpchar, 'CL'::bpchar])) 
AND e.ad_language::text = 'es_VE'::text
--filtro de los usuario que crean las facturas + los usuario que crean la nota de crédito----------
and (g.ad_user_id= ANY (ARRAY[1000394::numeric,1000498::numeric,1001093::numeric,1000397::numeric,1000796::numeric,1000948::numeric,1001113::numeric]))


ORDER BY
a.dateinvoiced DESC,a.c_doctype_id




CUADRE DE CAJA DEL DIA(FACTURA+NOTACREDITO.)txt.txt
Reply all
Reply to author
Forward
0 new messages