Query pagos Recibidos - Reconciliados

sql
Etiquetas: #<Tag:0x00007fb67ad114c8>

#1

Buenas tardes

Necesito un reporte de pagos recibidos aplicados a facturas , para un proceso normal quedaria de la siguiente forma

SELECT T0.[DocNum], T0.[Canceled], T0.[DocDate], T0.[CardCode], T0.[CardName], T1.[DocEntry], T1.[SumApplied], T1.[AppliedSys], T1.[vatApplied], T1.[vatAppldSy], T0.[DocTotal], T1.[DocTransId], T0.[Comments] FROM ORCT T0 INNER JOIN RCT2 T1 ON T0.[DocEntry] = T1.[DocNum] WHERE T0.[Canceled] ='n' and T0.[DocDate] >[%0] and T0.[DocDate] <=[%1]

pero este no me jala los reconciliados en el cual estoy revisando que me aparecen en la yabla OITR junto con la ITR1 pero no logro realizar el reporte de esta segunda parte y asi tener un reporte similar al de la primera consulta

Alguien que me pueda ayudar

Saludos


#2

Hola Erick
La siguiente consulta permite obtener lo que requieres

DECLARE @FECHA1 DATETIME
/* WHERE */
  set @FECHA1 = /* P0.DocDate */ '[%0]'
/*SELECT FROM [dbo].[ORCT] P0*/
  DECLARE @FECHA2 DATETIME
  /* WHERE */
  set @FECHA2= /* P0.DocDate */ '[%1]'

SELECT T3.DocDate AS 'Fecha Factura', T3.docnum, T3.CardName, T4.DocDate AS 'Fecha Pago', T4.CreateDate, T4.DocNum, 
CONVERT (INT,(ISNULL(T2.SumApplied - T2.vatApplied,0))) AS 'Monto', 'Recibo' as 'Metodo'
FROM RCT2 T2
INNER JOIN OINV T3 on T2.DocEntry = T3.DocEntry 
INNER JOIN ORCT T4 on T2.DocNum = T4.DocNum
WHERE T4.Canceled <>'Y' and (T4.DocDate BETWEEN @fecha1 AND @fecha2)

UNION ALL

SELECT P3.DocDate as 'Fecha Factura',P3.DocNum, P3.CardName ,P1.ReconDate as 'Fecha Pago', P1.CreateDate, P1.ReconNum,
P2.ReconSum AS 'Monto', 'Reconciliación' as 'Metodo'
FROM OITR P1 
INNER JOIN ITR1 P2 ON P1.ReconNum=P2.ReconNum 
INNER JOIN OINV P3 ON P2.SrcObjAbs=P3.DocEntry
WHERE P2.SrcObjTyp='13' AND P1.IsSystem='N' AND P1.CancelAbs=0 
AND P1.Canceled='N' and P1.Recontype=0 and (P1.ReconDate BETWEEN @fecha1 AND @fecha2)

Andres Ramirez Jaramillo :colombia:


#3

Gracias Andres ya este me muestra los aplicados a factura que se reconcilian automáticamente y los reconciliados manual , en el caso de los aplicados a factura si me jala el numero de documento de pago , pero en lo reconciliados manuales me muestra el numero de reconciliación hay alguna forma de que en vez de mostrar este documento de reconciliación muestre el numero de pago con el que se realizo la reconciliación?

Agradezco tu apoyo

image


#4

Debes realizar una subconsulta en el segundo SELECT, de la misma manera como se cruza P2 con P3, solo que P3 ya no seria OINV sino ORCT y P2.SrcObjTyp seria igual a 24


#5

Gracias Andres agradezco tu apoyo , mi conocimiento sobre consultas es basico , el reporte es muy bueno y arroja la informacion deseada solo tengo el detalle en cuanto el parametro de fechas al ejecutar la consulta pide un rango que deberia funcionar en base a la fecha del pago pero revisando una linea me lo muestra de la siguiente forma la fecha de pago y no coincide con la de SAP ,

image


#6

Para el segundo SELECT esta mostrando la fecha de la reconciliación. Debes ajustar el query