on 10-03-2013 9:13 PM
Hola amigos y amigas de Foro
Requiere de su gran apoyo para generar un reporte de morosidad de cliente que muestre los pendientes en x periodos de fechas, el que tengo ya me da el total facturado pero no se como hacer para restarle los pagos o adelantos realizados.
Saludos
Samara
Hola Yair,
Gracias por la información pero lo que requiero que me agrupe las trasacciones que tenga el cliente por mes pero en caso de ser adelantos abonos o nota de créditos que no esten relacionadas a nada pero que si hay facturas pendiente automaticamente en el reporte las reste y solo muerte el monto en la fecha que corresponda.
Saludos
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Este es el que tengo, si tienes alguna pregunta me avisas
DECLARE @VAR INT, @FECHAFIN DATETIME
SET @VAR = (SELECT TOP 1 A.TransId FROM [dbo].[JDT1] A
WHERE A.RefDate <='01/01/2000')
SET @FECHAFIN = '03/31/2012'
SELECT /*Y3.SlpName,*/ T0.CardCode, T0.CardName, T1.TransId'Asiento', T4.BaseRef 'Doc Interno', T4.Folionum'Folio', T1.RefDate, T1.TaxDate, T1.DueDate,
CASE
WHEN T3.DebHab = 'D' THEN (T1.Debit-T1.Credit-T3.ReconSum)
WHEN T3.DebHab = 'C' THEN (T1.Debit-T1.Credit+T3.ReconSum)
ELSE (T1.Debit-T1.Credit)
END 'Saldo',
CASE
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) <= 30 and T3.DebHab = 'D' then T1.Debit-T1.Credit-T3.ReconSum
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) <= 30 and T3.DebHab = 'C' then T1.Debit-T1.Credit+T3.ReconSum
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) <= 30 then (T1.Debit-T1.Credit) end '0-30 dias',
CASE
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) BETWEEN 31 AND 60 and T3.DebHab = 'D' then T1.Debit-T1.Credit-T3.ReconSum
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) BETWEEN 31 AND 60 and T3.DebHab = 'C' then T1.Debit-T1.Credit+T3.ReconSum
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) BETWEEN 31 AND 60 then (T1.Debit-T1.Credit) end '31-60 dias',
CASE
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) BETWEEN 61 AND 90 and T3.DebHab = 'D' then T1.Debit-T1.Credit-T3.ReconSum
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) BETWEEN 61 AND 90 and T3.DebHab = 'C' then T1.Debit-T1.Credit+T3.ReconSum
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) BETWEEN 61 AND 90 then (T1.Debit-T1.Credit) end '61-90 dias',
CASE
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) BETWEEN 91 AND 120 and T3.DebHab = 'D' then T1.Debit-T1.Credit-T3.ReconSum
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) BETWEEN 91 AND 120 and T3.DebHab = 'C' then T1.Debit-T1.Credit+T3.ReconSum
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) BETWEEN 91 AND 120 then (T1.Debit-T1.Credit) end '91-120 dias',
CASE
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) > 120 and T3.DebHab = 'D' then T1.Debit-T1.Credit-T3.ReconSum
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) > 120 and T3.DebHab = 'C' then T1.Debit-T1.Credit+T3.ReconSum
WHEN DATEDIFF(DAY,T1.RefDate,@FECHAFIN) > 120 then (T1.Debit-T1.Credit) end '+120 dias',
CASE T1.TransType
WHEN '13' THEN (SELECT Y.Comments FROM OINV Y WHERE Y.TransId = T1.TransId)
WHEN '14' THEN (SELECT Y.Comments FROM ORIN Y WHERE Y.TransId = T1.TransId)
ELSE T1.LineMemo
END 'Comentarios'
FROM dbo.OCRD T0
INNER JOIN dbo.JDT1 T1 ON T1.ShortName = T0.CardCode
INNER JOIN dbo.OACT T2 ON T2.AcctCode = T1.Account
INNER JOIN dbo.OJDT T4 ON T4.TransId = T1.TransId
/*LEFT JOIN dbo.OINV Y1 ON Y1.TransId = T1.TransId
LEFT JOIN dbo.ORIN Y2 ON Y2.TransId = T1.TransId
LEFT JOIN dbo.OSLP Y3 ON Y3.SlpCode = Y1.SlpCode OR Y3.SlpCode = Y2.SlpCode*/
LEFT JOIN (
SELECT X0.ShortName 'SN', X0.TransId 'TransId', SUM(X0.ReconSum)'ReconSum', X0.IsCredit 'DebHab', X0.TransRowId 'Linea'
FROM dbo.ITR1 X0
INNER JOIN dbo.OITR X1 ON X1.ReconNum = X0.ReconNum
WHERE X1.ReconDate <= @FECHAFIN AND X1.CancelAbs = ''
GROUP BY X0.ShortName, X0.TransId, X0.IsCredit, X0.TransRowId
) T3 ON T3.TransId = T1.TransId AND T3.SN = T1.ShortName AND T3.Linea = T1.Line_ID
WHERE T0.CardType = 'C' AND T1.RefDate <= @FECHAFIN AND T0.GroupCode=100 and
(CASE
WHEN T3.DebHab = 'D' THEN (T1.Debit-T1.Credit-T3.ReconSum)
WHEN T3.DebHab = 'C' THEN (T1.Debit-T1.Credit+T3.ReconSum)
ELSE (T1.Debit-T1.Credit)
END) != '0'
ORDER BY T0.CardCode, T1.TransId
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
En ese caso ya obtuve los pago a cuenta sumarizados por socio pero solo me hace falta el detalle de poder restarlo de las facturas....
Gracias por su colaboración...
Si alguien sabe como añadirlo....o si se pueda
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hola Fernando...
Bien no me funciona porque este no resta los pagos a cuenta que se realicen, porque en nuestro caso los clinentes realizan adelantos y despues se factura y muchas veces no realizan las reconciliaciones... por ende se requieren el reporte reste los pago a cuentas de las facturas mas viejas hacia las nuevas.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
En todo caso tu si puedes considerar los pagos pendientes, el problema es que no te los restara a las facturas solo te aparecen como líneas extra.
Yo te recomiendo es que se tomen las políticas de reconciliación.
Ya que el hacer lo que tu pides que los pago pendientes se resten a las facturas es bastante complejo sobre todo si quieres tener una foto a una fecha determinada.
En todo caso para ver el saldo no re conciliado de un pago basta que veas el asiento contable del pago en el campo de saldo vencido. Si quieres verlo a una fecha determinada tendras que analizar las tablas oitr e itr1
¿Por que razón no te sirve el informe de antigüedad de clientes?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
99 | |
12 | |
11 | |
6 | |
6 | |
4 | |
3 | |
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.