on 12-04-2018 4:36 PM
Buenas,
Tengo una consulta creada para listar los pagos entrados en caja del día anterior...
Esto funciona perfecto, pero falla en algo y es que no me muestra los pagos entrados en caja si no están conciliado en alguna factura....
Como podría hacer para que en este informe también reflejasen los pagos a cuenta, sin conciliar contra facturas¿?
Esta es la consulta en cuestión:
SELECT
'Comercial'= case
When T2.SlpCode= '1' Then 'A. Ferrer'
When T2.SlpCode= '2' Then 'B. Ribas'
When T2.SlpCode= '3' Then 'C. Ferrer'
When T2.SlpCode= '4' Then 'Cati F.'
When T2.SlpCode= '5' Then 'E. Villalba'
When T2.SlpCode= '6' Then 'Jose F.'
When T2.SlpCode= '7' Then 'J. Prats'
When T2.SlpCode= '8' Then 'Jordi F.'
When T2.SlpCode= '9' Then 'Lucas F.'
When T2.SlpCode= '10' Then 'P. López'
When T2.SlpCode= '11' Then 'P. Ruiz'
When T2.SlpCode= '12' Then 'Rosy N.'
When T2.SlpCode= '13' Then 'Tienda'
When T2.SlpCode= '14' Then 'V. Cardona'
When T2.SlpCode= '15' Then 'V. Formentera'
When T2.SlpCode= '16' Then 'D. Perdiguero'
When T2.SlpCode= '17' Then 'J. Diaz'
When T2.SlpCode= '18' Then 'M.J. Cardona'
When T2.SlpCode= '19' Then 'E.Siligato'
When T2.SlpCode= '20' Then 'Julio R.'
When T2.SlpCode= '21' Then 'J.M.Villalba'end,
T2.[AgentCode] as 'Cobrador',
T2.[DocNum]as 'No. Factura',
T0.[CardCode] as 'Codigo del Cliente',
T0.CardName as 'Nombre del Cliente',
T2.[U_SEIPresC] as 'Num.Presup',
T2.[Header] as 'HP/Observaciones',
T2.[DocTotal] as 'Total factura',
T1.[SumApplied]as 'total pago',
saldofac= case
when T2.Doctotal-T1.[SumApplied]= '0' then '0'
when T2.Doctotal-T1.[SumApplied]<> '0' then T2.Doctotal-T2.PaidToDate end,
T2.[DocDate]as 'Fecha factura',
T0.DocDate as 'Fecha Pago',
'-'= case
When T3.GroupNum= '1'Thendatediff (day,T2.DocDate,T0.DocDate)
When T3.GroupNum= '9' Then datediff (day,T2.DocDate,T0.DocDate)
When T3.GroupNum= '8' Then datediff (day,T2.DocDate,T0.DocDate)
When T3.GroupNum= '10' Then datediff (day,T2.DocDate,T0.DocDate)
When T3.GroupNum= '11' Then datediff (day,T2.DocDate,T0.DocDate)
When T3.GroupNum= '12' Then datediff (day,T2.DocDate,T0.DocDate)
When T3.GroupNum= '13' Then datediff (day,T2.DocDate,T0.DocDate)
When T3.GroupNum= '14' Then datediff (day,T2.DocDate,T0.DocDate)
When T3.GroupNum= '15' Then datediff (day,T2.DocDate,T0.DocDate)
end
FROM OINV T2
LEFT JOIN RCT2 T1 ON T1.DocEntry = T2.DocEntry
INNER JOIN ORCT T0 ON T0.DocEntry = T1.DocNum
INNER JOIN OCRD T3 ON T0.CardCode = T3.CardCode
WHERE CAST(GETDATE()-1 AS DATE) = T0.DocDate
and T1.InvType = '13'
order by T2.SlpCode,T0.CardCode
Muchas gracias a todos de antemano por vuestra ayuda!!!
Buscando por ahí he visto que quizás con esta consulta:
-- cobros no reconciliados (cobros marcados como "Pago a cuenta") de un día determinado, el día de ejecucion de la consulta.
-- son los que no se aplicaron a una factura y están pendientes de compensar.
select t2.*
from ORCT t2
where t2.DocDate = CAST(GETDATE() AS DATE)
and t2.DocEntry not in(
select t3.SrcObjAbs
from ITR1 t3
where t3.TransId = t2.TransId and t3.SrcObjAbs = t2.DocEntry
)
Pero como soy muy nuevo con esto de SQL, no soy capáz de unirlas...
A ver si me podéis ayudar, muchas gracias de nuevo!!!
User | Count |
---|---|
91 | |
11 | |
10 | |
6 | |
5 | |
5 | |
5 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.