MS EnvelopeCReator, orgFLOW

This commit is contained in:
SchreiberM 2024-06-11 17:05:02 +02:00
parent 6c7d281233
commit f642309b27
6 changed files with 325 additions and 46 deletions

View File

@ -0,0 +1,7 @@
USE [DD_ECM]
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.7.6'
GO
INSERT INTO [TBDD_CATALOG] (CAT_TITLE,CAT_STRING) VALUES ('DDSUPPORT_PORTAL','https://digitaldata.works/support/')
GO

View File

@ -8,6 +8,8 @@ GO
ALTER TABLE TBDD_INDEX_AUTOM ADD VKT_OVERWRITE bit DEFAULT 0
GO
ALTER TABLE TBDD_INDEX_AUTOM ADD [SEQUENCE] INT DEFAULT 0
GO
ALTER VIEW [dbo].[VWDDINDEX_AUTOM]
AS

View File

@ -0,0 +1,57 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.3.0.0' where NAME = 'Process-Manager'
GO
IF NOT EXISTS(SELECT 1 FROM sys.columns
WHERE Name = N'SQL_BTN_REJECT'
AND Object_ID = Object_ID(N'dbo.TBPM_PROFILE'))
BEGIN
PRINT 'COLUMN [SQL_BTN_REJECT] NOT EXISTING...'
ALTER TABLE TBPM_PROFILE ADD SQL_BTN_REJECT NVARCHAR(MAX) NOT NULL DEFAULT ''
END
ELSE
PRINT 'COLUMN [SQL_BTN_REJECT] DOES EXIST'
GO
IF NOT EXISTS(SELECT 1 FROM sys.columns
WHERE Name = N'BTN_REJECT_CAPTION'
AND Object_ID = Object_ID(N'dbo.TBPM_PROFILE'))
BEGIN
PRINT 'COLUMN [BTN_REJECT_CAPTION] NOT EXISTING...'
ALTER TABLE TBPM_PROFILE ADD BTN_REJECT_CAPTION NVARCHAR(100) NOT NULL DEFAULT ''
END
ELSE
PRINT 'COLUMN [BTN_REJECT_CAPTION] DOES EXIST'
GO
ALTER PROCEDURE PRTF_PROFILE_LANGUAGE_PHRASES AS
DECLARe @ID VARCHAR(3),@TITLE VARCHAR(100),@DECR VARCHAR(100),@FINAL_TEXT VARCHAR(100),@REJ_TEXT VARCHAR(100)
DECLARE cur2 CURSOR FOR
select GUID, TITLE,DESCRIPTION,FINAL_TEXT,BTN_REJECT_CAPTION from TBPM_PROFILE
OPEN cur2
FETCH NEXT FROM cur2 INTO @ID,@TITLE,@DECR,@FINAL_TEXT,@REJ_TEXT
WHILE @@FETCH_STATUS = 0
BEGIN
Declare @IDTEXT VARCHAR(100)
SET @IDTEXT = 'PROFILE_TITLE' + @ID
PRINT @IDTEXT
EXEC PRDD_GUI_LANGUAGE_PHRASE 'PM',@IDTEXT,'de-DE','Title of Profile',@TITLE,'','System',@ID,0
IF @DECR IS NOT NULL
BEGIN
SET @IDTEXT = 'PROFILE_DESCRIPTION' + @ID
EXEC PRDD_GUI_LANGUAGE_PHRASE 'PM',@IDTEXT,'de-DE','Description of Profile',@DECR,'','System',@ID,0
END
IF @FINAL_TEXT IS NOT NULL
BEGIN
SET @IDTEXT = 'PROFILE_FINAL_TEXT' + @ID
EXEC PRDD_GUI_LANGUAGE_PHRASE 'PM',@IDTEXT,'de-DE','BTN_FINAL_CAPT',@FINAL_TEXT,'','System',@ID,0
END
IF LEN(@REJ_TEXT) > 0
BEGIN
SET @IDTEXT = 'PROFILE_REJECTION_CAPT' + @ID
EXEC PRDD_GUI_LANGUAGE_PHRASE 'PM',@IDTEXT,'de-DE', 'PROFILE_REJECTION_CAPT',@REJ_TEXT,'','System',@ID,0
END
FETCH NEXT FROM cur2 INTO @ID,@TITLE,@DECR,@FINAL_TEXT,@REJ_TEXT
END
CLOSE cur2
DEALLOCATE cur2

View File

@ -0,0 +1,22 @@
UPDATE TBDD_MODULES SET DB_VERSION = '1.1.0.3' WHERE SHORT_NAME = 'SIG_ENV_CR'
GO
ALTER TABLE [dbo].[TBSIG_EMAIL_TEMPLATE] ADD [ADDED_WHEN] DATETIME NOT NULL DEFAULT GETDATE();
ALTER TABLE [dbo].[TBSIG_EMAIL_TEMPLATE] ADD [CHANGED_WHEN] DATETIME ;
GO
CREATE TRIGGER [dbo].[TBSIG_EMAIL_TEMPLATE_AFT_UPD] ON [dbo].[TBSIG_EMAIL_TEMPLATE]
FOR UPDATE
AS
UPDATE TBSIG_EMAIL_TEMPLATE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBSIG_EMAIL_TEMPLATE.GUID = INSERTED.GUID
GO
ALTER TABLE [dbo].[TBSIG_CONFIG] ADD [ADDED_WHEN] DATETIME NOT NULL DEFAULT GETDATE();
ALTER TABLE [dbo].[TBSIG_CONFIG] ADD [CHANGED_WHEN] DATETIME ;
ALTER TABLE [dbo].[TBSIG_CONFIG] ADD [GUID] TINYINT NOT NULL DEFAULT 1;
GO
CREATE TRIGGER [dbo].[TBSIG_CONFIG_AFT_UPD] ON [dbo].[TBSIG_CONFIG]
FOR UPDATE
AS
UPDATE TBSIG_CONFIG SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBSIG_CONFIG.GUID = 1
GO

View File

@ -0,0 +1,191 @@
UPDATE TBDD_MODULES SET DB_VERSION = '1.1.0.4' WHERE SHORT_NAME = 'SIG_ENV_CR'
GO
ALTER TABLE [dbo].[TBSIG_EMAIL_TEMPLATE] ADD [LANG_CODE] VARCHAR(5) NOT NULL DEFAULT 'de-DE' ;
GO
ALTER TABLE [dbo].[TBSIG_ENVELOPE] ADD [LANG_CODE] VARCHAR(5) NOT NULL DEFAULT 'de-DE' ;
GO
ALTER VIEW VWSIG_ENVELOPE_DATA AS
SELECT
ENV.[GUID] ENVELOPE_ID
,[USER_ID]
,USR.EMAIL USER_EMAIL
,USR.PRENAME + ' ' + USR.NAME USER_PRE_NAME
,[STATUS] ENVELOPE_STATE
,[ENVELOPE_UUID]
,[LANG_CODE] ENV_LANG_CODE
,[MESSAGE]
,[EXPIRES_WHEN]
,[EXPIRES_WARNING_WHEN]
,ENV.[ADDED_WHEN]
,ENV.[CHANGED_WHEN]
,[TITLE]
,[CONTRACT_TYPE]
,ENV.[LANGUAGE]
,[SEND_REMINDER_EMAILS]
,[FIRST_REMINDER_DAYS]
,[REMINDER_INTERVAL_DAYS]
,[ENVELOPE_TYPE]
,[CERTIFICATION_TYPE]
,[USE_ACCESS_CODE]
,[FINAL_EMAIL_TO_CREATOR]
,[FINAL_EMAIL_TO_RECEIVERS]
,[EXPIRES_WHEN_DAYS]
,[EXPIRES_WARNING_WHEN_DAYS]
,[DMZ_MOVED]
FROM
[TBSIG_ENVELOPE] ENV INNER JOIN TBDD_USER USR ON ENV.USER_ID = USR.GUID
INSERT INTO TBSIG_EMAIL_TEMPLATE (NAME,BODY,SUBJECT) VALUES (
'DocumentRejected_ADM',
'Guten Tag [NAME_SENDER],
<p><I>[NAME_RECEIVER]</I></B> hat den Umschlag <B><I>''[DOCUMENT_TITLE]''</I></B> mit folgendem Grund abgelehnt: <p>
[REASON]
<p>Der Umschlag wurde auf den Status Abgelehnt gesetzt. <p>
Mit freundlichen Grüßen<br />
<br />
[NAME_PORTAL]',
'''[DOCUMENT_TITLE]'' - Unterzeichnungsvorgang zurückgezogen')
GO
INSERT INTO TBSIG_EMAIL_TEMPLATE (NAME,BODY,SUBJECT) VALUES (
'DocumentRejected_REC',
'Guten Tag [NAME_RECEIVER],
<p>Hiermit bestätigen wir Ihnen die Ablehnung des Unterzeichnungsvorganges <B><I>''[DOCUMENT_TITLE]''</I></B>!<p><B><I>[NAME_SENDER]/I></B> wurde über die Ablehnung informiert. <p>
Mit freundlichen Grüßen<br />
<br />
[NAME_PORTAL]',
'''[DOCUMENT_TITLE]'' - Bestätigung Ablehnung')
GO
INSERT INTO TBSIG_EMAIL_TEMPLATE (NAME,BODY,SUBJECT) VALUES (
'DocumentRejected_REC_2',
'Guten Tag [NAME_RECEIVER],
<p>Der Unterzeichnungsvorganges <B><I>''[DOCUMENT_TITLE]''</I></B> wurde durch einen anderen Vertragspartner abgelehnt! Ihre notwendige Unterzeichnung wurde verworfen.<p> Der Vertragsinhaber <B><I>[NAME_SENDER]/I></B> wird sich bei Bedarf mit Ihnen in Verbindung setzen. <p>
Mit freundlichen Grüßen<br />
<br />
[NAME_PORTAL]',
'''[DOCUMENT_TITLE]'' - Unterzeichnungsvorgang abgelehnt.')
GO
USE [DD_ECM]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--CHANGED 06.06.2024 MS Status 2007, emailMeldungen integriert
--CHANGED 11.06.2024 MS Status 2007, Cursor für andere REceiver
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 = 2005 /*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 = 2005
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
ELSE IF @STATUS = 2007 /*VORGANG DURCH USER ABGELEHNT*/
BEGIN
DECLARE @COMMENT VARCHAR(500),@REC_EMAIL VARCHAR(200),@EML_BODY_ADM VARCHAR(3000),@EML_SUBJ_ADM VARCHAR(3000),@EML_BODY_REC VARCHAR(3000),@EML_SUBJ_REC VARCHAR(3000),
@EML_BODY_REC2 VARCHAR(3000),@EML_SUBJ_REC2 VARCHAR(3000)
,@ADM_MAIL VARCHAR(250),@ADM_NAME VARCHAR(200),@TITLE VARCHAR(200),@NAME_PORTAL VARCHAR(100),@NAME_RECEIVER VARCHAR(150),@SENDING_PROFILE INT,@ENV_UUID VARCHAR(200)
SELECT @COMMENT = COMMENT,@REC_EMAIL = USER_REFERENCE FROM INSERTED
SELECT @NAME_PORTAL = [EXTERNAL_PROGRAM_NAME],@SENDING_PROFILE = SENDING_PROFILE FROM [DD_ECM].[dbo].[TBSIG_CONFIG];
SELECT @EML_BODY_ADM = BODY,@EML_SUBJ_ADM = SUBJECT FROM TBSIG_EMAIL_TEMPLATE WHERE NAME = 'DocumentRejected_ADM'
SELECT @EML_BODY_REC = BODY,@EML_SUBJ_REC = SUBJECT FROM TBSIG_EMAIL_TEMPLATE WHERE NAME = 'DocumentRejected_REC'
SELECT @EML_BODY_REC2 = BODY,@EML_SUBJ_REC2 = SUBJECT FROM TBSIG_EMAIL_TEMPLATE WHERE NAME = 'DocumentRejected_REC_2'
SELECT @ADM_MAIL = USER_EMAIL,@ADM_NAME = USER_PRE_NAME, @TITLE = TITLE,@ENV_UUID = [ENVELOPE_UUID] FROM VWSIG_ENVELOPE_DATA WHERE ENVELOPE_ID = @ENVELOPE_ID
SELECT @NAME_RECEIVER = [NAME] FROM [DD_ECM].[dbo].[VWSIG_ENVELOPE_RECEIVER] where ENV_ID = 1201 AND REC_EMAIL = @REC_EMAIL
SET @EML_BODY_ADM = REPLACE(@EML_BODY_ADM,'[NAME_SENDER]',@ADM_NAME)
SET @EML_BODY_ADM = REPLACE(@EML_BODY_ADM,'[NAME_RECEIVER]',@NAME_RECEIVER)
SET @EML_BODY_ADM = REPLACE(@EML_BODY_ADM,'[DOCUMENT_TITLE]',@TITLE)
SET @EML_BODY_ADM = REPLACE(@EML_BODY_ADM,'[REASON]',@COMMENT)
SET @EML_BODY_ADM = REPLACE(@EML_BODY_ADM,'[NAME_PORTAL]',@NAME_PORTAL)
SET @EML_SUBJ_ADM = REPLACE(@EML_SUBJ_ADM,'[DOCUMENT_TITLE]',@TITLE)
INSERT INTO [dbo].[TBEMLP_EMAIL_OUT] (EMAIL_ADRESS, EMAIL_SUBJ, EMAIL_BODY, ADDED_WHO, SENDING_PROFILE, REFERENCE_ID, REFERENCE_STRING, REMINDER_TYPE_ID, WF_ID)
VALUES (@ADM_MAIL, @EML_SUBJ_ADM, @EML_BODY_ADM, 'SIG RECEIVER REJECTED1', @SENDING_PROFILE, @ENVELOPE_ID, @ENV_UUID, 202377, @STATUS);
SET @EML_BODY_REC = REPLACE(@EML_BODY_REC,'[NAME_SENDER]',@ADM_NAME)
SET @EML_BODY_REC = REPLACE(@EML_BODY_REC,'[NAME_RECEIVER]',@NAME_RECEIVER)
SET @EML_BODY_REC = REPLACE(@EML_BODY_REC,'[DOCUMENT_TITLE]',@TITLE)
SET @EML_BODY_REC = REPLACE(@EML_BODY_REC,'[REASON]',@COMMENT)
SET @EML_BODY_REC = REPLACE(@EML_BODY_REC,'[NAME_PORTAL]',@NAME_PORTAL)
SET @EML_BODY_REC = REPLACE(@EML_BODY_REC,'[DOCUMENT_TITLE]',@TITLE)
SET @EML_SUBJ_REC = REPLACE(@EML_SUBJ_REC,'[DOCUMENT_TITLE]',@TITLE)
INSERT INTO [dbo].[TBEMLP_EMAIL_OUT] (EMAIL_ADRESS, EMAIL_SUBJ, EMAIL_BODY, ADDED_WHO, SENDING_PROFILE, REFERENCE_ID, REFERENCE_STRING, REMINDER_TYPE_ID, WF_ID)
VALUES (@REC_EMAIL, @EML_SUBJ_REC, @EML_BODY_REC, 'SIG RECEIVER REJECTED2', @SENDING_PROFILE, @ENVELOPE_ID, @ENV_UUID, 202377, @STATUS);
/*Andere Receiver über die Ablehnung informieren*/
SET @EML_BODY_REC2 = REPLACE(@EML_BODY_REC2,'[DOCUMENT_TITLE]',@TITLE)
DECLARE @BODY_RECEIVER NVARCHAR(MAX),@EML_RECEIVER2 VARCHAR(250)
DECLARE cursStrasse CURSOR FOR
SELECT [NAME], [REC_EMAIL] FROM [DD_ECM].[dbo].[VWSIG_ENVELOPE_RECEIVER] where ENV_ID = @ENVELOPE_ID AND REC_EMAIL <> @REC_EMAIL
OPEN cursStrasse
FETCH NEXT FROM cursStrasse INTO @NAME_RECEIVER,@EML_RECEIVER2
WHILE @@FETCH_STATUS = 0
BEGIN
SET @BODY_RECEIVER = @EML_BODY_REC2
SET @BODY_RECEIVER = REPLACE(@BODY_RECEIVER,'[NAME_SENDER]',@ADM_NAME)
SET @BODY_RECEIVER = REPLACE(@BODY_RECEIVER,'[NAME_RECEIVER]',@NAME_RECEIVER)
SET @BODY_RECEIVER = REPLACE(@BODY_RECEIVER,'[DOCUMENT_TITLE]',@TITLE)
SET @BODY_RECEIVER = REPLACE(@BODY_RECEIVER,'[REASON]',@COMMENT)
SET @BODY_RECEIVER = REPLACE(@BODY_RECEIVER,'[NAME_PORTAL]',@NAME_PORTAL)
SET @BODY_RECEIVER = REPLACE(@BODY_RECEIVER,'[DOCUMENT_TITLE]',@TITLE)
SET @BODY_RECEIVER = REPLACE(@BODY_RECEIVER,'[DOCUMENT_TITLE]',@TITLE)
INSERT INTO [dbo].[TBEMLP_EMAIL_OUT] (EMAIL_ADRESS, EMAIL_SUBJ, EMAIL_BODY, ADDED_WHO, SENDING_PROFILE, REFERENCE_ID, REFERENCE_STRING, REMINDER_TYPE_ID, WF_ID)
VALUES (@EML_RECEIVER2, @EML_BODY_REC2, @BODY_RECEIVER, 'SIG RECEIVER REJECTED3', @SENDING_PROFILE, @ENVELOPE_ID, @ENV_UUID, 202377, @STATUS);
FETCH NEXT FROM cursStrasse INTO @NAME_RECEIVER,@EML_RECEIVER2
END
CLOSE cursStrasse
DEALLOCATE cursStrasse
UPDATE TBSIG_ENVELOPE SET STATUS = 1009 WHERE GUID = @ENVELOPE_ID /*GELÖSCHT*/
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
GO