diff --git a/00_DB_SETUP_SINGLE/01_DD_ECM/1.9.7.5.sql b/00_DB_SETUP_SINGLE/01_DD_ECM/1.9.7.5.sql
new file mode 100644
index 0000000..946ba0c
--- /dev/null
+++ b/00_DB_SETUP_SINGLE/01_DD_ECM/1.9.7.5.sql
@@ -0,0 +1,11 @@
+USE [DD_ECM]
+
+UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.7.5'
+GO
+
+ALTER TABLE [dbo].[TBDD_EMAIL_TEMPLATE] ADD [LANGUAGE] varchar(5) DEFAULT 'de-DE';
+ALTER TABLE [dbo].[TBDD_EMAIL_TEMPLATE] ADD [CONNECTED_TEMPLATE] int DEFAULT 0;
+GO
+
+
+GO
\ No newline at end of file
diff --git a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CLEAN.sql b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CLEAN.sql
new file mode 100644
index 0000000..2bd17d8
--- /dev/null
+++ b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CLEAN.sql
@@ -0,0 +1,9 @@
+TRUNCATE TABLE TBSIG_ENVELOPE_HISTORY
+TRUNCATE TABLE TBSIG_ENVELOPE
+TRUNCATE TABLE TBSIG_RECEIVER
+TRUNCATE TABLE TBSIG_ENVELOPE_RECEIVER
+TRUNCATE TABLE TBSIG_DOCUMENT_RECEIVER_ELEMENT
+TRUNCATE TABLE TBSIG_DOCUMENT_STATUS
+TRUNCATE TABLE TBSIG_ENVELOPE_CERTIFICATE
+TRUNCATE TABLE TBSIG_ENVELOPE_DOCUMENT
+TRUNCATE TABLE TBSIG_USER_RECEIVER
\ No newline at end of file
diff --git a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE.sql b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE.sql
index 68563ff..8a94bb3 100644
Binary files a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE.sql and b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE.sql differ
diff --git a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_BACKUP_1372.sql b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_BACKUP_1372.sql
new file mode 100644
index 0000000..68563ff
Binary files /dev/null and b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_BACKUP_1372.sql differ
diff --git a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_BASE_1372.sql b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_BASE_1372.sql
new file mode 100644
index 0000000..e3998ab
Binary files /dev/null and b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_BASE_1372.sql differ
diff --git a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_LOCAL_1372.sql b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_LOCAL_1372.sql
new file mode 100644
index 0000000..68563ff
Binary files /dev/null and b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_LOCAL_1372.sql differ
diff --git a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_REMOTE_1372.sql b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_REMOTE_1372.sql
new file mode 100644
index 0000000..2de6c24
Binary files /dev/null and b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_CREATE_REMOTE_1372.sql differ
diff --git a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_DELETE.sql b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_DELETE.sql
index bf8c864..b0bae39 100644
--- a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_DELETE.sql
+++ b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/SIG_DELETE.sql
@@ -8,6 +8,7 @@ DROP TABLE TBSIG_ENVELOPE_CERTIFICATE
DROP TABLE TBSIG_ENVELOPE_DOCUMENT
DROP TABLE TBSIG_USER_RECEIVER
DROP TABLE TBSIG_CONFIG
+DROP TABLE TBSIG_ENVELOPE_TYPE
DROP VIEW VWSIG_ENVELOPE_REPORT
DROP VIEW VWSIG_ENVELOPE_RECEIVER
diff --git a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/Update/001_21_12_2023.sql b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/Update/001_21_12_2023.sql
new file mode 100644
index 0000000..7913565
--- /dev/null
+++ b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/Update/001_21_12_2023.sql
@@ -0,0 +1,81 @@
+USE [DD_ECM]
+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
+GO
+
+CREATE OR ALTER VIEW [dbo].[VWSIG_ENVELOPE_REPORT] as
+SELECT
+ T2.GUID AS ENVELOPE_ID
+ --- HEAD
+ ,T2.ENVELOPE_UUID HEAD_UUID
+ ,T2.TITLE HEAD_TITLE
+ ,T2.MESSAGE HEAD_MESSAGE
+ --- POSITIONS
+ ,T.STATUS POS_STATUS
+ ,T.ACTION_DATE POS_WHEN
+ ,T.USER_REFERENCE POS_WHO
+
+FROM TBSIG_ENVELOPE_HISTORY T
+JOIN TBSIG_ENVELOPE T2 ON T2.GUID = T.ENVELOPE_ID
+
+GO
+
diff --git a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/Update/002_09_01_2024.sql b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/Update/002_09_01_2024.sql
new file mode 100644
index 0000000..f30a5de
--- /dev/null
+++ b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/Update/002_09_01_2024.sql
@@ -0,0 +1,215 @@
+USE [DD_ECM]
+GO
+/****** Object: Trigger [dbo].[TBEMLP_EMAIL_OUT_AFT_UPD] Script Date: 09.01.2024 10:02:30 ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+--CREATED 07.12.2023 DD MS
+ALTER TRIGGER [dbo].[TBEMLP_EMAIL_OUT_AFT_UPD] ON [dbo].[TBEMLP_EMAIL_OUT]
+FOR UPDATE
+AS
+BEGIN
+ PRINT '[TBEMLP_EMAIL_OUT_AFT_UPD]...'
+ DECLARE
+ @GUID BIGINT,
+ @ENVELOPE_UUID VARCHAR(250),
+ @ENVELOPE_ID INTEGER,
+ @WF_ID INTEGER,
+ @USER_REFERENCE VARCHAR(100),
+ @EMAIL_SENT DATETIME,
+ @EMAIL_ADRESS VARCHAR(250)
+ SELECT @WF_ID = WF_ID FROM inserted;
+ IF UPDATE (EMAIL_SENT) AND @WF_ID IN (3001,3002,3003,3004)
+ BEGIN
+ SELECT @ENVELOPE_UUID = REFERENCE_STRING, @EMAIL_SENT = EMAIL_SENT,@ENVELOPE_ID = REFERENCE_ID, @EMAIL_ADRESS = EMAIL_ADRESS FROM inserted;
+ PRINT 'ENVELOPE MSG' + @ENVELOPE_UUID
+ DECLARE @USR2SIGN INT, @USERS_MAIL_SENT INT,@ENV_ID INT
+ INSERT INTO TBSIG_ENVELOPE_HISTORY (ENVELOPE_ID, USER_REFERENCE, STATUS, ACTION_DATE) VALUES
+ (@ENVELOPE_ID, @EMAIL_ADRESS, @WF_ID, @EMAIL_SENT)
+ END
+END
+GO
+
+USE [DD_ECM]
+GO
+/****** Object: Trigger [dbo].[TBSIG_ENVELOPE_HISTORY_AFT_INS] Script Date: 09.01.2024 10:01:34 ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+
+USE [DD_ECM]
+GO
+/****** Object: Trigger [dbo].[TBSIG_ENVELOPE_HISTORY_AFT_INS] Script Date: 11.01.2024 10:23:04 ******/
+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 = 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
+ 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
+
+CREATE TABLE [dbo].[TBSIG_ENVELOPE_TYPE](
+ [GUID] [int] IDENTITY(1,1) NOT NULL,
+ [TITLE] [nvarchar](128) NOT NULL,
+ [LANGUAGE] [nvarchar](5) NULL,
+ [EXPIRES_DAYS] [int] NULL,
+ [CERTIFICATION_TYPE] [int] NULL,
+ [USE_ACCESS_CODE] [bit] NULL,
+ [FINAL_EMAIL_TO_CREATOR] [int] NULL,
+ [FINAL_EMAIL_TO_RECEIVERS] [int] NULL,
+ [ADDED_WHEN] [datetime] NOT NULL,
+ [CHANGED_WHEN] [datetime] NULL,
+ [EXPIRES_WARNING_DAYS] [int] NULL,
+ [SEND_REMINDER_EMAILS] [bit] NULL,
+ [FIRST_REMINDER_DAYS] [int] NULL,
+ [REMINDER_INTERVAL_DAYS] [int] NULL,
+ [CONTRACT_TYPE] [int] NULL
+) ON [PRIMARY]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE_TYPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_TYPE_LANGUAGE] DEFAULT (N'((de-DE))') FOR [LANGUAGE]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE_TYPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_TYPE_EXPIRES_DAYS] DEFAULT ((0)) FOR [EXPIRES_DAYS]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE_TYPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_TYPE_CERTIFICATION_TYPE] DEFAULT ((0)) FOR [CERTIFICATION_TYPE]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE_TYPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_TYPE_USE_ACCESS_CODE] DEFAULT ((0)) FOR [USE_ACCESS_CODE]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE_TYPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_TYPE_FINAL_EMAIL_TO_CREATOR] DEFAULT ((0)) FOR [FINAL_EMAIL_TO_CREATOR]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE_TYPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_TYPE_FINAL_EMAIL_TO_RECEIVER] DEFAULT ((0)) FOR [FINAL_EMAIL_TO_RECEIVERS]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE_TYPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_TYPE_ADDED_WHEN] DEFAULT (getdate()) FOR [ADDED_WHEN]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE_TYPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_TYPE_CONTRACT_TYPE] DEFAULT ((1)) FOR [CONTRACT_TYPE]
+GO
+
+
+/* --- TBSIG_ENVELOPE --- */
+
+ALTER TABLE TBSIG_ENVELOPE ADD [LANGUAGE] [nvarchar](5) NULL
+GO
+
+ALTER TABLE TBSIG_ENVELOPE ADD [SEND_REMINDER_EMAILS] [bit] NULL
+GO
+
+ALTER TABLE TBSIG_ENVELOPE ADD [FIRST_REMINDER_DAYS] [int] NULL
+GO
+
+ALTER TABLE TBSIG_ENVELOPE ADD [REMINDER_INTERVAL_DAYS] [int] NULL
+GO
+
+ALTER TABLE TBSIG_ENVELOPE ADD [ENVELOPE_TYPE] [int] NULL
+GO
+
+ALTER TABLE TBSIG_ENVELOPE ADD [CERTIFICATION_TYPE] [int] NULL
+GO
+
+ALTER TABLE TBSIG_ENVELOPE ADD [USE_ACCESS_CODE] [bit] NULL
+GO
+
+ALTER TABLE TBSIG_ENVELOPE ADD [FINAL_EMAIL_TO_CREATOR] [int] NULL
+GO
+
+ALTER TABLE TBSIG_ENVELOPE ADD [FINAL_EMAIL_TO_RECEIVERS] [int] NULL
+GO
+
+ALTER TABLE TBSIG_ENVELOPE ADD [EXPIRES_WHEN_DAYS] [int] NULL
+GO
+
+ALTER TABLE TBSIG_ENVELOPE ADD [EXPIRES_WARNING_WHEN_DAYS] [int] NULL
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_SEND_REMINDER_EMAILS] DEFAULT ((0)) FOR [SEND_REMINDER_EMAILS]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_FIRST_REMINDER_DAYS] DEFAULT ((0)) FOR [FIRST_REMINDER_DAYS]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_REMINDER_INTERVAL_DAYS] DEFAULT ((0)) FOR [REMINDER_INTERVAL_DAYS]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_ENVELOPE_TYPE] DEFAULT ((0)) FOR [ENVELOPE_TYPE]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_CERTIFICATION_TYPE] DEFAULT ((1)) FOR [CERTIFICATION_TYPE]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_FINAL_EMAIL_TO_CREATOR] DEFAULT ((0)) FOR [FINAL_EMAIL_TO_CREATOR]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_FINAL_EMAIL_TO_RECEIVER] DEFAULT ((0)) FOR [FINAL_EMAIL_TO_RECEIVERS]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_EXPIRES_WHEN_DAYS] DEFAULT ((0)) FOR [EXPIRES_WHEN_DAYS]
+GO
+
+ALTER TABLE [dbo].[TBSIG_ENVELOPE] ADD CONSTRAINT [DF_TBSIG_ENVELOPE_EXPIRES_WARNING_WHEN_DAYS] DEFAULT ((0)) FOR [EXPIRES_WARNING_WHEN_DAYS]
+GO
\ No newline at end of file
diff --git a/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/Update/003_15_01_2024.sql b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/Update/003_15_01_2024.sql
new file mode 100644
index 0000000..331e952
--- /dev/null
+++ b/01_SMART_UP_TOOLS/10_ENVELOPE_CREATOR/Update/003_15_01_2024.sql
@@ -0,0 +1,112 @@
+USE [DD_ECM]
+GO
+
+SET ANSI_NULLS ON
+GO
+
+SET QUOTED_IDENTIFIER ON
+GO
+
+ALTER VIEW [dbo].[VWSIG_ENVELOPE_REPORT] as
+SELECT
+ T2.GUID AS ENVELOPE_ID
+ --- HEAD
+ ,T2.ENVELOPE_UUID HEAD_UUID
+ ,T2.TITLE HEAD_TITLE
+ ,T2.MESSAGE HEAD_MESSAGE
+ --- POSITIONS
+ ,T.STATUS POS_STATUS
+ ,T.ACTION_DATE POS_WHEN
+ ,T.USER_REFERENCE POS_WHO
+
+FROM TBSIG_ENVELOPE_HISTORY T
+JOIN TBSIG_ENVELOPE T2 ON T2.GUID = T.ENVELOPE_ID
+WHERE T.STATUS NOT IN (1005, 1006)
+GO
+
+CREATE TABLE [dbo].[TBSIG_EMAIL_TEMPLATE](
+ [GUID] [int] IDENTITY(1,1) NOT NULL,
+ [NAME] [nvarchar](64) NULL,
+ [BODY] [nvarchar](max) NULL,
+ [SUBJECT] [nvarchar](512) NULL
+) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
+GO
+SET IDENTITY_INSERT [dbo].[TBSIG_EMAIL_TEMPLATE] ON
+GO
+INSERT [dbo].[TBSIG_EMAIL_TEMPLATE] ([GUID], [NAME], [BODY], [SUBJECT]) VALUES (1, N'DocumentReceived', N'Guten Tag [NAME_RECEIVER],
+
+[NAME_SENDER] hat Ihnen ein Dokument zum [SIGNATURE_TYPE] gesendet.
+
+Über den folgenden Link können Sie das Dokument einsehen: [LINK_TO_DOCUMENT_TEXT]
+
+[MESSAGE]
+
+Mit freundlichen Grüßen
+
+[NAME_PORTAL]', N'Dokument erhalten: ''[DOCUMENT_TITLE]''')
+GO
+INSERT [dbo].[TBSIG_EMAIL_TEMPLATE] ([GUID], [NAME], [BODY], [SUBJECT]) VALUES (2, N'DocumentDeleted', N'Guten Tag [NAME_RECEIVER],
+
+[NAME_SENDER] hat den Umschlag ''[DOCUMENT_TITLE]'' gelöscht.
+
+Mit freundlichen Grüßen
+
+[NAME_PORTAL]', N'Umschlag zurückgezogen: ''[DOCUMENT_TITLE]''')
+GO
+INSERT [dbo].[TBSIG_EMAIL_TEMPLATE] ([GUID], [NAME], [BODY], [SUBJECT]) VALUES (3, N'DocumentSigned', N'Guten Tag [NAME_RECEIVER],
+
+hiermit bestätigen wir Ihnen die erfolgreiche Signatur für den Vorgang ''[DOCUMENT_TITLE]''.
+
+Mit freundlichen Grüßen
+
+[NAME_PORTAL]', N'Dokument unterschrieben: ''[DOCUMENT_TITLE]''')
+GO
+INSERT [dbo].[TBSIG_EMAIL_TEMPLATE] ([GUID], [NAME], [BODY], [SUBJECT]) VALUES (4, N'DocumentCompleted', N'Guten Tag [NAME_RECEIVER],
+
+Der Signaturvorgang ''[DOCUMENT_TITLE]'' wurde erfolgreich abgeschlossen.
+
+Sie erhalten das Dokument mit einem detaillierten Ergebnisbericht als Anhang zu dieser Email.
+
+Mit freundlichen Grüßen
+
+[NAME_PORTAL]', N'Umschlag abgeschlossen: ''[DOCUMENT_TITLE]''')
+GO
+INSERT [dbo].[TBSIG_EMAIL_TEMPLATE] ([GUID], [NAME], [BODY], [SUBJECT]) VALUES (5, N'DocumentAccessCodeReceived', N'Guten Tag [NAME_RECEIVER],
+
+[NAME_SENDER] hat Ihnen ein Dokument zum [SIGNATURE_TYPE] gesendet.
+
+Verwenden Sie den folgenden Zugriffscode, um das Dokument einzusehen:
+
+[DOCUMENT_ACCESS_CODE]
+
+Mit freundlichen Grüßen
+
+[NAME_PORTAL]', N'Zugriffscode für Dokument erhalten: ''[DOCUMENT_TITLE]''')
+GO
+SET IDENTITY_INSERT [dbo].[TBSIG_EMAIL_TEMPLATE] OFF
+GO
+
+ALTER TRIGGER [dbo].[TBEMLP_EMAIL_OUT_AFT_UPD] ON [dbo].[TBEMLP_EMAIL_OUT]
+FOR UPDATE
+AS
+BEGIN
+ PRINT '[TBEMLP_EMAIL_OUT_AFT_UPD]...'
+ DECLARE
+ @GUID BIGINT,
+ @ENVELOPE_UUID VARCHAR(250),
+ @ENVELOPE_ID INTEGER,
+ @WF_ID INTEGER,
+ @USER_REFERENCE VARCHAR(100),
+ @EMAIL_SENT DATETIME,
+ @EMAIL_ADRESS VARCHAR(250)
+ SELECT @WF_ID = WF_ID FROM inserted;
+ IF UPDATE (EMAIL_SENT) AND @WF_ID IN (3001,3002,3003,3004,3005)
+ BEGIN
+ SELECT @ENVELOPE_UUID = REFERENCE_STRING, @EMAIL_SENT = EMAIL_SENT,@ENVELOPE_ID = REFERENCE_ID, @EMAIL_ADRESS = EMAIL_ADRESS FROM inserted;
+ PRINT 'ENVELOPE MSG' + @ENVELOPE_UUID
+ DECLARE @USR2SIGN INT, @USERS_MAIL_SENT INT,@ENV_ID INT
+ INSERT INTO TBSIG_ENVELOPE_HISTORY (ENVELOPE_ID, USER_REFERENCE, STATUS, ACTION_DATE) VALUES
+ (@ENVELOPE_ID, @EMAIL_ADRESS, @WF_ID, @EMAIL_SENT)
+ END
+END
+GO
diff --git a/15_JobRunner/CREATE_DB_OBJECTS.sql b/15_JobRunner/CREATE_DB_OBJECTS.sql
new file mode 100644
index 0000000..883451f
--- /dev/null
+++ b/15_JobRunner/CREATE_DB_OBJECTS.sql
@@ -0,0 +1,106 @@
+USE [DD_ECM]
+GO
+/****** Object: Table [dbo].[TBCUST_JOBRUNNER_MAPPING] Script Date: 23.01.2024 13:56:22 ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+CREATE TABLE [dbo].[TBCUST_JOBRUNNER_MAPPING](
+ [GUID] [int] IDENTITY(1,1) NOT NULL,
+ [SourcePath] [varchar](200) NOT NULL,
+ [DestinationColumn] [varchar](200) NOT NULL,
+ [ADDED_WHO] [varchar](100) NOT NULL,
+ [ADDED_WHEN] [datetime] NULL,
+ CONSTRAINT [PK_TBCUST_JOBRUNNER_MAPPING_GUID] PRIMARY KEY CLUSTERED
+(
+ [GUID] ASC
+)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
+ CONSTRAINT [UQ_TBCUST_JOBRUNNER_MAPPING] UNIQUE NONCLUSTERED
+(
+ [SourcePath] ASC,
+ [DestinationColumn] ASC
+)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
+) ON [PRIMARY]
+GO
+/****** Object: Table [dbo].[TBCUST_JOBRUNNER_QUERY] Script Date: 23.01.2024 13:56:22 ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+CREATE TABLE [dbo].[TBCUST_JOBRUNNER_QUERY](
+ [GUID] [int] IDENTITY(1,1) NOT NULL,
+ [TITLE] [varchar](200) NOT NULL,
+ [CON_ID] [smallint] NOT NULL,
+ [QUERY_STRING] [varchar](4000) NOT NULL,
+ [OPERATION_NAME] [varchar](200) NOT NULL,
+ [DESTINATION_TABLE] [varchar](200) NOT NULL,
+ [CLEAR_BEFORE_FILL] [bit] NOT NULL,
+ [MAPPING_BASE_PATH] [varchar](200) NOT NULL,
+ [COMMENT] [varchar](250) NULL,
+ [ADDED_WHO] [varchar](100) NOT NULL,
+ [ADDED_WHEN] [datetime] NULL,
+ [SEQUENCE] [int] NOT NULL,
+ CONSTRAINT [PK_TBCUST_JOBRUNNER_QUERY_GUID] PRIMARY KEY CLUSTERED
+(
+ [GUID] ASC
+)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
+ CONSTRAINT [UQ_TBCUST_JOBRUNNER_NAME] UNIQUE NONCLUSTERED
+(
+ [TITLE] ASC
+)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
+ CONSTRAINT [UQ_TBCUST_JOBRUNNER_QUERY_STRING] UNIQUE NONCLUSTERED
+(
+ [QUERY_STRING] ASC
+)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
+) ON [PRIMARY]
+GO
+/****** Object: Table [dbo].[TBCUST_JOBRUNNER_QUERY_MAPPING] Script Date: 23.01.2024 13:56:22 ******/
+SET ANSI_NULLS ON
+GO
+SET QUOTED_IDENTIFIER ON
+GO
+CREATE TABLE [dbo].[TBCUST_JOBRUNNER_QUERY_MAPPING](
+ [GUID] [int] IDENTITY(1,1) NOT NULL,
+ [QUERY_ID] [int] NOT NULL,
+ [MAPPING_ID] [int] NOT NULL,
+ [ADDED_WHO] [varchar](100) NOT NULL,
+ [ADDED_WHEN] [datetime] NULL,
+ CONSTRAINT [PK_TBCUST_JOBRUNNER_QUERY_MAPPING_GUID] PRIMARY KEY CLUSTERED
+(
+ [GUID] ASC
+)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
+ CONSTRAINT [FK_TBCUST_JOBRUNNER_QUERY_MAPPING] UNIQUE NONCLUSTERED
+(
+ [QUERY_ID] ASC,
+ [MAPPING_ID] ASC
+)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
+) ON [PRIMARY]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_MAPPING] ADD DEFAULT ('Digital Data') FOR [ADDED_WHO]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_MAPPING] ADD DEFAULT (getdate()) FOR [ADDED_WHEN]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY] ADD CONSTRAINT [DF__TBCUST_JO__CLEAR__6EEB59C5] DEFAULT ((0)) FOR [CLEAR_BEFORE_FILL]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY] ADD CONSTRAINT [DF__TBCUST_JO__MAPPI__6FDF7DFE] DEFAULT ('') FOR [MAPPING_BASE_PATH]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY] ADD CONSTRAINT [DF__TBCUST_JO__ADDED__70D3A237] DEFAULT ('Digital Data') FOR [ADDED_WHO]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY] ADD CONSTRAINT [DF__TBCUST_JO__ADDED__71C7C670] DEFAULT (getdate()) FOR [ADDED_WHEN]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY] ADD CONSTRAINT [DF_TBCUST_JOBRUNNER_QUERY_SEQUENCE] DEFAULT ((0)) FOR [SEQUENCE]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY_MAPPING] ADD DEFAULT ('Digital Data') FOR [ADDED_WHO]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY_MAPPING] ADD DEFAULT (getdate()) FOR [ADDED_WHEN]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY_MAPPING] WITH CHECK ADD CONSTRAINT [FK_TBCUST_JOBRUNNER_QUERY_MAPPING_MAPPING_ID] FOREIGN KEY([MAPPING_ID])
+REFERENCES [dbo].[TBCUST_JOBRUNNER_MAPPING] ([GUID])
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY_MAPPING] CHECK CONSTRAINT [FK_TBCUST_JOBRUNNER_QUERY_MAPPING_MAPPING_ID]
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY_MAPPING] WITH CHECK ADD CONSTRAINT [FK_TBCUST_JOBRUNNER_QUERY_MAPPING_QUERY_ID] FOREIGN KEY([QUERY_ID])
+REFERENCES [dbo].[TBCUST_JOBRUNNER_QUERY] ([GUID])
+GO
+ALTER TABLE [dbo].[TBCUST_JOBRUNNER_QUERY_MAPPING] CHECK CONSTRAINT [FK_TBCUST_JOBRUNNER_QUERY_MAPPING_QUERY_ID]
+GO
diff --git a/15_JobRunner/Updates/001_23_01_2024.sql b/15_JobRunner/Updates/001_23_01_2024.sql
new file mode 100644
index 0000000..8837ff3
--- /dev/null
+++ b/15_JobRunner/Updates/001_23_01_2024.sql
@@ -0,0 +1,10 @@
+USE DD_ECM
+
+IF NOT EXISTS(SELECT 1 FROM sys.columns
+ WHERE Name = N'ACTIVE'
+ AND Object_ID = Object_ID(N'dbo.TBCUST_JOBRUNNER_QUERY'))
+BEGIN
+ -- Column Exists
+ ALTER TABLE TBCUST_JOBRUNNER_QUERY ADD ACTIVE BIT NOT NULL DEFAULT 1
+END
+GO
\ No newline at end of file