Código SQL:
[/CODE] Ver original
DECLARE @tbl_saldo TABLE( Id INT NOT NULL, saldo FLOAT ); DELETE FROM @tbl_saldo DECLARE @prueba FLOAT DECLARE @debe FLOAT DECLARE @haber FLOAT DECLARE @saldo FLOAT DECLARE @documentoId FLOAT DECLARE @Id INT SET @saldo=0 DECLARE probar CURSOR FOR SELECT Finanzas.DetalleDocumento.Id,Finanzas.DetalleDocumento.Debe - Finanzas.DetalleDocumento.Haber FROM Finanzas.DetalleDocumento INNER JOIN Finanzas.Documento ON Finanzas.Documento.Id =Finanzas.DetalleDocumento.DocumentoId INNER JOIN Finanzas.Aplicacion ON Finanzas.DetalleDocumento.AplicacionId=Finanzas.Aplicacion.Id INNER JOIN Finanzas.Cuenta ON Finanzas.Aplicacion.CuentaId=Finanzas.Cuenta.Id INNER JOIN Finanzas.Tercero ON Finanzas.Tercero.id=Finanzas.Documento.TerceroId WHERE (Finanzas.Tercero.Id = 4365) AND (Finanzas.Documento.Contabilizado = 'True') AND (Finanzas.Cuenta.Id = 2045) ORDER BY Finanzas.Documento.FechaDocumento ASC OPEN probar FETCH probar INTO @Id,@prueba WHILE (@@FETCH_STATUS = 0) BEGIN -- Lectura de la siguiente fila de un cursor FETCH probar INTO @Id,@prueba SET @saldo= @prueba + @saldo INSERT INTO @tbl_saldo SELECT @Id,@saldo END CLOSE probar SELECT * FROM @tbl_saldo DEALLOCATE probar SELECT RTRIM(Finanzas.Tercero.Nombres) + ' ' + RTRIM(Finanzas.Tercero.Apellidos) AS NombreCompleto, Finanzas.Documento.Descripcion, Finanzas.Documento.FechaDocumento, Finanzas.DetalleDocumento.Debe, Finanzas.DetalleDocumento.Haber, temp.saldo, Finanzas.DetalleDocumento.Id, temp.Id,Finanzas.Cuenta.DescripcionCuenta, Finanzas.Cuenta.Codigo FROM Finanzas.Tercero INNER JOIN Finanzas.Documento ON Finanzas.Tercero.Id = Finanzas.Documento.TerceroId AND Finanzas.Tercero.Id = Finanzas.Documento.TerceroId INNER JOIN Finanzas.DetalleDocumento ON Finanzas.Documento.Id = Finanzas.DetalleDocumento.DocumentoId INNER JOIN @tbl_saldo AS temp ON Finanzas.DetalleDocumento.Id = temp.Id INNER JOIN Finanzas.Aplicacion ON Finanzas.DetalleDocumento.AplicacionId = Finanzas.Aplicacion.Id INNER JOIN Finanzas.Cuenta ON Finanzas.Aplicacion.CuentaId = Finanzas.Cuenta.Id WHERE (Finanzas.Tercero.Id = 4365) AND (Finanzas.Documento.Contabilizado = 'True') AND (Finanzas.Cuenta.Id = 2045) ORDER BY Finanzas.Documento.FechaDocumento ASC