IF OBJECT_ID('sp_TarjetaRegistrarLogProceso', 'P') IS NOT NULL
    DROP PROCEDURE sp_TarjetaRegistrarLogProceso;
GO

CREATE PROCEDURE sp_TarjetaRegistrarLogProceso
    @p_ctarjeta INT,
    @p_xcodigo_tarjeta VARCHAR(8),
    @p_ccanal INT,
    @p_itipo_accion VARCHAR(20),
    @p_xestado_proceso VARCHAR(10),
    @p_xendpoint_api VARCHAR(200),
    @p_xdatos_peticion VARCHAR(MAX),
    @p_xdatos_respuesta VARCHAR(MAX),
    @p_xmensaje_error VARCHAR(MAX),
    @p_ncodigo_http INT,
    @p_xdireccion_ip VARCHAR(45)
AS
BEGIN
    SET NOCOUNT ON;
    INSERT INTO taproceso_log (
        ctarjeta, xcodigo_tarjeta, ccanal, itipo_accion, xestado_proceso, 
        xendpoint_api, xdatos_peticion, xdatos_respuesta, xmensaje_error, 
        ncodigo_http, xdireccion_ip, fproceso
    )
    VALUES (
        @p_ctarjeta, @p_xcodigo_tarjeta, @p_ccanal, @p_itipo_accion, @p_xestado_proceso, 
        @p_xendpoint_api, @p_xdatos_peticion, @p_xdatos_respuesta, @p_xmensaje_error, 
        @p_ncodigo_http, @p_xdireccion_ip, GETDATE()
    );
END
GO
