Creador del Post: Javier Gómez Madrigal
Hora Inicio: 13:00 Hora Fin: 15:31
Horas Trabajadas: 2
Se realizó el procedure de sumatoria de pagos después de la última fecha de corte. Se llevó un tiempo analizar esta consulta y luego se procedió a programarlo. No se realizaron pruebas de este procedure.
GO
CREATE PROCEDURE SP_SUMA_PAGOS_ULTIMA_FECHA_CORTE
AS
BEGIN
BEGIN TRY
DECLARE @PAGOS TABLE(FK_CUENTA INT, FECHA DATE, MONTO MONEY, PAGOCONTADO MONEY, TARJETA INT)
INSERT INTO @PAGOS
SELECT E.FK_Cuentas, E.FechaCorte, E.RetirosAcumulados, E.PagoContado, T.ID
FROM TC_EstadoCuenta AS E
INNER JOIN TC_Tarjetas AS T ON T.FK_Cuentas = E.FK_Cuentas
BEGIN TRANSACTION
INSERT INTO TC_MovimientoSaldo
SELECT P.FK_CUENTA, 2, P.TARJETA, GETDATE(), P.MONTO, 'Devolución de intereses'
FROM @PAGOS AS P
WHERE (P.MONTO >= P.PAGOCONTADO)
UPDATE TC_Cuentas
SET SaldoActual = SaldoActual - P.MONTO
FROM @PAGOS AS P
WHERE (P.FK_CUENTA = TC_Cuentas.ID)
COMMIT TRANSACTION
RETURN 1;
END TRY
BEGIN CATCH
IF @@TRANCOUNT > 0
ROLLBACK TRANSACTION;
RETURN @@ERROR*-1;
END CATCH;
END
GO
No hay comentarios:
Publicar un comentario