declare @jsonAntes varchar(500), @jsonDespues varchar(500), @idMenor int, @idMayor int, @insertedAt DATE
SELECT @idMenor = min([id]), @idMayor=max([id]) FROM inserted
SET @insertedAt = (SELECT fechaDeIngreso FROM inserted WHERE [id] = @idMenor)
WHILE @idMenor<=@idMayor
BEGIN
SET @jsonAntes = (SELECT [id], [valor], [direccion], [numFinca], [fechaDeIngreso],[M3acumuladosAgua],[M3AcumuladosUltimoRecibo]
FROM deleted WHERE [id] = @idMenor AND activo = 1
FOR JSON PATH)
SET @jsonDespues = (SELECT [id], [valor], [direccion], [numFinca], [fechaDeIngreso],[M3acumuladosAgua],[M3AcumuladosUltimoRecibo]
FROM inserted WHERE [id] = @idMenor AND activo = 1
FOR JSON PATH)
EXEC [dbo].[SP_BitacoraCambioInsert]
@inIdEntityType = 1,
@inEntityID = @idMenor,
@inJsonAntes = @jsonAntes,
@inJsonDespues = @jsonDespues,
@inInsertedBy = 'usuario1',
@inInsertedIn = '1.1787.0289',
@inInsertedAt = @insertedAt
SET @idMenor = @idMenor+1
END
Ya esta implementado el proceso de los pagos pero no se ha probado.
Ya se implemento el SP que selecciona elementos de la bitácora dependiendo de la entidad y rangos de fechas:
DECLARE @fechaDesde DATE , @fechaHasta DATE
SET @fechaDesde = CONVERT(DATE,@inFechaDesde,121)
SET @fechaHasta = CONVERT(DATE,@inFechaHasta,121)
SELECT [jsonAntes],[jsonDespues],[insertedAt],U.nombre,[insertedIn]
FROM [dbo].[BitacoraCambio] BC
INNER JOIN [dbo].[Usuario] U ON U.id = BC.insertedBy
WHERE (insertedAt BETWEEN @fechaDesde AND @fechaHasta)
AND (idEntityType = @inIdEntidad)
Referencias:
No hay comentarios:
Publicar un comentario