01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/Update/001_21_12_2023.sql hinzugefügt

This commit is contained in:
JenneJ 2023-12-21 12:11:33 +01:00
parent a765b96e6a
commit 32dafd7594

View File

@ -0,0 +1,67 @@
USE [DD_ECM]
GO
/****** Object: Trigger [dbo].[TBSIG_ENVELOPE_HISTORY_AFT_INS] Script Date: 21.12.2023 12:02:51 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/****** Object: Trigger [dbo].[TBSIG_ENVELOPE_HISTORY_AFT_INS] Script Date: 05.12.2023 15:50:11 ******/
ALTER TRIGGER [dbo].[TBSIG_ENVELOPE_HISTORY_AFT_INS] ON [dbo].[TBSIG_ENVELOPE_HISTORY]
WITH EXECUTE AS CALLER
FOR INSERT
AS
BEGIN TRY
DECLARE
@GUID BIGINT,
@ENVELOPE_ID INTEGER,
@STATUS INTEGER,
@USER_REFERENCE VARCHAR(100)
SELECT
@GUID = GUID,
@ENVELOPE_ID = ENVELOPE_ID,
@STATUS = STATUS,
@USER_REFERENCE = USER_REFERENCE
FROM INSERTED
--PRÜFEN OB ES EIN STATUS VOM WEBCLIENT IST 0 2
IF LEFT(CONVERT(VARCHAR(4),@STATUS),1) = 1
BEGIN
IF @STATUS IN (1001, 1002, 1003, 1007, 1008, 1009) /*ENVELOPE QUEUED*/
UPDATE TBSIG_ENVELOPE SET STATUS = @STATUS WHERE GUID = @ENVELOPE_ID
END
ELSE IF LEFT(CONVERT(VARCHAR(4),@STATUS),1) = 2
BEGIN
IF @STATUS = 2002 /*DOKUMENT SIGINIERT*/
BEGIN
DECLARE @COUNT_SIGNED INT, @COUNT_SIGNERS INT
SELECT @COUNT_SIGNED = COUNT(GUID) FROM TBSIG_ENVELOPE_HISTORY WHERE ENVELOPE_ID = @ENVELOPE_ID AND STATUS = 2002
SELECT @COUNT_SIGNERS = COUNT(REC_ID) FROM VWSIG_ENVELOPE_RECEIVER WHERE ENV_ID = @ENVELOPE_ID
IF @COUNT_SIGNED = @COUNT_SIGNERS
BEGIN
UPDATE TBSIG_ENVELOPE SET STATUS = 1006 WHERE GUID = @ENVELOPE_ID /*FULLY SIGNED*/
INSERT INTO TBSIG_ENVELOPE_HISTORY (ENVELOPE_ID, USER_REFERENCE, STATUS, ACTION_DATE) VALUES (@ENVELOPE_ID, 'System', 1006, DATEADD(second, 5, GETDATE()))
END
ELSE
UPDATE TBSIG_ENVELOPE SET STATUS = 1005 WHERE GUID = @ENVELOPE_ID /*PARTLY SIGNED*/
END
END
ELSE IF LEFT(CONVERT(VARCHAR(4),@STATUS),1) = 3
IF @STATUS = 3001 /*EMAIL OUT SIGNATUREINLADUNG*/
BEGIN
DECLARE @COUNT_MSG_OUT INT, @COUNT_USERS2_SIGN INT
SELECT @COUNT_MSG_OUT = COUNT(GUID) FROM TBSIG_ENVELOPE_HISTORY WHERE ENVELOPE_ID = @ENVELOPE_ID AND STATUS = 3001
PRINT '@COUNT_MSG_OUT:' + CONVERT(VARCHAR(3),@COUNT_MSG_OUT)
SELECT @COUNT_USERS2_SIGN = COUNT(REC_ID) FROM VWSIG_ENVELOPE_RECEIVER WHERE ENV_ID = @ENVELOPE_ID
PRINT '@@COUNT_USERS2_SIGN:' + CONVERT(VARCHAR(3),@COUNT_USERS2_SIGN)
IF @COUNT_MSG_OUT = @COUNT_USERS2_SIGN
UPDATE TBSIG_ENVELOPE SET STATUS = 1004 WHERE GUID = @ENVELOPE_ID /*ALL INVITATIONS SENT*/
-- INSERT INTO TBSIG_ENVELOPE_HISTORY (ENVELOPE_ID,USER_REFERENCE,STATUS,ACTION_DATE) VALUES (@ENVELOPE_ID,'Digital Data Email-Service',1004,GETDATE())
END
END TRY
BEGIN CATCH
PRINT 'ERROR IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE())
+ ' - ERROR-MESSAGE: '
+ CONVERT(VARCHAR(500),ERROR_MESSAGE())
END CATCH