AYUDA PLEASE.!!!!!!!!!!!!!!!

22/09/2004 - 23:24 por Alma Alicia Gutierrez | Informe spam
Estimados Amigos, con el siguiente procedimiento yo genero todas las
facturas con saldo a una fecha definida, POR EJEMPLO AL 31 DE AGOSTO.. PERO
ahora , necesito generar este mismo informe pero tengo que tener un saldo
anterior (POR EJEMPLO AL 31 DE JULIO) Y LUEGO PONER EL MOVIMIENTO(FACTURAS
GENERANDAS) EN EL SIGUIENTE MES (EN ESTE CASO AGOSTO.)... SI ALGUIEN PUEDE
COLABORME... ALGUNA IDEA PARA GENERARLO...

Saludos

AA

CREATE PROCEDURE dbo.PCA_SALDOS_X_ANTIGUEDAD(@fechafin datetime)
AS SELECT F.Fact_Total, F.Op_id, ISNULL(CST_MOVIMIENTOS.RECIBO, 0) AS
RECIBO, ISNULL(CST_MOVIMIENTOS.CREDITO, 0) AS CREDITO,
ISNULL(CST_MOVIMIENTOS.DEBITO, 0) AS DEBITO,
(F.Fact_Total + ISNULL(CST_MOVIMIENTOS.DEBITO, 0)) -
(ISNULL(CST_MOVIMIENTOS.CREDITO,
0) + ISNULL(CST_MOVIMIENTOS.RECIBO, 0)) AS SALDO,
ISNULL(CST_MOVIMIENTOS.CREDITO, 0) + ISNULL(CST_MOVIMIENTOS.RECIBO, 0)
AS PAGOS, dbo.Operadores.OP_Nombre, F.Fact_FechaVenc,
dbo.Representantes.REP_Nombre, dbo.Ciudades.CUD_Nombre
FROM dbo.FACTURA F INNER JOIN
dbo.Operadores ON F.Op_id = dbo.Operadores.OP_ID INNER
JOIN
dbo.Representantes ON dbo.Operadores.REP_ID dbo.Representantes.REP_ID INNER JOIN
dbo.Ciudades ON dbo.Operadores.CUD_ID dbo.Ciudades.CUD_ID LEFT OUTER JOIN
(SELECT CST_MOVIMIENTOS.fact_id,
SUM(CST_MOVIMIENTOS.RECIBO) AS RECIBO, SUM(CST_MOVIMIENTOS.CREDITO) AS
CREDITO,

SUM(CST_MOVIMIENTOS.DEBITO) AS DEBITO
FROM CST_MOVIMIENTOS
WHERE CST_MOVIMIENTOS.REC_FECHA <@FECHAFIN
GROUP BY CST_MOVIMIENTOS.FACT_ID)
CST_MOVIMIENTOS ON F.Fact_Id = CST_MOVIMIENTOS.FACT_ID
WHERE (F.Fact_Fecha <= @FECHAFIN) AND ((F.Fact_Total +
ISNULL(CST_MOVIMIENTOS.DEBITO, 0)) - (ISNULL(CST_MOVIMIENTOS.CREDITO, 0)
+ ISNULL(CST_MOVIMIENTOS.RECIBO, 0)) > 0)
GO

Preguntas similare

Leer las respuestas

#1 Javier Loria
23/09/2004 - 05:13 | Informe spam
Hola:
Tal vez algo como esto?
==CREATE PROCEDURE PCA_SALDOS_X_ANTIGUEDAD(@fechaini datetime, @fechafin
datetime)
AS
SELECT F.Fact_Total
, F.Op_id
, F.Fact_Total+ISNULL(MovimientosAnteriores.MovimientoAnterior) AS
SaldoAnterior
, ISNULL(MovimientosMensuales.RECIBO, 0) AS RECIBO
, ISNULL(MovimientosMensuales.CREDITO, 0) AS CREDITO
, ISNULL(MovimientosMensuales.DEBITO, 0) AS DEBITO
, (F.Fact_Total + ISNULL(MovimientosMensuales.DEBITO, 0))
+ ISNULL(MovimientosAnteriores.MovimientoAnterior)
- (ISNULL(MovimientosMensuales.CREDITO, 0) +
ISNULL(MovimientosMensuales.RECIBO, 0))
AS SALDO
, ISNULL(MovimientosMensuales.CREDITO, 0) +
ISNULL(MovimientosMensuales.RECIBO, 0) AS PAGOS
, Operadores.OP_Nombre
, F.Fact_FechaVenc
, Representantes.REP_Nombre
, Ciudades.CUD_Nombre
FROM FACTURA F
INNER JOIN Operadores
ON F.Op_id = Operadores.OP_ID
INNER JOIN Representantes
ON Operadores.REP_ID =Representantes.REP_ID
INNER JOIN Ciudades ON Operadores.CUD_ID =Ciudades.CUD_ID
LEFT OUTER JOIN (SELECT CST_MOVIMIENTOS.fact_id
, SUM(CST_MOVIMIENTOS.DEBITO)
- SUM(CST_MOVIMIENTOS.CREDITO)
- SUM(CST_MOVIMIENTOS.RECIBO) AS MovimientoAnterior
FROM CST_MOVIMIENTOS
WHERE CST_MOVIMIENTOS.REC_FECHA <=@FECHAINI
GROUP BY CST_MOVIMIENTOS.FACT_ID) AS MovimientosAnteriores
ON F.Fact_Id = MovimientosAnteriores.FACT_ID
LEFT OUTER JOIN (SELECT CST_MOVIMIENTOS.fact_id
, SUM(CST_MOVIMIENTOS.RECIBO) AS RECIBO
, SUM(CST_MOVIMIENTOS.CREDITO) AS CREDITO
, SUM(CST_MOVIMIENTOS.DEBITO) AS DEBITO
FROM CST_MOVIMIENTOS
WHERE CST_MOVIMIENTOS.REC_FECHA BETWEEN
DATEADD(day,1,@FECHAINI) AND @FECHAFIN
GROUP BY CST_MOVIMIENTOS.FACT_ID) AS MovimientosMensuales
ON F.Fact_Id = MovimientosMensuales.FACT_ID
WHERE (F.Fact_Fecha <= @FECHAFIN) AND
((F.Fact_Total +ISNULL(MovimientosMensuales, 0)) -
(ISNULL(MovimientosMensuales.CREDITO, 0) +
ISNULL(MovimientosMensuales.RECIBO, 0)) > 0)
GO
==Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda

"Alma Alicia Gutierrez" wrote in message
news:#
Mostrar la cita
PERO
Mostrar la cita
F.Fact_FechaVenc,
Mostrar la cita
INNER
Mostrar la cita
#2 Alma Alicia Gutierrez
23/09/2004 - 19:52 | Informe spam
Estimado Javier... Agradezco tu colaboracion...
Funciona bien para los pagos, credito y saldos... en el caso del mes
corriente... el unico problema es que me suma el total facturado desde
siempre para ese cliente... y yo solo quiero mostrar el total facturado en
Agosto.

Saludos..
Alma Alicia
"Javier Loria" escribió en el mensaje
news:%23JP%
Mostrar la cita
MovimientosAnteriores
Mostrar la cita
MovimientosMensuales
Mostrar la cita
saldo
Mostrar la cita
MOVIMIENTO(FACTURAS
Mostrar la cita
PUEDE
Mostrar la cita
AS
Mostrar la cita
#3 Javier Loria
23/09/2004 - 20:11 | Informe spam
Hola Alma Alicia:
Disculpa pero no entendi entonces que es lo que deseabas. Tal vez si nos
pones un ejemplo de como deberia quedar el resultado?
Saludos,

Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda

"Alma Alicia Gutierrez" wrote in message
news:
Mostrar la cita
SALDO,
Mostrar la cita
0)
Mostrar la cita
#4 Alma Alicia Gutierrez
23/09/2004 - 21:49 | Informe spam
Estimado Javier
te pongo un ejemplo de lo que quiero

cliente.=Carlos Sanchez saldo_anterior al 31 de JulioP00 , totalfacturado
en Agosto 00, luego pagos, debitos, creditos efectuados en Agosto..

gracias de antemano por tu colaboracion
Saludos@
Alma Alicia
"Javier Loria" escribió en el mensaje
news:%
Mostrar la cita
nos
Mostrar la cita
en
Mostrar la cita
AGOSTO..
Mostrar la cita
0)
Mostrar la cita
0)
Mostrar la cita
AS
Mostrar la cita
(ISNULL(CST_MOVIMIENTOS.CREDITO,
Mostrar la cita
Ads by Google
Search Busqueda sugerida