8
0

[PRDD_MOVE_USER_LOGIN_OUT_TO_ARCHIVE] Fix

This commit is contained in:
KammM 2025-09-30 17:27:48 +02:00
parent 88aff8d464
commit adbec46520

View File

@ -28,7 +28,7 @@ CREATE OR ALTER PROCEDURE [dbo].[PRDD_MOVE_USER_LOGIN_OUT_TO_ARCHIVE](
@pARCHIVE_OLDER_THEN_IN_DAYS SMALLINT, -- Give the timespan you want to monitor in the past.
-- By giving 0, function will check sql table [TBDD_CATALOG] for global variables: <MODULE_NAME>_LICENSE_ARCHIVE_OLDER_THEN_IN_DAYS.
-- Failsafe value is 90 days.
@pTEST_MODE BIT = 0 -- Give 0, to insert, update and delete data or 1 to insert, update but NOT delete.
@pTEST_MODE BIT = 0 -- Give 0, to insert, update and delete data or 1 to just simulate.
)
AS
BEGIN TRY
@ -287,14 +287,15 @@ BEGIN TRY
SET @COMMENT = NULL;
END; ELSE BEGIN
SET @COMMENT = '!!##TEST-RUN##!!!';
PRINT concat(char(13),'INFO: Test mode is enabled! ','Will NOT delete source data from [TBDD_USER_LOGIN_OUT]...');
PRINT concat(char(13),'INFO: Test mode is enabled! ','Will NOT change any source data from [TBDD_USER_LOGIN_OUT]...');
SELECT * FROM @vTBDD_USER_LOGIN_OUT
END;
-----------------------------------------------------------------------------------------------------------------------------
--=====================================================-- main part --=====================================================--
IF (@USED_LICENSE_COUNT > 0) BEGIN
IF ((@USED_LICENSE_COUNT > 0) and (@TEST_MODE <> 1)) BEGIN
PRINT concat(char(13),'Found: ',@USED_LICENSE_COUNT,' lines to write in the archive!');
PRINT concat(char(13),'INFO: Found: ',@USED_LICENSE_COUNT,' lines to write in the archive!');
--===================================================-- loop clients --====================================================--
DECLARE CURSOR_vTBDD_CLIENT CURSOR
@ -310,7 +311,7 @@ BEGIN TRY
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT concat(char(13),'Processing @CLIENT_GUID: ',@CLIENT_GUID,', @CLIENT_NAME: ',@CLIENT_NAME,', @CLIENT_SHORT_NAME: ',@CLIENT_SHORT_NAME);
PRINT concat(char(13),'INFO: Processing @CLIENT_GUID: ',@CLIENT_GUID,', @CLIENT_NAME: ',@CLIENT_NAME,', @CLIENT_SHORT_NAME: ',@CLIENT_SHORT_NAME);
--===================================================-- loop modules --====================================================--
DECLARE CURSOR_vTBDD_MODULES CURSOR
@ -326,7 +327,7 @@ BEGIN TRY
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT concat(char(13),'Processing @MODULE_GUID: ',@MODULE_GUID,', @MODULE_NAME: ',@MODULE_NAME,', @MODULE_SHORT_NAME: ',@MODULE_SHORT_NAME);
PRINT concat(char(13),'INFO: Processing @MODULE_GUID: ',@MODULE_GUID,', @MODULE_NAME: ',@MODULE_NAME,', @MODULE_SHORT_NAME: ',@MODULE_SHORT_NAME);
--================================================-- loop login entrys --==================================================--
DECLARE CURSOR_vTBDD_USER_LOGIN_OUT CURSOR
@ -345,7 +346,7 @@ BEGIN TRY
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT concat(char(13),'Processing @LOGIN_DATE: ',@LOGIN_DATE,', @LOGIN_COUNT: ',@LOGIN_COUNT,', @CLIENT_GUID: ',@CLIENT_GUID,', @MODULE_GUID: ',@MODULE_GUID);
PRINT concat(char(13),'INFO: Processing @LOGIN_DATE: ',@LOGIN_DATE,', @LOGIN_COUNT: ',@LOGIN_COUNT,', @CLIENT_GUID: ',@CLIENT_GUID,', @MODULE_GUID: ',@MODULE_GUID);
BEGIN TRY
@ -353,7 +354,7 @@ BEGIN TRY
IF ((SELECT COUNT(*) FROM [TBDD_USER_LOGIN_OUT_HISTORY] WHERE [CLIENT_ID] = @CLIENT_GUID AND [MODULE_ID] = @MODULE_GUID AND [LOGIN_DATE] = @LOGIN_DATE AND [LOGIN_COUNT] < @LOGIN_COUNT) > 0) BEGIN
PRINT concat('Entry already exists, [LOGIN_COUNT] missmatch,',' updating [TBDD_USER_LOGIN_OUT_HISTORY]...','');
PRINT concat('INFO: Entry already exists, [LOGIN_COUNT] missmatch,',' updating [TBDD_USER_LOGIN_OUT_HISTORY]...','');
UPDATE [TBDD_USER_LOGIN_OUT_HISTORY]
SET [LOGIN_COUNT] = ([LOGIN_COUNT] + @LOGIN_COUNT),
[COMMENT] = @COMMENT,
@ -362,13 +363,13 @@ BEGIN TRY
END; ELSE BEGIN
PRINT concat('Entry already existis, [LOGIN_COUNT] matches,',' DONT updating [TBDD_USER_LOGIN_OUT_HISTORY]...','');
PRINT concat('WARNING: Entry already existis, [LOGIN_COUNT] matches,',' DONT updating [TBDD_USER_LOGIN_OUT_HISTORY]...','');
END;
END; ELSE BEGIN
PRINT concat('Insert into [TBDD_USER_LOGIN_OUT_HISTORY]...','');
PRINT concat('INFO: Insert into [TBDD_USER_LOGIN_OUT_HISTORY]...','');
INSERT INTO [TBDD_USER_LOGIN_OUT_HISTORY]([CLIENT_ID],[MODULE_ID],[LOGIN_DATE],[LOGIN_COUNT],[COMMENT],[ADDED_WHO],[ADDED_WHEN])
VALUES (@CLIENT_GUID, @MODULE_GUID, @LOGIN_DATE, @LOGIN_COUNT, @COMMENT, @MY_PROCEDURE_NAME, GETDATE());
@ -376,7 +377,7 @@ BEGIN TRY
IF (@TEST_MODE <> 1) BEGIN
PRINT concat('Operation successful! ',char(13),'Delete source data from [TBDD_USER_LOGIN_OUT]!');
PRINT concat('INFO: Operation successful! ',char(13),'Delete source data from [TBDD_USER_LOGIN_OUT]!');
DELETE FROM [TBDD_USER_LOGIN_OUT]
WHERE [CLIENT_ID] = @CLIENT_GUID
AND [MODULE] in (@MODULE_NAME,@MODULE_SHORT_NAME)
@ -384,13 +385,13 @@ BEGIN TRY
END; ELSE BEGIN
PRINT concat('Operation successful! ',char(13),'Will not delete source data from [TBDD_USER_LOGIN_OUT], because of test mode!');
PRINT concat('INFO: Operation successful! ',char(13),'Will not delete source data from [TBDD_USER_LOGIN_OUT], because of test mode!');
END;
END TRY BEGIN CATCH
PRINT concat(char(13),'An error occurred! Will not delete source data from [TBDD_USER_LOGIN_OUT]','');
PRINT concat(char(13),'ERROR: An error occurred! Will not delete source data from [TBDD_USER_LOGIN_OUT]','');
END CATCH;
@ -414,7 +415,7 @@ BEGIN TRY
END; ELSE BEGIN
PRINT concat(char(13),'Found no lines to write in the archive!');
PRINT concat(char(13),'WARNING: Found no lines to write in the archive!');
END;
-----------------------------------------------------------------------------------------------------------------------------