viernes, 31 de octubre de 2014

Creación de Procedure Estado Cuenta


Creación de Procedure Estado Cuenta

6 Horas

En éste procedure sin lugar a dudas fue la comprobación de su funcionalidad. Se tuvo que cambiar el método una gran cantidad de veces antes de que comenzara a retornar datos acertados.
Así mismo la comprobación en sí de éste método, al ser tantos datos y al ser la mayoría de éstos números se tornó sumamente tediosa y engorrosa.
Otra dificultad que vale la pena mencionar fue el hecho de validar que el límite de fecha sea de 12 meses con respecto a la fecha actual, ya que tanto en la tabla de estado de cuentas y en la tabla de cuentas se tenían tipos de datetime, lo que volvía éste método muy confuso

-- ########################################################################################################################
-- Stored Procedure of EstadoCuenta
-- ########################################################################################################################

-- Verify that the stored procedure does not exist.
IF OBJECT_ID(N'CA_SP_EstadoCuenta', N'P') IS NOT NULL
    DROP PROCEDURE CA_SP_EstadoCuenta;
GO

CREATE PROCEDURE [dbo].[CA_SP_EstadoCuenta]
    @Cuenta INT ,
@Fecha DATETIME
 
AS
    BEGIN TRY
IF(@Fecha BETWEEN DATEADD(MONTH,-12,@Fecha) AND GETDATE())
BEGIN
        BEGIN TRANSACTION
SELECT * FROM dbo.CA_EstadoCuenta
WHERE FK_Cuenta = @Cuenta
AND YEAR(@Fecha) = YEAR(Fecha)
AND MONTH(@Fecha)=MONTH(Fecha)
COMMIT
END
ELSE
    BEGIN
PRINT 'Fecha fuera de rango'
    END
 
    END TRY
    BEGIN CATCH
PRINT'No se encontro el estado de cuenta buscado'
    END CATCH
GO

No hay comentarios:

Publicar un comentario