From 18a8b13cb3aa4c0a47fcb1c559fea213b29b3263 Mon Sep 17 00:00:00 2001 From: Digital Data - Marlon Schreiber Date: Fri, 21 Jan 2022 14:26:29 +0100 Subject: [PATCH 1/9] MS IDB/PM --- 00_DD/DD_ECM.sql | 111 +++ 00_IDB/CreateDBObjects.sql | 246 +++++- 01_PM/CreateDBObjects.sql | 1475 ++++++++++++++++++++---------------- 3 files changed, 1155 insertions(+), 677 deletions(-) diff --git a/00_DD/DD_ECM.sql b/00_DD/DD_ECM.sql index 53afca3..a74f0ea 100644 --- a/00_DD/DD_ECM.sql +++ b/00_DD/DD_ECM.sql @@ -1366,6 +1366,117 @@ GO Insert Into TBDD_GUI_LANGUAGE_PHRASE (MODULE,TITLE,LANGUAGE,CAPT_TYPE,STRING1,STRING2,OBJ_NAME) VALUES ('PM','frmValidator.Conversation_Delete','de-DE','MsgboxResult','Wollen Sie die Konversation beenden?','Nachfrage','frmValidator'); Insert Into TBDD_GUI_LANGUAGE_PHRASE (MODULE,TITLE,LANGUAGE,CAPT_TYPE,STRING1,STRING2,OBJ_NAME) VALUES ('PM','frmValidator.Conversation_Delete','en-US','MsgboxResult','Would You like to end this conversation?','Question','frmValidator'); GO +CREATE TABLE [dbo].[TBDD_MONITORING_RESULT]( + [USR_ID] INTEGER NULL, + [GUID] INTEGER NULL, + [PARENT_ID] INTEGER NULL, + [STATE] VARCHAR(100) DEFAULT 'DEFAULT', + [ICON] VARCHAR(100) NULL, + [COLUMN1] VARCHAR(500) NULL, + [COLUMN2] VARCHAR(500) NULL, + [COLUMN3] VARCHAR(500) NULL, + [ADDED_WHEN] DATETIME NULL, + [SELECT1] NVARCHAR(max) NULL, + [SELECT2] NVARCHAR(max) NULL, + [SELECT3] NVARCHAR(max) NULL, + [SELECT4] NVARCHAR(max) NULL, + [DOCVIEW1] NVARCHAR(512) NULL, + [DOCVIEW2] NVARCHAR(512) NULL, + [HTML1] NVARCHAR(max) NULL, + [HTML2] NVARCHAR(max) NULL +) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] + +GO +CREATE PROCEDURE [dbo].[PRDD_MONITORING_GET_TREEVIEW_RESULT] @TYPE VARCHAR(100),@PARAM1 NVARCHAR(500),@PARAM2 NVARCHAR(500),@PARAM3 NVARCHAR(500),@USR_ID INTEGER +AS +BEGIN + DECLARE @TBResult TABLE ( + GUID INTEGER, + PARENT_ID INTEGER, + -- + -- STATE + -- Options: SUCCESS, FAILURE, WARNING, WAITING, DEFAULT + -- + STATE VARCHAR(100) DEFAULT 'DEFAULT', + -- + -- ICON + -- Options: MAIL, PDF, HTML + -- + ICON VARCHAR(100), + COLUMN1 VARCHAR(500), + COLUMN2 VARCHAR(500), + COLUMN3 VARCHAR(500), + ADDED_WHEN DATETIME, + SELECT1 NVARCHAR(MAX), + SELECT2 NVARCHAR(MAX), + SELECT3 NVARCHAR(MAX), + SELECT4 NVARCHAR(MAX), + DOCVIEW1 NVARCHAR(512), + DOCVIEW2 NVARCHAR(512), + HTML1 NVARCHAR(MAX), + HTML2 NVARCHAR(MAX) + ) + + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (1,0,GETDATE()-10,'EMAIL-EINGANG','SUCCESS') + INSERT INTO @TBResult (GUID,PARENT_ID,COLUMN1,COLUMN2) VALUES (2,1,'Datum/Uhrzeit','2021-05-11 07:28:25') + INSERT INTO @TBResult (GUID,PARENT_ID,COLUMN1,COLUMN2) VALUES (3,1,'Email-Versender','m.schreiber@digitaldata.works') + INSERT INTO @TBResult (GUID,PARENT_ID,COLUMN1,COLUMN2) VALUES (4,1,'Betreff','Das Subject aus der Mail') + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (5,0,GETDATE()-8,'ZUGFeRD-Parser gestartet','SUCCESS') + INSERT INTO @TBResult (GUID,PARENT_ID,ICON,COLUMN1,SELECT1) VALUES (6,5,'SQL','Click for Result','SELECT * FROM TBEDMI_ITEM_VALUE WHERE REFERENCE_GUID = ''350614162.18783.1593150528181@W2K8SRV0036030008840''|EDMI_ITEM_VALUE') + INSERT INTO @TBResult (GUID,PARENT_ID,ICON,COLUMN1,DOCVIEW1) VALUES (7,5,'MAIL','OriginalMail','\\Windream\Objects\SWE_157906_Neggers~4-21_01_28.msg|Original Email') + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (8,5,GETDATE()-6,'Beleg Abgelehnt','WARNING') + INSERT INTO @TBResult (GUID,PARENT_ID,ICON,COLUMN1,HTML1) VALUES (9,8,'MAIL','Ablehnungsmail','Sehr geehrte Damen und Herren,
das WISAG-Portal zur Verarbeitung der Eingangsrechnungen + im ZUGFeRD-Format konnte die von Ihnen gesandte Rechnung 5403008595 leider nicht verarbeiten!
Letzter Bearbeiter in unserem Hause: Melanie Leilich - Melanie.Leilich@wisag.de

+ Ablehnung, da die Rechnung mit der Gutschrift 5403008596 verrechnet wird.
Letzter Bearbeiter in unserem Hause: Melanie Leilich

Bitte prüfen Sie die Datei und nehmen Sie bei Bedarf mit uns Kontakt auf.

+ Vielen Dank für Ihr Verständnis.
Mit freundlichen Grüßen
Ihre IT-Abteilung|Ablehnungsmail') + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (10,0,GETDATE()-5,'Finale Freigabe','SUCCESS') + INSERT INTO @TBResult (GUID,PARENT_ID,COLUMN1,COLUMN2) VALUES (11,10,'Finaler Freigaber','d.schipper') + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (12,0,GETDATE()-5,'Ergebnisbericht erzeugt','SUCCESS') + INSERT INTO @TBResult (GUID,PARENT_ID,ICON,COLUMN1,DOCVIEW1) VALUES (13,12,'FILE','Ergebnisbericht','\\Windream\Objects\Globix-Test\4-20_06_08~8.pdf|Ergebnisbericht') + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (14,0,GETDATE()-4,'An SAP übergeben','WAITING') + + SELECT * FROM @TBResult +END +GO + +CREATE TABLE TBDD_MONITORING_PROFILE( + GUID INTEGER NOT NULL IDENTITY(1,1), + TITLE VARCHAR(30) NOT NULL, + DESCRIPTION VARCHAR(100), + ACTIVE BIT NOT NULL DEFAULT 1, + SEQUENCE TINYINT NOT NULL DEFAULT 1, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHEN DATETIME, +CONSTRAINT [PK_TBDD_MONITORING_PROFILE] PRIMARY KEY(GUID)) +GO + +CREATE TRIGGER [dbo].[TBDD_MONITORING_PROFILE_AFT_UPD] ON [dbo].[TBDD_MONITORING_PROFILE] +FOR UPDATE +AS +BEGIN + UPDATE TBDD_MONITORING_PROFILE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_MONITORING_PROFILE.GUID = INSERTED.GUID +END +GO +CREATE TABLE TBDD_MONITORING_PROFILE_ATTRIBUTES( + GUID INTEGER NOT NULL IDENTITY(1,1), + MONITOR_PROFILE_ID INTEGER NOT NULL, + [CAPTION] VARCHAR(100) NOT NULL, + DESCRIPTION VARCHAR(100), + ACTIVE BIT NOT NULL DEFAULT 1, + SEQUENCE TINYINT NOT NULL DEFAULT 1, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHEN DATETIME, +CONSTRAINT [PK_TBDD_MONITORING_PROFILE_ATTRIBUTES] PRIMARY KEY(GUID), +CONSTRAINT FK_TBDD_MONITORING_PROF_ATTR_MPID FOREIGN KEY (MONITOR_PROFILE_ID) REFERENCES TBDD_MONITORING_PROFILE (GUID)) +GO + +CREATE TRIGGER [dbo].[TBDD_MONITORING_PROFILE_ATTRIBUTES_AFT_UPD] ON [dbo].TBDD_MONITORING_PROFILE_ATTRIBUTES +FOR UPDATE +AS +BEGIN + UPDATE TBDD_MONITORING_PROFILE_ATTRIBUTES SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_MONITORING_PROFILE_ATTRIBUTES.GUID = INSERTED.GUID +END +GO --############################################ --##########PROCEDURES######################## --############################################ diff --git a/00_IDB/CreateDBObjects.sql b/00_IDB/CreateDBObjects.sql index b4fb2ca..05871cd 100644 --- a/00_IDB/CreateDBObjects.sql +++ b/00_IDB/CreateDBObjects.sql @@ -1541,6 +1541,71 @@ CREATE NONCLUSTERED INDEX [IDXTBIDB_OBJECT_METADATA5] ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID],[DEC_TERM_ID]) INCLUDE ([IDB_OBJ_ID],[ADDED_WHO],[ADDED_WHEN]) GO +CREATE TABLE TBIDB_OBJ_STATES +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + TITLE VARCHAR(500), + ADDED_WHO BIGINT, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHO BIGINT, + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_OBJ_STATES PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_OBJ_STATES UNIQUE (TITLE) + ) +GO +CREATE TRIGGER TBIDB_OBJ_STATES_AFT_UPD ON TBIDB_OBJ_STATES +FOR UPDATE +AS + UPDATE TBIDB_OBJ_STATES SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_OBJ_STATES.GUID = INSERTED.GUID +GO +CREATE TABLE TBIDB_OBJ_STATES_LANGUAGE +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + STATE_ID INTEGER NOT NULL, + LANG_ID TINYINT NOT NULL, + TERM_ID BIGINT NOT NULL, + ADDED_WHO BIGINT, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHO BIGINT, + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_OBJ_STATES_LANGUAGE PRIMARY KEY (GUID), + CONSTRAINT FK_TBIDB_OBJ_STATES_LANGUAGE_STATEID FOREIGN KEY (STATE_ID) REFERENCES TBIDB_OBJ_STATES (GUID), + CONSTRAINT FK_TBIDB_OBJ_STATES_LANGUAGE_LANGID FOREIGN KEY (LANG_ID) REFERENCES TBIDB_LANGUAGE (GUID), + CONSTRAINT FK_TBIDB_OBJ_STATES_LANGUAGE_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), + CONSTRAINT FK_TBIDB_OBJ_STATES_LANGUAGE_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) +GO +CREATE TRIGGER TBIDB_OBJ_STATES_LANGUAGE_AFT_UPD ON TBIDB_OBJ_STATES_LANGUAGE +FOR UPDATE +AS + UPDATE TBIDB_OBJ_STATES_LANGUAGE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_OBJ_STATES_LANGUAGE.GUID = INSERTED.GUID +GO + +CREATE TABLE TBIDB_OBJ_MY_STATES +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + IDB_OBJ_ID BIGINT NOT NULL, + STATE_ID INTEGER NOT NULL, + ADDED_WHO BIGINT, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHO BIGINT, + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_OBJ_MY_STATES PRIMARY KEY (GUID), + CONSTRAINT FK_TBIDB_OBJ_MY_STATES_IDBOBJID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), + CONSTRAINT FK_TBIDB_OBJ_MY_STATES_STATE_ID FOREIGN KEY (STATE_ID) REFERENCES TBIDB_OBJ_STATES (GUID), + CONSTRAINT FK_TBIDB_OBJ_MY_STATES_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), + CONSTRAINT FK_TBIDB_OBJ_MY_STATES_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) +GO +CREATE TRIGGER TBIDB_OBJ_MY_STATES_AFT_UPD ON TBIDB_OBJ_MY_STATES +FOR UPDATE +AS + UPDATE TBIDB_OBJ_MY_STATES SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_OBJ_MY_STATES.GUID = INSERTED.GUID +GO /*########################### ######### FUNCTIONS ######### #############################*/ @@ -2745,7 +2810,107 @@ GO ############## PROCEDURES ################### #############################################*/ +CREATE PROCEDURE [dbo].[PRIDB_NEW_STATE_OBJECT] @pIDB_OBJ_ID BIGINT, @pSYSSTATE VARCHAR(100),@pWHO VARCHAR(100) +AS +BEGIN + DECLARE + @LANG_ID INTEGER, + @STATE_ID INTEGER + + SELECT @STATE_ID = GUID FROM TBIDB_OBJ_STATES WHERE TITLE = @pSYSSTATE; + + DECLARE @ADDED_WHO_TERM_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @ADDED_WHO_TERM_ID OUTPUT; + + INSERT INTO TBIDB_OBJ_MY_STATES (IDB_OBJ_ID,STATE_ID,ADDED_WHO) VALUES (@pIDB_OBJ_ID,@STATE_ID,@ADDED_WHO_TERM_ID); +END +GO + +ALTER PROCEDURE [dbo].[PRIDB_NEW_IDB_OBJECT_STATE] @pSYSSTATE VARCHAR(512),@pWHO VARCHAR(100) +AS +BEGIN + DECLARE + @LANG_ID TINYINT, + @pLANG_CODE VARCHAR(5), + @STATE_ID INTEGER + + DECLARE @WHO_TERM_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT; + DECLARE @STATE_TERM_ID BIGINT,@LANG_STATE_TERM_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@pSYSSTATE,@pWHO,@TERM_ID = @STATE_TERM_ID OUTPUT; + + IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJ_STATES WHERE TITLE = @pSYSSTATE) + BEGIN + INSERT INTO TBIDB_OBJ_STATES (TITLE,ADDED_WHO) VALUES (@pSYSSTATE,@WHO_TERM_ID) + END + SELECT @STATE_ID = GUID FROM TBIDB_OBJ_STATES WHERE TITLE = @pSYSSTATE; + + DECLARE c_PRIDB_NEW_IDB_OBJECT_STATE CURSOR FOR + select GUID,LANG_CODE FROM TBIDB_LANGUAGE + OPEN c_PRIDB_NEW_IDB_OBJECT_STATE + FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE + WHILE @@FETCH_STATUS = 0 + BEGIN + IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJ_STATES_LANGUAGE WHERE STATE_ID = @STATE_ID AND LANG_ID = @LANG_ID) + INSERT INTO TBIDB_OBJ_STATES_LANGUAGE (STATE_ID,LANG_ID,TERM_ID,ADDED_WHO) VALUES (@STATE_ID,@LANG_ID,@STATE_TERM_ID,@WHO_TERM_ID) + FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE + END + CLOSE c_PRIDB_NEW_IDB_OBJECT_STATE + DEALLOCATE c_PRIDB_NEW_IDB_OBJECT_STATE +END +GO +EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File Versioned', 'Digital Data'; +EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File added', 'Digital Data'; +EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File changed', 'Digital Data'; +EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File deleted', 'Digital Data'; +EXEC PRIDB_NEW_IDB_OBJECT_STATE 'Metadata changed', 'Digital Data'; +EXEC PRIDB_NEW_IDB_OBJECT_STATE 'Attributevalue deleted', 'Digital Data'; +GO + +CREATE PROCEDURE [dbo].[PRIDB_UPDATE_IDB_OBJECT_STATE] @pOLD_TERM VARCHAR(512), @pNEW_TERM VARCHAR(512),@pLANG_CODE VARCHAR(5),@pWHO VARCHAR(100) +AS +BEGIN + DECLARE + @LANG_ID TINYINT, + @STATE_ID INTEGER + + DECLARE @WHO_TERM_ID BIGINT + SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE; + EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT; + DECLARE @NEW_STATE_TERM_ID BIGINT,@OLD_STATE_TERM_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@pNEW_TERM,@pWHO,@TERM_ID = @NEW_STATE_TERM_ID OUTPUT; + EXEC PRIDB_NEW_TERM 'VARCHAR',@pOLD_TERM,@pWHO,@TERM_ID = @OLD_STATE_TERM_ID OUTPUT; + UPDATE TBIDB_OBJ_STATES_LANGUAGE SET TERM_ID = @NEW_STATE_TERM_ID,CHANGED_WHO = @WHO_TERM_ID WHERE TERM_ID = @OLD_STATE_TERM_ID AND LANG_ID = @LANG_ID + AND TERM_ID <> @NEW_STATE_TERM_ID + +END +GO +EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'File Versioned','Datei versioniert', 'de-DE', 'Digital Data'; +EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'File added','Datei erstellt', 'de-DE', 'Digital Data'; +EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'File changed','Datei geändert', 'de-DE', 'Digital Data'; +EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'File deleted','Datei gelöscht', 'de-DE', 'Digital Data'; +EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'Metadata changed','Metadaten geändert', 'de-DE', 'Digital Data'; +EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'Attributevalue deleted','Attributwert geändert', 'de-DE', 'Digital Data'; +GO +CREATE VIEW VWIDB_OBJ_STATES_LANGUAGE AS +SELECT + A.GUID, + B.TERM_VALUE AS STATE_TERM, + A.LANG_ID, + C.LANG_CODE, + D.TITLE, + E.TERM_VALUE ADDED_WHO, + A.ADDED_WHEN, + F.TERM_VALUE CHANGED_WHO, + A.CHANGED_WHEN + +FROM TBIDB_OBJ_STATES_LANGUAGE A INNER JOIN TBIDB_TERM_VALUE_VARCHAR B ON A.TERM_ID = B.GUID +INNER JOIN TBIDB_LANGUAGE C ON A.LANG_ID = C.GUID +INNER JOIN TBIDB_OBJ_STATES D ON A.STATE_ID = D.GUID +INNER JOIN TBIDB_TERM_VALUE_VARCHAR E ON A.ADDED_WHO = E.GUID +INNER JOIN TBIDB_TERM_VALUE_VARCHAR F ON A.ADDED_WHO = F.GUID +GO -- ============================================= -- Author: DD MS -- Changed: 25.11.2021 @TERM_TYPE_ID = 6 @@ -3280,16 +3445,18 @@ DECLARE @Bool4 Varchar(1), @Integer24 Varchar(20), @Float Varchar(20), - @RELPATH Varchar(200) + @RELPATH Varchar(200), + @SEQUENCE Integer SET @SQL1 = 'CREATE VIEW VWIDB_DOC_DATA_' + UPPER(LEFT(@pLANGCODE,2)) + ' AS '+ char(10) + 'SELECT ' + char(10) + ' T.IDB_OBJ_ID' + char(10) BEGIN - DECLARE c_REDO CURSOR FOR - SELECT ATTR_ID,ATTR_TITLE,TYPE_ID - FROM VWIDB_BE_ATTRIBUTE WHERE VIEW_VISIBLE = 1 AND LANG_CODE = @pLANGCODE ORDER BY VIEW_SEQUENCE + DECLARE c_PRIDB_CREATE_VIEW_DOC_DATA CURSOR FOR + SELECT DISTINCT ATTR_ID,ATTR_TITLE,TYPE_ID,VIEW_SEQUENCE + FROM VWIDB_BE_ATTRIBUTE WHERE VIEW_VISIBLE = 1 AND LANG_CODE = @pLANGCODE AND ATTR_ID IS NOT NULL + ORDER BY VIEW_SEQUENCE - OPEN c_REDO - FETCH NEXT FROM c_REDO INTO @ATTR_ID,@TITLE,@TYPID + OPEN c_PRIDB_CREATE_VIEW_DOC_DATA + FETCH NEXT FROM c_PRIDB_CREATE_VIEW_DOC_DATA INTO @ATTR_ID,@TITLE,@TYPID,@SEQUENCE WHILE @@FETCH_STATUS = 0 BEGIN DECLARE @FN_COMMAND as VARCHAR(100), @FN_TYP as VARCHAR(50) @@ -3314,12 +3481,13 @@ BEGIN SET @FN_TYP = 'INTEGER_VECTOR' SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@TYPE',@FN_TYP) + PRINT @FN_COMMAND SET @SQL1 += char(9) + ',' + @FN_COMMAND + char(9) + char(9) + ' AS ''' + @TITLE + '''' + char(10) - - FETCH NEXT FROM c_REDO INTO @ATTR_ID,@TITLE,@TYPID + --PRINT @SQL1 + FETCH NEXT FROM c_PRIDB_CREATE_VIEW_DOC_DATA INTO @ATTR_ID,@TITLE,@TYPID,@SEQUENCE END - CLOSE c_REDO - DEALLOCATE c_REDO + CLOSE c_PRIDB_CREATE_VIEW_DOC_DATA + DEALLOCATE c_PRIDB_CREATE_VIEW_DOC_DATA SET @SQL1 += char(9) + ',T5.TERM_VALUE AS DocExtension' + char(10) + char(9) + ',T5.TERM_VALUE AS DocName' + char(10) + char(9) + ',CONCAT(T4.TERM_VALUE,''\'',T5.TERM_VALUE) AS DocRelativePath' + char(10) @@ -4603,22 +4771,74 @@ BEGIN END END GO +-- ============================================= +-- Author: DD MS 21.01.2022 +-- ============================================= +CREATE PROCEDURE [dbo].[PRIDB_NEW_VERSION_OBJECT] @IDB_OBJ_ID BIGINT,@NEW_IDB_OBJ_ID BIGINT, @WHO VARCHAR(100) +AS +BEGIN + UPDATE TBIDB_OBJECT SET ACTIVE = 0, CHANGED_WHO = @WHO WHERE IDB_OBJ_ID = @IDB_OBJ_ID; + UPDATE TBIDB_OBJECT SET IS_VERSION = 1,ACTIVE = 1,PARENT_OBJ_ID = @IDB_OBJ_ID WHERE IDB_OBJ_ID = @NEW_IDB_OBJ_ID; + EXEC PRIDB_NEW_STATE_OBJECT @IDB_OBJ_ID, 'File Versioned',@WHO; + + INSERT INTO [dbo].[TBIDB_OBJECT_METADATA] + ([IDB_OBJ_ID] + ,[ATTR_ID] + ,[TEXT_TERM_LANG_ID] + ,[INT_TERM_ID] + ,[DEC_TERM_ID] + ,[FLOAT_TERM_ID] + ,[DATE_TERM_ID] + ,[ADDED_WHO] + ,[ADDED_WHEN] + ,[CHANGED_WHO] + ,[CHANGED_WHEN] + ,[DATETIME_TERM_ID]) + SELECT @NEW_IDB_OBJ_ID + ,[ATTR_ID] + ,[TEXT_TERM_LANG_ID] + ,[INT_TERM_ID] + ,[DEC_TERM_ID] + ,[FLOAT_TERM_ID] + ,[DATE_TERM_ID] + ,[ADDED_WHO] + ,[ADDED_WHEN] + ,[CHANGED_WHO] + ,[CHANGED_WHEN] + ,[DATETIME_TERM_ID] FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID; + + INSERT INTO [dbo].[TBIDB_OBJ_MY_STATES] + ([IDB_OBJ_ID] + ,[STATE_ID] + ,[ADDED_WHO] + ,[ADDED_WHEN] + ,[CHANGED_WHO] + ,[CHANGED_WHEN]) + SELECT @NEW_IDB_OBJ_ID + ,[STATE_ID] + ,[ADDED_WHO] + ,[ADDED_WHEN] + ,[CHANGED_WHO] + ,[CHANGED_WHEN] FROM TBIDB_OBJ_MY_STATES WHERE IDB_OBJ_ID = @IDB_OBJ_ID; +END +GO INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('Doctype',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginFileName',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginCreationDatetime',6,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginChangedDatetime',6,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('DisplayFileName',1,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('DisplayFileName1',1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('DisplayFileName1',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('Dynamic Folder',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailMessageID',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailSubject',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailFrom',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailDate',5,1); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('PM-LOGGING',8,0,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('ObjectEvents',1,1,1); -INSERT INTO TBIDB_BE_ATTRIBUTE (BE_ID,ATTR_ID,DEFAULT_SEARCH_ATTRIBUTE) SELECT 1,GUID, 1 FROM TBIDB_ATTRIBUTE ; -INSERT INTO TBIDB_BE_ATTRIBUTE (BE_ID,ATTR_ID,DEFAULT_SEARCH_ATTRIBUTE) SELECT 1,GUID, 0 FROM TBIDB_ATTRIBUTE where TITLE = 'ObjectEvents' ; +INSERT INTO TBIDB_BE_ATTRIBUTE (BE_ID,ATTR_ID,DEFAULT_SEARCH_ATTRIBUTE) SELECT 1,GUID, 1 FROM TBIDB_ATTRIBUTE WHERE TITLE NOT IN ('PM-LOGGING','ObjectEvents') ; +INSERT INTO TBIDB_BE_ATTRIBUTE (BE_ID,ATTR_ID,DEFAULT_SEARCH_ATTRIBUTE) SELECT 1,GUID, 0 FROM TBIDB_ATTRIBUTE where TITLE IN ('PM-LOGGING','ObjectEvents') ; GO CREATE VIEW [dbo].[VWGI_ADMIN_OVERVIEW] AS diff --git a/01_PM/CreateDBObjects.sql b/01_PM/CreateDBObjects.sql index ff7a1ee..eba26cd 100644 --- a/01_PM/CreateDBObjects.sql +++ b/01_PM/CreateDBObjects.sql @@ -1,243 +1,252 @@ - -/*################################## -1. Search for @MyUSER and replace the username - You use for administration -2. If windream database is not located: Search for windream60 and replace with databaselink.windream60 + +/*################################## +1. Search for @MyUSER and replace the username + You use for administration +2. If windream database is not located: Search for windream60 and replace with databaselink.windream60 ALTER TABLE TBDD_CONNECTION ADD SYS_CONNECTION BIT DEFAULT 0 NOT NULL; -GO -####################################*/ - -UPDATE TBDD_MODULES SET DB_VERSION = '2.1.0.1' where NAME = 'Process-Manager' -GO -INSERT INTO TBDD_USER_MODULES (USER_ID,MODULE_ID,IS_ADMIN) SELECT GUID,(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'PM'),1 FROM TBDD_USER where UPPER(USERNAME) = UPPER('@MyUSER') -GO -INSERT INTO TBDD_CLIENT_USER (USER_ID,CLIENT_ID) SELECT GUID,1 FROM TBDD_USER WHERE GUID NOT IN (SELECT USER_ID FROM TBDD_CLIENT_USER WHERE CLIENT_ID = 1) -GO -INSERT INTO TBDD_GROUPS_USER (USER_ID,GROUP_ID) VALUES ((SELECT GUID FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER('@MyUSER')),(SELECT GUID FROM TBDD_GROUPS WHERE NAME = 'PM_ADMINS')) -GO -CREATE TABLE TBPM_KONFIGURATION -( - GUID TINYINT, - LIZENZEN VARCHAR(2000), - INTERVALL_CKECK_NO_OF_FILES smallint NOT NULL DEFAULT 2, - VEKTOR_DELIMITER VARCHAR(1) NOT NULL DEFAULT '~', - EMAIL_ACTIVE BIT NOT NULL DEFAULT 0, - EMAIL_FROM VARCHAR(50), - EMAIL_SMTP VARCHAR(50), - EMAIL_USER VARCHAR(50), - EMAIL_PW VARCHAR(50), - EMAIL_REMINDER_HEADER VARCHAR(250), - EMAIL_REMINDER_FOOTER VARCHAR(250), - ADMIN_PW VARCHAR(100) NOT NULL DEFAULT 'ZGQ=', - ADMIN_SECURITY BIT NOT NULL DEFAULT 0, - SQL_PROFILE_MAIN_VIEW VARCHAR(MAX)NOT NULL DEFAULT '', - [SERVICE_SCHEDULE] VARCHAR(100) NOT NULL DEFAULT '07-18;1111100', - [SERVICE_IDXNAME_DOCID] VARCHAR(50) NOT NULL DEFAULT 'Dokument-ID', - [SERVICE_WMDRIVE_LETTER] VARCHAR(1) NOT NULL DEFAULT 'W', - [SERVICE_IDXNAME_CREATED] VARCHAR(50) NOT NULL DEFAULT 'DMS erstellt', - [SERVICE_LOG_ERRORS_ONLY] BIT NOT NULL DEFAULT 1, - WM_REL_PATH VARCHAR(100) NOT NULL DEFAULT '\\windream\objects', - ERFASSTWER VARCHAR(50) DEFAULT 'PER DMSLite' NOT NULL, - ERSTELLTWER VARCHAR(50) DEFAULT 'DMSLite-Admin' NOT NULL, - ERSTELLTWANN DATETIME DEFAULT GETDATE() NOT NULL, - GEAENDERTWER VARCHAR(50), - GEAENDERTWANN DATETIME, - CONSTRAINT PK_TBPM_KONFIGURATION_GUID PRIMARY KEY(GUID), - CONSTRAINT CH_TBPM_KONFIGURATION_GUID CHECK(GUID = 1) -) -GO ------------------------------------------------------------------------------- -CREATE TRIGGER TBPM_KONFIGURATION_AFT_UPD ON TBPM_KONFIGURATION -FOR UPDATE -AS - UPDATE TBPM_KONFIGURATION SET GEAENDERTWANN = GETDATE() FROM INSERTED WHERE TBPM_KONFIGURATION.GUID = INSERTED.GUID -GO - -INSERT INTO TBPM_KONFIGURATION(GUID,LIZENZEN,EMAIL_REMINDER_HEADER,EMAIL_REMINDER_FOOTER) -VALUES -(1,'Y/R9cI8qEID774g/fqXzkrCdW5bhcB62jsBmRgJx2rI=','Der Process-Manager informiert Sie hiermit über nicht erledigte Dokumentenprozesse:

','

Bitte starten Sie Ihren Process-Manager und bearbeiten die entsprechenden Prozesse.
Vielen Dank.') -GO --------------------------------------------------------------------------------- -CREATE TABLE TBPM_TYPE -( -GUID SMALLINT NOT NULL IDENTITY (1, 1), -BEZEICHNUNG VARCHAR(100) NOT NULL UNIQUE, -ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', -ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), -CHANGED_WHO VARCHAR(30), -CHANGED_WHEN DATETIME, - -CONSTRAINT PK_TBPM_TYPE_GUID PRIMARY KEY (GUID) -) -GO -INSERT INTO TBPM_TYPE(BEZEICHNUNG) VALUES ('Man. Validation') -GO -INSERT INTO TBPM_TYPE(BEZEICHNUNG) VALUES ('Automatism') -GO -CREATE TRIGGER TBPM_TYPE_AFT_UPD ON TBPM_TYPE -FOR UPDATE -AS - UPDATE TBPM_TYPE SET CHANGED_WHEN = GETDATE() - FROM INSERTED - WHERE TBPM_TYPE.GUID = INSERTED.GUID -GO -CREATE TABLE TBPM_PROFILE -( -GUID INTEGER NOT NULL IDENTITY (1, 1), -NAME VARCHAR(100) NOT NULL UNIQUE, -TITLE VARCHAR(150) NOT NULL DEFAULT 'DEFAULT-TITLE', -WD_OBJECTTYPE VARCHAR(200) NOT NULL, -PRIORITY INTEGER NOT NULL DEFAULT 1, -DESCRIPTION VARCHAR(250) , -TYPE SMALLINT NOT NULL, -DISPLAY_MODE VARCHAR(20) NOT NULL DEFAULT 'Overview and Detail', -LOG_INDEX VARCHAR(50) NOT NULL DEFAULT '', -IN_WORK BIT NOT NULL DEFAULT 0, -ACTIVE BIT NOT NULL DEFAULT 0, -WD_SEARCH NVARCHAR(MAX) NOT NULL, -PM_VEKTOR_INDEX VARCHAR(50) NOT NULL DEFAULT '', -NO_OF_DOCUMENTS INTEGER NOT NULL DEFAULT 0, -FINAL_PROFILE BIT NOT NULL DEFAULT 0, -FINAL_TEXT VARCHAR(250), -MOVE2FOLDER NVARCHAR(1000), -SORT_BY_LATEST BIT NOT NULL DEFAULT 0, -WORK_HISTORY_ENTRY VARCHAR(500), -ANNOTATE_ALL_WORK_HISTORY_ENTRIES BIT NOT NULL DEFAULT 0, -ANNOTATE_WORK_HISTORY_ENTRY BIT NOT NULL DEFAULT 0, -SQL_VIEW NVARCHAR(MAX) NOT NULL DEFAULT '', -SQL_PROFILE_MAIN_VIEW NVARCHAR(MAX) NOT NULL DEFAULT '', -SQL_GROUP_COLOR NVARCHAR(MAX) NOT NULL DEFAULT '', -SQL_GROUP_TEXT NVARCHAR(MAX) NOT NULL DEFAULT '', -SQL_BTN_FINISH NVARCHAR(MAX) NOT NULL DEFAULT '', -ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', -ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), -CHANGED_WHO VARCHAR(30), -CHANGED_WHEN DATETIME, -CONSTRAINT PK_TBPM_PROFILE_GUID PRIMARY KEY (GUID), -CONSTRAINT FK_TBPM_PROFILE_TYPE FOREIGN KEY (TYPE) REFERENCES TBPM_TYPE (GUID) -) -GO ---ALTER TABLE dbo.TBPM_PROFILE WITH NOCHECK ---ADD CONSTRAINT FK_TBPM_PROFILE_TYPE FOREIGN KEY (TYPE) REFERENCES TBPM_TYPE (GUID) ; - -CREATE TRIGGER TBPM_PROFILE_AFT_UPD ON TBPM_PROFILE -FOR UPDATE -AS - UPDATE TBPM_PROFILE SET CHANGED_WHEN = GETDATE() - FROM INSERTED - WHERE TBPM_PROFILE.GUID = INSERTED.GUID -GO ------------------------------------------------------------------------------- -CREATE TABLE TBPM_PROFILE_FILES -( - GUID INTEGER IDENTITY(1,1), - DOC_ID INTEGER NOT NULL DEFAULT 0, - PROFIL_ID INTEGER NOT NULL, - FILE_PATH VARCHAR(1000), - EDIT BIT NOT NULL DEFAULT 0, - DMS_ERSTELLT_DATE DATE, - IN_WORK BIT NOT NULL DEFAULT 0, - IN_WORK_WHEN DATETIME, - WORK_USER VARCHAR(100), - ACTIVE BIT NOT NULL DEFAULT 0, - REFRESHED BIT NOT NULL DEFAULT 1, - REFRESHED_WHEN DATETIME, - ERSTELLTWER VARCHAR(50) DEFAULT 'PM_REFRESH_MANAGER' NOT NULL, - ERSTELLTWANN DATETIME DEFAULT GETDATE() NOT NULL, - CONSTRAINT PK_TBPM_PROFILE_FILES_GUID PRIMARY KEY(GUID), - CONSTRAINT FK_TBPM_PROFILE_FILES_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) -) -GO ------------------------------------------------------------------------------- -CREATE TABLE TBPM_FILES_USER_NOT_INDEXED -( - USR_NAME VARCHAR(50), - PROFIL_ID INTEGER, - DocGUID BigInt NOT NULL DEFAULT 0, - FILE_PATH VARCHAR(500), - UNIQUE (USR_NAME,PROFIL_ID,FILE_PATH) -) -GO ------------------------------------------------------------------------------- -CREATE TABLE TBPM_FILES_WORK_HISTORY -( - GUID INTEGER IDENTITY(1,1), - PROFIL_ID INTEGER NOT NULL, - DOC_ID INTEGER NOT NULL DEFAULT 0, - WORKED_BY VARCHAR(100) NOT NULL, - WORKED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), - WORKED_WHERE VARCHAR(100) NOT NULL, - STATUS_COMMENT VARCHAR(500), - COMMENT VARCHAR(MAX), - CONSTRAINT [PK_TBPM_FILES_WORK_HISTORY] PRIMARY KEY (GUID) -) -GO ------------------------------------------------------------------------------- ---CREATE TABLE TBPM_ERROR_LOG ---( --- GUID INT NOT NULL IDENTITY (1, 1), --- PROFIL_ID INTEGER NOT NULL, --- ERROR_MSG VARCHAR(1000) NOT NULL, --- ADDED_WHO VARCHAR(50) NOT NULL, --- ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), --- MACHINE_NAME VARCHAR(50), --- CONSTRAINT PK_TBPM_ERROR_LOG_GUID PRIMARY KEY(GUID), --- CONSTRAINT FK_TBPM_ERROR_LOG_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) ---) ---GO -CREATE TABLE TBPM_PROFILE_CONTROLS -( - GUID INTEGER NOT NULL IDENTITY (1, 1), - PROFIL_ID INTEGER NOT NULL, - NAME VARCHAR(100) NOT NULL, - CTRL_TYPE VARCHAR(10) NOT NULL, --TXT,LBL,COMBO,DTP - CTRL_TEXT VARCHAR(100) NOT NULL DEFAULT 'CTRL TEXT', - X_LOC FLOAT NOT NULL, - Y_LOC FLOAT NOT NULL, - HEIGHT SMALLINT NOT NULL DEFAULT 25, - WIDTH SMALLINT NOT NULL DEFAULT 200, - INDEX_NAME VARCHAR(100), - TYP VARCHAR(50), - [VALIDATION] BIT NOT NULL DEFAULT 0, - CHOICE_LIST VARCHAR(50), - CONNECTION_ID SMALLINT, - DEFAULT_VALUE VARCHAR(100), - MULTISELECT BIT DEFAULT 0 NOT NULL, - VKT_ADD_ITEM BIT DEFAULT 0 NOT NULL, - VKT_PREVENT_MULTIPLE_VALUES BIT DEFAULT 0 NOT NULL, - IMAGE_CONTROL VARBINARY(MAX), - BACKGROUND_COLOR VARCHAR(50), - SQL_UEBERPRUEFUNG NVARCHAR(MAX) DEFAULT '', - SQL2 NVARCHAR(MAX), - SQL_ENABLE NVARCHAR(MAX), - SQL_ENABLE_ON_LOAD NVARCHAR(MAX), - SQL_ENABLE_ON_LOAD_CONID TINYINT, - OVERWRITE_DATA BIT NOT NULL DEFAULT 0, - SET_CONTROL_DATA NVARCHAR(MAX), - REGEX_MATCH NVARCHAR(1000), - REGEX_MESSAGE_DE VARCHAR(1000) NOT NULL DEFAULT '', - REGEX_MESSAGE_EN VARCHAR(1000) NOT NULL DEFAULT '', - [READ_ONLY] BIT NOT NULL DEFAULT 0, - LOAD_IDX_VALUE BIT NOT NULL DEFAULT 1, - CONTROL_ACTIVE BIT NOT NULL DEFAULT 1, - FONT_STYLE smallint, - FONT_SIZE smallint, - FONT_FAMILY varchar(50), - FONT_COLOR bigint, - [TABLE_ORDER_COLUMN] VARCHAR(250) NOT NULL DEFAULT (''), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', - ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), - CHANGED_WHO VARCHAR(30), - CHANGED_WHEN DATETIME, - CONSTRAINT PK_TBPM_PROFILE_CONTROLS_GUID PRIMARY KEY (GUID), - CONSTRAINT FK_TBPM_PROFILE_CONTROLS_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID), - CONSTRAINT UQ_TBPM_PROFILE_CONTROLS UNIQUE(PROFIL_ID,NAME) -) -GO -CREATE TRIGGER TBPM_PROFILE_CONTROLS_AFT_UPD ON TBPM_PROFILE_CONTROLS -FOR UPDATE -AS +GO +####################################*/ + +UPDATE TBDD_MODULES SET DB_VERSION = '2.1.0.1' where NAME = 'Process-Manager' +GO +INSERT INTO TBDD_USER_MODULES (USER_ID,MODULE_ID,IS_ADMIN) SELECT GUID,(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'PM'),1 FROM TBDD_USER where UPPER(USERNAME) = UPPER('@MyUSER') +GO +INSERT INTO TBDD_CLIENT_USER (USER_ID,CLIENT_ID) SELECT GUID,1 FROM TBDD_USER WHERE GUID NOT IN (SELECT USER_ID FROM TBDD_CLIENT_USER WHERE CLIENT_ID = 1) +GO +INSERT INTO TBDD_GROUPS_USER (USER_ID,GROUP_ID) VALUES ((SELECT GUID FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER('@MyUSER')),(SELECT GUID FROM TBDD_GROUPS WHERE NAME = 'PM_ADMINS')) +GO +CREATE TABLE TBPM_KONFIGURATION +( + GUID TINYINT, + LIZENZEN VARCHAR(2000), + INTERVALL_CKECK_NO_OF_FILES smallint NOT NULL DEFAULT 2, + VEKTOR_DELIMITER VARCHAR(1) NOT NULL DEFAULT '~', + EMAIL_ACTIVE BIT NOT NULL DEFAULT 0, + EMAIL_FROM VARCHAR(50), + EMAIL_SMTP VARCHAR(50), + EMAIL_USER VARCHAR(50), + EMAIL_PW VARCHAR(50), + EMAIL_REMINDER_HEADER VARCHAR(250), + EMAIL_REMINDER_FOOTER VARCHAR(250), + ADMIN_PW VARCHAR(100) NOT NULL DEFAULT 'ZGQ=', + ADMIN_SECURITY BIT NOT NULL DEFAULT 0, + SQL_PROFILE_MAIN_VIEW VARCHAR(MAX)NOT NULL DEFAULT '', + [SERVICE_SCHEDULE] VARCHAR(100) NOT NULL DEFAULT '07-18;1111100', + [SERVICE_IDXNAME_DOCID] VARCHAR(50) NOT NULL DEFAULT 'Dokument-ID', + [SERVICE_WMDRIVE_LETTER] VARCHAR(1) NOT NULL DEFAULT 'W', + [SERVICE_IDXNAME_CREATED] VARCHAR(50) NOT NULL DEFAULT 'DMS erstellt', + [SERVICE_LOG_ERRORS_ONLY] BIT NOT NULL DEFAULT 1, + WM_REL_PATH VARCHAR(100) NOT NULL DEFAULT '\\windream\objects', + ERFASSTWER VARCHAR(50) DEFAULT 'PER DMSLite' NOT NULL, + ERSTELLTWER VARCHAR(50) DEFAULT 'DMSLite-Admin' NOT NULL, + ERSTELLTWANN DATETIME DEFAULT GETDATE() NOT NULL, + GEAENDERTWER VARCHAR(50), + GEAENDERTWANN DATETIME, + CONSTRAINT PK_TBPM_KONFIGURATION_GUID PRIMARY KEY(GUID), + CONSTRAINT CH_TBPM_KONFIGURATION_GUID CHECK(GUID = 1) +) +GO +------------------------------------------------------------------------------ +CREATE TRIGGER TBPM_KONFIGURATION_AFT_UPD ON TBPM_KONFIGURATION +FOR UPDATE +AS + UPDATE TBPM_KONFIGURATION SET GEAENDERTWANN = GETDATE() FROM INSERTED WHERE TBPM_KONFIGURATION.GUID = INSERTED.GUID +GO + +INSERT INTO TBPM_KONFIGURATION(GUID,LIZENZEN,EMAIL_REMINDER_HEADER,EMAIL_REMINDER_FOOTER) +VALUES +(1,'Y/R9cI8qEID774g/fqXzkrCdW5bhcB62jsBmRgJx2rI=','Der Process-Manager informiert Sie hiermit über nicht erledigte Dokumentenprozesse:

','

Bitte starten Sie Ihren Process-Manager und bearbeiten die entsprechenden Prozesse.
Vielen Dank.') +GO +-------------------------------------------------------------------------------- +CREATE TABLE TBPM_TYPE +( +GUID SMALLINT NOT NULL IDENTITY (1, 1), +BEZEICHNUNG VARCHAR(100) NOT NULL UNIQUE, +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, + +CONSTRAINT PK_TBPM_TYPE_GUID PRIMARY KEY (GUID) +) +GO +INSERT INTO TBPM_TYPE(BEZEICHNUNG) VALUES ('Man. Validation') +GO +INSERT INTO TBPM_TYPE(BEZEICHNUNG) VALUES ('Automatism') +GO +CREATE TRIGGER TBPM_TYPE_AFT_UPD ON TBPM_TYPE +FOR UPDATE +AS + UPDATE TBPM_TYPE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_TYPE.GUID = INSERTED.GUID +GO +CREATE TABLE TBPM_PROFILE +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +NAME VARCHAR(100) NOT NULL UNIQUE, +TITLE VARCHAR(150) NOT NULL DEFAULT 'DEFAULT-TITLE', +WD_OBJECTTYPE VARCHAR(200) NOT NULL, +PRIORITY INTEGER NOT NULL DEFAULT 1, +DESCRIPTION VARCHAR(250) , +TYPE SMALLINT NOT NULL, +DISPLAY_MODE VARCHAR(20) NOT NULL DEFAULT 'Overview and Detail', +LOG_INDEX VARCHAR(50) NOT NULL DEFAULT '', +IN_WORK BIT NOT NULL DEFAULT 0, +ACTIVE BIT NOT NULL DEFAULT 0, +WD_SEARCH NVARCHAR(MAX) NOT NULL, +PM_VEKTOR_INDEX VARCHAR(50) NOT NULL DEFAULT '', +NO_OF_DOCUMENTS INTEGER NOT NULL DEFAULT 0, +FINAL_PROFILE BIT NOT NULL DEFAULT 0, +FINAL_TEXT VARCHAR(250), +MOVE2FOLDER NVARCHAR(1000), +SORT_BY_LATEST BIT NOT NULL DEFAULT 0, +WORK_HISTORY_ENTRY VARCHAR(500), +ANNOTATE_ALL_WORK_HISTORY_ENTRIES BIT NOT NULL DEFAULT 0, +ANNOTATE_WORK_HISTORY_ENTRY BIT NOT NULL DEFAULT 0, +SQL_VIEW NVARCHAR(MAX) NOT NULL DEFAULT '', +SQL_PROFILE_MAIN_VIEW NVARCHAR(MAX) NOT NULL DEFAULT '', +SQL_GROUP_COLOR NVARCHAR(MAX) NOT NULL DEFAULT '', +SQL_GROUP_TEXT NVARCHAR(MAX) NOT NULL DEFAULT '', +SQL_BTN_FINISH NVARCHAR(MAX) NOT NULL DEFAULT '', +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBPM_PROFILE_GUID PRIMARY KEY (GUID), +CONSTRAINT FK_TBPM_PROFILE_TYPE FOREIGN KEY (TYPE) REFERENCES TBPM_TYPE (GUID) +) +GO +--ALTER TABLE dbo.TBPM_PROFILE WITH NOCHECK +--ADD CONSTRAINT FK_TBPM_PROFILE_TYPE FOREIGN KEY (TYPE) REFERENCES TBPM_TYPE (GUID) ; + +CREATE TRIGGER TBPM_PROFILE_AFT_UPD ON TBPM_PROFILE +FOR UPDATE +AS + UPDATE TBPM_PROFILE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE.GUID = INSERTED.GUID +GO +------------------------------------------------------------------------------ +CREATE TABLE TBPM_PROFILE_FILES +( + GUID INTEGER IDENTITY(1,1), + DOC_ID BIGINT NOT NULL DEFAULT 0, + PROFIL_ID INTEGER NOT NULL, + FILE_PATH VARCHAR(1000), + EDIT BIT NOT NULL DEFAULT 0, + DMS_ERSTELLT_DATE DATE, + IN_WORK BIT NOT NULL DEFAULT 0, + IN_WORK_WHEN DATETIME, + WORK_USER VARCHAR(100), + ACTIVE BIT NOT NULL DEFAULT 0, + REFRESHED BIT NOT NULL DEFAULT 1, + REFRESHED_WHEN DATETIME, + ERSTELLTWER VARCHAR(50) DEFAULT 'PM_REFRESH_MANAGER' NOT NULL, + ERSTELLTWANN DATETIME DEFAULT GETDATE() NOT NULL, + CONSTRAINT PK_TBPM_PROFILE_FILES_GUID PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_PROFILE_FILES_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TABLE TBPM_PROFILE_FILES_TEMP +( + GUID INTEGER IDENTITY(1,1), + DocID BIGINT NOT NULL DEFAULT 0, + PROFIL_ID INTEGER NOT NULL, + FILE_PATH VARCHAR(1000), + ADDED_WHEN DATETIME DEFAULT GETDATE() NOT NULL +) +GO +------------------------------------------------------------------------------ +CREATE TABLE TBPM_FILES_USER_NOT_INDEXED +( + USR_NAME VARCHAR(50), + PROFIL_ID INTEGER, + DocGUID BigInt NOT NULL DEFAULT 0, + FILE_PATH VARCHAR(500), + UNIQUE (USR_NAME,PROFIL_ID,FILE_PATH) +) +GO +------------------------------------------------------------------------------ +CREATE TABLE TBPM_FILES_WORK_HISTORY +( + GUID INTEGER IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + DOC_ID INTEGER NOT NULL DEFAULT 0, + WORKED_BY VARCHAR(100) NOT NULL, + WORKED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + WORKED_WHERE VARCHAR(100) NOT NULL, + STATUS_COMMENT VARCHAR(500), + COMMENT VARCHAR(MAX), + CONSTRAINT [PK_TBPM_FILES_WORK_HISTORY] PRIMARY KEY (GUID) +) +GO +------------------------------------------------------------------------------ +--CREATE TABLE TBPM_ERROR_LOG +--( +-- GUID INT NOT NULL IDENTITY (1, 1), +-- PROFIL_ID INTEGER NOT NULL, +-- ERROR_MSG VARCHAR(1000) NOT NULL, +-- ADDED_WHO VARCHAR(50) NOT NULL, +-- ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), +-- MACHINE_NAME VARCHAR(50), +-- CONSTRAINT PK_TBPM_ERROR_LOG_GUID PRIMARY KEY(GUID), +-- CONSTRAINT FK_TBPM_ERROR_LOG_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +--) +--GO +CREATE TABLE TBPM_PROFILE_CONTROLS +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + PROFIL_ID INTEGER NOT NULL, + NAME VARCHAR(100) NOT NULL, + CTRL_TYPE VARCHAR(10) NOT NULL, --TXT,LBL,COMBO,DTP + CTRL_TEXT VARCHAR(100) NOT NULL DEFAULT 'CTRL TEXT', + X_LOC FLOAT NOT NULL, + Y_LOC FLOAT NOT NULL, + HEIGHT SMALLINT NOT NULL DEFAULT 25, + WIDTH SMALLINT NOT NULL DEFAULT 200, + INDEX_NAME VARCHAR(100), + TYP VARCHAR(50), + [VALIDATION] BIT NOT NULL DEFAULT 0, + CHOICE_LIST VARCHAR(50), + CONNECTION_ID SMALLINT, + DEFAULT_VALUE VARCHAR(100), + MULTISELECT BIT DEFAULT 0 NOT NULL, + VKT_ADD_ITEM BIT DEFAULT 0 NOT NULL, + VKT_PREVENT_MULTIPLE_VALUES BIT DEFAULT 0 NOT NULL, + IMAGE_CONTROL VARBINARY(MAX), + BACKGROUND_COLOR VARCHAR(50), + SQL_UEBERPRUEFUNG NVARCHAR(MAX) DEFAULT '', + SQL2 NVARCHAR(MAX), + SQL_ENABLE NVARCHAR(MAX), + SQL_ENABLE_ON_LOAD NVARCHAR(MAX), + SQL_ENABLE_ON_LOAD_CONID TINYINT, + OVERWRITE_DATA BIT NOT NULL DEFAULT 0, + SET_CONTROL_DATA NVARCHAR(MAX), + REGEX_MATCH NVARCHAR(1000), + REGEX_MESSAGE_DE VARCHAR(1000) NOT NULL DEFAULT '', + REGEX_MESSAGE_EN VARCHAR(1000) NOT NULL DEFAULT '', + [READ_ONLY] BIT NOT NULL DEFAULT 0, + LOAD_IDX_VALUE BIT NOT NULL DEFAULT 1, + CONTROL_ACTIVE BIT NOT NULL DEFAULT 1, + FONT_STYLE smallint, + FONT_SIZE smallint, + FONT_FAMILY varchar(50), + FONT_COLOR bigint, + [TABLE_ORDER_COLUMN] VARCHAR(250) NOT NULL DEFAULT (''), + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBPM_PROFILE_CONTROLS_GUID PRIMARY KEY (GUID), + CONSTRAINT FK_TBPM_PROFILE_CONTROLS_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID), + CONSTRAINT UQ_TBPM_PROFILE_CONTROLS UNIQUE(PROFIL_ID,NAME) +) +GO +CREATE TRIGGER TBPM_PROFILE_CONTROLS_AFT_UPD ON TBPM_PROFILE_CONTROLS +FOR UPDATE +AS BEGIN DECLARE @NAME VARCHAR(50),@WHO VARCHAR(100), @CTRL_TYPE VARCHAR(10),@CTRL_TEXT VARCHAR(100),@CTRL_CONFIG_TITLE VARCHAR(100),@OLD_CTRL_NAME VARCHAR(100) SELECT @NAME = [NAME], @WHO = CHANGED_WHO, @CTRL_TYPE = CTRL_TYPE, @CTRL_TEXT = CTRL_TEXT FROM inserted @@ -283,179 +292,179 @@ AS UPDATE TBPM_PROFILE_CONTROLS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPM_PROFILE_CONTROLS.GUID = INSERTED.GUID - END -GO -CREATE TABLE TBPM_CONTROL_TABLE -( -GUID INTEGER NOT NULL IDENTITY (1, 1), -CONTROL_ID INTEGER NOT NULL, -SPALTENNAME VARCHAR(100) NOT NULL, -SPALTEN_HEADER VARCHAR(100) NOT NULL, -SPALTENBREITE INTEGER NOT NULL, -[VALIDATION] BIT NOT NULL DEFAULT 0, -CHOICE_LIST VARCHAR(50), -CONNECTION_ID SMALLINT, -SQL_COMMAND NVARCHAR(MAX), -REGEX_MESSAGE_DE VARCHAR(1000) NOT NULL DEFAULT '', -REGEX_MESSAGE_EN VARCHAR(1000) NOT NULL DEFAULT '', -REGEX_MATCH VARCHAR(1000) NOT NULL DEFAULT '', -[READ_ONLY] BIT NOT NULL DEFAULT 0, -LOAD_IDX_VALUE BIT NOT NULL DEFAULT 1, -LOAD_AFT_LOAD_CONTROL BIT NOT NULL DEFAULT 0, -[SEQUENCE] INTEGER NOT NULL DEFAULT 0, -FORMATTYPE VARCHAR(100) NOT NULL DEFAULT '', -FORMATSTRING VARCHAR(10) NOT NULL DEFAULT '', -DEFAULT_VALUE VARCHAR (MAX) NOT NULL DEFAULT '', -ADVANCED_LOOKUP BIT NOT NULL DEFAULT 0, -[SUMMARY_FUNCTION] VARCHAR(20) NOT NULL DEFAULT ('NONE'), -[TYPE_COLUMN] VARCHAR(20) NOT NULL DEFAULT ('TEXT'), -ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', -ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), -CHANGED_WHO VARCHAR(30), -CHANGED_WHEN DATETIME, -CONSTRAINT PK_TBPM_CONTROL_TABLE_GUID PRIMARY KEY (GUID), -CONSTRAINT FK_TBPM_CONTROL_TABLE_CONTROL FOREIGN KEY (CONTROL_ID) REFERENCES TBPM_PROFILE_CONTROLS (GUID) -) -GO -CREATE TRIGGER TBPM_CONTROL_TABLE_AFT_UPD ON TBPM_CONTROL_TABLE -FOR UPDATE -AS - UPDATE TBPM_CONTROL_TABLE SET CHANGED_WHEN = GETDATE() - FROM INSERTED - WHERE TBPM_CONTROL_TABLE.GUID = INSERTED.GUID -GO ----------------- -CREATE TABLE TBPM_PROFILE_USER -( -GUID INTEGER NOT NULL IDENTITY (1, 1), -PROFIL_ID INTEGER NOT NULL, -USER_ID INTEGER NOT NULL, -ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', -ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), -CHANGED_WHO VARCHAR(30), -CHANGED_WHEN DATETIME, -CONSTRAINT PK_TBPM_PROFILE_USER_GUID PRIMARY KEY (GUID), -UNIQUE (PROFIL_ID,USER_ID), -CONSTRAINT FK_TBPM_PROFILE_USER_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID), -CONSTRAINT FK_TBPM_PROFILE_USER_USER FOREIGN KEY (USER_ID) REFERENCES TBDD_USER (GUID), -CONSTRAINT UQ_TBPM_PROFILE_USER UNIQUE (PROFIL_ID,USER_ID) -) -GO -CREATE TRIGGER TBPM_PROFILE_USER_AFT_UPD ON TBPM_PROFILE_USER -FOR UPDATE -AS - UPDATE TBPM_PROFILE_USER SET CHANGED_WHEN = GETDATE() - FROM INSERTED - WHERE TBPM_PROFILE_USER.GUID = INSERTED.GUID -GO -CREATE TABLE TBPM_PROFILE_GROUP -( -GUID INTEGER NOT NULL IDENTITY (1, 1), -PROFIL_ID INTEGER NOT NULL, -GROUP_ID INTEGER NOT NULL, -ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', -ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), -CHANGED_WHO VARCHAR(30), -CHANGED_WHEN DATETIME, -CONSTRAINT PK_TBPM_PROFILE_GROUP_GUID PRIMARY KEY (GUID), -UNIQUE (PROFIL_ID,GROUP_ID), -CONSTRAINT FK_TBPM_PROFILE_GROUP_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID), -CONSTRAINT FK_TBPM_PROFILE_GROUP_GROUP FOREIGN KEY (GROUP_ID) REFERENCES TBDD_GROUPS (GUID), -CONSTRAINT UQ_TBPM_PROFILE_GROUP UNIQUE (PROFIL_ID,GROUP_ID) -) -GO -CREATE TRIGGER TBPM_PROFILE_GROUP_AFT_UPD ON TBPM_PROFILE_GROUP -FOR UPDATE -AS - UPDATE TBPM_PROFILE_GROUP SET CHANGED_WHEN = GETDATE() - FROM INSERTED - WHERE TBPM_PROFILE_GROUP.GUID = INSERTED.GUID -GO -CREATE TABLE TBPM_PROFILE_FINAL_INDEXING -( -GUID INTEGER NOT NULL IDENTITY (1, 1), -PROFIL_ID INTEGER NOT NULL, -CONNECTION_ID SMALLINT NOT NULL DEFAULT 0, -SQL_COMMAND VARCHAR(MAX) NOT NULL DEFAULT '', -INDEXNAME VARCHAR(100) NOT NULL, -VALUE VARCHAR(100) NOT NULL, -ACTIVE BIT NOT NULL DEFAULT 1, -[DESCRIPTION] VARCHAR(MAX) NOT NULL DEFAULT '', -PREVENT_DUPLICATES BIT NOT NULL DEFAULT (0), -ALLOW_NEW_VALUES BIT NOT NULL DEFAULT (0), -IF_VEKTOR_BEHAVIOUR VARCHAR(25) NOT NULL DEFAULT '', -[SEQUENCE] TINYINT NOT NULL DEFAULT 0, -[CONTINUE_INDETERMINED] BIT NOT NULL DEFAULT 0, -ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', -ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), -CHANGED_WHO VARCHAR(30), -CHANGED_WHEN DATETIME, -CONSTRAINT PK_TBPM_PROFILE_FINAL_INDEXING_GUID PRIMARY KEY (GUID), -CONSTRAINT FK_TBPM_PROFILE_FINAL_INDEXING_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) -) -GO -CREATE TRIGGER TBPM_PROFILE_FINAL_INDEXING_AFT_UPD ON TBPM_PROFILE_FINAL_INDEXING -FOR UPDATE -AS - UPDATE TBPM_PROFILE_FINAL_INDEXING SET CHANGED_WHEN = GETDATE() - FROM INSERTED - WHERE TBPM_PROFILE_FINAL_INDEXING.GUID = INSERTED.GUID -GO -CREATE TABLE TBPM_PROFILE_SEARCH -( - GUID INTEGER IDENTITY(1,1), - PROFILE_ID INTEGER NOT NULL, - TYPE VARCHAR(50) NOT NULL DEFAULT 'SQL', - CONN_ID INTEGER NOT NULL DEFAULT '0', - TAB_TITLE VARCHAR(50) NOT NULL DEFAULT 'UndefinedTitle', - LOAD_ON_START bit NOT NULL DEFAULT 1, - TAB_INDEX TINYINT DEFAULT 0 NOT NULL, - SQL_COMMAND VARCHAR(3000) NOT NULL, - RUN_MANUAL BIT DEFAULT 1 NOT NULL, - ACTIVE BIT DEFAULT 0 NOT NULL, - CREATED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, - CREATED_WHEN DATETIME DEFAULT GETDATE(), - CONSTRAINT PK_TBPM_PROFILE_SEARCH PRIMARY KEY(GUID), - CONSTRAINT FK_TBPM_PROFILE_SEARCH_PROFILE_ID FOREIGN KEY (PROFILE_ID) REFERENCES TBPM_PROFILE (GUID) -) -GO -CREATE TABLE TBPM_MAIN_VIEW_GROUPS -( - GUID INTEGER IDENTITY(1,1), - GROUPNAME VARCHAR(100) NOT NULL, - ACTIVE BIT DEFAULT 1 NOT NULL, - CREATED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, - CREATED_WHEN DATETIME DEFAULT GETDATE(), - CHANGED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, - CHANGED_WHEN DATETIME DEFAULT GETDATE(), - CONSTRAINT PK_TBPM_MAIN_VIEW_GROUPS PRIMARY KEY(GUID) -) -GO -CREATE TRIGGER [dbo].[TBPM_MAIN_VIEW_GROUPS_AFT_UPD] ON [dbo].[TBPM_MAIN_VIEW_GROUPS] -FOR UPDATE -AS -BEGIN - UPDATE TBPM_MAIN_VIEW_GROUPS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPM_MAIN_VIEW_GROUPS.GUID = INSERTED.GUID -END -GO -INSERT INTO TBPM_MAIN_VIEW_GROUPS (GROUPNAME) VALUES ('GROUP_TEXT') -GO -CREATE TABLE [dbo].[TBPM_CHART]( - GUID INTEGER IDENTITY(1,1) NOT NULL, - SQL_COMMAND VARCHAR(MAX) NOT NULL, - TYPE_CHART VARCHAR(50) NOT NULL, - ARGUMENT VARCHAR(50) NOT NULL, - [VALUE] VARCHAR(50) NOT NULL, - TITLE VARCHAR(50) NOT NULL DEFAULT '', - ADDED_WHO VARCHAR(50) DEFAULT '', - ADDED_WHEN DATETIME DEFAULT GETDATE(), - CHANGED_WHO VARCHAR(50), - CHANGED_WHEN DATETIME, - GROUP_ID VARCHAR(50) DEFAULT '', -CONSTRAINT PK_TBPM_CHART_GUID PRIMARY KEY (GUID) - -) -GO + END +GO +CREATE TABLE TBPM_CONTROL_TABLE +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +CONTROL_ID INTEGER NOT NULL, +SPALTENNAME VARCHAR(100) NOT NULL, +SPALTEN_HEADER VARCHAR(100) NOT NULL, +SPALTENBREITE INTEGER NOT NULL, +[VALIDATION] BIT NOT NULL DEFAULT 0, +CHOICE_LIST VARCHAR(50), +CONNECTION_ID SMALLINT, +SQL_COMMAND NVARCHAR(MAX), +REGEX_MESSAGE_DE VARCHAR(1000) NOT NULL DEFAULT '', +REGEX_MESSAGE_EN VARCHAR(1000) NOT NULL DEFAULT '', +REGEX_MATCH VARCHAR(1000) NOT NULL DEFAULT '', +[READ_ONLY] BIT NOT NULL DEFAULT 0, +LOAD_IDX_VALUE BIT NOT NULL DEFAULT 1, +LOAD_AFT_LOAD_CONTROL BIT NOT NULL DEFAULT 0, +[SEQUENCE] INTEGER NOT NULL DEFAULT 0, +FORMATTYPE VARCHAR(100) NOT NULL DEFAULT '', +FORMATSTRING VARCHAR(10) NOT NULL DEFAULT '', +DEFAULT_VALUE VARCHAR (MAX) NOT NULL DEFAULT '', +ADVANCED_LOOKUP BIT NOT NULL DEFAULT 0, +[SUMMARY_FUNCTION] VARCHAR(20) NOT NULL DEFAULT ('NONE'), +[TYPE_COLUMN] VARCHAR(20) NOT NULL DEFAULT ('TEXT'), +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBPM_CONTROL_TABLE_GUID PRIMARY KEY (GUID), +CONSTRAINT FK_TBPM_CONTROL_TABLE_CONTROL FOREIGN KEY (CONTROL_ID) REFERENCES TBPM_PROFILE_CONTROLS (GUID) +) +GO +CREATE TRIGGER TBPM_CONTROL_TABLE_AFT_UPD ON TBPM_CONTROL_TABLE +FOR UPDATE +AS + UPDATE TBPM_CONTROL_TABLE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_CONTROL_TABLE.GUID = INSERTED.GUID +GO +---------------- +CREATE TABLE TBPM_PROFILE_USER +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +PROFIL_ID INTEGER NOT NULL, +USER_ID INTEGER NOT NULL, +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBPM_PROFILE_USER_GUID PRIMARY KEY (GUID), +UNIQUE (PROFIL_ID,USER_ID), +CONSTRAINT FK_TBPM_PROFILE_USER_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID), +CONSTRAINT FK_TBPM_PROFILE_USER_USER FOREIGN KEY (USER_ID) REFERENCES TBDD_USER (GUID), +CONSTRAINT UQ_TBPM_PROFILE_USER UNIQUE (PROFIL_ID,USER_ID) +) +GO +CREATE TRIGGER TBPM_PROFILE_USER_AFT_UPD ON TBPM_PROFILE_USER +FOR UPDATE +AS + UPDATE TBPM_PROFILE_USER SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE_USER.GUID = INSERTED.GUID +GO +CREATE TABLE TBPM_PROFILE_GROUP +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +PROFIL_ID INTEGER NOT NULL, +GROUP_ID INTEGER NOT NULL, +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBPM_PROFILE_GROUP_GUID PRIMARY KEY (GUID), +UNIQUE (PROFIL_ID,GROUP_ID), +CONSTRAINT FK_TBPM_PROFILE_GROUP_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID), +CONSTRAINT FK_TBPM_PROFILE_GROUP_GROUP FOREIGN KEY (GROUP_ID) REFERENCES TBDD_GROUPS (GUID), +CONSTRAINT UQ_TBPM_PROFILE_GROUP UNIQUE (PROFIL_ID,GROUP_ID) +) +GO +CREATE TRIGGER TBPM_PROFILE_GROUP_AFT_UPD ON TBPM_PROFILE_GROUP +FOR UPDATE +AS + UPDATE TBPM_PROFILE_GROUP SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE_GROUP.GUID = INSERTED.GUID +GO +CREATE TABLE TBPM_PROFILE_FINAL_INDEXING +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +PROFIL_ID INTEGER NOT NULL, +CONNECTION_ID SMALLINT NOT NULL DEFAULT 0, +SQL_COMMAND VARCHAR(MAX) NOT NULL DEFAULT '', +INDEXNAME VARCHAR(100) NOT NULL, +VALUE VARCHAR(100) NOT NULL, +ACTIVE BIT NOT NULL DEFAULT 1, +[DESCRIPTION] VARCHAR(MAX) NOT NULL DEFAULT '', +PREVENT_DUPLICATES BIT NOT NULL DEFAULT (0), +ALLOW_NEW_VALUES BIT NOT NULL DEFAULT (0), +IF_VEKTOR_BEHAVIOUR VARCHAR(25) NOT NULL DEFAULT '', +[SEQUENCE] TINYINT NOT NULL DEFAULT 0, +[CONTINUE_INDETERMINED] BIT NOT NULL DEFAULT 0, +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBPM_PROFILE_FINAL_INDEXING_GUID PRIMARY KEY (GUID), +CONSTRAINT FK_TBPM_PROFILE_FINAL_INDEXING_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TRIGGER TBPM_PROFILE_FINAL_INDEXING_AFT_UPD ON TBPM_PROFILE_FINAL_INDEXING +FOR UPDATE +AS + UPDATE TBPM_PROFILE_FINAL_INDEXING SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE_FINAL_INDEXING.GUID = INSERTED.GUID +GO +CREATE TABLE TBPM_PROFILE_SEARCH +( + GUID INTEGER IDENTITY(1,1), + PROFILE_ID INTEGER NOT NULL, + TYPE VARCHAR(50) NOT NULL DEFAULT 'SQL', + CONN_ID INTEGER NOT NULL DEFAULT '0', + TAB_TITLE VARCHAR(50) NOT NULL DEFAULT 'UndefinedTitle', + LOAD_ON_START bit NOT NULL DEFAULT 1, + TAB_INDEX TINYINT DEFAULT 0 NOT NULL, + SQL_COMMAND VARCHAR(3000) NOT NULL, + RUN_MANUAL BIT DEFAULT 1 NOT NULL, + ACTIVE BIT DEFAULT 0 NOT NULL, + CREATED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + CREATED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBPM_PROFILE_SEARCH PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_PROFILE_SEARCH_PROFILE_ID FOREIGN KEY (PROFILE_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TABLE TBPM_MAIN_VIEW_GROUPS +( + GUID INTEGER IDENTITY(1,1), + GROUPNAME VARCHAR(100) NOT NULL, + ACTIVE BIT DEFAULT 1 NOT NULL, + CREATED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + CREATED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + CHANGED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBPM_MAIN_VIEW_GROUPS PRIMARY KEY(GUID) +) +GO +CREATE TRIGGER [dbo].[TBPM_MAIN_VIEW_GROUPS_AFT_UPD] ON [dbo].[TBPM_MAIN_VIEW_GROUPS] +FOR UPDATE +AS +BEGIN + UPDATE TBPM_MAIN_VIEW_GROUPS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPM_MAIN_VIEW_GROUPS.GUID = INSERTED.GUID +END +GO +INSERT INTO TBPM_MAIN_VIEW_GROUPS (GROUPNAME) VALUES ('GROUP_TEXT') +GO +CREATE TABLE [dbo].[TBPM_CHART]( + GUID INTEGER IDENTITY(1,1) NOT NULL, + SQL_COMMAND VARCHAR(MAX) NOT NULL, + TYPE_CHART VARCHAR(50) NOT NULL, + ARGUMENT VARCHAR(50) NOT NULL, + [VALUE] VARCHAR(50) NOT NULL, + TITLE VARCHAR(50) NOT NULL DEFAULT '', + ADDED_WHO VARCHAR(50) DEFAULT '', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + GROUP_ID VARCHAR(50) DEFAULT '', +CONSTRAINT PK_TBPM_CHART_GUID PRIMARY KEY (GUID) + +) +GO CREATE TABLE TBPM_LOG_DEBUG ( @@ -466,7 +475,7 @@ CREATE TABLE TBPM_LOG_DEBUG ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CONSTRAINT PK_TBPM_LOG_DEBUG PRIMARY KEY (GUID) ) -GO +GO CREATE TABLE TBPM_MONITOR_KONFIG ( GUID INTEGER NOT NULL, @@ -488,7 +497,7 @@ AS BEGIN UPDATE TBPM_MONITOR_KONFIG SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPM_MONITOR_KONFIG.GUID = INSERTED.GUID END -GO +GO CREATE TABLE [dbo].[TBPM_CUST_USER_DOC_JOB]( [GUID] [int] IDENTITY(1,1) NOT NULL, @@ -547,12 +556,12 @@ CREATE TABLE [dbo].[TBPM_DOCWALKOVER]( [ADDED_WHEN] [datetime] NOT NULL ) ON [PRIMARY] -GO +GO ALTER TABLE [dbo].[TBPM_DOCWALKOVER] ADD CONSTRAINT [DF_TBPM_CUST_DocWalkOver_ADDED_WHEN] DEFAULT (getdate()) FOR [ADDED_WHEN] -GO +GO --############################################ --##########PROCEDURES######################## ---############################################ +--############################################ -- ============================================= -- Author: Digital Data MS -- Create date: 11.06.2021 @@ -789,31 +798,31 @@ AS CLOSE cursor1 DEALLOCATE cursor1 -GO +GO CREATE PROCEDURE [dbo].[PRPM_CUST_DocHANDLE] @pDocID BIGINT AS BEGIN /*INDIVIDUAL HANDLING FOR DOC IN PM GOES HERE*/ PRINT 'Starting INDIVIDUAL HANDLING FOR DOC IN PM' END -GO -CREATE PROCEDURE [dbo].[PRPM_DELETE_USER](@pUSER_ID INT) -AS -BEGIN TRY - IF OBJECT_ID(N'dbo.TBPM_PROFILE_USER', N'U') IS NOT NULL - DELETE FROM TBPM_PROFILE_USER WHERE USER_ID = @pUSER_ID - IF OBJECT_ID(N'dbo.TBPM_PROFILE_USER', N'U') IS NOT NULL - DELETE FROM TBPM_PROFILE_USER WHERE USER_ID = @pUSER_ID - DELETE FROM TBDD_USER_MODULES WHERE USER_ID = @pUSER_ID AND MODULE_ID = (SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'PM') -END TRY -BEGIN CATCH - PRINT 'FEHLER IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + ' - ZEILE: ' + CONVERT(VARCHAR(10),ERROR_LINE()) - + ' - FEHLER-MESSAGE: ' - + CONVERT(VARCHAR(500),ERROR_MESSAGE()) -END CATCH -GO -CREATE PROCEDURE [dbo].[PRPM_REMOVE_NE_FILES] -AS +GO +CREATE PROCEDURE [dbo].[PRPM_DELETE_USER](@pUSER_ID INT) +AS +BEGIN TRY + IF OBJECT_ID(N'dbo.TBPM_PROFILE_USER', N'U') IS NOT NULL + DELETE FROM TBPM_PROFILE_USER WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBPM_PROFILE_USER', N'U') IS NOT NULL + DELETE FROM TBPM_PROFILE_USER WHERE USER_ID = @pUSER_ID + DELETE FROM TBDD_USER_MODULES WHERE USER_ID = @pUSER_ID AND MODULE_ID = (SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'PM') +END TRY +BEGIN CATCH + PRINT 'FEHLER IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + ' - ZEILE: ' + CONVERT(VARCHAR(10),ERROR_LINE()) + + ' - FEHLER-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +CREATE PROCEDURE [dbo].[PRPM_REMOVE_NE_FILES] +AS DECLARE @DOC_ID INTEGER, @DocRelativePath VARCHAR(500) @@ -830,8 +839,8 @@ DECLARE c_PRPM_REMOVE_NE_FILES CURSOR FOR FETCH NEXT FROM c_PRPM_REMOVE_NE_FILES INTO @DOC_ID,@DocRelativePath END CLOSE c_PRPM_REMOVE_NE_FILES -DEALLOCATE c_PRPM_REMOVE_NE_FILES -GO +DEALLOCATE c_PRPM_REMOVE_NE_FILES +GO -- ============================================= -- Author: Digital Data, MS -- Create date: 05.07.2019 @@ -849,8 +858,8 @@ BEGIN UPPER(USR_NAME) = UPPER(@USER_NAME) AND PROFIL_ID = @PROFIL_ID AND DocGUID = @DocGUID) INSERT INTO TBPM_FILES_USER_NOT_INDEXED (USR_NAME,PROFIL_ID,FILE_PATH,DocGUID) VALUES (@USER_NAME, @PROFIL_ID, @FILEPATH,@DocGUID) -END -GO +END +GO CREATE PROCEDURE PRPM_CHECK_NEXT_WF @pGUID BIGINT AS BEGIN @@ -860,7 +869,7 @@ BEGIN /*TO DO HERE*/ EXEC PRPM_CUST_DocHANDLE @DocID END -GO +GO CREATE PROCEDURE [dbo].[PRPM_CHANGE_CONTROL_CAPTION] (@pCTRL_ID INT,@NEW_CAPTION VARCHAR(100), @WHO VARCHAR(100),@LANG_CODE VARCHAR(5)) AS DECLARE @RESULT VARCHAR(250), @CTRL_CONFIG_TITLE VARCHAR(100) @@ -868,10 +877,79 @@ AS UPDATE TBDD_GUI_LANGUAGE_PHRASE SET STRING1 = @NEW_CAPTION, CHANGED_WHO = @WHO WHERE OBJ_NAME = 'frmValidator' AND MODULE = 'PM' AND TITLE = @CTRL_CONFIG_TITLE AND UPPER(LANGUAGE) = UPPER(@LANG_CODE) -GO ---############################## ---##########FUNCTIONS########### ---############################## +GO +-- ============================================= +-- Author: Digital Data Gmbh +-- ============================================= +CREATE PROCEDURE [dbo].[PRPM_REFRESH_FILES_SQL] as +BEGIN + DECLARE @PROFIL_ID INTEGER, @NAME VARCHAR(100),@SEARCH NVARCHAR(2000) + --#### Der Cursor für alle Profile + DECLARE CursorProfile CURSOR LOCAL FOR + select GUID,NAME,WD_SEARCH FROM TBPM_PROFILE WHERE + ACTIVE = 1 and WD_SEARCH like '%select%' --AND GUID = 12 + ORDER BY PRIORITY + OPEN CursorProfile + FETCH NEXT FROM CursorProfile INTO @PROFIL_ID,@NAME,@SEARCH + WHILE @@FETCH_STATUS = 0 + BEGIN + PRINT '++++ REFRESH FILES WORKING ON ProfilID:' + CONVERT(VARCHAR(4),@PROFIL_ID) + ' ++++' + delete from TBPM_PROFILE_FILES_TEMP where PROFIL_ID = @PROFIL_ID; + DECLARE @SQL NVARCHAR(2000) + --Objekte zu Profil in Hilfstabelle inserten + SET @SQL = 'INSERT INTO DD_ECM.dbo.TBPM_PROFILE_FILES_TEMP (PROFIL_ID,DocId,FILE_PATH,ADDED_WHEN) ' + @SEARCH + --Print @SQL + exec(@SQL); + --Print 'INSERT INTO DD_ECM.dbo.TBPM_PROFILE_FILES_TEMP EXECUTED' + DECLARE @DocID BIGINT, @Path VARCHAR(500), @CREATED DATETIME, @COUNT_DOC INTEGER + SET @COUNT_DOC = 0 + --Der Cursor für NEUE Objekte + DECLARE cursorNewObjects CURSOR FOR + SELECT A.DocId,A.FILE_PATH,A.ADDED_WHEN + FROM TBPM_PROFILE_FILES_TEMP A WHERE A.PROFIL_ID = @PROFIL_ID AND(SELECT COUNT(DOC_ID) + FROM TBPM_PROFILE_FILES B WHERE B.DOC_ID = A.DocId AND B.PROFIL_ID = @PROFIL_ID) = 0; + OPEN cursorNewObjects + FETCH NEXT FROM cursorNewObjects INTO @DocID,@Path,@CREATED + WHILE @@FETCH_STATUS = 0 + BEGIN + SET @COUNT_DOC += 1 + --PRINT 'WORKING ON NEW OBJECT#:' + CONVERT(VARCHAR(4),@COUNT_DOC) + '#ProfilID:' + CONVERT(VARCHAR(4),@PROFIL_ID) + INSERT INTO TBPM_PROFILE_FILES (PROFIL_ID,FILE_PATH,ACTIVE,DMS_ERSTELLT_DATE,DOC_ID) VALUES + (@PROFIL_ID,@Path,1,@CREATED,@DocID) + FETCH NEXT FROM cursorNewObjects INTO @DocID,@Path,@CREATED + END + CLOSE cursorNewObjects + DEALLOCATE cursorNewObjects + + DECLARE @DocIDInvalid BIGINT + --Der Cursor für ungültige Objekte + DECLARE cursorInvalidObjects CURSOR FOR + SELECT A.DOC_ID FROM TBPM_PROFILE_FILES A where A.PROFIL_ID = @PROFIL_ID + AND A.DOC_ID NOT IN (select DocId from TBPM_PROFILE_FILES_TEMP where PROFIL_ID = @PROFIL_ID) + OPEN cursorInvalidObjects + FETCH NEXT FROM cursorInvalidObjects INTO @DocIDInvalid + WHILE @@FETCH_STATUS = 0 + BEGIN + SET @COUNT_DOC += 1 + --PRINT 'WORKING ON INVALID OBJECT#:' + CONVERT(VARCHAR(4),@COUNT_DOC) + '#ProfilID:' + CONVERT(VARCHAR(4),@PROFIL_ID) + DELETE FROM TBPM_PROFILE_FILES WHERE DOC_ID = @DocIDInvalid and PROFIL_ID = @PROFIL_ID + FETCH NEXT FROM cursorInvalidObjects INTO @DocIDInvalid + END + CLOSE cursorInvalidObjects + DEALLOCATE cursorInvalidObjects + FETCH NEXT FROM CursorProfile INTO @PROFIL_ID,@NAME,@SEARCH + END + CLOSE CursorProfile + DEALLOCATE CursorProfile + DELETE FROM TBPM_PROFILE_FILES WHERE EDIT = 1; + --EXEC PRPM_REMOVE_NE_FILES; + UPDATE TBPM_PROFILE_FILES SET IN_WORK = 0, WORK_USER = NULL, IN_WORK_WHEN = NULL where + datediff(MINUTE,IN_WORK_WHEN,Getdate()) >= 25; +END +GO +--############################## +--##########FUNCTIONS########### +--############################## CREATE FUNCTION [dbo].[FNIDB_OBJECT_DYNAMIC_CONFIG] (@pIDB_OBJ_ID as INTEGER, @pUSERID as INTEGER) RETURNS @Table TABLE @@ -888,7 +966,7 @@ BEGIN IDB_TEST.dbo.TBIDB_CONVERSATION_USER WHERE CONV_ID = @CONVID AND IS_USER = 1)'); RETURN END -GO +GO CREATE FUNCTION [dbo].[FNPM_IDB_LAST_EDITED_DOC](@pPROFIL_ID INTEGER,@pDOC_ID INTEGER) RETURNS DATETIME AS @@ -902,7 +980,7 @@ BEGIN WHERE T.PROFIL_ID = @pPROFIL_ID AND T.DOC_ID = @pDOC_ID RETURN @RESULT END -GO +GO CREATE FUNCTION [dbo].[FNPM_GET_FILEPATH] (@pDOCGUID BIGINT,@STANDARD As INT = 0) RETURNS VARCHAR(MAX) AS @@ -954,7 +1032,7 @@ BEGIN SET @NEXT_DOC_GUID = 0 RETURN @NEXT_DOC_GUID END -GO +GO CREATE FUNCTION [dbo].[FNPM_PROFILE_GROUP_TEXT](@pPROFIL_ID AS INTEGER) RETURNS VARCHAR(250) AS @@ -979,24 +1057,24 @@ BEGIN RETURN @RESULT END GO - ---GRANT EXECUTE ON [dbo].[FNPM_PROFILE_GROUP_TEXT] TO [dd_ecm] ---GO - -CREATE FUNCTION [dbo].[FNPM_LAST_WORKUSER_DOC](@pPROFIL_ID INTEGER,@pDOC_ID INTEGER) -RETURNS VARCHAR(250) -AS -BEGIN - DECLARE @RESULT VARCHAR(250) - SELECT @RESULT = WORKED_BY FROM TBPM_FILES_WORK_HISTORY WHERE GUID = - (SELECT MAX(GUID) FROM TBPM_FILES_WORK_HISTORY WHERE PROFIL_ID = @pPROFIL_ID AND DOC_ID = @pDOC_ID) - IF LEN(@RESULT) = 0 - SET @RESULT = '' - RETURN @RESULT -END -GO ---GRANT EXECUTE ON [dbo].[FNPM_LAST_WORKUSER_DOC] TO [dd_ecm] ---GO + +--GRANT EXECUTE ON [dbo].[FNPM_PROFILE_GROUP_TEXT] TO [dd_ecm] +--GO + +CREATE FUNCTION [dbo].[FNPM_LAST_WORKUSER_DOC](@pPROFIL_ID INTEGER,@pDOC_ID INTEGER) +RETURNS VARCHAR(250) +AS +BEGIN + DECLARE @RESULT VARCHAR(250) + SELECT @RESULT = WORKED_BY FROM TBPM_FILES_WORK_HISTORY WHERE GUID = + (SELECT MAX(GUID) FROM TBPM_FILES_WORK_HISTORY WHERE PROFIL_ID = @pPROFIL_ID AND DOC_ID = @pDOC_ID) + IF LEN(@RESULT) = 0 + SET @RESULT = '' + RETURN @RESULT +END +GO +--GRANT EXECUTE ON [dbo].[FNPM_LAST_WORKUSER_DOC] TO [dd_ecm] +--GO CREATE FUNCTION [dbo].[FNPM_LAST_EDITED_DOC](@pPROFIL_ID INTEGER,@pDOC_ID INTEGER) RETURNS DATETIME AS @@ -1012,55 +1090,55 @@ BEGIN END GO ---GRANT EXECUTE ON [dbo].[FNPM_LAST_EDITED_DOC] TO [dd_ecm] ---GO -CREATE FUNCTION [dbo].[FNPM_PROFILE_GROUP_COLOR](@pPROFIL_ID AS INTEGER) -RETURNS VARCHAR(20) -AS -BEGIN - DECLARE @RESULT VARCHAR(20) - SET @RESULT = 'Grey' - IF @pPROFIL_ID = 1 - SET @RESULT = 'Red' - ELSE - SET @RESULT = 'Yellow' - RETURN @RESULT -END -GO ---GRANT EXECUTE ON [dbo].[FNPM_PROFILE_GROUP_COLOR] TO [dd_ecm] ---GO ---GRANT EXECUTE ON [dbo].[FNPM_PROFILE_GROUP_TEXT] TO [dd_ecm] ---GO -CREATE FUNCTION [dbo].[FNPM_GET_FREE_USER_FOR_PROFILE] (@pPROFILE_ID INTEGER) -RETURNS -@Table TABLE - (SequentialOrder INT IDENTITY(1, 1), - USER_ID INTEGER, - USER_NAME VARCHAR(50), - USER_PRENAME VARCHAR(50), - USER_SURNAME VARCHAR(50), - USER_SHORTNAME VARCHAR(50), - USER_EMAIL VARCHAR(100), - USER_LANGUAGE VARCHAR(10), - USER_COMMENT VARCHAR(500)) -AS -BEGIN -/* This function returns all free users per profile */ - INSERT INTO @Table (USER_ID,USER_NAME, USER_PRENAME, USER_SURNAME,USER_SHORTNAME,USER_EMAIL,USER_LANGUAGE,USER_COMMENT) - SELECT - T.USER_ID - ,T.USER_NAME - ,T.USER_PRENAME - ,T.USER_SURNAME - ,T.USER_SHORTNAME - ,T.USER_EMAIL - ,T.USER_LANGUAGE - ,T.USER_COMMENT - FROM - [dbo].FNDD_GET_USER_FOR_MODULE ('PM',1) T WHERE T.USER_ID NOT IN (SELECT USER_ID FROM TBPM_PROFILE_USER WHERE PROFIL_ID = @pPROFILE_ID) -RETURN -END -GO +--GRANT EXECUTE ON [dbo].[FNPM_LAST_EDITED_DOC] TO [dd_ecm] +--GO +CREATE FUNCTION [dbo].[FNPM_PROFILE_GROUP_COLOR](@pPROFIL_ID AS INTEGER) +RETURNS VARCHAR(20) +AS +BEGIN + DECLARE @RESULT VARCHAR(20) + SET @RESULT = 'Grey' + IF @pPROFIL_ID = 1 + SET @RESULT = 'Red' + ELSE + SET @RESULT = 'Yellow' + RETURN @RESULT +END +GO +--GRANT EXECUTE ON [dbo].[FNPM_PROFILE_GROUP_COLOR] TO [dd_ecm] +--GO +--GRANT EXECUTE ON [dbo].[FNPM_PROFILE_GROUP_TEXT] TO [dd_ecm] +--GO +CREATE FUNCTION [dbo].[FNPM_GET_FREE_USER_FOR_PROFILE] (@pPROFILE_ID INTEGER) +RETURNS +@Table TABLE + (SequentialOrder INT IDENTITY(1, 1), + USER_ID INTEGER, + USER_NAME VARCHAR(50), + USER_PRENAME VARCHAR(50), + USER_SURNAME VARCHAR(50), + USER_SHORTNAME VARCHAR(50), + USER_EMAIL VARCHAR(100), + USER_LANGUAGE VARCHAR(10), + USER_COMMENT VARCHAR(500)) +AS +BEGIN +/* This function returns all free users per profile */ + INSERT INTO @Table (USER_ID,USER_NAME, USER_PRENAME, USER_SURNAME,USER_SHORTNAME,USER_EMAIL,USER_LANGUAGE,USER_COMMENT) + SELECT + T.USER_ID + ,T.USER_NAME + ,T.USER_PRENAME + ,T.USER_SURNAME + ,T.USER_SHORTNAME + ,T.USER_EMAIL + ,T.USER_LANGUAGE + ,T.USER_COMMENT + FROM + [dbo].FNDD_GET_USER_FOR_MODULE ('PM',1) T WHERE T.USER_ID NOT IN (SELECT USER_ID FROM TBPM_PROFILE_USER WHERE PROFIL_ID = @pPROFILE_ID) +RETURN +END +GO CREATE FUNCTION [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] (@USER_ID INTEGER) RETURNS @Table TABLE @@ -1118,8 +1196,8 @@ BEGIN INNER JOIN TBPM_PROFILE_FILES T2 ON T.ProfileID = T2.PROFIL_ID where T.UserID = @USER_ID and T2.EDIT = 0 AND T2.ACTIVE = 1 AND T2.IN_WORK = 0 --@USER_ID RETURN -END -GO +END +GO CREATE FUNCTION [dbo].[FNPM_BTN_OVERRIDE] (@ParamString as VARCHAR(3000)) RETURNS @Table TABLE @@ -1129,8 +1207,8 @@ BEGIN --INSERT INTO @Table (ActionType, Question,Title,CaptionButton,Color) VALUES ('Override_Direct','') INSERT INTO @Table (ActionType, Question,Title,CaptionButton,Color,OverrideAll) VALUES ('Override_Question','Wollen Sie den Beleg wirklich an den Posteingang zurückgeben?','Bestätigen:','Rückgabe','Red',1) RETURN -END -GO +END +GO -- ============================================= -- Author: Digital Data MS -- Create date: 27.11.2019 @@ -1167,7 +1245,7 @@ BEGIN RETURN END -GO +GO CREATE FUNCTION [dbo].[FNPM_LANGUAGE_CONTROL_TEXT](@pCTRL_NAME VARCHAR(100),@pLANG_CODE VARCHAR(5), @pCTRL_TYPE VARCHAR(10),@pRETURN VARCHAR(500) = '') RETURNS VARCHAR(500) AS @@ -1192,7 +1270,7 @@ BEGIN END RETURN @RESULT END -GO +GO CREATE FUNCTION [dbo].[FNPM_IDB_CONVERSATION_YN] (@pIDB_OBJ_ID BIGINT, @USER_ID INTEGER) RETURNS BIT AS @@ -1204,10 +1282,10 @@ BEGIN SET @CONV_YES = 1 RETURN @CONV_YES END -GO ---#################################### ---##############VIEWS################# ---#################################### +GO +--#################################### +--##############VIEWS################# +--#################################### CREATE VIEW [dbo].[VWPM_CONTROL_INDEX] AS SELECT TOP 100 PERCENT T1.GUID, @@ -1249,9 +1327,9 @@ WHERE ORDER BY T.GUID, T1.X_LOC, - T1.Y_LOC -GO -CREATE VIEW [dbo].[VWPM_PROFILE_USER_UNION] AS + T1.Y_LOC +GO +CREATE VIEW [dbo].[VWPM_PROFILE_USER_UNION] AS SELECT 'USER' SCOPE, T.GUID PROFIL_ID, @@ -1324,34 +1402,34 @@ WHERE T.GUID = T1.PROFIL_ID AND T1.GROUP_ID = T2.GUID AND T2.GUID = T3.GROUP_ID AND - T3.USER_ID = T4.GUID -GO - -CREATE VIEW VWPM_PROFILE_USER AS -SELECT DISTINCT * FROM VWPM_PROFILE_USER_UNION -GO -CREATE VIEW [dbo].[VWPM_EMAIL_PROFIL] AS -SELECT - T.PROFIL_ID, - T2.TITLE AS PROFIL_TITLE, - T2.NAME AS PROFIL_NAME, - T.USER_ID, - T1.USERNAME, - T1.EMAIL, - '' AS LAST_HOUR, - '' as EMAIL_ONCE_DAY, - (SELECT COUNT(GUID) FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = T.PROFIL_ID) AS ANZ_FILES -FROM - TBPM_PROFILE_USER T, - TBDD_USER T1, - TBPM_PROFILE T2 -WHERE - T.USER_ID = T1.GUID AND - T.PROFIL_ID = T2.GUID AND - T1.EMAIL IS NOT NULL - -GO -CREATE VIEW VWPM_PROFILE_ACTIVE AS + T3.USER_ID = T4.GUID +GO + +CREATE VIEW VWPM_PROFILE_USER AS +SELECT DISTINCT * FROM VWPM_PROFILE_USER_UNION +GO +CREATE VIEW [dbo].[VWPM_EMAIL_PROFIL] AS +SELECT + T.PROFIL_ID, + T2.TITLE AS PROFIL_TITLE, + T2.NAME AS PROFIL_NAME, + T.USER_ID, + T1.USERNAME, + T1.EMAIL, + '' AS LAST_HOUR, + '' as EMAIL_ONCE_DAY, + (SELECT COUNT(GUID) FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = T.PROFIL_ID) AS ANZ_FILES +FROM + TBPM_PROFILE_USER T, + TBDD_USER T1, + TBPM_PROFILE T2 +WHERE + T.USER_ID = T1.GUID AND + T.PROFIL_ID = T2.GUID AND + T1.EMAIL IS NOT NULL + +GO +CREATE VIEW VWPM_PROFILE_ACTIVE AS SELECT T1.[GUID] ,T1.[NAME] @@ -1391,106 +1469,106 @@ SELECT FROM TBPM_PROFILE T1 WHERE - T1.ACTIVE = 1 -GO -UPDATE TBPM_KONFIGURATION SET SQL_PROFILE_MAIN_VIEW = ' -/*## Following Columns need to be part of sql ## -TL_STATE Returns the TrafficLight-State for each doc (1=Red;2=Orange;3=Green) -PROFILE_ID TITLE Profile-Title used for default-grouping -DOC_ID -FULL_FILE_PATH -LAST USE -LAST EDITED */ ---DECLARE @USER_ID INTEGER ---SET @USER_ID = 1 - SELECT - T.GUID, - DATEDIFF(DAY, [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID),GETDATE()) AS [Days in], - Case DATEDIFF(DAY, [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID),GETDATE()) WHEN 0 THEN 3 WHEN 1 THEN 2 WHEN 2 THEN 1 ELSE 3 END AS TL_STATE, - T.PROFIL_ID AS PROFILE_ID, - T.DOC_ID, - T.FILE_PATH AS FULL_FILE_PATH, - TWM_BA.szLongName as Dateiname, - TWM_BA.szText36 AS Dokumentart, - --TWM_BA.szText35 AS [weitergeleitet an], - --TWM_BA.lfFloat14 AS [Rechnungs Summe], - --ISNULLTWM_BA.szText14 AS Buchungskreis, - --TWM_BA.szText08 AS Kreditor, - T.DMS_ERSTELLT_DATE AS [Erhalten wann], - [dbo].[FNPM_LAST_WORKUSER_DOC] (T.PROFIL_ID,T.DOC_ID) AS ''Last User'', - [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID) AS ''Last edited'', - [dbo].[FNPM_PROFILE_GROUP_COLOR] (T.PROFIL_ID) AS ''GROUP_COLOR'', - [dbo].[FNPM_PROFILE_GROUP_TEXT] (T.PROFIL_ID) AS ''GROUP_TEXT'' - FROM TBPM_PROFILE_FILES T, - TBPM_PROFILE T1, - TBDD_USER T2, - windream60.dbo.BaseAttributes TWM_BA WHERE T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1 AND T.PROFIL_ID = T1.GUID AND T1.GUID in (SELECT PROFIL_ID FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] ({#USER#USER_ID})) AND T1.ACTIVE = 1 And T2.GUID = {#USER#USER_ID} - AND T.DOC_ID = TWM_BA.dwDocID ORDER By T1.PRIORITY' -WHERE GUID = 1 -GO -CREATE FUNCTION [dbo].[FNDD_GET_WINDREAM_FILE_PATH] (@pDOCID BIGINT) -RETURNS VARCHAR(MAX) -AS -BEGIN - DECLARE - @RESULT VARCHAR(MAX), - @DOCID BIGINT, - @a TINYINT = 1, - @i TINYINT = 0, - @PARENT_ID BIGINT, - @DATEINAME NVARCHAR(255), - @PARENTNAME NVARCHAR(255), - @FSFLAGS INT, - @WM_PREFIX VARCHAR(50) - - SELECT @WM_PREFIX = WM_REL_PATH from tbpm_KONFIGURATION WHERE GUID = 1 - - SELECT @FSFLAGS = dwFSFlags FROM windream60.dbo.BaseAttributes WHERE dwDocID = @pDOCID - IF @FSFLAGS = 16 - BEGIN - SET @RESULT = 'THIS IS NOT A FILE!' - END - ELSE - BEGIN - SELECT @DATEINAME = szLongName,@PARENT_ID = dwParentID FROM windream60.dbo.BaseAttributes WHERE dwDocID = @pDOCID - WHILE @a > 0 - BEGIN - IF @i = 0 - BEGIN - IF @PARENT_ID = 1 - BEGIN - SET @RESULT = '\' - BREAK - END - ELSE - BEGIN - SET @DOCID = @PARENT_ID - SET @RESULT = '\' - END - END - ELSE - BEGIN - IF @PARENT_ID = 1 - BEGIN - SET @RESULT = '\' + @PARENTNAME + @RESULT - BREAK - END - ELSE - BEGIN - SET @DOCID = @PARENT_ID - SET @RESULT = '\' + @PARENTNAME + @RESULT - END - END - --select * from [172.24.12.41\BRAINPOOL].windream60.dbo.BaseAttributes - SELECT @PARENTNAME = szLongName,@PARENT_ID = dwParentID FROM windream60.dbo.BaseAttributes WHERE dwDocID = @DOCID - SET @i = @i + 1 - END - END - - SET @RESULT = @WM_PREFIX + @RESULT + @DATEINAME - RETURN @RESULT -END -GO + T1.ACTIVE = 1 +GO +UPDATE TBPM_KONFIGURATION SET SQL_PROFILE_MAIN_VIEW = ' +/*## Following Columns need to be part of sql ## +TL_STATE Returns the TrafficLight-State for each doc (1=Red;2=Orange;3=Green) +PROFILE_ID TITLE Profile-Title used for default-grouping +DOC_ID +FULL_FILE_PATH +LAST USE +LAST EDITED */ +--DECLARE @USER_ID INTEGER +--SET @USER_ID = 1 + SELECT + T.GUID, + DATEDIFF(DAY, [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID),GETDATE()) AS [Days in], + Case DATEDIFF(DAY, [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID),GETDATE()) WHEN 0 THEN 3 WHEN 1 THEN 2 WHEN 2 THEN 1 ELSE 3 END AS TL_STATE, + T.PROFIL_ID AS PROFILE_ID, + T.DOC_ID, + T.FILE_PATH AS FULL_FILE_PATH, + TWM_BA.szLongName as Dateiname, + TWM_BA.szText36 AS Dokumentart, + --TWM_BA.szText35 AS [weitergeleitet an], + --TWM_BA.lfFloat14 AS [Rechnungs Summe], + --ISNULLTWM_BA.szText14 AS Buchungskreis, + --TWM_BA.szText08 AS Kreditor, + T.DMS_ERSTELLT_DATE AS [Erhalten wann], + [dbo].[FNPM_LAST_WORKUSER_DOC] (T.PROFIL_ID,T.DOC_ID) AS ''Last User'', + [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID) AS ''Last edited'', + [dbo].[FNPM_PROFILE_GROUP_COLOR] (T.PROFIL_ID) AS ''GROUP_COLOR'', + [dbo].[FNPM_PROFILE_GROUP_TEXT] (T.PROFIL_ID) AS ''GROUP_TEXT'' + FROM TBPM_PROFILE_FILES T, + TBPM_PROFILE T1, + TBDD_USER T2, + windream60.dbo.BaseAttributes TWM_BA WHERE T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1 AND T.PROFIL_ID = T1.GUID AND T1.GUID in (SELECT PROFIL_ID FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] ({#USER#USER_ID})) AND T1.ACTIVE = 1 And T2.GUID = {#USER#USER_ID} + AND T.DOC_ID = TWM_BA.dwDocID ORDER By T1.PRIORITY' +WHERE GUID = 1 +GO +CREATE FUNCTION [dbo].[FNDD_GET_WINDREAM_FILE_PATH] (@pDOCID BIGINT) +RETURNS VARCHAR(MAX) +AS +BEGIN + DECLARE + @RESULT VARCHAR(MAX), + @DOCID BIGINT, + @a TINYINT = 1, + @i TINYINT = 0, + @PARENT_ID BIGINT, + @DATEINAME NVARCHAR(255), + @PARENTNAME NVARCHAR(255), + @FSFLAGS INT, + @WM_PREFIX VARCHAR(50) + + SELECT @WM_PREFIX = WM_REL_PATH from tbpm_KONFIGURATION WHERE GUID = 1 + + SELECT @FSFLAGS = dwFSFlags FROM windream60.dbo.BaseAttributes WHERE dwDocID = @pDOCID + IF @FSFLAGS = 16 + BEGIN + SET @RESULT = 'THIS IS NOT A FILE!' + END + ELSE + BEGIN + SELECT @DATEINAME = szLongName,@PARENT_ID = dwParentID FROM windream60.dbo.BaseAttributes WHERE dwDocID = @pDOCID + WHILE @a > 0 + BEGIN + IF @i = 0 + BEGIN + IF @PARENT_ID = 1 + BEGIN + SET @RESULT = '\' + BREAK + END + ELSE + BEGIN + SET @DOCID = @PARENT_ID + SET @RESULT = '\' + END + END + ELSE + BEGIN + IF @PARENT_ID = 1 + BEGIN + SET @RESULT = '\' + @PARENTNAME + @RESULT + BREAK + END + ELSE + BEGIN + SET @DOCID = @PARENT_ID + SET @RESULT = '\' + @PARENTNAME + @RESULT + END + END + --select * from [172.24.12.41\BRAINPOOL].windream60.dbo.BaseAttributes + SELECT @PARENTNAME = szLongName,@PARENT_ID = dwParentID FROM windream60.dbo.BaseAttributes WHERE dwDocID = @DOCID + SET @i = @i + 1 + END + END + + SET @RESULT = @WM_PREFIX + @RESULT + @DATEINAME + RETURN @RESULT +END +GO CREATE view [dbo].[VWPM_CHART_TOP5] as SELECT 'Kreditor1' as KRED_NAME @@ -1547,7 +1625,7 @@ SELECT 'Zeitkritisch' as Title --ORDER BY SEQ GO - + CREATE OR ALTER FUNCTION [dbo].[FNDD_CHECK_USER_MODULE] (@pUSERNAME VARCHAR(100), @pMODULE_SHORT_NAME VARCHAR(10),@pCLIENTID INTEGER) RETURNS @Table TABLE (SequentialOrder INT IDENTITY(1, 1), @@ -1695,10 +1773,10 @@ MODULE_ACCESS,IS_ADMIN,USERCOUNT_LOGGED_IN, COMMENT,WORKING_MODE,USER_RIGHT2,USE ,'PROD') RETURN -END -GO -CREATE PROCEDURE [dbo].[PRPM_DELETE_PROFILE](@pPID INT) -AS +END +GO +CREATE PROCEDURE [dbo].[PRPM_DELETE_PROFILE](@pPID INT) +AS delete from TBPM_CONTROL_TABLE where CONTROL_ID in (SELECT GUID FROM TBPM_PROFILE_CONTROLS where PROFIL_ID = 5); IF OBJECT_ID (N'TBPM_ERROR_LOG', N'U') IS NOT NULL DELETE FROM TBPM_ERROR_LOG WHERE PROFIL_ID = @pPID; @@ -1708,9 +1786,9 @@ AS DELETE FROM TBPM_PROFILE_CONTROLS WHERE PROFIL_ID = @pPID; DELETE FROM TBPM_PROFILE_USER WHERE PROFIL_ID = @pPID; DELETE FROM TBPM_PROFILE_GROUP WHERE PROFIL_ID = @pPID; - DELETE FROM TBPM_PROFILE WHERE GUID = @pPID; - -GO + DELETE FROM TBPM_PROFILE WHERE GUID = @pPID; + +GO CREATE FUNCTION [dbo].[FNPM_GET_WM_FILE_PATH] (@pDOCGUID BIGINT,@STANDARD As INT = 0) RETURNS VARCHAR(MAX) AS @@ -1748,4 +1826,73 @@ BEGIN SET @RESULT = 0 RETURN @RESULT END -GO \ No newline at end of file +GO +USE [msdb] +GO + +/****** Object: Job [PRPM_REFRESH_FILES_SQL] Script Date: 17.01.2022 13:23:39 ******/ +BEGIN TRANSACTION +DECLARE @ReturnCode INT +SELECT @ReturnCode = 0 +/****** Object: JobCategory [[Uncategorized (Local)]] Script Date: 17.01.2022 13:23:39 ******/ +IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'[Uncategorized (Local)]' AND category_class=1) +BEGIN +EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'[Uncategorized (Local)]' +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback + +END + +DECLARE @jobId BINARY(16) +EXEC @ReturnCode = msdb.dbo.sp_add_job @job_name=N'PRPM_REFRESH_FILES_SQL', + @enabled=1, + @notify_level_eventlog=0, + @notify_level_email=0, + @notify_level_netsend=0, + @notify_level_page=0, + @delete_level=0, + @description=N'Es ist keine Beschreibung verfügbar.', + @category_name=N'[Uncategorized (Local)]', + @owner_login_name=N'sa', @job_id = @jobId OUTPUT +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +/****** Object: Step [PRPM_REFRESH_FILES_SQL] Script Date: 17.01.2022 13:23:39 ******/ +EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'PRPM_REFRESH_FILES_SQL', + @step_id=1, + @cmdexec_success_code=0, + @on_success_action=1, + @on_success_step_id=0, + @on_fail_action=2, + @on_fail_step_id=0, + @retry_attempts=0, + @retry_interval=0, + @os_run_priority=0, @subsystem=N'TSQL', + @command=N'EXEC PRPM_REFRESH_FILES_SQL; +GO', + @database_name=N'DD_ECM', + @flags=0 +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +EXEC @ReturnCode = msdb.dbo.sp_update_job @job_id = @jobId, @start_step_id = 1 +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +EXEC @ReturnCode = msdb.dbo.sp_add_jobschedule @job_id=@jobId, @name=N'MO_FR', + @enabled=1, + @freq_type=8, + @freq_interval=62, + @freq_subday_type=4, + @freq_subday_interval=5, + @freq_relative_interval=0, + @freq_recurrence_factor=1, + @active_start_date=20200115, + @active_end_date=99991231, + @active_start_time=80000, + @active_end_time=170000, + @schedule_uid=N'ac93c8f9-3890-4111-a3de-768a66f97266' +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +EXEC @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @jobId, @server_name = N'(local)' +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +COMMIT TRANSACTION +GOTO EndSave +QuitWithRollback: + IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION +EndSave: +GO + + From cd2a10cd84904264b10706a833a5fbf3d495a6f3 Mon Sep 17 00:00:00 2001 From: Digital Data - Marlon Schreiber Date: Wed, 9 Feb 2022 13:48:42 +0100 Subject: [PATCH 2/9] MS IDB Changes --- 00_IDB/CreateDBObjects.sql | 890 +++++++++++++++++++++------------- 04_APPSERV/INSERT_JOBS.sql | 4 + 09_ZooFlow/Update/1.0.0.1.sql | Bin 29928 -> 30678 bytes 3 files changed, 567 insertions(+), 327 deletions(-) diff --git a/00_IDB/CreateDBObjects.sql b/00_IDB/CreateDBObjects.sql index 05871cd..5ee1361 100644 --- a/00_IDB/CreateDBObjects.sql +++ b/00_IDB/CreateDBObjects.sql @@ -41,6 +41,12 @@ INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DB_VERSION','1.0.4.1') GO INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('FILESTORE_PRAEFIX','\\IDB\OBJECTS') GO +INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DOCTYPE_CHANGED','AUTO REPLACE') +GO +INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DOCTYPE_CHANGED1','QUESTION VERSION') +GO +INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DOCTYPE_CHANGED2','AUTO VERSION') +GO --INSERT INTO [TBIDB_CATALOG] ([CAT_TITLE],[CAT_STRING]) VALUES ('APPSERV1','172.24.12.39') --GO INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('GHOST_SELECT',' @@ -105,7 +111,29 @@ AS FROM INSERTED WHERE TBIDB_DOCTYPE_OBJECT_STORE.GUID = INSERTED.GUID GO - +CREATE TABLE TBIDB_DOCTYPE_HANDLING +( + GUID INT NOT NULL IDENTITY (1, 1), + DOCTYPE VARCHAR(100) NOT NULL, + CHANGED_ACTION INT NOT NULL, + ACTIVE BIT NOT NULL DEFAULT 1, + COMMENT VARCHAR(1000), + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHEN DATETIME DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_DOCTYPE_HANDLING PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_DOCTYPE_HANDLING UNIQUE (DOCTYPE), + CONSTRAINT FK_TBIDB_DOCTYPE_HANDLING_CHNGACT FOREIGN KEY (CHANGED_ACTION) REFERENCES TBIDB_CATALOG (GUID) +) +GO +CREATE TRIGGER TBIDB_DOCTYPE_HANDLING_AFT_UPD ON TBIDB_DOCTYPE_HANDLING +FOR UPDATE +AS + UPDATE TBIDB_DOCTYPE_HANDLING SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_DOCTYPE_HANDLING.GUID = INSERTED.GUID +GO CREATE TABLE TBIDB_TERM_VALUE_VARCHAR ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -453,7 +481,7 @@ AS WHERE TBIDB_OBJECT_BE.IDB_OBJ_ID = INSERTED.IDB_OBJ_ID GO ---ALTER TABLE TBIDB_ATTRIBUTE ADD SYS_ATTRIBUTE BIT NOT NULL DEFAULT 0 +--CREATE TABLE TBIDB_ATTRIBUTE ADD SYS_ATTRIBUTE BIT NOT NULL DEFAULT 0 GO CREATE TABLE TBIDB_ATTRIBUTE ( @@ -559,26 +587,63 @@ AS FROM INSERTED WHERE TBIDB_BE_ATTRIBUTE.GUID = INSERTED.GUID GO ---DROP TABLE TBIDB_TERM_LANGUAGE -CREATE TABLE TBIDB_TERM_LANGUAGE +CREATE TABLE TBIDB_LANGUAGE_TERM ( GUID BIGINT NOT NULL IDENTITY (1, 1), - LANGUAGE_ID TINYINT NOT NULL DEFAULT 1, - TEXT_TERM_ID BIGINT NOT NULL, - ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', - ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), - CHANGED_WHO VARCHAR(100), - CHANGED_WHEN DATETIME, - CONSTRAINT PK_TBIDB_TERM_LANGUAGE PRIMARY KEY (GUID), - CONSTRAINT FK_TL_LANGUAGE_ID FOREIGN KEY (LANGUAGE_ID) REFERENCES TBIDB_LANGUAGE (GUID), -) -GO -CREATE TRIGGER [dbo].[TBIDB_TERM_LANGUAGE_AFT_UPD] ON [dbo].[TBIDB_TERM_LANGUAGE] + OBJECT_ID BIGINT NOT NULL, + TERM_ID BIGINT NOT NULL, + LANG_ID TINYINT NOT NULL, + KIND_TYPE VARCHAR(100), + ADDED_WHO BIGINT, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHO BIGINT, + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_LANGUAGE_TERM PRIMARY KEY (GUID), + CONSTRAINT UN_TBIDB_LANGUAGE_TERM UNIQUE(OBJECT_ID,TERM_ID,LANG_ID), + CONSTRAINT FK_TBIDB_LANGUAGE_TERM_TERMID FOREIGN KEY (TERM_ID) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), + CONSTRAINT FK_TBIDB_LANGUAGE_TERM_LANG_ID FOREIGN KEY (LANG_ID) REFERENCES TBIDB_LANGUAGE (GUID), + CONSTRAINT FK_TBIDB_LANGUAGE_TERM_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), + CONSTRAINT FK_TBIDB_LANGUAGE_TERM_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) +GO +CREATE OR ALTER TRIGGER [dbo].[TBIDB_LANGUAGE_TERM_AFT_UPD] ON [dbo].[TBIDB_LANGUAGE_TERM] FOR UPDATE AS - UPDATE TBIDB_TERM_LANGUAGE SET CHANGED_WHEN = GETDATE() + DECLARE + @IDB_OBJ_ID BIGINT, + @ATTR_ID INTEGER, + @CHANGED_WHO VARCHAR(100), + @OLD_TERM_ID BIGINT, + @NEW_TERM_ID BIGINT + + + SELECT + @OLD_TERM_ID = TERM_ID + FROM DELETED + SELECT + @IDB_OBJ_ID = MD.IDB_OBJ_ID, + @ATTR_ID = MD.ATTR_ID, + @NEW_TERM_ID = INS.TERM_ID, + @CHANGED_WHO = INS.CHANGED_WHO + FROM INSERTED INS INNER JOIN TBIDB_OBJECT_METADATA MD ON INS.[OBJECT_ID] = MD.GUID + + + IF @IDB_OBJ_ID IS NOT NULL + INSERT INTO TBIDB_OBJECT_METADATA_CHANGE ( + IDB_OBJ_ID, + ATTR_ID, + OLD_TEXT_TERM, + NEW_TEXT_TERM, + CHANGED_WHO) VALUES + (@IDB_OBJ_ID, + @ATTR_ID, + @OLD_TERM_ID, + @NEW_TERM_ID, + @CHANGED_WHO) + + + UPDATE TBIDB_LANGUAGE_TERM SET CHANGED_WHEN = GETDATE() FROM INSERTED - WHERE TBIDB_TERM_LANGUAGE.GUID = INSERTED.GUID + WHERE TBIDB_LANGUAGE_TERM.GUID = INSERTED.GUID GO --DROP TABLE TBIDB_OBJECT_METADATA_CHANGE @@ -588,7 +653,6 @@ CREATE TABLE TBIDB_OBJECT_METADATA GUID BIGINT NOT NULL IDENTITY (1, 1), IDB_OBJ_ID BIGINT NOT NULL, ATTR_ID INTEGER NOT NULL, - TEXT_TERM_LANG_ID BIGINT, INT_TERM_ID BIGINT, DEC_TERM_ID BIGINT, FLOAT_TERM_ID BIGINT, @@ -601,7 +665,6 @@ CREATE TABLE TBIDB_OBJECT_METADATA CONSTRAINT PK_TBIDB_OBJECT_METADATA PRIMARY KEY (GUID), CONSTRAINT FK_OMD_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), CONSTRAINT FK_OMD_ATTR_ID FOREIGN KEY (ATTR_ID) REFERENCES TBIDB_ATTRIBUTE (GUID), - CONSTRAINT FK_OMD_TEXT_TERM_ID FOREIGN KEY (TEXT_TERM_LANG_ID) REFERENCES TBIDB_TERM_LANGUAGE (GUID), CONSTRAINT FK_OMD_INT_TERM_ID FOREIGN KEY (INT_TERM_ID) REFERENCES TBIDB_TERM_VALUE_INTEGER (GUID), CONSTRAINT FK_OMD_DEC_TERM_ID FOREIGN KEY (DEC_TERM_ID) REFERENCES TBIDB_TERM_VALUE_DECIMAL (GUID), CONSTRAINT FK_OMD_FLOAT_TERM_ID FOREIGN KEY (FLOAT_TERM_ID) REFERENCES TBIDB_TERM_VALUE_FLOAT (GUID), @@ -613,14 +676,14 @@ CREATE NONCLUSTERED INDEX IDXTBIDB_OBJECT_METADATA_IDBOBJID ON [dbo].[TBIDB_OBJECT_METADATA] ([IDB_OBJ_ID]) GO - +DROP TABLE TBIDB_OBJECT_METADATA_CHANGE; CREATE TABLE TBIDB_OBJECT_METADATA_CHANGE ( GUID BIGINT NOT NULL IDENTITY (1, 1), IDB_OBJ_ID BIGINT NOT NULL, ATTR_ID INTEGER NOT NULL, - OLD_TEXT_TERM_LANG_ID BIGINT, - NEW_TEXT_TERM_LANG_ID BIGINT, + OLD_TEXT_TERM BIGINT, + NEW_TEXT_TERM BIGINT, OLD_INT_TERM_ID BIGINT, NEW_INT_TERM_ID BIGINT, OLD_DEC_TERM_ID BIGINT, @@ -636,8 +699,8 @@ CREATE TABLE TBIDB_OBJECT_METADATA_CHANGE CONSTRAINT PK_TBIDB_OBJECT_METADATA_CHANGE PRIMARY KEY (GUID), CONSTRAINT FK_OMDC_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), CONSTRAINT FK_OMDC_ATTR_ID FOREIGN KEY (ATTR_ID) REFERENCES TBIDB_ATTRIBUTE (GUID), - CONSTRAINT FK_OMDC_OLD_TEXT_TERM_ID FOREIGN KEY (OLD_TEXT_TERM_LANG_ID) REFERENCES TBIDB_TERM_LANGUAGE (GUID), - CONSTRAINT FK_OMDC_NEW_TEXT_TERM_ID FOREIGN KEY (NEW_TEXT_TERM_LANG_ID) REFERENCES TBIDB_TERM_LANGUAGE (GUID), + CONSTRAINT FK_OMDC_OLD_TEXT_TERM_ID FOREIGN KEY (OLD_TEXT_TERM) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), + CONSTRAINT FK_OMDC_NEW_TEXT_TERM_ID FOREIGN KEY (NEW_TEXT_TERM) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), CONSTRAINT FK_OMDC_OLD_INT_TERM_ID FOREIGN KEY (OLD_INT_TERM_ID) REFERENCES TBIDB_TERM_VALUE_INTEGER (GUID), CONSTRAINT FK_OMDC_NEW_INT_TERM_ID FOREIGN KEY (NEW_INT_TERM_ID) REFERENCES TBIDB_TERM_VALUE_INTEGER (GUID), CONSTRAINT FK_OMDC_OLD_DEC_TERM_ID FOREIGN KEY (OLD_DEC_TERM_ID) REFERENCES TBIDB_TERM_VALUE_DECIMAL (GUID), @@ -648,12 +711,12 @@ CREATE TABLE TBIDB_OBJECT_METADATA_CHANGE CONSTRAINT FK_OMDC_NEW_DATE_TERM_ID FOREIGN KEY (NEW_DATE_TERM_ID) REFERENCES TBIDB_TERM_VALUE_DATE (GUID), ) GO - +DROP TABLE TBIDB_OBJECT_METADATA_ADD CREATE TABLE [dbo].[TBIDB_OBJECT_METADATA_ADD]( [GUID] BIGINT IDENTITY(1,1) NOT NULL, [IDB_OBJ_ID] BIGINT NOT NULL, [ATTR_ID] INT NOT NULL, - [TEXT_TERM_LANG_ID] BIGINT, + [TEXT_TERM_ID] BIGINT, [INT_TERM_ID] BIGINT, [DEC_TERM_ID] BIGINT, [FLOAT_TERM_ID] BIGINT, @@ -667,17 +730,16 @@ CREATE TABLE [dbo].[TBIDB_OBJECT_METADATA_ADD]( CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_DECTERMID FOREIGN KEY(DEC_TERM_ID) REFERENCES TBIDB_TERM_VALUE_DECIMAL(GUID), CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_FLOATTERMID FOREIGN KEY(FLOAT_TERM_ID) REFERENCES TBIDB_TERM_VALUE_FLOAT(GUID), CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_INTTERMID FOREIGN KEY(INT_TERM_ID) REFERENCES TBIDB_TERM_VALUE_INTEGER(GUID), - CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_TEXTTERMLANGID FOREIGN KEY(TEXT_TERM_LANG_ID) REFERENCES TBIDB_TERM_LANGUAGE(GUID), + CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_TEXTTERMLANGID FOREIGN KEY(TEXT_TERM_ID) REFERENCES TBIDB_TERM_VALUE_VARCHAR(GUID), ) GO - CREATE TABLE TBIDB_OBJECT_METADATA_DELETE ( GUID BIGINT NOT NULL IDENTITY (1, 1), IDB_OBJ_ID BIGINT NOT NULL, ATTR_ID INTEGER NOT NULL, - TEXT_TERM_LANG_ID BIGINT, + TEXT_TERM_ID BIGINT, INT_TERM_ID BIGINT, DEC_TERM_ID BIGINT, FLOAT_TERM_ID BIGINT, @@ -690,22 +752,22 @@ CREATE TABLE TBIDB_OBJECT_METADATA_DELETE CONSTRAINT PK_TBIDB_OBJECT_METADATA_DELETE PRIMARY KEY (GUID), CONSTRAINT FK_OMDD_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), CONSTRAINT FK_OMDD_ATTR_ID FOREIGN KEY (ATTR_ID) REFERENCES TBIDB_ATTRIBUTE (GUID), - CONSTRAINT FK_OMDD_TEXT_TERM_ID FOREIGN KEY (TEXT_TERM_LANG_ID) REFERENCES TBIDB_TERM_LANGUAGE (GUID), + CONSTRAINT FK_OMDD_TEXT_TERM_ID FOREIGN KEY (TEXT_TERM_ID) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), CONSTRAINT FK_OMDD_INT_TERM_ID FOREIGN KEY (INT_TERM_ID) REFERENCES TBIDB_TERM_VALUE_INTEGER (GUID), CONSTRAINT FK_OMDD_DEC_TERM_ID FOREIGN KEY (DEC_TERM_ID) REFERENCES TBIDB_TERM_VALUE_DECIMAL (GUID), CONSTRAINT FK_OMDD_FLOAT_TERM_ID FOREIGN KEY (FLOAT_TERM_ID) REFERENCES TBIDB_TERM_VALUE_FLOAT (GUID), CONSTRAINT FK_OMDD_DATE_TERM_ID FOREIGN KEY (DATE_TERM_ID) REFERENCES TBIDB_TERM_VALUE_DATE (GUID), ) GO -CREATE TRIGGER [dbo].[TBIDB_OBJECT_METADATA_AFT_UPD] ON [dbo].[TBIDB_OBJECT_METADATA] +CREATE OR ALTER TRIGGER [dbo].[TBIDB_OBJECT_METADATA_AFT_UPD] ON [dbo].[TBIDB_OBJECT_METADATA] FOR UPDATE AS DECLARE @IDB_OBJ_ID BIGINT, @ATTR_ID INTEGER, @CHANGED_WHO VARCHAR(100), - @OLD_TEXT_TERM_LANG_ID BIGINT, - @NEW_TEXT_TERM_LANG_ID BIGINT, + --@OLD_TEXT_TERM_LANG_ID BIGINT, + --@NEW_TEXT_TERM_LANG_ID BIGINT, @OLD_INT_TERM_ID BIGINT, @NEW_INT_TERM_ID BIGINT, @OLD_DEC_TERM_ID BIGINT, @@ -716,7 +778,7 @@ AS @NEW_DATE_TERM_ID BIGINT SELECT - @OLD_TEXT_TERM_LANG_ID = TEXT_TERM_LANG_ID, + --@OLD_TEXT_TERM_LANG_ID = TEXT_TERM_LANG_ID, @OLD_INT_TERM_ID = INT_TERM_ID, @OLD_DEC_TERM_ID = DEC_TERM_ID, @OLD_FLOAT_TERM_ID = FLOAT_TERM_ID, @@ -725,7 +787,7 @@ AS SELECT @IDB_OBJ_ID = IDB_OBJ_ID, @ATTR_ID = ATTR_ID, - @NEW_TEXT_TERM_LANG_ID = TEXT_TERM_LANG_ID, + --@NEW_TEXT_TERM_LANG_ID = TEXT_TERM_LANG_ID, @NEW_INT_TERM_ID = INT_TERM_ID, @NEW_DEC_TERM_ID = DEC_TERM_ID, @NEW_FLOAT_TERM_ID = FLOAT_TERM_ID, @@ -737,8 +799,8 @@ AS INSERT INTO TBIDB_OBJECT_METADATA_CHANGE ( IDB_OBJ_ID, ATTR_ID, - OLD_TEXT_TERM_LANG_ID, - NEW_TEXT_TERM_LANG_ID, + --OLD_TEXT_TERM_LANG_ID, + --NEW_TEXT_TERM_LANG_ID, OLD_INT_TERM_ID, NEW_INT_TERM_ID, OLD_DEC_TERM_ID, @@ -750,8 +812,8 @@ AS CHANGED_WHO) VALUES (@IDB_OBJ_ID, @ATTR_ID, - @OLD_TEXT_TERM_LANG_ID, - @NEW_TEXT_TERM_LANG_ID, + --@OLD_TEXT_TERM_LANG_ID, + --@NEW_TEXT_TERM_LANG_ID, @OLD_INT_TERM_ID, @NEW_INT_TERM_ID, @OLD_DEC_TERM_ID, @@ -767,13 +829,13 @@ AS FROM INSERTED WHERE TBIDB_OBJECT_METADATA.GUID = INSERTED.GUID GO -CREATE TRIGGER TBIDB_OBJECT_METADATA_AFT_INS ON TBIDB_OBJECT_METADATA +CREATE OR ALTER TRIGGER TBIDB_OBJECT_METADATA_AFT_INS ON TBIDB_OBJECT_METADATA WITH EXECUTE AS CALLER FOR INSERT AS BEGIN TRY DECLARE - @TEXT_TERM_ID BIGINT, + --@TEXT_TERM_ID BIGINT, @INT_TERM_ID BIGINT, @DEC_TERM_ID BIGINT, @FLOAT_TERM_ID BIGINT, @@ -782,7 +844,7 @@ BEGIN TRY @TYPID TINYINT, @ERROR VARCHAR(100) SELECT - @TEXT_TERM_ID = TEXT_TERM_LANG_ID, + --@TEXT_TERM_ID = TEXT_TERM_LANG_ID, @INT_TERM_ID = INT_TERM_ID, @DEC_TERM_ID = DEC_TERM_ID, @FLOAT_TERM_ID = FLOAT_TERM_ID, @@ -793,9 +855,9 @@ BEGIN TRY SET @ERROR = 'NONE' SELECT @TYPID = TYP_ID FROM TBIDB_ATTRIBUTE WHERE GUID = @ATTR_ID - IF @TYPID in (1,8) AND @TEXT_TERM_ID IS NULL - SET @ERROR = 'NO @TEXT_TERM_ID FOR INSERT' - ELSE IF @TYPID in (2,9) AND @INT_TERM_ID IS NULL + --IF @TYPID in (1,8) AND @TEXT_TERM_ID IS NULL + -- SET @ERROR = 'NO @TEXT_TERM_ID FOR INSERT' + IF @TYPID in (2,9) AND @INT_TERM_ID IS NULL SET @ERROR = 'NO @INT_TERM_ID FOR INSERT' ELSE IF @TYPID = 3 AND @FLOAT_TERM_ID IS NULL SET @ERROR = 'NO @@FLOAT_TERM_ID FOR INSERT' @@ -916,17 +978,15 @@ INSERT INTO TBIDB_BASE (CONFIG_NAME,CONFIG_VALUE) VALUES ('GHOST_SELECT',' SELECT T.USERNAME,T.NAME, T.[PRENAME],T.EMAIL FROM MY_DD_ECM_DB.dbo.TBDD_USER T ORDER BY USERNAME') GO - CREATE TABLE TBIDB_STATES ( - GUID BIGINT NOT NULL IDENTITY (1, 1), - STATE_LTERM_ID BIGINT NOT NULL, + GUID INTEGER NOT NULL IDENTITY (1, 1), + TITLE VARCHAR(200) NOT NULL, ADDED_WHO BIGINT, ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), CHANGED_WHO BIGINT, CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_STATES PRIMARY KEY (GUID), - CONSTRAINT FK_TBIDB_STATES_STATE_LTERM_ID FOREIGN KEY (STATE_LTERM_ID) REFERENCES TBIDB_TERM_LANGUAGE (GUID), CONSTRAINT FK_TBIDB_STATES_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), CONSTRAINT FK_TBIDB_STATES_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) GO @@ -938,20 +998,20 @@ AS WHERE TBIDB_STATES.GUID = INSERTED.GUID GO - - - CREATE TABLE TBIDB_STATE_LANG_GROUP ( GUID BIGINT NOT NULL IDENTITY (1, 1), - STATE_ID BIGINT NOT NULL, + STATE_ID INTEGER NOT NULL, LANG_TERM_ID BIGINT NOT NULL, + LANG_ID TINYINT NOT NULL, ADDED_WHO BIGINT, ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), CHANGED_WHO BIGINT, CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_STATE_LANG_GROUP PRIMARY KEY (GUID), CONSTRAINT FK_TBIDB_STATE_LANG_GROUP_STATE_ID FOREIGN KEY (STATE_ID) REFERENCES TBIDB_STATES (GUID), + CONSTRAINT FK_TBIDB_STATE_LANG_GROUP_LANG_TERM_ID FOREIGN KEY (LANG_TERM_ID) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), + CONSTRAINT FK_TBIDB_STATE_LANG_GROUP_LANG_ID FOREIGN KEY (LANG_ID) REFERENCES TBIDB_LANGUAGE (GUID), CONSTRAINT FK_TBIDB_STATE_LANG_GROUP_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), CONSTRAINT FK_TTBIDB_STATE_LANG_GROUP_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) GO @@ -962,6 +1022,9 @@ AS FROM INSERTED WHERE TBIDB_STATE_LANG_GROUP.GUID = INSERTED.GUID GO +DROP TABLE TBIDB_CONVERSATION_MESSAGE +DROP TABLE TBIDB_CONVERSATION_USER +DROP TABLE TBIDB_CONVERSATION_OBJECT CREATE TABLE TBIDB_CONVERSATION_OBJECT ( @@ -973,7 +1036,6 @@ CREATE TABLE TBIDB_CONVERSATION_OBJECT CHANGED_WHO BIGINT, CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_CONVERSATION_OBJECT PRIMARY KEY (GUID), - CONSTRAINT FK_TITLE_TERM_ID FOREIGN KEY (TITLE_TERM_ID) REFERENCES TBIDB_TERM_LANGUAGE (GUID), CONSTRAINT FK_TBIDB_CONVERSATION_OBJECT_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), CONSTRAINT FK_TBIDB_CONVERSATION_OBJECT_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), CONSTRAINT FK_TBIDB_CONVERSATION_OBJECT_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) @@ -988,12 +1050,12 @@ GO GO ---delete from TBIDB_MYOBJECT_STATES +DROP TABLE TBIDB_MYOBJECT_STATES; CREATE TABLE TBIDB_MYOBJECT_STATES ( GUID BIGINT NOT NULL IDENTITY (1, 1), MY_OBJECT_ID BIGINT NOT NULL, - STATE_ID BIGINT NOT NULL, + STATE_ID INTEGER NOT NULL, COMMENT_ID BIGINT , ADDED_WHO BIGINT, ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), @@ -1001,7 +1063,6 @@ CREATE TABLE TBIDB_MYOBJECT_STATES CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_MYOBJECT_STATES PRIMARY KEY (GUID), CONSTRAINT FK_TBIDB_MYOBJECT_STATES_STATE_ID FOREIGN KEY (STATE_ID) REFERENCES TBIDB_STATES (GUID), - CONSTRAINT FK_TBIDB_MYOBJECT_STATES_COMMENT_ID_T_ID FOREIGN KEY (COMMENT_ID) REFERENCES TBIDB_TERM_LANGUAGE (GUID), CONSTRAINT FK_TBIDB_MYOBJECT_STATES_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), CONSTRAINT FK_TBIDB_MYOBJECT_STATES_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) GO @@ -1045,10 +1106,11 @@ GO --DROP TABLE TBIDB_SEARCH_PROFILE +DROP TABLE TBIDB_SEARCH_LANGUAGE_SQL_RESULT +DROP TABLE TBIDB_SEARCH_PROFILE_USER_GROUP CREATE TABLE TBIDB_SEARCH_PROFILE ( GUID INTEGER NOT NULL IDENTITY (1, 1), - TITLE_ID BIGINT NOT NULL, COMMENT VARCHAR(900), ACTIVE BIT NOT NULL DEFAULT 1, ADDED_WHO BIGINT, @@ -1311,18 +1373,11 @@ GO ALTER TABLE [dbo].[TBIDB_LANGUAGE_TERM_METADATA] CHECK CONSTRAINT [FK_TBIDB_LTMD_CHANGED_WHO_T_ID] GO -ALTER TABLE [dbo].[TBIDB_LANGUAGE_TERM_METADATA] WITH CHECK ADD CONSTRAINT [FK_TBIDB_LTMD_LANG_TERM_ID] FOREIGN KEY([LANG_TERM_ID]) -REFERENCES [dbo].[TBIDB_TERM_LANGUAGE] ([GUID]) -GO - ALTER TABLE [dbo].[TBIDB_LANGUAGE_TERM_METADATA] CHECK CONSTRAINT [FK_TBIDB_LTMD_LANG_TERM_ID] GO -CREATE NONCLUSTERED INDEX [IDXTBIDB_OBJECT_METADATA_ATTR_ID1] -ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID]) -INCLUDE ([IDB_OBJ_ID],[TEXT_TERM_LANG_ID],[ADDED_WHO],[ADDED_WHEN]) -GO + CREATE NONCLUSTERED INDEX [TBIDB_LANGUAGE_TERM_METADATA_LANG_TERM_ID] ON [dbo].[TBIDB_LANGUAGE_TERM_METADATA] ([LANG_TERM_ID]) GO @@ -1330,10 +1385,6 @@ CREATE NONCLUSTERED INDEX [IDXTBIDB_OBJECT_METADATA2] ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID]) INCLUDE ([IDB_OBJ_ID],[INT_TERM_ID],[ADDED_WHO],[ADDED_WHEN]) GO -CREATE NONCLUSTERED INDEX [IDXTBIDB_OBJECT_METADATA_ATTR_ID_TEXT_TERM_LANG_ID] -ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID],[TEXT_TERM_LANG_ID]) -INCLUDE ([IDB_OBJ_ID],[ADDED_WHO],[ADDED_WHEN]) -GO CREATE NONCLUSTERED INDEX [IDXTBIDB_OBJECT_METADATA3] ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID]) INCLUDE ([IDB_OBJ_ID],[FLOAT_TERM_ID],[ADDED_WHO],[ADDED_WHEN]) @@ -1342,10 +1393,6 @@ CREATE NONCLUSTERED INDEX [IDXTBIDB_OBJECT_METADATA_ATTR_ID_[FLOAT_TERM_ID] ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID],[FLOAT_TERM_ID]) INCLUDE ([IDB_OBJ_ID],[ADDED_WHO],[ADDED_WHEN]) GO -CREATE NONCLUSTERED INDEX IDX_GUID_TEXTTEM_ID -ON [dbo].[TBIDB_TERM_LANGUAGE] ([LANGUAGE_ID]) -INCLUDE ([GUID],[TEXT_TERM_ID]) -GO CREATE NONCLUSTERED INDEX IDX_CHANGED_WHEN ON [dbo].[TBIDB_OBJECT_METADATA_CHANGE] ([CHANGED_WHEN]) INCLUDE ([GUID]) @@ -1367,7 +1414,6 @@ CREATE TABLE TBIDB_CONVERSATION_MESSAGE CONSTRAINT PK_TBIDB_CONVERSATION_MESSAGE PRIMARY KEY (GUID), CONSTRAINT FK_TBIDB_CONVERSATION_MESSAGE_CONV_ID FOREIGN KEY (CONV_ID) REFERENCES TBIDB_CONVERSATION_OBJECT (GUID), CONSTRAINT FK_TBIDB_CONVERSATION_MESSAGE_MESSAGE_FROM_USER FOREIGN KEY (FROM_USER) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), - CONSTRAINT FK_TBIDB_CONVERSATION_MESSAGE_MESSAGE_TERM_ID FOREIGN KEY (MESSAGE_TERM_ID) REFERENCES TBIDB_TERM_LANGUAGE (GUID), CONSTRAINT FK_TBIDB_CONVERSATION_MESSAGE_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) GO --CREATE TABLE TBIDB_USER_SEARCH_CRITERIA @@ -1609,7 +1655,91 @@ GO /*########################### ######### FUNCTIONS ######### #############################*/ -CREATE FUNCTION [dbo].[FNIDB_PM_GET_VARIABLE_VALUE_ROWID] (@DocID BIGINT, @ATTRIBUTE VARCHAR(100),@LANG_CODE VARCHAR(10), @DocID_ISFOREIGN as BIT = False) +CREATE OR ALTER FUNCTION [dbo].[FNIDB_GET_VARIABLE_VALUE] (@IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100),@LANG_CODE VARCHAR(10)) +RETURNS @Output TABLE (TERM_VALUE NVARCHAR(900), TERM_DATE DATE,TERM_DATETIME DATETIME) +AS +BEGIN + DECLARE + @ATTR_ID INTEGER, + @TYP_ID TINYINT, + @TYP_DESCR VARCHAR(100), + @MULTI BIT, + @TERM_RESULT VARCHAR(900), + @IDB_CREATED_WHEN DATETIME, + @IDB_CREATED_WHO VARCHAR(100), + @IDB_CHANGED_WHEN DATETIME, + @IDB_CHANGED_WHO VARCHAR(100) + + SELECT @IDB_CREATED_WHEN = ADDED_WHEN, @IDB_CREATED_WHO = ADDED_WHO, @IDB_CHANGED_WHEN = CHANGED_WHEN, @IDB_CHANGED_WHO = CHANGED_WHO FROM TBIDB_OBJECT + WHERE IDB_OBJ_ID = @IDB_OBJ_ID; + + + IF @ATTRIBUTE like 'IDB%' + BEGIN + SELECT @IDB_CREATED_WHEN = ADDED_WHEN, @IDB_CREATED_WHO = ADDED_WHO, @IDB_CHANGED_WHEN = CHANGED_WHEN, @IDB_CHANGED_WHO = CHANGED_WHO FROM TBIDB_OBJECT + WHERE IDB_OBJ_ID = @IDB_OBJ_ID + IF @ATTRIBUTE = 'IDBCreatedWhen' + INSERT INTO @Output (TERM_VALUE) VALUES (@IDB_CREATED_WHEN) + ELSE IF @ATTRIBUTE = 'IDBCreatedWho' + INSERT INTO @Output (TERM_VALUE) VALUES (@IDB_CREATED_WHO) + ELSE IF @ATTRIBUTE = 'IDBChangedWhen' + INSERT INTO @Output (TERM_VALUE) VALUES (@IDB_CHANGED_WHEN) + ELSE IF @ATTRIBUTE = 'IDBChangedWho' + INSERT INTO @Output (TERM_VALUE) VALUES (@IDB_CHANGED_WHO) + END + ELSE + BEGIN + SELECT @ATTR_ID = T.GUID, @TYP_ID = T.TYP_ID, @MULTI = T.MULTI_CONTEXT,@TYP_DESCR = T1.NAME_TYPE FROM TBIDB_ATTRIBUTE T, TBIDB_ATTRIBUTE_TYPE T1 + WHERE T.TYP_ID = T1.GUID AND UPPER(TITLE) = UPPER(@ATTRIBUTE) + IF @TYP_ID IN (1,8) --VARCHAR + BEGIN + DECLARE @TL_ID BIGINT + INSERT INTO @Output (TERM_VALUE) + SELECT TERM.TERM_VALUE FROM + TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TERM.GUID = TLANG.TERM_ID + INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.OBJECT_ID = MD.GUID + INNER JOIN TBIDB_LANGUAGE LANG ON TLANG.LANG_ID = LANG.GUID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + WHERE MD.ATTR_ID = @ATTR_ID + AND LANG.LANG_CODE = @LANG_CODE + AND MD.IDB_OBJ_ID = @IDB_OBJ_ID + AND OBJ.ACTIVE = 1 + END + ELSE IF @TYP_ID IN (2,7,9) --BIGINT + BEGIN + INSERT INTO @Output (TERM_VALUE) + SELECT TERM.TERM_VALUE FROM TBIDB_TERM_VALUE_INTEGER TERM, TBIDB_OBJECT_METADATA MD WHERE MD.INT_TERM_ID = TERM.GUID + AND MD.ATTR_ID = @ATTR_ID AND IDB_OBJ_ID = @IDB_OBJ_ID + END + ELSE IF @TYP_ID = 3 --FLOAT + BEGIN + INSERT INTO @Output (TERM_VALUE) + SELECT TERM.TERM_VALUE FROM TBIDB_TERM_VALUE_FLOAT TERM, TBIDB_OBJECT_METADATA MD WHERE MD.FLOAT_TERM_ID = TERM.GUID + AND MD.ATTR_ID = @ATTR_ID AND IDB_OBJ_ID = @IDB_OBJ_ID + END + ELSE IF @TYP_ID = 4 + BEGIN + INSERT INTO @Output (TERM_VALUE) + SELECT TERM.TERM_VALUE FROM TBIDB_TERM_VALUE_DECIMAL TERM, TBIDB_OBJECT_METADATA MD WHERE MD.DEC_TERM_ID = TERM.GUID + AND MD.ATTR_ID = @ATTR_ID AND IDB_OBJ_ID = @IDB_OBJ_ID + END + ELSE IF @TYP_ID = 5 + BEGIN + INSERT INTO @Output (TERM_VALUE) + SELECT TERM.TERM_VALUE FROM TBIDB_TERM_VALUE_DATE TERM, TBIDB_OBJECT_METADATA MD WHERE MD.DATE_TERM_ID = TERM.GUID + AND MD.ATTR_ID = @ATTR_ID AND IDB_OBJ_ID = @IDB_OBJ_ID + END + ELSE IF @TYP_ID = 6 + BEGIN + INSERT INTO @Output (TERM_VALUE,TERM_DATETIME) + SELECT TERM.TERM_VALUE,TERM.TERM_VALUE FROM TBIDB_TERM_VALUE_DATETIME TERM, TBIDB_OBJECT_METADATA MD WHERE MD.DATETIME_TERM_ID = TERM.GUID + AND MD.ATTR_ID = @ATTR_ID AND IDB_OBJ_ID = @IDB_OBJ_ID + END + END + RETURN +END +GO +CREATE OR ALTER FUNCTION [dbo].[FNIDB_PM_GET_VARIABLE_VALUE_ROWID] (@DocID BIGINT, @ATTRIBUTE VARCHAR(100),@LANG_CODE VARCHAR(10), @DocID_ISFOREIGN as BIT = False) RETURNS @Output TABLE (ID INT IDENTITY(1, 1),TERM_VALUE VARCHAR(900)) AS BEGIN @@ -1618,25 +1748,27 @@ BEGIN @TYP_ID TINYINT, @TYP_DESCR VARCHAR(100), @MULTI BIT, - @LANG_ID INT, @TERM_RESULT VARCHAR(900) - SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @LANG_CODE SELECT @ATTR_ID = T.GUID, @TYP_ID = T.TYP_ID, @MULTI = T.MULTI_CONTEXT,@TYP_DESCR = T1.NAME_TYPE FROM TBIDB_ATTRIBUTE T, TBIDB_ATTRIBUTE_TYPE T1 - WHERE T.TYP_ID = T1.GUID AND UPPER(TITLE) = UPPER(@ATTRIBUTE) + WHERE T.TYP_ID = T1.GUID AND UPPER(TITLE) = UPPER(@ATTRIBUTE); IF @DocID_ISFOREIGN = 1 - SELECT @DocID = IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @DocID + SELECT @DocID = IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @DocID; IF @TYP_ID IN (1,8) --VARCHAR BEGIN DECLARE @TL_ID BIGINT INSERT INTO @Output (TERM_VALUE) SELECT TERM.TERM_VALUE FROM - TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_TERM_LANGUAGE TLANG ON TERM.GUID = TLANG.TEXT_TERM_ID - INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.GUID = MD.TEXT_TERM_LANG_ID - WHERE MD.ATTR_ID = @ATTR_ID - AND TLANG.LANGUAGE_ID = @LANG_ID - AND MD.IDB_OBJ_ID = @DocID + TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TERM.GUID = TLANG.TERM_ID + INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.OBJECT_ID = MD.GUID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + INNER JOIN TBIDB_LANGUAGE LANG ON TLANG.LANG_ID = LANG.GUID + WHERE + MD.ATTR_ID = @ATTR_ID + AND LANG.LANG_CODE = @LANG_CODE + AND MD.IDB_OBJ_ID = @DocID + AND OBJ.ACTIVE = 1; END ELSE IF @TYP_ID IN (2,7,9) --BIGINT BEGIN @@ -1743,15 +1875,21 @@ BEGIN RETURN @FileName END GO -CREATE FUNCTION [dbo].[FNIDB_GET_TERM_TEXT] (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER) +CREATE OR ALTER FUNCTION [dbo].[FNIDB_GET_TERM_TEXT] (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER,@LANG_CODE VARCHAR(10) = 'de-DE') RETURNS VARCHAR(900) AS BEGIN DECLARE @TERM_ID BIGINT, @RESULT VARCHAR(900) - SELECT @TERM_ID = T1.TEXT_TERM_ID FROM TBIDB_OBJECT_METADATA T, TBIDB_TERM_LANGUAGE T1 WHERE - T.TEXT_TERM_LANG_ID = T1.GUID AND + SELECT @RESULT = TERM.TERM_VALUE + FROM + TBIDB_OBJECT_METADATA T INNER JOIN TBIDB_LANGUAGE_TERM T1 ON T.GUID = T1.OBJECT_ID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON T1.TERM_ID = TERM.GUID + INNER JOIN TBIDB_LANGUAGE LANG ON T1.LANG_ID = LANG.GUID + INNER JOIN TBIDB_OBJECT OBJ ON T.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + WHERE T.IDB_OBJ_ID = @IDB_OBJ_ID and T.ATTR_ID = @ATTR_ID - SELECT @RESULT = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @TERM_ID + AND LANG.LANG_CODE = @LANG_CODE + AND OBJ.ACTIVE = 1; RETURN @RESULT END GO @@ -1766,16 +1904,19 @@ BEGIN END GO ---------------------------------------------------- -CREATE FUNCTION [dbo].[FNIDB_GET_TERM_TEXT_VECTOR] (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER) +CREATE OR ALTER FUNCTION [dbo].[FNIDB_GET_TERM_TEXT_VECTOR] (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER, @LANG_CODE VARCHAR(5) = 'de-DE') RETURNS VARCHAR(5000) AS BEGIN DECLARE @TERM_ID BIGINT, @RESULT_SING VARCHAR(900), @RESULT VARCHAR(5000) SEt @RESULT = '' DECLARE c_REDO CURSOR FOR - SELECT T1.TEXT_TERM_ID FROM TBIDB_OBJECT_METADATA T, TBIDB_TERM_LANGUAGE T1 WHERE - T.TEXT_TERM_LANG_ID = T1.GUID AND - T.IDB_OBJ_ID = @IDB_OBJ_ID and T.ATTR_ID = @ATTR_ID + SELECT T1.TERM_ID FROM TBIDB_OBJECT_METADATA T INNER JOIN TBIDB_LANGUAGE_TERM T1 ON T.GUID = T1.[OBJECT_ID] + INNER JOIN TBIDB_LANGUAGE LANG ON T1.LANG_ID = LANG.GUID + INNER JOIN TBIDB_OBJECT OBJ ON T.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + WHERE + T.IDB_OBJ_ID = @IDB_OBJ_ID and T.ATTR_ID = @ATTR_ID + AND OBJ.ACTIVE = 1 AND LANG.LANG_CODE = @LANG_CODE OPEN c_REDO FETCH NEXT FROM c_REDO INTO @TERM_ID WHILE @@FETCH_STATUS = 0 @@ -1930,7 +2071,7 @@ BEGIN RETURN @RESULT END GO -CREATE FUNCTION [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] (@DocID BIGINT, @ATTRIBUTE VARCHAR(100),@LANG_CODE VARCHAR(10), @DocID_ISFOREIGN as BIT = False) +CREATE OR ALTER FUNCTION [dbo].[FNIDB_PM_GET_VARIABLE_VALUE] (@DocID BIGINT, @ATTRIBUTE VARCHAR(100),@LANG_CODE VARCHAR(10), @DocID_ISFOREIGN as BIT = False) RETURNS @Output TABLE (TERM_VALUE VARCHAR(900)) AS BEGIN @@ -1939,7 +2080,6 @@ BEGIN @TYP_ID TINYINT, @TYP_DESCR VARCHAR(100), @MULTI BIT, - @LANG_ID INT, @TERM_RESULT VARCHAR(900), @IDB_CREATED_WHEN DATETIME, @IDB_CREATED_WHO VARCHAR(100), @@ -1968,19 +2108,21 @@ BEGIN END ELSE BEGIN - SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @LANG_CODE SELECT @ATTR_ID = T.GUID, @TYP_ID = T.TYP_ID, @MULTI = T.MULTI_CONTEXT,@TYP_DESCR = T1.NAME_TYPE FROM TBIDB_ATTRIBUTE T, TBIDB_ATTRIBUTE_TYPE T1 - WHERE T.TYP_ID = T1.GUID AND UPPER(TITLE) = UPPER(@ATTRIBUTE) + WHERE T.TYP_ID = T1.GUID AND UPPER(TITLE) = UPPER(@ATTRIBUTE); IF @TYP_ID IN (1,8) --VARCHAR BEGIN DECLARE @TL_ID BIGINT INSERT INTO @Output (TERM_VALUE) SELECT TERM.TERM_VALUE FROM - TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_TERM_LANGUAGE TLANG ON TERM.GUID = TLANG.TEXT_TERM_ID - INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.GUID = MD.TEXT_TERM_LANG_ID + TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TERM.GUID = TLANG.TERM_ID + INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.[OBJECT_ID] = MD.GUID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + INNER JOIN TBIDB_LANGUAGE LANG ON TLANG.LANG_ID = LANG.GUID WHERE MD.ATTR_ID = @ATTR_ID - AND TLANG.LANGUAGE_ID = @LANG_ID + AND LANG.LANG_CODE = @LANG_CODE AND MD.IDB_OBJ_ID = @DocID + AND OBJ.ACTIVE = 1; END ELSE IF @TYP_ID IN (2,7,9) --BIGINT BEGIN @@ -2011,28 +2153,38 @@ BEGIN END GO ------------------------------------------------------------------- -CREATE FUNCTION [dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (@LANG_TERM_ID BIGINT) +CREATE OR ALTER FUNCTION [dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (@LANG_TERM_ID BIGINT, @pLANGUAGE_CODE VARCHAR(5) = 'de-DE') RETURNS VARCHAR(900) AS BEGIN DECLARE @TERM_ID BIGINT, @RESULT VARCHAR(900) - SELECT @RESULT = T1.TERM_VALUE FROM TBIDB_TERM_LANGUAGE T INNER JOIN TBIDB_TERM_VALUE_VARCHAR T1 ON T.TEXT_TERM_ID = T1.GUID WHERE T.GUID = @LANG_TERM_ID + SELECT @RESULT = T1.TERM_VALUE + FROM + TBIDB_LANGUAGE_TERM T INNER JOIN TBIDB_TERM_VALUE_VARCHAR T1 ON T.TERM_ID = T1.GUID + INNER JOIN TBIDB_LANGUAGE LANG ON T.LANG_ID = LANG.GUID + WHERE + T.GUID = @LANG_TERM_ID AND + LANG.LANG_CODE = @pLANGUAGE_CODE RETURN @RESULT END GO ------------------------------------------------------------------- -CREATE FUNCTION [dbo].[FNIDB_GET_STATE_FOR_OBJECT_ID] (@OBJ_ID BIGINT) -RETURNS VARCHAR(900) +CREATE FUNCTION [dbo].[FNIDB_GET_STATE_FOR_OBJECT_ID] (@OBJ_ID BIGINT,@LANG_CODE VARCHAR(5)) +RETURNS @Output TABLE (ID BIGINT,[STATE] VARCHAR(100),ADDED_WHO VARCHAR(100), ADDED_WHEN DATETIME) AS BEGIN - DECLARE @MAX_STATE_GUID BIGINT,@STATE_ID INTEGER,@RESULT VARCHAR(900) - - SELECT @STATE_ID = STATE_ID FROM TBIDB_MYOBJECT_STATES WHERE GUID = ( - SELECT MAX(GUID) FROM TBIDB_MYOBJECT_STATES WHERE MY_OBJECT_ID = @OBJ_ID) - - SELECT @RESULT = [dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] ((SELECT STATE_LTERM_ID FROM TBIDB_STATES - WHERE GUID = @STATE_ID)) - RETURN @RESULT + INSERT INTO @Output (ID,STATE,ADDED_WHO,ADDED_WHEN) + SELECT A.GUID, E.TERM_VALUE + ,F.TERM_VALUE AS ADDED_WHO + , A.ADDED_WHEN + FROM TBIDB_MYOBJECT_STATES A INNER JOIN TBIDB_STATES B ON A.STATE_ID = B.GUID + INNER JOIN TBIDB_STATE_LANG_GROUP C ON B.GUID = C.STATE_ID + INNER JOIN TBIDB_LANGUAGE D ON C.LANG_ID = D.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR E ON C.LANG_TERM_ID = E.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR F ON A.ADDED_WHO = F.GUID + WHERE D.LANG_CODE = @LANG_CODE AND A.MY_OBJECT_ID = @OBJ_ID + + RETURN END GO ------------------------------------------------------------------- @@ -2091,32 +2243,32 @@ BEGIN END GO --- ============================================= --- Author: DD MS --- Craeation date: 17.08.2020 MS [TBIDB_LANGUAGE_TERM_METADATA] --- ============================================= -CREATE FUNCTION [dbo].[FNIDB_GET_TERM_FOR_LANGUAGE_TERM_METADATA_GUID] (@pTBIDB_LANGUAGE_TERM_METADATA_GUID BIGINT,@pLANG_CODE VARCHAR(5) = 'de-DE') -RETURNS VARCHAR(900) -AS -BEGIN - DECLARE @TERM_ID BIGINT, @RESULT VARCHAR(900),@LANG_ID INTEGER - SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE - SELECT @RESULT = T3.TERM_VALUE -- @TERM_ID = T1.TEXT_TERM_ID - FROM TBIDB_LANGUAGE_TERM_METADATA T2 - INNER JOIN TBIDB_TERM_LANGUAGE T1 ON T2.LANG_TERM_ID = T1.GUID - INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T1.TEXT_TERM_ID = T3.GUID - WHERE - T2.GUID = @pTBIDB_LANGUAGE_TERM_METADATA_GUID - AND T1.LANGUAGE_ID = @LANG_ID - --SELECT @RESULT = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @TERM_ID - RETURN @RESULT -END -GO +---- ============================================= +---- Author: DD MS +---- Craeation date: 17.08.2020 MS [TBIDB_LANGUAGE_TERM_METADATA] +---- ============================================= +--DROP FUNCTION [dbo].[FNIDB_GET_TERM_FOR_LANGUAGE_TERM_METADATA_GUID] (@pTBIDB_LANGUAGE_TERM_METADATA_GUID BIGINT,@pLANG_CODE VARCHAR(5) = 'de-DE') +--RETURNS VARCHAR(900) +--AS +--BEGIN +-- DECLARE @TERM_ID BIGINT, @RESULT VARCHAR(900),@LANG_ID INTEGER +-- SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE +-- SELECT @RESULT = T3.TERM_VALUE -- @TERM_ID = T1.TEXT_TERM_ID +-- FROM TBIDB_LANGUAGE_TERM_METADATA T2 +-- INNER JOIN TBIDB_TERM_LANGUAGE T1 ON T2.LANG_TERM_ID = T1.GUID +-- INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T1.TEXT_TERM_ID = T3.GUID +-- WHERE +-- T2.GUID = @pTBIDB_LANGUAGE_TERM_METADATA_GUID +-- AND T1.LANGUAGE_ID = @LANG_ID +-- --SELECT @RESULT = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @TERM_ID +-- RETURN @RESULT +--END +--GO -- ============================================= -- Author: DD MS -- Creation date: 17.08.2020 -- ============================================= -CREATE FUNCTION [dbo].[FNIDB_GET_TERM_FOR_ATTRIBUTE_ID] (@pATTRIBUTE_ID INTEGER,@pLANG_CODE VARCHAR(10), @pUSERID INTEGER) +CREATE OR ALTER FUNCTION [dbo].[FNIDB_GET_TERM_FOR_ATTRIBUTE_ID] (@pATTRIBUTE_ID INTEGER,@pLANG_CODE VARCHAR(10), @pUSERID INTEGER) RETURNS @Output TABLE (IDB_OBJECT_ID BIGINT, TERM_VALUE VARCHAR(900),TERM_ID BIGINT,IDB_CREATED_WHEN DATETIME,IDB_CREATED_WHO VARCHAR(100)) AS BEGIN @@ -2124,27 +2276,27 @@ BEGIN @TYP_ID TINYINT, @TYP_DESCR VARCHAR(100), @MULTI BIT, - @LANG_ID INT, @TERM_RESULT VARCHAR(900), @CREATED_WHEN DATETIME, @CREATED_WHO VARCHAR(100) BEGIN - SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE SELECT @TYP_ID = T.TYP_ID, @MULTI = T.MULTI_CONTEXT,@TYP_DESCR = T1.NAME_TYPE FROM TBIDB_ATTRIBUTE T, TBIDB_ATTRIBUTE_TYPE T1 - WHERE T.TYP_ID = T1.GUID AND T.GUID = @pATTRIBUTE_ID + WHERE T.TYP_ID = T1.GUID AND T.GUID = @pATTRIBUTE_ID; IF @TYP_ID IN (1,8) --VARCHAR BEGIN DECLARE @TL_ID BIGINT INSERT INTO @Output (IDB_OBJECT_ID,TERM_VALUE,TERM_ID,IDB_CREATED_WHEN,IDB_CREATED_WHO) SELECT MD.IDB_OBJ_ID, TERM.TERM_VALUE,TERM.GUID, MD.ADDED_WHEN,MD.ADDED_WHO FROM - TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_TERM_LANGUAGE TLANG ON TERM.GUID = TLANG.TEXT_TERM_ID - INNER JOIN TBIDB_LANGUAGE_TERM_METADATA T1 ON TLANG.GUID = T1.LANG_TERM_ID - INNER JOIN TBIDB_OBJECT_METADATA MD ON T1.GUID = MD.TEXT_TERM_LANG_ID + TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TERM.GUID = TLANG.TERM_ID + INNER JOIN TBIDB_LANGUAGE LANG ON TLANG.LANG_ID = LANG.GUID + INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.[OBJECT_ID] = MD.GUID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID WHERE MD.ATTR_ID = @pATTRIBUTE_ID - AND TLANG.LANGUAGE_ID = @LANG_ID + AND LANG.LANG_CODE = @pLANG_CODE + AND OBJ.ACTIVE = 1; END ELSE IF @TYP_ID IN (2,7,9) --BIGINT BEGIN @@ -2229,7 +2381,7 @@ GO -- Create Date: 22.10.2020 -- Gunction returns all values for parameterized Attribute -- ======================================================= -CREATE FUNCTION [dbo].[FNIDB_PM_GET_VARIABLE_VALUE_FOR_ALL_OBJECTS] (@ATTRIBUTE VARCHAR(100),@LANG_CODE VARCHAR(10)) +CREATE OR ALTER FUNCTION [dbo].[FNIDB_PM_GET_VARIABLE_VALUE_FOR_ALL_OBJECTS] (@ATTRIBUTE VARCHAR(100),@LANG_CODE VARCHAR(10)) RETURNS @Output TABLE (IDB_OBJ_ID BIGINT,TERM_VALUE VARCHAR(900)) AS BEGIN @@ -2248,14 +2400,15 @@ BEGIN BEGIN DECLARE @TL_ID BIGINT INSERT INTO @Output (IDB_OBJ_ID,TERM_VALUE) - SELECT OBJ.IDB_OBJ_ID,TERM.TERM_VALUE FROM - TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_TERM_LANGUAGE TLANG ON TERM.GUID = TLANG.TEXT_TERM_ID - INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.GUID = MD.TEXT_TERM_LANG_ID - INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID - WHERE - MD.ATTR_ID = @ATTR_ID - AND TLANG.LANGUAGE_ID = @LANG_ID - AND OBJ.DELETED = 0 + SELECT MD.IDB_OBJ_ID, TERM.TERM_VALUE + FROM + TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TERM.GUID = TLANG.TERM_ID + INNER JOIN TBIDB_LANGUAGE LANG ON TLANG.LANG_ID = LANG.GUID + INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.[OBJECT_ID] = MD.GUID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + WHERE MD.ATTR_ID = @ATTR_ID + AND LANG.LANG_CODE = @LANG_CODE + AND OBJ.ACTIVE = 1 ORDER BY OBJ.IDB_OBJ_ID DESC END ELSE IF @TYP_ID IN (2,7,9) --BIGINT @@ -2267,7 +2420,7 @@ BEGIN INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID WHERE MD.ATTR_ID = @ATTR_ID - AND OBJ.DELETED = 0 + AND OBJ.ACTIVE = 1 ORDER BY OBJ.IDB_OBJ_ID DESC END ELSE IF @TYP_ID = 3 --FLOAT @@ -2279,7 +2432,7 @@ BEGIN INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID WHERE MD.ATTR_ID = @ATTR_ID - AND OBJ.DELETED = 0 ORDER BY OBJ.IDB_OBJ_ID DESC + AND OBJ.ACTIVE = 1 ORDER BY OBJ.IDB_OBJ_ID DESC END ELSE IF @TYP_ID = 4 BEGIN @@ -2290,7 +2443,7 @@ BEGIN INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID WHERE MD.ATTR_ID = @ATTR_ID - AND OBJ.DELETED = 0 + AND OBJ.ACTIVE = 1 ORDER BY OBJ.IDB_OBJ_ID DESC END ELSE IF @TYP_ID = 5 @@ -2301,7 +2454,7 @@ BEGIN TBIDB_TERM_VALUE_DATE TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON MD.DATE_TERM_ID = TERM.GUID INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID WHERE - MD.ATTR_ID = @ATTR_ID AND OBJ.DELETED = 0 + MD.ATTR_ID = @ATTR_ID AND OBJ.ACTIVE = 1 ORDER BY OBJ.IDB_OBJ_ID DESC END RETURN @@ -2311,7 +2464,7 @@ GO --Author: Digital Data MS --Creation date: 22.10.2020 --============================================= -CREATE FUNCTION [dbo].[FNIDB_GET_SEARCH_PROFILES] (@pUSERID INT, @pLANGCODE VARCHAR(5)) +CREATE OR ALTER FUNCTION [dbo].[FNIDB_GET_SEARCH_PROFILES] (@pUSERID INT, @pLANGCODE VARCHAR(5)) RETURNS @Output TABLE (SEARCH_PROFILE_ID INTEGER,TITLE VARCHAR(100),RESULT_SQL VARCHAR(915),PSOURCE VARCHAR(50)) AS BEGIN @@ -2330,26 +2483,34 @@ BEGIN INSERT INTO @Output (SEARCH_PROFILE_ID,TITLE,RESULT_SQL,PSOURCE) SELECT T.GUID - ,dbo.[FNIDB_GET_TERM_FOR_LANGUAGE_TERM_METADATA_GUID] (T.TITLE_ID,@pLANGCODE) AS TITLE + ,TERM.TERM_VALUE TITLE ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T2.SEARCH_TERM_ID) AS RESULT_SQL ,'TBIDB_SEARCH_PROFILE_USER' FROM TBIDB_SEARCH_PROFILE T INNER JOIN TBIDB_SEARCH_PROFILE_USER_GROUP T1 ON T.GUID = T1.SEARCH_PROFIL_ID + INNER JOIN TBIDB_LANGUAGE_TERM LTERM ON T.GUID = LTERM.OBJECT_ID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON LTERM.TERM_ID = TERM.GUID INNER JOIN TBIDB_SEARCH_LANGUAGE_SQL_RESULT T2 ON T.GUID = T2.SEARCH_PROFIL_ID INNER JOIN TBIDB_LANGUAGE T3 ON T2.LANGUAGE_ID = T3.GUID - WHERE T1.USER_ID = @pUSERID AND UPPER(T3.LANG_CODE) = UPPER(@pLANGCODE) + INNER JOIN TBIDB_LANGUAGE T4 ON LTERM.LANG_ID = T4.GUID + WHERE T1.USER_ID = @pUSERID AND T3.LANG_CODE = @pLANGCODE + AND T4.LANG_CODE = @pLANGCODE INSERT INTO @Output (SEARCH_PROFILE_ID,TITLE,RESULT_SQL,PSOURCE) SELECT T.GUID - ,dbo.[FNIDB_GET_TERM_FOR_LANGUAGE_TERM_METADATA_GUID] (T.TITLE_ID,@pLANGCODE) AS TITLE + ,TERM.TERM_VALUE TITLE ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T4.SEARCH_TERM_ID) AS RESULT_SQL ,'TBIDB_SEARCH_PROFILE_GROUP' FROM TBIDB_SEARCH_PROFILE T INNER JOIN TBIDB_SEARCH_PROFILE_USER_GROUP T1 ON T.GUID = T1.SEARCH_PROFIL_ID INNER JOIN DD_ECM.dbo.TBDD_GROUPS T2 ON T1.GROUP_ID = T2.GUID INNER JOIN DD_ECM.dbo.TBDD_GROUPS_USER T3 ON T2.GUID = T3.GROUP_ID + INNER JOIN TBIDB_LANGUAGE_TERM LTERM ON T.GUID = LTERM.OBJECT_ID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON LTERM.TERM_ID = TERM.GUID INNER JOIN TBIDB_SEARCH_LANGUAGE_SQL_RESULT T4 ON T.GUID = T4.SEARCH_PROFIL_ID INNER JOIN TBIDB_LANGUAGE T5 ON T4.LANGUAGE_ID = T3.GUID - WHERE T3.USER_ID = @pUSERID AND UPPER(T5.LANG_CODE) = UPPER(@pLANGCODE) + INNER JOIN TBIDB_LANGUAGE T6 ON LTERM.LANG_ID = T6.GUID + WHERE T3.USER_ID = @pUSERID AND T5.LANG_CODE = @pLANGCODE + AND T6.LANG_CODE = @pLANGCODE RETURN END GO @@ -2475,21 +2636,19 @@ SELECT FROM TBIDB_OBJECT_STORE A INNER JOIN TBIDB_CATALOG B ON A.CAT_ID = B.GUID GO -CREATE VIEW [dbo].[VWIDB_VALUE_CHANGE_LOG] AS +CREATE OR ALTER VIEW [dbo].[VWIDB_VALUE_CHANGE_LOG] AS select T.GUID AS ChangeID, - T1.GUID AS AttributID, - T.IDB_OBJ_ID, T1.TITLE as Attribut, - T3.TERM_VALUE as [CREATE Wert], - T5.TERM_VALUE as [Neuer Wert], - T.CHANGED_WHO [Geändert wer], - T.CHANGED_WHEN [Geändert wann] + T1.GUID AS AttributeID, + T.IDB_OBJ_ID, T1.TITLE as Attribute, + T2.TERM_VALUE as [OLD VALUE], + T3.TERM_VALUE as [NEW VALUE], + T.CHANGED_WHO , + T.CHANGED_WHEN from TBIDB_OBJECT_METADATA_CHANGE T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTR_ID = T1.GUID - INNER JOIN TBIDB_TERM_LANGUAGE T2 ON T.OLD_TEXT_TERM_LANG_ID = T2.GUID - INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T2.TEXT_TERM_ID = T3.GUID - INNER JOIN TBIDB_TERM_LANGUAGE T4 ON T.NEW_TEXT_TERM_LANG_ID = T4.GUID - INNER JOIN TBIDB_TERM_VALUE_VARCHAR T5 ON T4.TEXT_TERM_ID = T5.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR T2 ON T.OLD_TEXT_TERM = T2.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T.NEW_TEXT_TERM = T3.GUID GO CREATE VIEW [dbo].[VWIDB_OBJ_VALUE_BIT] AS SELECT @@ -2628,10 +2787,10 @@ select T.DELETED_WHEN [Gelöscht wann] from TBIDB_OBJECT_METADATA_DELETE T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTR_ID = T1.GUID - INNER JOIN TBIDB_TERM_LANGUAGE T2 ON T.TEXT_TERM_LANG_ID = T2.GUID + INNER JOIN TBIDB_LANGUAGE_TERM T2 ON T.T = T2.GUID INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T2.TEXT_TERM_ID = T3.GUID GO -CREATE VIEW [dbo].[VWIDB_VALUE_TEXT] AS +CREATE OR ALTER VIEW [dbo].[VWIDB_VALUE_TEXT] AS select TOP 100 PERCENT T.GUID AS MetadataID, T1.GUID AS AttributID, @@ -2645,11 +2804,11 @@ select TOP 100 PERCENT T.CHANGED_WHEN [Geändert wann] from TBIDB_OBJECT_METADATA T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTR_ID = T1.GUID - INNER JOIN TBIDB_TERM_LANGUAGE T2 ON T.TEXT_TERM_LANG_ID = T2.GUID - INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T2.TEXT_TERM_ID = T3.GUID - INNER JOIN TBIDB_LANGUAGE T4 ON T2.LANGUAGE_ID = T4.GUID -ORDER BY - T.IDB_OBJ_ID,T1.TITLE + INNER JOIN TBIDB_LANGUAGE_TERM T2 ON T.GUID = T2.[OBJECT_ID] + INNER JOIN TBIDB_OBJECT OBJ ON T.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T2.TERM_ID = T3.GUID + INNER JOIN TBIDB_LANGUAGE T4 ON T2.LANG_ID = T4.GUID +WHERE OBJ.ACTIVE = 1 GO CREATE VIEW [dbo].[VWIDB_OBJ_VALUE_TEXT_SORTED] as @@ -2771,21 +2930,19 @@ GO -- GROUP BY T.USERID,T.SEARCH_PROFIL_ID, T.ATTRIBUTE_ID,T1.TITLE,T2.SEQUENCE -- ORDER BY T.USERID, T.SEARCH_PROFIL_ID, T2.SEQUENCE --GO -CREATE VIEW [dbo].[VWIDB_CHANGE_LOG] AS +CREATE OR ALTER VIEW [dbo].[VWIDB_CHANGE_LOG] AS select T.GUID AS ChangeID, T.IDB_OBJ_ID, T1.TITLE as Attribute, - T3.TERM_VALUE as [Old value], - T5.TERM_VALUE as [New value], + T2.TERM_VALUE as [Old value], + T3.TERM_VALUE as [New value], T.CHANGED_WHO [Changed who], T.CHANGED_WHEN [Changed when] from TBIDB_OBJECT_METADATA_CHANGE T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTR_ID = T1.GUID - INNER JOIN TBIDB_TERM_LANGUAGE T2 ON T.OLD_TEXT_TERM_LANG_ID = T2.GUID - INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T2.TEXT_TERM_ID = T3.GUID - INNER JOIN TBIDB_TERM_LANGUAGE T4 ON T.NEW_TEXT_TERM_LANG_ID = T4.GUID - INNER JOIN TBIDB_TERM_VALUE_VARCHAR T5 ON T4.TEXT_TERM_ID = T5.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR T2 ON T.OLD_TEXT_TERM = T2.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T.NEW_TEXT_TERM = T3.GUID GO --CREATE VIEW [dbo].[VWIDB_CATEGORIES_PER_OBJECT_AND_LANGUAGE] AS --select @@ -2805,7 +2962,37 @@ GO --WHERE -- CAT_ATTR.ACTIVE = 1 --GO - +CREATE VIEW VWIDB_DOCTYPE_HANDLING AS +SELECT + A.GUID + ,A.DOCTYPE + ,B.CAT_STRING AS CHANGED_HANDLING + ,A.ADDED_WHO + ,A.ADDED_WHEN + ,A.CHANGED_WHO + ,A.CHANGED_WHEN +FROM + TBIDB_DOCTYPE_HANDLING A INNER JOIN TBIDB_CATALOG B ON A.CHANGED_ACTION = B.GUID +WHERE + A.ACTIVE = 1 +GO +CREATE OR ALTER VIEW VWIDB_DOCTYPES_DE +AS +select + TERM.TERM_VALUE as Doctype +FROM TBIDB_OBJECT_METADATA MD + INNER JOIN TBIDB_ATTRIBUTE T1 ON MD.ATTR_ID = T1.GUID + INNER JOIN TBIDB_LANGUAGE_TERM T2 ON MD.GUID = T2.[OBJECT_ID] + INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON T2.TERM_ID = TERM.GUID + INNER JOIN TBIDB_LANGUAGE T4 ON T2.LANG_ID = T4.GUID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID +WHERE + OBJ.ACTIVE = 1 AND + T1.TITLE = 'Doctype' + AND T4.LANG_CODE = 'de-DE' +GROUP BY + TERM.TERM_VALUE +GO /*########################################### ############## PROCEDURES ################### #############################################*/ @@ -2826,7 +3013,7 @@ BEGIN END GO -ALTER PROCEDURE [dbo].[PRIDB_NEW_IDB_OBJECT_STATE] @pSYSSTATE VARCHAR(512),@pWHO VARCHAR(100) +CREATE PROCEDURE [dbo].[PRIDB_NEW_IDB_OBJECT_STATE] @pSYSSTATE VARCHAR(512),@pWHO VARCHAR(100) AS BEGIN DECLARE @@ -2860,6 +3047,7 @@ BEGIN END GO EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File Versioned', 'Digital Data'; +EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File opened', 'Digital Data'; EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File added', 'Digital Data'; EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File changed', 'Digital Data'; EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File deleted', 'Digital Data'; @@ -2886,30 +3074,27 @@ BEGIN END GO -EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'File Versioned','Datei versioniert', 'de-DE', 'Digital Data'; -EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'File added','Datei erstellt', 'de-DE', 'Digital Data'; -EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'File changed','Datei geändert', 'de-DE', 'Digital Data'; -EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'File deleted','Datei gelöscht', 'de-DE', 'Digital Data'; -EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'Metadata changed','Metadaten geändert', 'de-DE', 'Digital Data'; -EXEC PRIDB_UPDATE_IDB_OBJECT_STATE 'Attributevalue deleted','Attributwert geändert', 'de-DE', 'Digital Data'; -GO -CREATE VIEW VWIDB_OBJ_STATES_LANGUAGE AS + +CREATE VIEW [dbo].[VWIDB_STATES_LANGUAGE] AS SELECT - A.GUID, - B.TERM_VALUE AS STATE_TERM, - A.LANG_ID, + A.GUID AS STATE_ID, + A.TITLE AS STATE_TITLE, + D.TERM_VALUE AS STATE_TERM, + B.LANG_ID, C.LANG_CODE, - D.TITLE, + E.TERM_VALUE ADDED_WHO, A.ADDED_WHEN, F.TERM_VALUE CHANGED_WHO, - A.CHANGED_WHEN + B.CHANGED_WHEN -FROM TBIDB_OBJ_STATES_LANGUAGE A INNER JOIN TBIDB_TERM_VALUE_VARCHAR B ON A.TERM_ID = B.GUID -INNER JOIN TBIDB_LANGUAGE C ON A.LANG_ID = C.GUID -INNER JOIN TBIDB_OBJ_STATES D ON A.STATE_ID = D.GUID +FROM +TBIDB_STATES A +INNER JOIN TBIDB_STATE_LANG_GROUP B ON A.GUID = B.STATE_ID +INNER JOIN TBIDB_TERM_VALUE_VARCHAR D ON B.LANG_TERM_ID = D.GUID +INNER JOIN TBIDB_LANGUAGE C ON B.LANG_ID = C.GUID INNER JOIN TBIDB_TERM_VALUE_VARCHAR E ON A.ADDED_WHO = E.GUID -INNER JOIN TBIDB_TERM_VALUE_VARCHAR F ON A.ADDED_WHO = F.GUID +INNER JOIN TBIDB_TERM_VALUE_VARCHAR F ON B.CHANGED_WHO = F.GUID GO -- ============================================= -- Author: DD MS @@ -2981,39 +3166,80 @@ END GO -CREATE PROCEDURE [dbo].[PRIDB_NEW_IDB_STATE] @pSTATE VARCHAR(512),@pWHO VARCHAR(100),@pLANG_CODE VARCHAR(5) = 'de-DE' +CREATE PROCEDURE [dbo].[PRIDB_NEW_IDB_STATE] @pSTATE VARCHAR(512),@pWHO VARCHAR(100) AS BEGIN DECLARE - @LANG_ID INTEGER - - SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE + @LANG_ID INTEGER, + @pLANG_CODE VARCHAR(5), + @STATE_ID INTEGER DECLARE @STATE_TERM_ID BIGINT,@LANG_STATE_TERM_ID BIGINT EXEC PRIDB_NEW_TERM 'VARCHAR',@pSTATE,@pWHO,@TERM_ID = @STATE_TERM_ID OUTPUT; DECLARE @ADDED_WHO_TERM_ID BIGINT EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @ADDED_WHO_TERM_ID OUTPUT; - IF NOT EXISTS(SELECT GUID FROM TBIDB_TERM_LANGUAGE WHERE LANGUAGE_ID = @LANG_ID AND TEXT_TERM_ID = @STATE_TERM_ID) - INSERT INTO TBIDB_TERM_LANGUAGE (LANGUAGE_ID,TEXT_TERM_ID,ADDED_WHO) VALUES (@LANG_ID,@STATE_TERM_ID,@pWHO) - SELECT @LANG_STATE_TERM_ID = MAX(GUID) FROM TBIDB_TERM_LANGUAGE WHERE LANGUAGE_ID = @LANG_ID AND TEXT_TERM_ID = @STATE_TERM_ID + IF NOT EXISTS(SELECT GUID FROM TBIDB_STATES WHERE TITLE = @pSTATE) + INSERT INTO TBIDB_STATES (TITLE,ADDED_WHO) VALUES (@pSTATE,@ADDED_WHO_TERM_ID); - IF NOT EXISTS(SELECT GUID FROM TBIDB_STATES WHERE STATE_LTERM_ID = @LANG_STATE_TERM_ID) - INSERT INTO TBIDB_STATES (STATE_LTERM_ID,ADDED_WHO) VALUES (@LANG_STATE_TERM_ID,@ADDED_WHO_TERM_ID) - IF NOT EXISTS (SELECT GUID FROM TBIDB_STATE_LANG_GROUP WHERE STATE_ID = (SELECT GUID FROM TBIDB_STATES WHERE STATE_LTERM_ID = @LANG_STATE_TERM_ID)) - INSERT INTO TBIDB_STATE_LANG_GROUP (STATE_ID,LANG_TERM_ID,ADDED_WHO) VALUES ( - (SELECT GUID FROM TBIDB_STATES WHERE STATE_LTERM_ID = @LANG_STATE_TERM_ID) - ,@LANG_STATE_TERM_ID - ,@ADDED_WHO_TERM_ID) + SELECT @STATE_ID = GUID FROM TBIDB_STATES WHERE TITLE = @pSTATE; - SELECT * FROM TBIDB_STATES WHERE STATE_LTERM_ID = @LANG_STATE_TERM_ID + DECLARE c_PRIDB_NEW_IDB_OBJECT_STATE CURSOR FOR + select GUID,LANG_CODE FROM TBIDB_LANGUAGE WHERE CREATE_DEFAULT_ENTRY = 1; + OPEN c_PRIDB_NEW_IDB_OBJECT_STATE + FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE + WHILE @@FETCH_STATUS = 0 + BEGIN + IF NOT EXISTS(SELECT GUID FROM TBIDB_STATE_LANG_GROUP WHERE STATE_ID = @STATE_ID AND LANG_ID = @LANG_ID) + INSERT INTO TBIDB_STATE_LANG_GROUP (STATE_ID,LANG_ID,LANG_TERM_ID,ADDED_WHO) VALUES (@STATE_ID,@LANG_ID,@STATE_TERM_ID,@ADDED_WHO_TERM_ID) + UPDATE TBIDB_STATE_LANG_GROUP SET LANG_TERM_ID = @STATE_TERM_ID,CHANGED_WHO = @ADDED_WHO_TERM_ID WHERE STATE_ID = @STATE_ID AND LANG_ID = @LANG_ID + + FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE + END + CLOSE c_PRIDB_NEW_IDB_OBJECT_STATE + DEALLOCATE c_PRIDB_NEW_IDB_OBJECT_STATE END GO -EXEC PRIDB_NEW_IDB_STATE 'Started', 'Digital Data','de-DE'; -EXEC PRIDB_NEW_IDB_STATE 'Ended', 'Digital Data','de-DE'; -GO -CREATE PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE_DATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @WHO VARCHAR(100) +CREATE PROCEDURE [dbo].[PRIDB_SET_IDB_STATE] @pSTATE_ID INTEGER, @pSTATE VARCHAR(100), @pLANG_CODE VARCHAR(5),@pWHO VARCHAR(100) +AS +BEGIN + DECLARE + @LANG_ID INTEGER + + SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE; + + DECLARE @STATE_TERM_ID BIGINT,@LANG_STATE_TERM_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@pSTATE,@pWHO,@TERM_ID = @STATE_TERM_ID OUTPUT; + DECLARE @CHANGED_WHO_TERM_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @CHANGED_WHO_TERM_ID OUTPUT; + + + + UPDATE TBIDB_STATE_LANG_GROUP SET LANG_TERM_ID = @STATE_TERM_ID, CHANGED_WHO = @CHANGED_WHO_TERM_ID + WHERE STATE_ID = @pSTATE_ID AND LANG_ID = @LANG_ID +END +GO +EXEC PRIDB_NEW_IDB_STATE 'Started', 'Digital Data'; +EXEC PRIDB_NEW_IDB_STATE 'Ended', 'Digital Data'; +EXEC PRIDB_NEW_IDB_STATE 'File Versioned','Digital Data'; +EXEC PRIDB_NEW_IDB_STATE 'File added', 'Digital Data'; +EXEC PRIDB_NEW_IDB_STATE 'File changed', 'Digital Data'; +EXEC PRIDB_NEW_IDB_STATE 'File deleted', 'Digital Data'; +EXEC PRIDB_NEW_IDB_STATE 'Metadata changed','Digital Data'; +EXEC PRIDB_NEW_IDB_STATE 'Attributevalue deleted','Digital Data'; +EXEC PRIDB_NEW_IDB_STATE 'File opened', 'Digital Data'; + +EXEC PRIDB_SET_IDB_STATE 3,'Datei versioniert', 'de-DE', 'Digital Data'; +EXEC PRIDB_SET_IDB_STATE 4,'Datei erstellt', 'de-DE', 'Digital Data'; +EXEC PRIDB_SET_IDB_STATE 5,'Datei geändert', 'de-DE', 'Digital Data'; +EXEC PRIDB_SET_IDB_STATE 6,'Datei gelöscht', 'de-DE', 'Digital Data'; +EXEC PRIDB_SET_IDB_STATE 7,'Attributwert geändert', 'de-DE', 'Digital Data'; +EXEC PRIDB_SET_IDB_STATE 8,'Attributwert gelöscht', 'de-DE', 'Digital Data'; +EXEC PRIDB_SET_IDB_STATE 9,'Datei geöffnet', 'de-DE', 'Digital Data'; +GO + +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE_DATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @WHO VARCHAR(100) AS BEGIN DECLARE @@ -3021,10 +3247,11 @@ BEGIN @ATTR_TYP_ID TINYINT, @TYP_DESCR VARCHAR(100), @MULTI BIT, - @TEXT_TERM_LANG_ID BIGINT, + @TEXT_TERM BIGINT, @TERM_ID BIGINT, @USER_DELETE_ID INTEGER, - @ERROR as BIT + @ERROR as BIT, + @LTERM_GUID BIGINT SET @ERROR = 0 SELECT @USER_DELETE_ID = COALESCE(MAX(USER_DELETE_ID),0) + 1 FROM TBIDB_OBJECT_METADATA_DELETE WHERE UPPER(DELETED_WHO) = UPPER(@WHO) @@ -3033,23 +3260,25 @@ BEGIN IF @ATTR_TYP_ID IN (1,8) --VARCHAR BEGIN TRY DECLARE cursor_DeleteLog CURSOR LOCAL FOR - SELECT T.IDB_OBJ_ID,T.TEXT_TERM_LANG_ID FROM TBIDB_OBJECT_METADATA T WHERE T.ATTR_ID = @ATTR_ID AND T.IDB_OBJ_ID = @IDB_OBJ_ID + SELECT LTERM.GUID, MD.IDB_OBJ_ID,LTERM.TERM_ID + FROM + TBIDB_OBJECT_METADATA MD INNER JOIN TBIDB_LANGUAGE_TERM LTERM ON MD.GUID = LTERM.[OBJECT_ID] + WHERE MD.ATTR_ID = @ATTR_ID AND MD.IDB_OBJ_ID = @IDB_OBJ_ID OPEN cursor_DeleteLog - FETCH NEXT FROM cursor_DeleteLog INTO @IDB_OBJ_ID,@TEXT_TERM_LANG_ID + FETCH NEXT FROM cursor_DeleteLog INTO @LTERM_GUID,@IDB_OBJ_ID,@TEXT_TERM WHILE @@FETCH_STATUS = 0 BEGIN - INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,TEXT_TERM_LANG_ID,DELETED_WHO,USER_DELETE_ID) - VALUES (@IDB_OBJ_ID,@ATTR_ID, @TEXT_TERM_LANG_ID, @WHO,@USER_DELETE_ID) - FETCH NEXT FROM cursor_DeleteLog INTO @IDB_OBJ_ID,@TEXT_TERM_LANG_ID + INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,TEXT_TERM_ID,DELETED_WHO,USER_DELETE_ID) + VALUES (@IDB_OBJ_ID,@ATTR_ID, @TEXT_TERM, @WHO,@USER_DELETE_ID); + FETCH NEXT FROM cursor_DeleteLog INTO @LTERM_GUID,@IDB_OBJ_ID,@TEXT_TERM END CLOSE cursor_DeleteLog DEALLOCATE cursor_DeleteLog - DELETE T - FROM TBIDB_OBJECT_METADATA T - INNER JOIN TBIDB_TERM_LANGUAGE T1 - ON T.TEXT_TERM_LANG_ID=T1.GUID - WHERE T.ATTR_ID = @ATTR_ID AND T.IDB_OBJ_ID = @IDB_OBJ_ID + DELETE FROM TBIDB_LANGUAGE_TERM WHERE [OBJECT_ID] IN (SELECT GUID FROM TBIDB_OBJECT_METADATA + WHERE ATTR_ID = @ATTR_ID AND IDB_OBJ_ID = @IDB_OBJ_ID); + DELETE FROM TBIDB_OBJECT_METADATA + WHERE ATTR_ID = @ATTR_ID AND IDB_OBJ_ID = @IDB_OBJ_ID; END TRY BEGIN CATCH @@ -3247,16 +3476,19 @@ BEGIN SET @IDB_OBJ_ID_OUT = @IDB_OBJ_ID END GO -CREATE PROCEDURE [dbo].[PRIDB_NEW_OBJ_DATA] @IDB_OBJ_ID BIGINT,@ATTRIBUTE VARCHAR(100),@WHO VARCHAR(100), @TERM_VAL VARCHAR(MAX), +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_OBJ_DATA] @IDB_OBJ_ID BIGINT,@ATTRIBUTE VARCHAR(100),@WHO VARCHAR(100), @TERM_VAL VARCHAR(MAX), @LANG_CODE VARCHAR(5) = 'de-DE', @FOREIGN_KEY BIGINT = 0, @OMD_ID BIGINT OUTPUT AS BEGIN DECLARE - @ATTR_ID INTEGER, - @TYP_ID TINYINT, - @TYP_DESCR VARCHAR(100), - @MULTI BIT, - @LANG_ID INT + @ATTR_ID INTEGER, + @TYP_ID TINYINT, + @TYP_DESCR VARCHAR(100), + @MULTI BIT, + @LANG_ID INT, + @WHO_TERM_ID BIGINT + + EXEC PRIDB_NEW_TERM 'VARCHAR',@WHO,@WHO,@TERM_ID = @WHO_TERM_ID OUTPUT; --PRINT '@FOREIGN_KEY: ' + CONVERT(VARCHAR(50),@FOREIGN_KEY) IF @FOREIGN_KEY <> 0 AND @IDB_OBJ_ID <> @FOREIGN_KEY BEGIN @@ -3289,46 +3521,33 @@ BEGIN --PRINT 'PRIDB_NEW_OBJ_DATA: @TYP_ID is: ' + Convert(Varchar(10),@TYP_ID) IF @TYP_ID IN (1,8) --VARCHAR BEGIN - IF NOT EXISTS(SELECT GUID FROM TBIDB_TERM_LANGUAGE WHERE LANGUAGE_ID = @LANG_ID AND TEXT_TERM_ID = @MY_TERM_ID) - INSERT INTO TBIDB_TERM_LANGUAGE (LANGUAGE_ID,TEXT_TERM_ID,ADDED_WHO) VALUES (@LANG_ID,@MY_TERM_ID,@WHO) - - SELECT @MY_TERM_ID = MAX(GUID) FROM TBIDB_TERM_LANGUAGE WHERE LANGUAGE_ID = @LANG_ID AND TEXT_TERM_ID = @MY_TERM_ID + IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID) + BEGIN + PRINT 'OBJ_METADATA_ENTRY NOT EXISTING...' + INSERT INTO [dbo].[TBIDB_OBJECT_METADATA] + ([IDB_OBJ_ID] + ,[ATTR_ID] + ,[ADDED_WHO]) + VALUES + (@IDB_OBJ_ID + ,@ATTR_ID + ,@WHO); + END + SELECT @OMD_ID = GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID IF @TYP_ID = 1 --Single Varchar BEGIN - IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID) - INSERT INTO [dbo].[TBIDB_OBJECT_METADATA] - ([IDB_OBJ_ID] - ,[ATTR_ID] - ,[TEXT_TERM_LANG_ID] - ,[ADDED_WHO]) - VALUES - (@IDB_OBJ_ID - ,@ATTR_ID - ,@MY_TERM_ID - ,@WHO) - + IF NOT EXISTS(SELECT GUID FROM TBIDB_LANGUAGE_TERM WHERE LANG_ID = @LANG_ID AND [OBJECT_ID] = @OMD_ID) + BEGIN + PRINT 'INSERT LANGUAGE-TERM...' + INSERT INTO TBIDB_LANGUAGE_TERM (KIND_TYPE, [OBJECT_ID],TERM_ID,LANG_ID,ADDED_WHO) VALUES('METADATA', @OMD_ID,@MY_TERM_ID,@LANG_ID,@WHO_TERM_ID); + END ELSE - IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND [TEXT_TERM_LANG_ID] <> @MY_TERM_ID) - UPDATE TBIDB_OBJECT_METADATA SET [TEXT_TERM_LANG_ID] = @MY_TERM_ID, CHANGED_WHO = @WHO WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID - SELECT @OMD_ID = GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND [TEXT_TERM_LANG_ID] = @MY_TERM_ID + BEGIN + PRINT 'UPDATE LANGUAGE-TERM...' + UPDATE TBIDB_LANGUAGE_TERM SET ADDED_WHO = @WHO_TERM_ID, TERM_ID = @MY_TERM_ID WHERE [OBJECT_ID] = @OMD_ID AND LANG_ID = @LANG_ID; + END END - ELSE - IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND [TEXT_TERM_LANG_ID] = @MY_TERM_ID) AND @MULTI = 0 - INSERT INTO [dbo].[TBIDB_OBJECT_METADATA] - ([IDB_OBJ_ID] - ,[ATTR_ID] - ,[TEXT_TERM_LANG_ID] - ,[ADDED_WHO]) - VALUES - (@IDB_OBJ_ID - ,@ATTR_ID - ,@MY_TERM_ID - ,@WHO) - - --ELSE - --PRINT 'IDB-METADATAOBJECT-VALUE SEEMS TO EXIST: @IDB_OBJ_ID: ' + Convert(Varchar(10),@IDB_OBJ_ID) - END ELSE IF @TYP_ID IN (2,7,9) --BIGINT BEGIN @@ -3513,7 +3732,7 @@ BEGIN END GO -CREATE PROCEDURE [dbo].[PRIDB_DELETE_TERM_OBJECT_METADATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @TERM VARCHAR(900), @WHO VARCHAR(100),@LANG_CODE VARCHAR(5) = 'de-DE',@ID_ISFOREIGN as BIT = False +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_TERM_OBJECT_METADATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @TERM VARCHAR(900), @WHO VARCHAR(100),@LANG_CODE VARCHAR(5) = 'de-DE',@ID_ISFOREIGN as BIT = False AS BEGIN DECLARE @@ -3540,14 +3759,14 @@ BEGIN IF @TYP_ID IN (1,8) --VARCHAR BEGIN PRINT 'Attribute is varchar...' - SELECT @MY_TERM_ID = MAX(GUID) FROM TBIDB_TERM_LANGUAGE WHERE LANGUAGE_ID = @LANG_ID AND TEXT_TERM_ID = @MY_TERM_ID - IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND TEXT_TERM_LANG_ID = @MY_TERM_ID) + IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID) BEGIN - DELETE FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND TEXT_TERM_LANG_ID = @MY_TERM_ID + DELETE FROM TBIDB_LANGUAGE_TERM WHERE [OBJECT_ID] = (SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID); + DELETE FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID; PRINT 'PRIDB_DEL_TERM_OBJECT_METADATA: DELETED TEXT ROW!' - INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,TEXT_TERM_LANG_ID,DELETED_WHO, ADDED_WHO,ADDED_WHEN) + INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,TEXT_TERM_ID,DELETED_WHO, ADDED_WHO,ADDED_WHEN) SELECT @IDB_OBJ_ID,@ATTR_ID, @MY_TERM_ID,@WHO,ADDED_WHO,ADDED_WHEN FROM TBIDB_OBJECT_METADATA - WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND TEXT_TERM_LANG_ID = @MY_TERM_ID + WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID; END ELSE PRINT 'TERM SEEMS NOT TO EXIST' @@ -3601,7 +3820,7 @@ BEGIN END GO -CREATE PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE] @ATTRIBUTE VARCHAR(100), @WHO VARCHAR(100) +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE] @ATTRIBUTE VARCHAR(100), @WHO VARCHAR(100) AS BEGIN DECLARE @@ -3610,7 +3829,6 @@ BEGIN @IDB_OBJ_ID BIGINT, @TYP_DESCR VARCHAR(100), @MULTI BIT, - @TEXT_TERM_LANG_ID BIGINT, @TERM_ID BIGINT, @USER_DELETE_ID INTEGER, @ERROR as BIT @@ -3621,24 +3839,25 @@ BEGIN IF @ATTR_TYP_ID IN (1,8) --VARCHAR BEGIN TRY + DECLARE @OMD_ID BIGINT DECLARE cursor_DeleteLog CURSOR LOCAL FOR - SELECT T.IDB_OBJ_ID,T.TEXT_TERM_LANG_ID FROM TBIDB_OBJECT_METADATA T WHERE T.ATTR_ID = @ATTR_ID + SELECT MD.IDB_OBJ_ID, MD.GUID,TT.TERM_ID FROM TBIDB_OBJECT_METADATA MD INNER JOIN TBIDB_LANGUAGE_TERM TT ON MD.GUID = TT.[OBJECT_ID] + WHERE MD.ATTR_ID = @ATTR_ID OPEN cursor_DeleteLog - FETCH NEXT FROM cursor_DeleteLog INTO @IDB_OBJ_ID,@TEXT_TERM_LANG_ID + FETCH NEXT FROM cursor_DeleteLog INTO @IDB_OBJ_ID,@OMD_ID,@TERM_ID WHILE @@FETCH_STATUS = 0 BEGIN - INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,TEXT_TERM_LANG_ID,DELETED_WHO,USER_DELETE_ID) - VALUES (@IDB_OBJ_ID,@ATTR_ID, @TEXT_TERM_LANG_ID, @WHO,@USER_DELETE_ID) - FETCH NEXT FROM cursor_DeleteLog INTO @IDB_OBJ_ID,@TEXT_TERM_LANG_ID + INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,TEXT_TERM_ID,DELETED_WHO,USER_DELETE_ID) + VALUES (@IDB_OBJ_ID,@ATTR_ID, @TERM_ID, @WHO,@USER_DELETE_ID); + DELETE FROM TBIDB_LANGUAGE_TERM WHERE [OBJECT_ID] = @OMD_ID; + FETCH NEXT FROM cursor_DeleteLog INTO @IDB_OBJ_ID,@OMD_ID,@TERM_ID END CLOSE cursor_DeleteLog DEALLOCATE cursor_DeleteLog - DELETE T - FROM TBIDB_OBJECT_METADATA T - INNER JOIN TBIDB_TERM_LANGUAGE T1 - ON T.TEXT_TERM_LANG_ID=T1.GUID - WHERE T.ATTR_ID = @ATTR_ID + DELETE + FROM TBIDB_OBJECT_METADATA + WHERE ATTR_ID = @ATTR_ID; END TRY BEGIN CATCH @@ -3778,12 +3997,9 @@ BEGIN DECLARE @ADDED_WHO_TERM_ID BIGINT EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @ADDED_WHO_TERM_ID OUTPUT; - IF NOT EXISTS(SELECT GUID FROM TBIDB_TERM_LANGUAGE WHERE LANGUAGE_ID = @LANG_ID AND TEXT_TERM_ID = @TITLE_TERM_ID) - INSERT INTO TBIDB_TERM_LANGUAGE (LANGUAGE_ID,TEXT_TERM_ID,ADDED_WHO) VALUES (@LANG_ID,@TITLE_TERM_ID,@pWHO) - SELECT @LANG_TITLE_TERM_ID = MAX(GUID) FROM TBIDB_TERM_LANGUAGE WHERE LANGUAGE_ID = @LANG_ID AND TEXT_TERM_ID = @TITLE_TERM_ID - IF NOT EXISTS(SELECT GUID FROM TBIDB_CONVERSATION_OBJECT WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND TITLE_TERM_ID = @LANG_TITLE_TERM_ID) INSERT INTO TBIDB_CONVERSATION_OBJECT (TITLE_TERM_ID,IDB_OBJ_ID,ADDED_WHO) VALUES (@LANG_TITLE_TERM_ID,@pIDB_OBJ_ID,@ADDED_WHO_TERM_ID) + DECLARE @STARTED_STATE BIGINT SELECT @STARTED_STATE = GUID FROM TBIDB_STATES T WHERE dbo.[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (STATE_LTERM_ID) = 'Started' @@ -3794,23 +4010,22 @@ BEGIN INSERT INTO TBIDB_MYOBJECT_STATES (MY_OBJECT_ID,STATE_ID,ADDED_WHO) VALUES (@CONVERSATION_ID,@STARTED_STATE,@ADDED_WHO_TERM_ID) END GO -CREATE PROCEDURE dbo.PRIDB_OBJECT_SET_STATE @pIDB_OBJ_ID BIGINT, @pSTATE VARCHAR(512),@pWHO VARCHAR(100),@pLANG_CODE VARCHAR(5) = 'de-DE' +CREATE OR ALTER PROCEDURE dbo.PRIDB_OBJECT_SET_STATE @pOBJECT_ID BIGINT, @pSTATE VARCHAR(512),@pWHO VARCHAR(100) AS BEGIN DECLARE - @LANG_ID INTEGER + @STATE_ID INTEGER - SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE + SELECT @STATE_ID = GUID FROM TBIDB_STATES WHERE TITLE = @pSTATE - DECLARE @STATE_TERM_ID BIGINT,@LANG_TITLE_TERM_ID BIGINT - EXEC PRIDB_NEW_TERM 'VARCHAR',@pSTATE,@pWHO,@TERM_ID = @STATE_TERM_ID OUTPUT; DECLARE @ADDED_WHO_TERM_ID BIGINT EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @ADDED_WHO_TERM_ID OUTPUT; - + IF NOT EXISTS(SELECT GUID FROM TBIDB_MYOBJECT_STATES WHERE MY_OBJECT_ID = @pOBJECT_ID AND STATE_ID = @STATE_ID AND DATEDIFF(SECOND,ADDED_WHEN,GETDATE()) <= 1) + INSERT INTO TBIDB_MYOBJECT_STATES (MY_OBJECT_ID,STATE_ID,ADDED_WHO) VALUES (@pOBJECT_ID,@STATE_ID,@ADDED_WHO_TERM_ID) + --ELSE + -- PRINT 'ALREADY WRITTEN IN THIS SECOND' - IF NOT EXISTS(SELECT GUID FROM TBIDB_MYOBJECT_STATES WHERE MY_OBJECT_ID = @pIDB_OBJ_ID AND STATE_ID = @STATE_TERM_ID) - INSERT INTO TBIDB_MYOBJECT_STATES (MY_OBJECT_ID,STATE_ID,ADDED_WHO) VALUES (@pIDB_OBJ_ID,@STATE_TERM_ID,@ADDED_WHO_TERM_ID) END GO CREATE PROCEDURE [dbo].[PRIDB_END_CONVERSATION] @pCONVID BIGINT, @pWHO VARCHAR(100), @pLANG_CODE VARCHAR(5) = 'de-DE' @@ -4472,7 +4687,7 @@ GO -- Author: Digital Data, MS -- Create date: 12.10.2021 -- ============================================= -CREATE PROCEDURE [dbo].[PRIDB_GET_ATTRIBUTE_VALUE] @IDB_OBJ_ID BIGINT,@ATTRIBUTE VARCHAR(100), @LANG_CODE VARCHAR(5), @VALUE VARCHAR(MAX) OUTPUT +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_GET_ATTRIBUTE_VALUE] @IDB_OBJ_ID BIGINT,@ATTRIBUTE VARCHAR(100), @LANG_CODE VARCHAR(5), @VALUE VARCHAR(MAX) OUTPUT AS BEGIN DECLARE @@ -4493,13 +4708,14 @@ BEGIN select @VALUE = TERM.TERM_VALUE FROM - IDB.dbo.TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN IDB.dbo.TBIDB_TERM_LANGUAGE TLANG ON TERM.GUID = TLANG.TEXT_TERM_ID - INNER JOIN IDB.dbo.TBIDB_OBJECT_METADATA MD ON TLANG.GUID = MD.TEXT_TERM_LANG_ID + IDB.dbo.TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN IDB.dbo.TBIDB_LANGUAGE_TERM TLANG ON TERM.GUID = TLANG.TERM_ID + INNER JOIN TBIDB_LANGUAGE LANG ON TLANG.LANG_ID = LANG.GUID + INNER JOIN IDB.dbo.TBIDB_OBJECT_METADATA MD ON TLANG.[OBJECT_ID] = MD.GUID INNER JOIN IDB.dbo.TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID WHERE OBJ.DELETED = 0 AND - MD.IDB_OBJ_ID = @IDB_OBJ_ID ANd - MD.ATTR_ID = @ATTR_ID AND TLANG.LANGUAGE_ID = @LANG_ID + MD.IDB_OBJ_ID = @IDB_OBJ_ID AND + MD.ATTR_ID = @ATTR_ID AND TLANG.LANG_ID = @LANG_ID END ELSE IF @TYP_ID IN (2,7,9) --BIGINT BEGIN @@ -4551,7 +4767,7 @@ BEGIN END END GO -CREATE PROCEDURE [dbo].[PRIDB_REPLACE_ATTRIBUTE_DATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @OLD_TERM VARCHAR(900), @NEW_TERM VARCHAR(900),@LANGUAGE VARCHAR(5), @WHO VARCHAR(100) +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_REPLACE_ATTRIBUTE_DATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @OLD_TERM VARCHAR(900), @NEW_TERM VARCHAR(900),@LANGUAGE VARCHAR(5), @WHO VARCHAR(100) AS BEGIN DECLARE @@ -4560,11 +4776,14 @@ BEGIN @ATTR_TYP_ID TINYINT, @TYP_DESCR VARCHAR(100), @MULTI BIT, - @TEXT_TERM_LANG_ID BIGINT, + @TEXT_TERM_ID BIGINT, @TERM_ID BIGINT, @USER_DELETE_ID INTEGER, @ERROR as BIT, - @LANGUAGE_ID TINYINT + @LANGUAGE_ID TINYINT, + @WHO_TERM_ID BIGINT + + EXEC PRIDB_NEW_TERM 'VARCHAR',@WHO,@WHO,@TERM_ID = @WHO_TERM_ID OUTPUT; PRINT 'IN PRIDB_REPLACE_ATTRIBUTE_DATA...' SET @ERROR = 0 SELECT @USER_DELETE_ID = COALESCE(MAX(USER_DELETE_ID),0) + 1 FROM TBIDB_OBJECT_METADATA_DELETE WHERE UPPER(DELETED_WHO) = UPPER(@WHO) @@ -4572,20 +4791,20 @@ BEGIN SELECT @ATTR_ID = T.GUID, @ATTR_TYP_ID = T.TYP_ID, @MULTI = T.MULTI_CONTEXT,@TYP_DESCR = T1.NAME_TYPE FROM TBIDB_ATTRIBUTE T, TBIDB_ATTRIBUTE_TYPE T1 WHERE T.TYP_ID = T1.GUID AND UPPER(T.TITLE) = UPPER(@ATTRIBUTE) - DECLARE @MY_OLD_TERM_ID BIGINT, @MY_OLD_LANG_TERM_ID BIGINT + DECLARE @MY_OLD_TERM_ID BIGINT EXEC PRIDB_NEW_TERM @TYP_DESCR,@OLD_TERM,@WHO,@TERM_ID = @MY_OLD_TERM_ID OUTPUT; DECLARE @MY_NEW_TERM_ID BIGINT EXEC PRIDB_NEW_TERM @TYP_DESCR,@NEW_TERM,@WHO,@TERM_ID = @MY_NEW_TERM_ID OUTPUT; IF @ATTR_TYP_ID IN (1,8) --VARCHAR BEGIN TRY - SELECT @MY_OLD_LANG_TERM_ID = GUID FROM TBIDB_TERM_LANGUAGE WHERE TEXT_TERM_ID = @MY_OLD_TERM_ID AND LANGUAGE_ID = @LANGUAGE_ID - Print '@MY_OLD_LANG_TERM_ID: ' + Convert(Varchar(10),@MY_OLD_LANG_TERM_ID) - IF NOT EXISTS(SELECT GUID FROM TBIDB_TERM_LANGUAGE WHERE TEXT_TERM_ID = @MY_NEW_TERM_ID AND LANGUAGE_ID = @LANGUAGE_ID) - BEGIN - INSERT INTO TBIDB_TERM_LANGUAGE(LANGUAGE_ID,TEXT_TERM_ID,ADDED_WHO) VALUES (@LANGUAGE_ID,@MY_NEW_TERM_ID,@WHO) - END - UPDATE TBIDB_OBJECT_METADATA SET TEXT_TERM_LANG_ID = (SELECT MAX(GUID) FROM TBIDB_TERM_LANGUAGE WHERE TEXT_TERM_ID = @MY_NEW_TERM_ID AND LANGUAGE_ID = @LANGUAGE_ID), CHANGED_WHO = @WHO - WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND TEXT_TERM_LANG_ID = @MY_OLD_LANG_TERM_ID AND ATTR_ID = @ATTR_ID + DECLARE @OMD_ID BIGINT + SELECT @OMD_ID = GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID; + + UPDATE TBIDB_LANGUAGE_TERM SET + TERM_ID = @MY_NEW_TERM_ID, + CHANGED_WHO = @WHO_TERM_ID + WHERE + [OBJECT_ID] = @OMD_ID AND LANG_ID = @LANGUAGE_ID AND TERM_ID = @MY_OLD_TERM_ID; END TRY BEGIN CATCH PRINT 'ERROR WHILE UPDATING FROM TBIDB_OBJECT_METADATA FOR ATTRIBUTE [' + @ATTRIBUTE + ']' @@ -4774,17 +4993,19 @@ GO -- ============================================= -- Author: DD MS 21.01.2022 -- ============================================= -CREATE PROCEDURE [dbo].[PRIDB_NEW_VERSION_OBJECT] @IDB_OBJ_ID BIGINT,@NEW_IDB_OBJ_ID BIGINT, @WHO VARCHAR(100) +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_VERSION_OBJECT] @IDB_OBJ_ID BIGINT,@NEW_IDB_OBJ_ID BIGINT, @WHO VARCHAR(100) AS BEGIN UPDATE TBIDB_OBJECT SET ACTIVE = 0, CHANGED_WHO = @WHO WHERE IDB_OBJ_ID = @IDB_OBJ_ID; UPDATE TBIDB_OBJECT SET IS_VERSION = 1,ACTIVE = 1,PARENT_OBJ_ID = @IDB_OBJ_ID WHERE IDB_OBJ_ID = @NEW_IDB_OBJ_ID; - EXEC PRIDB_NEW_STATE_OBJECT @IDB_OBJ_ID, 'File Versioned',@WHO; + EXEC PRIDB_OBJECT_SET_STATE @IDB_OBJ_ID, 'File Versioned',@WHO; + + DELETE FROM TBIDB_LANGUAGE_TERM WHERE OBJECT_ID IN (select GUID from idb.dbo.TBIDB_OBJECT_METADATA where IDB_OBJ_ID = @NEW_IDB_OBJ_ID); + DELETE FROM TBIDB_OBJECT_METADATA where IDB_OBJ_ID = @NEW_IDB_OBJ_ID; INSERT INTO [dbo].[TBIDB_OBJECT_METADATA] ([IDB_OBJ_ID] ,[ATTR_ID] - ,[TEXT_TERM_LANG_ID] ,[INT_TERM_ID] ,[DEC_TERM_ID] ,[FLOAT_TERM_ID] @@ -4796,7 +5017,6 @@ BEGIN ,[DATETIME_TERM_ID]) SELECT @NEW_IDB_OBJ_ID ,[ATTR_ID] - ,[TEXT_TERM_LANG_ID] ,[INT_TERM_ID] ,[DEC_TERM_ID] ,[FLOAT_TERM_ID] @@ -4805,7 +5025,23 @@ BEGIN ,[ADDED_WHEN] ,[CHANGED_WHO] ,[CHANGED_WHEN] - ,[DATETIME_TERM_ID] FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID; + ,[DATETIME_TERM_ID] FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID ORDER BY GUID; + INSERT INTO TBIDB_LANGUAGE_TERM ( + OBJECT_ID + ,TERM_ID + ,LANG_ID + ,KIND_TYPE + ,ADDED_WHO + ,ADDED_WHEN + ,CHANGED_WHO + ,CHANGED_WHEN) + SELECT MD.GUID, LTERM_VERS.TERM_ID,LTERM_VERS.LANG_ID,LTERM_VERS.KIND_TYPE,LTERM_VERS.ADDED_WHO,LTERM_VERS.ADDED_WHEN,LTERM_VERS.CHANGED_WHO,LTERM_VERS.CHANGED_WHEN FROM + (SELECT + MD.ATTR_ID, LTERM.LANG_ID, LTERM.TERM_ID,LTERM.ADDED_WHO,LTERM.ADDED_WHEN,LTERM.CHANGED_WHO,LTERM.CHANGED_WHEN, LTERM.KIND_TYPE + FROM TBIDB_LANGUAGE_TERM LTERM INNER JOIN TBIDB_OBJECT_METADATA MD ON LTERM.OBJECT_ID = MD.GUID + WHERE LTERM.OBJECT_ID IN (select GUID from idb.dbo.TBIDB_OBJECT_METADATA where IDB_OBJ_ID = @IDB_OBJ_ID) + ) LTERM_VERS INNER JOIN TBIDB_OBJECT_METADATA MD ON MD.ATTR_ID = LTERM_VERS.ATTR_ID + WHERE MD.IDB_OBJ_ID = @NEW_IDB_OBJ_ID; INSERT INTO [dbo].[TBIDB_OBJ_MY_STATES] ([IDB_OBJ_ID] diff --git a/04_APPSERV/INSERT_JOBS.sql b/04_APPSERV/INSERT_JOBS.sql index 4d317ed..383bc03 100644 --- a/04_APPSERV/INSERT_JOBS.sql +++ b/04_APPSERV/INSERT_JOBS.sql @@ -252,6 +252,10 @@ Insert Into TBAPPSERV_CRON_DETAIL ( CRON_ID, CON_ID, TITLE, DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES ( 3, 1, 'TBDD_INDEX_MAN_POSTPROCESSING', 'TBDD_INDEX_MAN_POSTPROCESSING', 1, 'select * from TBDD_INDEX_MAN_POSTPROCESSING'); +INSERT INTO [dbo].[TBAPPSERV_CRON_DETAIL]( +CRON_ID, CON_ID, TITLE ,DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES ( +3, 2, 'VWIDB_DOCTYPE_HANDLING', 'VWIDB_DOCTYPE_HANDLING', 1,'SELECT * FROM VWIDB_DOCTYPE_HANDLING'); +GO --Insert Into TBAPPSERV_CRON_DETAIL ( --CRON_ID, CON_ID, TITLE, DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES ( --2, 2, 'TBIDB_DOC_INFO', 'TBIDB_DOC_INFO', 1, diff --git a/09_ZooFlow/Update/1.0.0.1.sql b/09_ZooFlow/Update/1.0.0.1.sql index 2e165816d9e6e3c28d010f02dea0a499525423bf..2affb1aeb1aa9cec7bf26f672967126c2f5d1a9b 100644 GIT binary patch delta 415 zcmaFylJVMm#tlzOCcCBXkal74XK-c+VTfc1U~pxK2eSPc{21IAJQ>_4ug{U4JS$nk zotJ@&fs?@nsLF#ukHMWG6e#P$pa3QzayoEX7lwR>WQG!kN`?Z4R0f!=GlL^T$mEl0 z^2X6XGaP|7xG?wt_4@%$Qvlit5pxH+z=a_et_y18z|aMmha58M44MqqV1Gcu2uQMmxd6|FL4^PS delta 14 Vcmccip7F&?#tlzOSa=z@7yvok1-t+N From 483bb0c1084f636faaf08173dac84738726412fa Mon Sep 17 00:00:00 2001 From: Digital Data - Marlon Schreiber Date: Wed, 9 Feb 2022 13:51:47 +0100 Subject: [PATCH 3/9] MS --- 00_IDB/CreateDBObjects.sql | 1 + 1 file changed, 1 insertion(+) diff --git a/00_IDB/CreateDBObjects.sql b/00_IDB/CreateDBObjects.sql index 5ee1361..883d8f1 100644 --- a/00_IDB/CreateDBObjects.sql +++ b/00_IDB/CreateDBObjects.sql @@ -2460,6 +2460,7 @@ BEGIN RETURN END GO + --============================================= --Author: Digital Data MS --Creation date: 22.10.2020 From 7df6439f4044a049490ffba55419027d15a2bffd Mon Sep 17 00:00:00 2001 From: Digital Data - Marlon Schreiber Date: Fri, 25 Feb 2022 14:56:45 +0100 Subject: [PATCH 4/9] MS --- 00_DD/DD_ECM.sql | 40 +- 00_IDB/CreateDBObjects.sql | 734 ++++++++++++++++++++---------- 00_IDB/Development/TextSearch.sql | 117 +++++ 00_IDB/Fulltext.sql | 19 + 04_APPSERV/INSERT_JOBS.sql | 7 + 10_Monitor/CreateDBObjects.sql | 55 +++ 6 files changed, 730 insertions(+), 242 deletions(-) create mode 100644 00_IDB/Development/TextSearch.sql create mode 100644 00_IDB/Fulltext.sql create mode 100644 10_Monitor/CreateDBObjects.sql diff --git a/00_DD/DD_ECM.sql b/00_DD/DD_ECM.sql index a74f0ea..e1fac4f 100644 --- a/00_DD/DD_ECM.sql +++ b/00_DD/DD_ECM.sql @@ -32,6 +32,40 @@ AS GO INSERT INTO TBDD_BASECONFIG (GUID,WD_UNICODE,DB_VERSION) VALUES (1,1,'1.9.0.0') GO +CREATE TABLE [dbo].[TBDD_3RD_PARTY_MODULES]( + [GUID] [int] IDENTITY(1,1) NOT NULL, + [ACTIVE] [bit] NOT NULL, + [NAME] [varchar](50) NOT NULL, + [DESCRIPTION] [varchar](500) NULL, + [LICENSE] [varchar](max) NOT NULL, + [VERSION] [varchar](20) NOT NULL, + [STRING1] [varchar](100) NULL, + [STRING2] [varchar](100) NULL, + [STRING3] [varchar](100) NULL, + [STRING4] [varchar](100) NULL, + [STRING5] [varchar](100) NULL, + [STRING6] [varchar](100) NULL, + [STRING7] [varchar](100) NULL, + [STRING8] [varchar](100) NULL, + [STRING9] [varchar](100) NULL, + [STRING10] [varchar](100) NULL, + [ADDED_WHO] [varchar](50) NULL, + [ADDED_WHEN] [datetime] NULL, + [CHANGED_WHO] [varchar](50) NULL, + [CHANGED_WHEN] [datetime] NULL +) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] +GO + +ALTER TABLE [dbo].[TBDD_3RD_PARTY_MODULES] ADD CONSTRAINT [DF_TBDD_3RD_PARTY_MODULES_ACTIVE] DEFAULT ((0)) FOR [ACTIVE] +GO + +ALTER TABLE [dbo].[TBDD_3RD_PARTY_MODULES] ADD CONSTRAINT [DF_TBDD_3RD_PARTY_MODULES_VERSION] DEFAULT ('1.0.0.0') FOR [VERSION] +GO +INSERT INTO TBDD_3RD_PARTY_MODULES (ACTIVE,NAME,LICENSE) VALUES (1,'GDPICTURE','21182889975216572111813147150675976632') +GO + + + CREATE TABLE TBDD_SERV_EXT_PROGRAMS ( GUID TINYINT, @@ -486,7 +520,7 @@ CONSTRAINT FK_TBDD_VERSION_USER_UPDATE_UPDATE_ID FOREIGN KEY (UPDATE_ID) REFE GO -CREATE TRIGGER [dbo].[TBDD_USER_AFT_INS] ON [dbo].[TBDD_USER] +CREATE OR ALTER TRIGGER [dbo].[TBDD_USER_AFT_INS] ON [dbo].[TBDD_USER] WITH EXECUTE AS CALLER FOR INSERT AS @@ -512,8 +546,8 @@ BEGIN TRY UPDATE TBDD_USER SET USERID_FK_INT_ECM = @ECM_USR_ID FROM INSERTED WHERE TBDD_USER.GUID = INSERTED.GUID - - -- SELECT @CLIENT_COUNT = COUNT(*) FROM TBDD_CLIENT + EXEC IDB.dbo.PRIDB_NEW_CATALOG_USER @USER_ID; + -- SELECT @CLIENT_COUNT = COUNT(*) FROM TBDD_CLIENT -- IF @CLIENT_COUNT = 1 -- BEGIN -- SELECT @CLIENT_COUNT = GUID FROM TBDD_CLIENT diff --git a/00_IDB/CreateDBObjects.sql b/00_IDB/CreateDBObjects.sql index 883d8f1..88a1f60 100644 --- a/00_IDB/CreateDBObjects.sql +++ b/00_IDB/CreateDBObjects.sql @@ -37,6 +37,52 @@ CREATE TABLE TBIDB_CATALOG CONSTRAINT UQ_TBIDB_CATALOG_TITLE UNIQUE (CAT_TITLE) ) GO +CREATE TABLE TBIDB_CATALOG_USER +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + USR_ID INTEGER NOT NULL, + CAT_TITLE VARCHAR(100) NOT NULL, + CAT_STRING VARCHAR(900) NOT NULL, + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_CATALOG_USER PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_CATALOG_USER UNIQUE (USR_ID,CAT_TITLE) +) +GO +CREATE TRIGGER TBIDB_CATALOG_USER_AFT_UPD ON TBIDB_CATALOG_USER +FOR UPDATE +AS + UPDATE TBIDB_CATALOG_USER SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_CATALOG_USER.GUID = INSERTED.GUID +GO +CREATE TABLE TBIDB_FULLTEXT_OBJECT +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + OBJECT_ID BIGINT NOT NULL, + FULL_TEXT NVARCHAR(MAX) NOT NULL, + CAT_ID INTEGER NOT NULL, + ADDED_WHO BIGINT, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHO BIGINT, + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_FULLTEXT_OBJECT PRIMARY KEY (GUID), + CONSTRAINT UN_TBIDB_FULLTEXT_OBJECT UNIQUE(OBJECT_ID,CAT_ID), + CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_CAT_ID FOREIGN KEY (CAT_ID) REFERENCES TBIDB_CATALOG (GUID), + CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), + CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) +GO +CREATE TRIGGER TBIDB_FULLTEXT_OBJECT_AFT_UPD ON TBIDB_FULLTEXT_OBJECT +FOR UPDATE +AS + UPDATE TBIDB_FULLTEXT_OBJECT SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_FULLTEXT_OBJECT.GUID = INSERTED.GUID +GO + + INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DB_VERSION','1.0.4.1') GO INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('FILESTORE_PRAEFIX','\\IDB\OBJECTS') @@ -47,11 +93,20 @@ INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DOCTYPE_CHANGED1','QUE GO INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DOCTYPE_CHANGED2','AUTO VERSION') GO +INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('FULLTEXT_OCR','EXTRACTED FULLTEXT') +GO +INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('FULLTEXT_MANUAL1','MANUAL FULLTEXT1') +GO +INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('FULLTEXT_MANUAL2','MANUAL FULLTEXT2') +GO --INSERT INTO [TBIDB_CATALOG] ([CAT_TITLE],[CAT_STRING]) VALUES ('APPSERV1','172.24.12.39') --GO INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('GHOST_SELECT',' SELECT T.USERNAME,T.NAME, T.[PRENAME],T.EMAIL FROM @MY_DD_ECM_DB.dbo.TBDD_USER T ORDER BY USERNAME') GO +INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('AD_GROUP_ADMIN1','NONE') +GO + CREATE TRIGGER TBIDB_CATALOG_AFT_UPD ON TBIDB_CATALOG FOR UPDATE AS @@ -111,6 +166,8 @@ AS FROM INSERTED WHERE TBIDB_DOCTYPE_OBJECT_STORE.GUID = INSERTED.GUID GO + + CREATE TABLE TBIDB_DOCTYPE_HANDLING ( GUID INT NOT NULL IDENTITY (1, 1), @@ -138,12 +195,14 @@ CREATE TABLE TBIDB_TERM_VALUE_VARCHAR ( GUID BIGINT NOT NULL IDENTITY (1, 1), TERM_VALUE VARCHAR(900) NOT NULL, + TERM_VALUE_REVERSE VARCHAR(900), ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_TERM_VALUE_VARCHAR PRIMARY KEY (GUID), - CONSTRAINT UQ_TBIDB_TERM_VALUE_VARCHAR UNIQUE (TERM_VALUE) + CONSTRAINT UQ_TBIDB_TERM_VALUE_VARCHAR UNIQUE (TERM_VALUE), + CONSTRAINT UQ_TBIDB_TERM_VALUE_VARCHAR UNIQUE (TERM_VALUE_REVERSE) ) GO CREATE TRIGGER TBIDB_TERM_VALUE_VARCHAR_AFT_UPD ON TBIDB_TERM_VALUE_VARCHAR @@ -153,6 +212,13 @@ AS FROM INSERTED WHERE TBIDB_TERM_VALUE_VARCHAR.GUID = INSERTED.GUID GO +CREATE TRIGGER [dbo].[TBIDB_TERM_VALUE_VARCHAR_AFT_INS] ON [dbo].[TBIDB_TERM_VALUE_VARCHAR] +FOR INSERT +AS +UPDATE TBIDB_TERM_VALUE_VARCHAR SET TBIDB_TERM_VALUE_VARCHAR.TERM_VALUE_REVERSE = REVERSE(INSERTED.TERM_VALUE) +FROM INSERTED +WHERE TBIDB_TERM_VALUE_VARCHAR.GUID = INSERTED.GUID +GO CREATE TABLE TBIDB_TERM_VALUE_INTEGER ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -587,6 +653,58 @@ AS FROM INSERTED WHERE TBIDB_BE_ATTRIBUTE.GUID = INSERTED.GUID GO +CREATE OR ALTER TRIGGER [dbo].[TBIDB_BE_ATTRIBUTE_AFT_INS] ON [dbo].[TBIDB_BE_ATTRIBUTE] +FOR INSERT +AS + DECLARE + @ATTRIBUTE_ID INTEGER, + @TYP_ID INTEGER, + @ADDED_WHO VARCHAR(50), + @TITLE VARCHAR(100), + @ADD_DEFAULT BIT, + @LANG_ID INTEGER, + @LANG_CODE VARCHAR(5) + SELECT + @ATTRIBUTE_ID = ATTR_ID + FROM INSERTED + + DECLARE c_TBIDB_ATTRIBUTE_AFT_INS CURSOR FOR + select GUID,LANG_CODE from TBIDB_LANGUAGE where CREATE_DEFAULT_ENTRY = 1 + OPEN c_TBIDB_ATTRIBUTE_AFT_INS + FETCH NEXT FROM c_TBIDB_ATTRIBUTE_AFT_INS INTO @LANG_ID,@LANG_CODE + WHILE @@FETCH_STATUS = 0 + BEGIN + EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE,'DEFAULT'; + EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE,'DOCRESULT'; + FETCH NEXT FROM c_TBIDB_ATTRIBUTE_AFT_INS INTO @LANG_ID,@LANG_CODE + END +CLOSE c_TBIDB_ATTRIBUTE_AFT_INS +DEALLOCATE c_TBIDB_ATTRIBUTE_AFT_INS +GO +CREATE OR ALTER TRIGGER [dbo].[TBIDB_BE_ATTRIBUTE_AFT_DEL] ON [dbo].[TBIDB_BE_ATTRIBUTE] +FOR DELETE +AS + DECLARE + @LANG_ID INTEGER, + @LANG_CODE VARCHAR(5) + + DECLARE c_TBIDB_ATTRIBUTE_AFT_DEL CURSOR FOR + select GUID,LANG_CODE from TBIDB_LANGUAGE where CREATE_DEFAULT_ENTRY = 1 + OPEN c_TBIDB_ATTRIBUTE_AFT_DEL + FETCH NEXT FROM c_TBIDB_ATTRIBUTE_AFT_DEL INTO @LANG_ID,@LANG_CODE + WHILE @@FETCH_STATUS = 0 + BEGIN + EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE,'DEFAULT'; + EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE,'DOCRESULT'; + FETCH NEXT FROM c_TBIDB_ATTRIBUTE_AFT_DEL INTO @LANG_ID,@LANG_CODE + END +CLOSE c_TBIDB_ATTRIBUTE_AFT_DEL +DEALLOCATE c_TBIDB_ATTRIBUTE_AFT_DEL +GO + + + + CREATE TABLE TBIDB_LANGUAGE_TERM ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -605,6 +723,10 @@ CREATE TABLE TBIDB_LANGUAGE_TERM CONSTRAINT FK_TBIDB_LANGUAGE_TERM_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), CONSTRAINT FK_TBIDB_LANGUAGE_TERM_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) GO +CREATE NONCLUSTERED INDEX [IDXTBIDB_LANGUAGE_TERM_LANGID_OID_TERMID] +ON [dbo].[TBIDB_LANGUAGE_TERM] ([LANG_ID]) +INCLUDE ([OBJECT_ID],[TERM_ID]) +GO CREATE OR ALTER TRIGGER [dbo].[TBIDB_LANGUAGE_TERM_AFT_UPD] ON [dbo].[TBIDB_LANGUAGE_TERM] FOR UPDATE AS @@ -627,7 +749,7 @@ AS FROM INSERTED INS INNER JOIN TBIDB_OBJECT_METADATA MD ON INS.[OBJECT_ID] = MD.GUID - IF @IDB_OBJ_ID IS NOT NULL + IF @IDB_OBJ_ID IS NOT NULL AND @CHANGED_WHO IS NOT NULL INSERT INTO TBIDB_OBJECT_METADATA_CHANGE ( IDB_OBJ_ID, ATTR_ID, @@ -923,7 +1045,7 @@ from INNER JOIN TBIDB_ATTRIBUTE_TYPE ATY ON ATTR.TYP_ID = ATY.GUID GO -CREATE VIEW [dbo].[VWIDB_BE_ATTRIBUTE] AS +CREATE OR ALTER VIEW [dbo].[VWIDB_BE_ATTRIBUTE] AS SELECT COALESCE(T.GUID,0) as GUID, COALESCE(T.[BE_ID],0) BE_ID @@ -934,8 +1056,10 @@ SELECT ,T1.TYP_ID AS [TYPE_ID] ,T3.NAME_TYPE AS [TYPE_NAME] ,T1.VIEW_VISIBLE + ,T1.MULTI_CONTEXT ,T1.VIEW_SEQUENCE ,T1.SYS_ATTRIBUTE + ,T.DEFAULT_SEARCH_ATTRIBUTE ,T5.GUID AS LANG_ID ,T5.LANG_CODE ,T1.ADDED_WHEN @@ -1102,9 +1226,49 @@ CREATE TABLE TBIDB_COMMON_SQL ) GO +INSERT INTO [dbo].[TBIDB_COMMON_SQL] + ([TITLE] + ,[SQL_COMMAND] + ,[ADDED_WHO]) + VALUES + ('FLOW_SEARCH_SQL_BASE' + ,'SELECT + DOC.* +FROM + TBIDB_SEARCH_RESULT_USER RES INNER JOIN VWIDB_LANGUAGE_TERM VWLTERM ON RES.MD_GUID = VWLTERM.MD_ID + INNER JOIN VWIDB_DOCRESULT_DE DOC ON VWLTERM.IDB_OBJ_ID = DOC.DocID +WHERE + RES.USR_ID = @USER_ID AND VWLTERM.LANG_CODE = ''@LANG_CODE''','SYSTEM') +GO + +CREATE TABLE TBIDB_SEARCH_RESULT_USER +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + MD_GUID BIGINT + ,USR_ID INTEGER + CONSTRAINT FK_TBIDB_SEARCH_RESULT_USER_MD_GUID FOREIGN KEY (MD_GUID) REFERENCES TBIDB_OBJECT_METADATA (GUID) +) +GO +CREATE TABLE TBIDB_SEARCH_DATE_VALUE_USER +( + USR_ID INTEGER + ,DATE_FROM DATE NOT NULL + ,DATE_TILL DATE + + CONSTRAINT PK_TBIDB_SEARCH_DATE_VALUE_USER PRIMARY KEY (USR_ID) +) +GO +CREATE PROCEDURE PRIDB_SEARCH_ADD_USR_DATE @USERID INT,@DATE1 DATE, @DATE2 DATE +AS +BEGIN + DELETE FROM TBIDB_SEARCH_DATE_VALUE_USER WHERE USR_ID = @USERID; + INSERT INTO TBIDB_SEARCH_DATE_VALUE_USER (USR_ID,DATE_FROM,DATE_TILL) VALUES + (@USERID,@DATE1,@DATE2); +END +GO --DROP TABLE TBIDB_SEARCH_PROFILE DROP TABLE TBIDB_SEARCH_LANGUAGE_SQL_RESULT DROP TABLE TBIDB_SEARCH_PROFILE_USER_GROUP @@ -1130,20 +1294,20 @@ AS WHERE TBIDB_SEARCH_PROFILE.GUID = INSERTED.GUID GO ---CREATE TABLE TBIDB_SEARCH_RESULT_ATTRIBUTES ---( --- GUID INTEGER NOT NULL IDENTITY (1, 1), --- SEARCH_PROFIL_ID INTEGER NOT NULL, --- ATTRIBUTE_ID INTEGER NOT NULL, --- SEQUENCE INTEGER DEFAULT 0, --- ADDED_WHO BIGINT, --- ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), --- CONSTRAINT PK_TBIDB_SEARCH_RESULT_ATTRIBUTES_GUID PRIMARY KEY (GUID), --- CONSTRAINT FK_TBIDB_SEARCH_RESULT_ATTRIBUTES_SPID FOREIGN KEY (SEARCH_PROFIL_ID) REFERENCES TBIDB_SEARCH_PROFILE (GUID), --- CONSTRAINT FK_TBIDB_SEARCH_RESULT_ATTRIBUTES_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), --- CONSTRAINT UQ_TBIDB_SEARCH_RESULT_ATTRIBUTES UNIQUE(SEARCH_PROFIL_ID,ATTRIBUTE_ID) ---) ---GO +CREATE TABLE TBIDB_SEARCH_RESULT_ATTRIBUTES +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + SEARCH_PROFIL_ID INTEGER NOT NULL, + ATTRIBUTE_ID INTEGER NOT NULL, + SEQUENCE INTEGER DEFAULT 0, + ADDED_WHO BIGINT, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CONSTRAINT PK_TBIDB_SEARCH_RESULT_ATTRIBUTES_GUID PRIMARY KEY (GUID), + CONSTRAINT FK_TBIDB_SEARCH_RESULT_ATTRIBUTES_SPID FOREIGN KEY (SEARCH_PROFIL_ID) REFERENCES TBIDB_SEARCH_PROFILE (GUID), + CONSTRAINT FK_TBIDB_SEARCH_RESULT_ATTRIBUTES_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), + CONSTRAINT UQ_TBIDB_SEARCH_RESULT_ATTRIBUTES UNIQUE(SEARCH_PROFIL_ID,ATTRIBUTE_ID) +) +GO CREATE TABLE TBIDB_SEARCH_LANGUAGE_SQL_RESULT @@ -1538,7 +1702,6 @@ GO --ALTER TABLE [TBIDB_FILE_OBJECT] --ADD [FILE_HASH] VARCHAR(500) NOT NULL --GO - CREATE TABLE TBIDB_FILE_OBJECT ( IDB_OBJ_ID BIGINT NOT NULL, @@ -1548,6 +1711,7 @@ CREATE TABLE TBIDB_FILE_OBJECT FILENAME_TERM_ID BIGINT NOT NULL, FILE_SIZE BIGINT, FILE_HASH VARCHAR(500) NOT NULL, + FULLTEXT_CREATED DATETIME, ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), @@ -1910,15 +2074,15 @@ AS BEGIN DECLARE @TERM_ID BIGINT, @RESULT_SING VARCHAR(900), @RESULT VARCHAR(5000) SEt @RESULT = '' - DECLARE c_REDO CURSOR FOR + DECLARE c_FNIDB_GET_TERM_TEXT_VECTOR CURSOR FOR SELECT T1.TERM_ID FROM TBIDB_OBJECT_METADATA T INNER JOIN TBIDB_LANGUAGE_TERM T1 ON T.GUID = T1.[OBJECT_ID] INNER JOIN TBIDB_LANGUAGE LANG ON T1.LANG_ID = LANG.GUID INNER JOIN TBIDB_OBJECT OBJ ON T.IDB_OBJ_ID = OBJ.IDB_OBJ_ID WHERE T.IDB_OBJ_ID = @IDB_OBJ_ID and T.ATTR_ID = @ATTR_ID AND OBJ.ACTIVE = 1 AND LANG.LANG_CODE = @LANG_CODE - OPEN c_REDO - FETCH NEXT FROM c_REDO INTO @TERM_ID + OPEN c_FNIDB_GET_TERM_TEXT_VECTOR + FETCH NEXT FROM c_FNIDB_GET_TERM_TEXT_VECTOR INTO @TERM_ID WHILE @@FETCH_STATUS = 0 BEGIN SELECT @RESULT_SING = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @TERM_ID @@ -1926,23 +2090,23 @@ BEGIN SET @RESULT = @RESULT_SING ELSE SET @RESULT += '; ' + @RESULT_SING - FETCH NEXT FROM c_REDO INTO @TERM_ID + FETCH NEXT FROM c_FNIDB_GET_TERM_TEXT_VECTOR INTO @TERM_ID END - CLOSE c_REDO - DEALLOCATE c_REDO + CLOSE c_FNIDB_GET_TERM_TEXT_VECTOR + DEALLOCATE c_FNIDB_GET_TERM_TEXT_VECTOR RETURN @RESULT END GO -CREATE FUNCTION FNIDB_GET_TERM_INTEGER_VECTOR (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER) +CREATE OR ALTER FUNCTION FNIDB_GET_TERM_INTEGER_VECTOR (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER) RETURNS VARCHAR(5000) AS BEGIN DECLARE @TERM_ID BIGINT, @RESULT_SING VARCHAR(900), @RESULT VARCHAR(5000) SEt @RESULT = '' - DECLARE c_REDO CURSOR FOR + DECLARE c_FNIDB_GET_TERM_INTEGER_VECTOR CURSOR FOR SELECT INT_TERM_ID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID and ATTR_ID = @ATTR_ID - OPEN c_REDO - FETCH NEXT FROM c_REDO INTO @TERM_ID + OPEN c_FNIDB_GET_TERM_INTEGER_VECTOR + FETCH NEXT FROM c_FNIDB_GET_TERM_INTEGER_VECTOR INTO @TERM_ID WHILE @@FETCH_STATUS = 0 BEGIN SELECT @RESULT_SING = TERM_VALUE FROM TBIDB_TERM_VALUE_INTEGER WHERE GUID = @TERM_ID @@ -1950,10 +2114,10 @@ BEGIN SET @RESULT = @RESULT_SING ELSE SET @RESULT += '; ' + @RESULT_SING - FETCH NEXT FROM c_REDO INTO @TERM_ID + FETCH NEXT FROM c_FNIDB_GET_TERM_INTEGER_VECTOR INTO @TERM_ID END - CLOSE c_REDO - DEALLOCATE c_REDO + CLOSE c_FNIDB_GET_TERM_INTEGER_VECTOR + DEALLOCATE c_FNIDB_GET_TERM_INTEGER_VECTOR RETURN @RESULT END GO @@ -1997,6 +2161,19 @@ BEGIN RETURN @RESULT END GO +CREATE OR ALTER FUNCTION FNIDB_GET_TERM_DATE_TIME (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER) +RETURNS DATE +AS +BEGIN + DECLARE @RESULT DATE + SELECT @RESULT = TERM_VALUE + FROM + TBIDB_OBJECT_METADATA MD INNER JOIN TBIDB_TERM_VALUE_DATETIME DT ON MD.DATETIME_TERM_ID = DT.GUID + WHERE + MD.IDB_OBJ_ID = @IDB_OBJ_ID and MD.ATTR_ID = @ATTR_ID + RETURN @RESULT +END +GO CREATE FUNCTION FNIDB_GET_TERM_DECIMAL (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER) RETURNS DECIMAL(19,0) AS @@ -2994,10 +3171,28 @@ WHERE GROUP BY TERM.TERM_VALUE GO + +CREATE OR ALTER VIEW VWIDB_LANGUAGE_TERM AS +SELECT + MD.GUID as MD_ID + ,MD.IDB_OBJ_ID + ,MD.ATTR_ID + ,TERM.TERM_VALUE + ,LTERM.LANG_ID + ,LANG.LANG_CODE + ,MD.ADDED_WHEN [Added When] + ,MD.ADDED_WHO [Added Who] + ,MD.CHANGED_WHEN [Changed When] + ,MD.CHANGED_WHO [Changed Who] +FROM + TBIDB_OBJECT_METADATA MD + INNER JOIN TBIDB_LANGUAGE_TERM LTERM ON MD.GUID = LTERM.OBJECT_ID + INNER JOIN TBIDB_LANGUAGE LANG ON LTERM.LANG_ID = LANG.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON LTERM.TERM_ID = TERM.GUID /*########################################### ############## PROCEDURES ################### #############################################*/ - +GO CREATE PROCEDURE [dbo].[PRIDB_NEW_STATE_OBJECT] @pIDB_OBJ_ID BIGINT, @pSYSSTATE VARCHAR(100),@pWHO VARCHAR(100) AS BEGIN @@ -3654,7 +3849,9 @@ BEGIN END GO -CREATE PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5) + + +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5) ,@pVar VARCHAR(15) = 'DEFAULT' AS DECLARE @ATTR_ID INT, @@ -3666,13 +3863,24 @@ DECLARE @Integer24 Varchar(20), @Float Varchar(20), @RELPATH Varchar(200), - @SEQUENCE Integer - - SET @SQL1 = 'CREATE VIEW VWIDB_DOC_DATA_' + UPPER(LEFT(@pLANGCODE,2)) + ' AS '+ char(10) + 'SELECT ' + char(10) + ' T.IDB_OBJ_ID' + char(10) + @SEQUENCE Integer, + @NAME_VIEW VARCHAR(20) + + IF @pVar = 'DEFAULT' + SET @NAME_VIEW = 'VWIDB_DOC_DATA_' + ELSE + SET @NAME_VIEW = 'VWIDB_DOCRESULT_' + SET @SQL1 = 'CREATE VIEW ' + @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2)) + ' AS '+ char(10) + 'SELECT ' + char(10) + char(9) + + IF @pVar = 'DEFAULT' + SET @SQL1 += +'T.IDB_OBJ_ID' + char(10) + ELSE + SET @SQL1 += +'T.IDB_OBJ_ID as DocID' + char(10) BEGIN DECLARE c_PRIDB_CREATE_VIEW_DOC_DATA CURSOR FOR SELECT DISTINCT ATTR_ID,ATTR_TITLE,TYPE_ID,VIEW_SEQUENCE FROM VWIDB_BE_ATTRIBUTE WHERE VIEW_VISIBLE = 1 AND LANG_CODE = @pLANGCODE AND ATTR_ID IS NOT NULL + AND SYS_ATTRIBUTE = 0 ORDER BY VIEW_SEQUENCE OPEN c_PRIDB_CREATE_VIEW_DOC_DATA @@ -3680,9 +3888,17 @@ BEGIN WHILE @@FETCH_STATUS = 0 BEGIN DECLARE @FN_COMMAND as VARCHAR(100), @FN_TYP as VARCHAR(50) - SET @FN_COMMAND = '(SELECT [dbo].[FNIDB_GET_TERM_@TYPE] (@OBJ_ID,@ATTR_ID))' + IF @TYPID IN (1,8) + BEGIN + SET @FN_COMMAND = '(SELECT [dbo].[FNIDB_GET_TERM_@TYPE] (@OBJ_ID,@ATTR_ID,''@LANG_CODE''))' + SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@LANG_CODE',@pLANGCODE) + END + ELSE + SET @FN_COMMAND = '(SELECT [dbo].[FNIDB_GET_TERM_@TYPE] (@OBJ_ID,@ATTR_ID))' SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@OBJ_ID','T.IDB_OBJ_ID') SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@ATTR_ID',@ATTR_ID) + + IF @TYPID = 1 SET @FN_TYP = 'TEXT' ELSE IF @TYPID = 2 @@ -3693,6 +3909,8 @@ BEGIN SET @FN_TYP = 'DECIMAL' ELSE IF @TYPID = 5 SET @FN_TYP = 'DATE' + ELSE IF @TYPID = 6 + SET @FN_TYP = 'DATE_TIME' ELSE IF @TYPID = 7 SET @FN_TYP = 'BIT' ELSE IF @TYPID = 8 @@ -3701,38 +3919,51 @@ BEGIN SET @FN_TYP = 'INTEGER_VECTOR' SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@TYPE',@FN_TYP) - PRINT @FN_COMMAND + + --PRINT '@FN_COMMAND: ' + @FN_COMMAND SET @SQL1 += char(9) + ',' + @FN_COMMAND + char(9) + char(9) + ' AS ''' + @TITLE + '''' + char(10) --PRINT @SQL1 FETCH NEXT FROM c_PRIDB_CREATE_VIEW_DOC_DATA INTO @ATTR_ID,@TITLE,@TYPID,@SEQUENCE END CLOSE c_PRIDB_CREATE_VIEW_DOC_DATA DEALLOCATE c_PRIDB_CREATE_VIEW_DOC_DATA - SET @SQL1 += char(9) + ',T5.TERM_VALUE AS DocExtension' + char(10) - + char(9) + ',T5.TERM_VALUE AS DocName' + char(10) - + char(9) + ',CONCAT(T4.TERM_VALUE,''\'',T5.TERM_VALUE) AS DocRelativePath' + char(10) - + char(9) + ',T4.TERM_VALUE AS DocRelativePathOnly' + char(10) - + char(9) + ',T2.ADDED_WHEN' + char(10) - + char(9) + ',T2.ADDED_WHO' + char(10) - + char(9) + ',T2.CHANGED_WHO' + char(10) - + char(9) + ',T2.CHANGED_WHEN' + char(10) - + 'FROM' + char(10) - + char(9) + 'TBIDB_OBJECT T INNER JOIN TBIDB_FILE_OBJECT T2 ON T.IDB_OBJ_ID = T2.IDB_OBJ_ID' + char(10) + IF @pVar = 'DEFAULT' + BEGIN + SET @SQL1 += char(9) + ',T5.TERM_VALUE AS DocExtension' + char(10) + + char(9) + ',T5.TERM_VALUE AS DocName' + char(10) + + char(9) + ',CONCAT(T4.TERM_VALUE,''\'',T5.TERM_VALUE) AS DocRelativePath' + char(10) + + char(9) + ',T4.TERM_VALUE AS DocRelativePathOnly' + char(10) + END + SET @SQL1 += char(9) + ',T.ADDED_WHEN AS [Added when]' + char(10) + + char(9) + ',T.ADDED_WHO AS [Added who]' + char(10) + + char(9) + ',T.CHANGED_WHEN AS [Changed when]' + char(10) + + char(9) + ',T.CHANGED_WHO AS [Changed who]' + char(10) + + SET @SQL1 += 'FROM' + char(10) + IF @pVar = 'DEFAULT' + SET @SQL1 += char(9)+'TBIDB_OBJECT T INNER JOIN TBIDB_FILE_OBJECT T2 ON T.IDB_OBJ_ID = T2.IDB_OBJ_ID' + char(10) + char(9) + 'INNER JOIN TBIDB_OBJECT_STORE T3 ON T2.OBJ_ST_ID = T3.GUID' + char(10) + char(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR T4 ON T2.RELPATH_TERM_ID = T4.GUID' + char(10) + char(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR T5 ON T2.FILENAME_TERM_ID = T5.GUID' + char(10) - + 'WHERE KIND_TYPE_ID = 1 AND DELETED = 0 AND ACTIVE = 1' + ELSE + SET @SQL1 += char(9) + 'TBIDB_OBJECT T ' + char(10) + + SET @SQL1 += 'WHERE ' + char(10) + char(9) + 'T.KIND_TYPE_ID = 1 AND T.DELETED = 0 AND T.ACTIVE = 1' PRINT @SQL1 - IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = 'VWIDB_DOC_DATA_' + UPPER(LEFT(@pLANGCODE,2))) + IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2))) BEGIN DECLARE @DELETE NVARCHAR(100) - SET @DELETE = 'DROP VIEW [dbo].[VWIDB_DOC_DATA_' + UPPER(LEFT(@pLANGCODE,2)) + ']' + SET @DELETE = 'DROP VIEW [dbo].[' + @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2)) + ']' EXEC sp_executesql @DELETE END EXEC sp_executesql @SQL1 END GO - +GO +--EXEC PRIDB_CREATE_VIEW_DOC_DATA 'de-DE','DEFAULT' +--GO +--EXEC PRIDB_CREATE_VIEW_DOC_DATA 'de-DE','' +--GO CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_TERM_OBJECT_METADATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @TERM VARCHAR(900), @WHO VARCHAR(100),@LANG_CODE VARCHAR(5) = 'de-DE',@ID_ISFOREIGN as BIT = False AS BEGIN @@ -3821,12 +4052,12 @@ BEGIN END GO -CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE] @ATTRIBUTE VARCHAR(100), @WHO VARCHAR(100) +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE] @ATTR_ID INTEGER, @WHO VARCHAR(100) AS BEGIN DECLARE - @ATTR_ID INTEGER, @ATTR_TYP_ID TINYINT, + @ATTRIBUTE VARCHAR(100), @IDB_OBJ_ID BIGINT, @TYP_DESCR VARCHAR(100), @MULTI BIT, @@ -3834,9 +4065,9 @@ BEGIN @USER_DELETE_ID INTEGER, @ERROR as BIT SET @ERROR = 0 - SELECT @USER_DELETE_ID = COALESCE(MAX(USER_DELETE_ID),0) + 1 FROM TBIDB_OBJECT_METADATA_DELETE WHERE UPPER(DELETED_WHO) = UPPER(@WHO) + SELECT @USER_DELETE_ID = GUID FROM DD_ECM.dbo.TBDD_USER WHERE USERNAME = @WHO - SELECT @ATTR_ID = T.GUID,@ATTR_TYP_ID = T.TYP_ID FROM TBIDB_ATTRIBUTE T WHERE UPPER(T.TITLE) = UPPER(@ATTRIBUTE) + SELECT @ATTR_TYP_ID = T.TYP_ID, @ATTRIBUTE = TITLE FROM TBIDB_ATTRIBUTE T WHERE GUID = @ATTR_ID; IF @ATTR_TYP_ID IN (1,8) --VARCHAR BEGIN TRY @@ -4141,92 +4372,83 @@ BEGIN SELECT * FROM @TBTYPE_RESULT END GO ---CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_RESULT_ATTRIBUTE] @pSEARCHID INTEGER,@pATTRIBUTE_ID INTEGER,@pWHO_TERM_ID BIGINT,@pSequence INTEGER = 0 ---AS ---BEGIN --- IF @pSequence = 0 --- SELECT @pSEQUENCE = COALESCE(MAX([SEQUENCE]),0) + 1 FROM TBIDB_SEARCH_RESULT_ATTRIBUTES --- WHERE SEARCH_PROFIL_ID = @pSEARCHID --- IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_RESULT_ATTRIBUTES WHERE ATTRIBUTE_ID = @pATTRIBUTE_ID AND SEARCH_PROFIL_ID = @pSEARCHID) --- BEGIN --- INSERT INTO TBIDB_SEARCH_RESULT_ATTRIBUTES (SEARCH_PROFIL_ID,ATTRIBUTE_ID,SEQUENCE,ADDED_WHO) VALUES (@pSEARCHID,@pATTRIBUTE_ID,@pSequence, @pWHO_TERM_ID) --- EXEC [dbo].[PRIDB_NEW_SEARCH_ATTRIBUTE] @pSEARCHID,@pATTRIBUTE_ID,@pWHO_TERM_ID,0 --- END +CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_RESULT_ATTRIBUTE] @pSEARCHID INTEGER,@pATTRIBUTE_ID INTEGER,@pWHO_TERM_ID BIGINT,@pSequence INTEGER = 0 +AS +BEGIN + IF @pSequence = 0 + SELECT @pSEQUENCE = COALESCE(MAX([SEQUENCE]),0) + 1 FROM TBIDB_SEARCH_RESULT_ATTRIBUTES + WHERE SEARCH_PROFIL_ID = @pSEARCHID + IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_RESULT_ATTRIBUTES WHERE ATTRIBUTE_ID = @pATTRIBUTE_ID AND SEARCH_PROFIL_ID = @pSEARCHID) + BEGIN + INSERT INTO TBIDB_SEARCH_RESULT_ATTRIBUTES (SEARCH_PROFIL_ID,ATTRIBUTE_ID,SEQUENCE,ADDED_WHO) VALUES (@pSEARCHID,@pATTRIBUTE_ID,@pSequence, @pWHO_TERM_ID) + EXEC [dbo].[PRIDB_NEW_SEARCH_ATTRIBUTE] @pSEARCHID,@pATTRIBUTE_ID,@pWHO_TERM_ID,0 + END --- ELSE --- UPDATE TBIDB_SEARCH_RESULT_ATTRIBUTES SET SEQUENCE = @pSequence --- WHERE ATTRIBUTE_ID = @pATTRIBUTE_ID AND SEARCH_PROFIL_ID = @pSEARCHID --- --SELECT --- -- T.GUID, --- -- T.ATTRIBUTE_ID, --- -- T1.TITLE --- -- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.ADDED_WHO) AS ADDED_WHO --- -- ,T.ADDED_WHEN --- --FROM TBIDB_SEARCH_RESULT_ATTRIBUTES T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTRIBUTE_ID = T1.GUID --- --WHERE SEARCH_PROFIL_ID = @pSEARCHID ---END ---GO + ELSE + UPDATE TBIDB_SEARCH_RESULT_ATTRIBUTES SET SEQUENCE = @pSequence + WHERE ATTRIBUTE_ID = @pATTRIBUTE_ID AND SEARCH_PROFIL_ID = @pSEARCHID + --SELECT + -- T.GUID, + -- T.ATTRIBUTE_ID, + -- T1.TITLE + -- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.ADDED_WHO) AS ADDED_WHO + -- ,T.ADDED_WHEN + --FROM TBIDB_SEARCH_RESULT_ATTRIBUTES T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTRIBUTE_ID = T1.GUID + --WHERE SEARCH_PROFIL_ID = @pSEARCHID +END +GO ---CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_PROFILE] @BE_ID INT, @pTITLE VARCHAR(512),@pWHO_TERMID BIGINT,@pCOMMENT VARCHAR(900) = NULL, @pLANG_CODE VARCHAR(5) = 'de-DE' ---AS ---BEGIN --- DECLARE --- @LANG_ID INTEGER, @SQL_RESULT VARCHAR(912), --- @SEARCH_ID INTEGER, --- @WHO_TERM VARCHAR(100) +CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_PROFILE] @BE_ID INT, @pTITLE VARCHAR(512),@pWHO VARCHAR(100),@pCOMMENT VARCHAR(900) = NULL, @pLANG_CODE VARCHAR(5) = 'de-DE' +AS +BEGIN + DECLARE + @LANG_ID INTEGER, @SQL_RESULT VARCHAR(912), + @SEARCH_ID INTEGER, + @WHO_TERM_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT; --- SELECT @WHO_TERM = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @pWHO_TERMID + SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE + DECLARE @MY_TITLE_TERM_ID BIGINT,@MY_LANG_TERM_ID BIGINT,@MY_RESULT_SQL_TERM_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@pTITLE,@pWHO,@TERM_ID = @MY_TITLE_TERM_ID OUTPUT; --- SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE --- DECLARE @MY_TITLE_TERM_ID BIGINT,@MY_LANG_TERM_ID BIGINT,@oLANGUAGE_TERM_METADATA_GUID BIGINT,@MY_RESULT_SQL_TERM_ID BIGINT --- EXEC PRIDB_NEW_TERM 'VARCHAR',@pTITLE,@WHO_TERM,@TERM_ID = @MY_TITLE_TERM_ID OUTPUT; --- EXEC PRIDB_NEW_TERM_LANGUAGE @LANG_ID,@MY_TITLE_TERM_ID,@WHO_TERM,@TERM_LANGUAGE_GUID = @MY_LANG_TERM_ID OUTPUT --- EXEC PRIDB_NEW_LANGUAGE_TERM_METADATA_GUID @MY_LANG_TERM_ID,@pWHO_TERMID,@oLANG_TERM_GUID = @oLANGUAGE_TERM_METADATA_GUID OUTPUT - --- IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_PROFILE WHERE TITLE_ID = @oLANGUAGE_TERM_METADATA_GUID) --- INSERT INTO TBIDB_SEARCH_PROFILE (TITLE_ID,ADDED_WHO,COMMENT) VALUES (@oLANGUAGE_TERM_METADATA_GUID,@pWHO_TERMID,@pCOMMENT) --- ELSE --- UPDATE TBIDB_SEARCH_PROFILE SET --- COMMENT = @pCOMMENT,CHANGED_WHO = @pWHO_TERMID WHERE TITLE_ID = @oLANGUAGE_TERM_METADATA_GUID AND COMMENT <> @pCOMMENT + IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_PROFILE WHERE COMMENT = @pCOMMENT) + INSERT INTO TBIDB_SEARCH_PROFILE (ADDED_WHO,COMMENT) VALUES (@WHO_TERM_ID,@pCOMMENT) --- SELECT @SEARCH_ID = MAX(GUID) FROM TBIDB_SEARCH_PROFILE T --- WHERE T.TITLE_ID = @oLANGUAGE_TERM_METADATA_GUID + SELECT @SEARCH_ID = MAX(GUID) FROM TBIDB_SEARCH_PROFILE T + WHERE COMMENT = @pCOMMENT --- SET @SQL_RESULT = 'SELECT T.IDB_OBJ_ID as DocID, [dbo].[FNIDB_GET_FILE_PATH] (T.IDB_OBJ_ID) as FULL_FILENAME, T.DocName as Filename, * FROM VWIDB_DOC_DATA WHERE ' --- DECLARE @ATTR_ID INT,@SEQUENCE TINYINT --- SET @SEQUENCE = 0 - --- DECLARE cursorDefaultAttributes CURSOR FOR --- SELECT --- T1.GUID --- FROM TBIDB_ATTRIBUTE T1 INNER JOIN TBIDB_BE_ATTRIBUTE T2 ON T1.GUID = T2.ATTR_ID --- WHERE T2.BE_ID = @BE_ID AND DEFAULT_SEARCH_ATTRIBUTE = 1 --- ORDER BY T1.VIEW_SEQUENCE --- OPEN cursorDefaultAttributes --- FETCH NEXT FROM cursorDefaultAttributes INTO @ATTR_ID --- WHILE @@FETCH_STATUS = 0 --- BEGIN --- IF NOT EXISTS (SELECT GUID FROM TBIDB_SEARCH_RESULT_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @SEARCH_ID AND ATTRIBUTE_ID = @ATTR_ID) --- EXEC PRIDB_NEW_SEARCH_RESULT_ATTRIBUTE @SEARCH_ID,@ATTR_ID,@pWHO_TERMID,@SEQUENCE --- SET @SEQUENCE += 1 --- FETCH NEXT FROM cursorDefaultAttributes INTO @ATTR_ID --- END --- CLOSE cursorDefaultAttributes --- DEALLOCATE cursorDefaultAttributes + DECLARE @VIEW_LANG VARCHAR(50) --- SELECT --- T.GUID,T.TITLE_ID --- ,dbo.[FNIDB_GET_TERM_FOR_LANGUAGE_TERM_METADATA_GUID ] (T.TITLE_ID,@pLANG_CODE) AS TITLE --- --,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.RESULT_SQL) AS RESULT_SQL --- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.ADDED_WHO) AS ADDED_WHO --- ,T.ADDED_WHEN --- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.CHANGED_WHO) AS CHANGED_WHO --- ,T.CHANGED_WHEN --- FROM TBIDB_SEARCH_PROFILE T --- WHERE GUID = @SEARCH_ID ---END ---GO + IF @pLANG_CODE = 'de-DE' + SET @VIEW_LANG = 'VWIDB_DOC_DATA_DE' + ELSE + SET @VIEW_LANG = 'VWIDB_DOC_DATA_EN' + + SET @SQL_RESULT = 'SELECT T.IDB_OBJ_ID as DocID, [dbo].[FNIDB_GET_FILE_PATH] (T.IDB_OBJ_ID) as FULL_FILENAME, T.DocName as Filename, * FROM ' + @VIEW_LANG + ' WHERE ' + DECLARE @ATTR_ID INT,@SEQUENCE TINYINT + SET @SEQUENCE = 0 + + DECLARE cursorDefaultAttributes CURSOR FOR + SELECT + T1.GUID + FROM TBIDB_ATTRIBUTE T1 INNER JOIN TBIDB_BE_ATTRIBUTE T2 ON T1.GUID = T2.ATTR_ID + WHERE T2.BE_ID = @BE_ID AND DEFAULT_SEARCH_ATTRIBUTE = 1 + ORDER BY T1.VIEW_SEQUENCE + OPEN cursorDefaultAttributes + FETCH NEXT FROM cursorDefaultAttributes INTO @ATTR_ID + WHILE @@FETCH_STATUS = 0 + BEGIN + IF NOT EXISTS (SELECT GUID FROM TBIDB_SEARCH_RESULT_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @SEARCH_ID AND ATTRIBUTE_ID = @ATTR_ID) + EXEC PRIDB_NEW_SEARCH_RESULT_ATTRIBUTE @SEARCH_ID,@ATTR_ID,@pWHO_TERMID,@SEQUENCE + SET @SEQUENCE += 1 + FETCH NEXT FROM cursorDefaultAttributes INTO @ATTR_ID + END + CLOSE cursorDefaultAttributes + DEALLOCATE cursorDefaultAttributes +END +GO +GO --CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_SQL_RESULT] @SEARCH_ID INT,@pWHO_TERMID BIGINT --AS --BEGIN @@ -4306,113 +4528,113 @@ GO --END --GO ---CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_ATTRIBUTE] @pSEARCH_PROFIL_ID INTEGER,@pATTRIBUTE_ID INTEGER,@MULTISELECT BIT, @WHO_TERM_ID INTEGER, @pSEQUENCE INTEGER,@pHEIGHT SMALLINT = 0,@pWIDTH SMALLINT = 0 ---AS ---BEGIN --- DECLARE @pWHO_USERNAME VARCHAR(100),@USER_LANGUAGE VARCHAR(5),@USER_LANGUAGE_ID INT, @ATTRTYPE as VARCHAR(20)--,@USER_ID INTEGER --- SELECT @pWHO_USERNAME = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @WHO_TERM_ID --- SELECT @USER_LANGUAGE = LANGUAGE,@USER_LANGUAGE_ID = T1.GUID FROM @MY_DD_ECM_DB.dbo.TBDD_USER T INNER JOIN IDB.dbo.TBIDB_LANGUAGE T1 ON T.LANGUAGE = T1.LANG_CODE WHERE UPPER(USERNAME) = UPPER(@pWHO_USERNAME) +CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_ATTRIBUTE] @pSEARCH_PROFIL_ID INTEGER,@pATTRIBUTE_ID INTEGER,@MULTISELECT BIT, @WHO_TERM_ID INTEGER, @pSEQUENCE INTEGER,@pHEIGHT SMALLINT = 0,@pWIDTH SMALLINT = 0 +AS +BEGIN + DECLARE @pWHO_USERNAME VARCHAR(100),@USER_LANGUAGE VARCHAR(5),@USER_LANGUAGE_ID INT, @ATTRTYPE as VARCHAR(20)--,@USER_ID INTEGER + SELECT @pWHO_USERNAME = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @WHO_TERM_ID + SELECT @USER_LANGUAGE = LANGUAGE,@USER_LANGUAGE_ID = T1.GUID FROM DD_ECM.dbo.TBDD_USER T INNER JOIN IDB.dbo.TBIDB_LANGUAGE T1 ON T.LANGUAGE = T1.LANG_CODE WHERE UPPER(USERNAME) = UPPER(@pWHO_USERNAME) --- SELECT @ATTRTYPE = T1.NAME_TYPE FROM TBIDB_ATTRIBUTE T INNER JOIN TBIDB_ATTRIBUTE_TYPE T1 ON T.TYP_ID = T1.GUID WHERE T.GUID = @pATTRIBUTE_ID + SELECT @ATTRTYPE = T1.NAME_TYPE FROM TBIDB_ATTRIBUTE T INNER JOIN TBIDB_ATTRIBUTE_TYPE T1 ON T.TYP_ID = T1.GUID WHERE T.GUID = @pATTRIBUTE_ID --- IF @ATTRTYPE IN ('VARCHAR','BIG INTEGER') --- BEGIN --- IF @pHEIGHT = 0 --- SET @pHEIGHT = 200 --- IF @pWIDTH = 0 --- SET @pWIDTH = 200 --- END --- ELSE IF @ATTRTYPE ='DATE' --- BEGIN --- IF @pHEIGHT = 0 --- SET @pHEIGHT = 20 --- IF @pWIDTH = 0 --- SET @pWIDTH = 100 --- END --- ELSE IF @ATTRTYPE ='BIT' --- BEGIN --- IF @pHEIGHT = 0 --- SET @pHEIGHT = 20 --- IF @pWIDTH = 0 --- SET @pWIDTH = 200 --- END + IF @ATTRTYPE IN ('VARCHAR','BIG INTEGER') + BEGIN + IF @pHEIGHT = 0 + SET @pHEIGHT = 200 + IF @pWIDTH = 0 + SET @pWIDTH = 200 + END + ELSE IF @ATTRTYPE ='DATE' + BEGIN + IF @pHEIGHT = 0 + SET @pHEIGHT = 20 + IF @pWIDTH = 0 + SET @pWIDTH = 100 + END + ELSE IF @ATTRTYPE ='BIT' + BEGIN + IF @pHEIGHT = 0 + SET @pHEIGHT = 20 + IF @pWIDTH = 0 + SET @pWIDTH = 200 + END --- DECLARE @SOURCE_TERM_ID BIGINT,@SOURCE_DEFAULT_SQL VARCHAR(900) --- SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE --- FROM --- TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_TERM_LANGUAGE TLANG ON TERM.GUID = TLANG.TEXT_TERM_ID --- INNER JOIN TBIDB_LANGUAGE_TERM_METADATA T1 ON TLANG.GUID = T1.LANG_TERM_ID --- INNER JOIN TBIDB_OBJECT_METADATA MD ON T1.GUID = MD.TEXT_TERM_LANG_ID --- INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID --- WHERE --- MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + ' AND TLANG.LANGUAGE_ID = ' + CONVERT(VARCHAR(3),@USER_LANGUAGE_ID) + ' --- AND OBJ.DELETED = 0 AND ACTIVE = 1' - --- --IF @pDEPENDING_ATTRIBUTE1 <> 0 --- -- SET @SOURCE_DEFAULT_SQL = REPLACE(@SOURCE_DEFAULT_SQL,'@pUSER_ID) ','@pUSER_ID) where IDB_OBJECT_ID = @DEPENDING_IDB_OBJECT ') --- --ELSE --- -- SET @SOURCE_DEFAULT_SQL = REPLACE(@SOURCE_DEFAULT_SQL,'@JOIN ','') --- IF @ATTRTYPE = 'DATE' --- SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE --- FROM --- TBIDB_TERM_VALUE_DATE TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.DATE_TERM_ID --- INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID --- WHERE --- MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + ' --- AND OBJ.DELETED = 0 AND ACTIVE = 1' --- ELSE IF @ATTRTYPE = 'BIG INTEGER' --- SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE --- FROM --- TBIDB_TERM_VALUE_INTEGER TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID --- INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID --- WHERE --- MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + ' --- AND OBJ.DELETED = 0 AND ACTIVE = 1' --- ELSE IF @ATTRTYPE = 'BIT' --- SET @SOURCE_DEFAULT_SQL = 'select DISTINCT CONVERT(BIT,TERM.TERM_VALUE) AS @RESULT_TITLE --- FROM --- TBIDB_TERM_VALUE_INTEGER TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID --- INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID --- WHERE --- MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + ' --- AND OBJ.DELETED = 0 AND ACTIVE = 1' --- EXEC PRIDB_NEW_TERM 'VARCHAR',@SOURCE_DEFAULT_SQL,@pWHO_USERNAME,@TERM_ID = @SOURCE_TERM_ID OUTPUT; --- IF @pSEQUENCE = 0 --- SELECT @pSEQUENCE = COALESCE(MAX([SEQUENCE]),0) + 1 FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID --- IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID AND ATTRIBUTE_ID = @pATTRIBUTE_ID) --- INSERT INTO TBIDB_SEARCH_PROFILE_ATTRIBUTES (SEARCH_PROFIL_ID,ATTRIBUTE_ID,SOURCE_SQL, [SEQUENCE], ADDED_WHO,HEIGHT,WIDTH,MULTISELECT) --- VALUES (@pSEARCH_PROFIL_ID,@pATTRIBUTE_ID,@SOURCE_TERM_ID,@pSEQUENCE, @WHO_TERM_ID,@pHEIGHT,@pWIDTH,@MULTISELECT) --- ELSE --- BEGIN + DECLARE @SOURCE_TERM_ID BIGINT,@SOURCE_DEFAULT_SQL VARCHAR(900) + SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE + FROM + TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_TERM_LANGUAGE TLANG ON TERM.GUID = TLANG.TEXT_TERM_ID + INNER JOIN TBIDB_LANGUAGE_TERM_METADATA T1 ON TLANG.GUID = T1.LANG_TERM_ID + INNER JOIN TBIDB_OBJECT_METADATA MD ON T1.GUID = MD.TEXT_TERM_LANG_ID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + WHERE + MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + ' AND TLANG.LANGUAGE_ID = ' + CONVERT(VARCHAR(3),@USER_LANGUAGE_ID) + ' + AND OBJ.DELETED = 0 AND ACTIVE = 1' + + --IF @pDEPENDING_ATTRIBUTE1 <> 0 + -- SET @SOURCE_DEFAULT_SQL = REPLACE(@SOURCE_DEFAULT_SQL,'@pUSER_ID) ','@pUSER_ID) where IDB_OBJECT_ID = @DEPENDING_IDB_OBJECT ') + --ELSE + -- SET @SOURCE_DEFAULT_SQL = REPLACE(@SOURCE_DEFAULT_SQL,'@JOIN ','') + IF @ATTRTYPE = 'DATE' + SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE + FROM + TBIDB_TERM_VALUE_DATE TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.DATE_TERM_ID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + WHERE + MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + ' + AND OBJ.DELETED = 0 AND ACTIVE = 1' + ELSE IF @ATTRTYPE = 'BIG INTEGER' + SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE + FROM + TBIDB_TERM_VALUE_INTEGER TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + WHERE + MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + ' + AND OBJ.DELETED = 0 AND ACTIVE = 1' + ELSE IF @ATTRTYPE = 'BIT' + SET @SOURCE_DEFAULT_SQL = 'select DISTINCT CONVERT(BIT,TERM.TERM_VALUE) AS @RESULT_TITLE + FROM + TBIDB_TERM_VALUE_INTEGER TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + WHERE + MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + ' + AND OBJ.DELETED = 0 AND ACTIVE = 1' + EXEC PRIDB_NEW_TERM 'VARCHAR',@SOURCE_DEFAULT_SQL,@pWHO_USERNAME,@TERM_ID = @SOURCE_TERM_ID OUTPUT; + IF @pSEQUENCE = 0 + SELECT @pSEQUENCE = COALESCE(MAX([SEQUENCE]),0) + 1 FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID + IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID AND ATTRIBUTE_ID = @pATTRIBUTE_ID) + INSERT INTO TBIDB_SEARCH_PROFILE_ATTRIBUTES (SEARCH_PROFIL_ID,ATTRIBUTE_ID,SOURCE_SQL, [SEQUENCE], ADDED_WHO,HEIGHT,WIDTH,MULTISELECT) + VALUES (@pSEARCH_PROFIL_ID,@pATTRIBUTE_ID,@SOURCE_TERM_ID,@pSEQUENCE, @WHO_TERM_ID,@pHEIGHT,@pWIDTH,@MULTISELECT) + ELSE + BEGIN --- UPDATE TBIDB_SEARCH_PROFILE_ATTRIBUTES SET --- SOURCE_SQL = @SOURCE_TERM_ID --- ,[SEQUENCE] = @pSEQUENCE --- ,HEIGHT = @pHEIGHT --- ,WIDTH = @pWIDTH --- ,MULTISELECT = @MULTISELECT --- WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID AND ATTRIBUTE_ID = @pATTRIBUTE_ID --- END --- SELECT --- T.SEARCH_PROFIL_ID, --- T.GUID, --- T.ATTRIBUTE_ID, --- T1.TITLE AS ATTRIBUTE_TITLE, --- T.MULTISELECT, --- T.HEIGHT, --- T.WIDTH, --- T2.NAME_TYPE AS ATTRIBUTE_TYPE --- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.SOURCE_SQL) AS SOURCE_SQL --- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.ADDED_WHO) AS ADDED_WHO --- ,T.ADDED_WHEN --- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.CHANGED_WHO) AS CHANGED_WHO --- ,T.CHANGED_WHEN --- FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTRIBUTE_ID = T1.GUID --- INNER JOIN TBIDB_ATTRIBUTE_TYPE T2 ON T1.TYP_ID = T2.GUID --- WHERE T.SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID --AND ATTRIBUTE_ID = @pATTRIBUTE_ID --- ORDER BY [SEQUENCE] ---END ---GO + UPDATE TBIDB_SEARCH_PROFILE_ATTRIBUTES SET + SOURCE_SQL = @SOURCE_TERM_ID + ,[SEQUENCE] = @pSEQUENCE + ,HEIGHT = @pHEIGHT + ,WIDTH = @pWIDTH + ,MULTISELECT = @MULTISELECT + WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID AND ATTRIBUTE_ID = @pATTRIBUTE_ID + END + SELECT + T.SEARCH_PROFIL_ID, + T.GUID, + T.ATTRIBUTE_ID, + T1.TITLE AS ATTRIBUTE_TITLE, + T.MULTISELECT, + T.HEIGHT, + T.WIDTH, + T2.NAME_TYPE AS ATTRIBUTE_TYPE + ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.SOURCE_SQL) AS SOURCE_SQL + ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.ADDED_WHO) AS ADDED_WHO + ,T.ADDED_WHEN + ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.CHANGED_WHO) AS CHANGED_WHO + ,T.CHANGED_WHEN + FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTRIBUTE_ID = T1.GUID + INNER JOIN TBIDB_ATTRIBUTE_TYPE T2 ON T1.TYP_ID = T2.GUID + WHERE T.SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID --AND ATTRIBUTE_ID = @pATTRIBUTE_ID + ORDER BY [SEQUENCE] +END +GO -- ============================================= -- Author: DD MS -- Create date 05.11.2020 @@ -5060,6 +5282,10 @@ BEGIN END GO + + + + INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('Doctype',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginFileName',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginCreationDatetime',6,1); @@ -5072,12 +5298,30 @@ INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailSubject', INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailFrom',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailDate',5,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('PM-LOGGING',8,0,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('ObjectEvents',1,1,1); +--INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('ObjectEvents',1,1,1); INSERT INTO TBIDB_BE_ATTRIBUTE (BE_ID,ATTR_ID,DEFAULT_SEARCH_ATTRIBUTE) SELECT 1,GUID, 1 FROM TBIDB_ATTRIBUTE WHERE TITLE NOT IN ('PM-LOGGING','ObjectEvents') ; INSERT INTO TBIDB_BE_ATTRIBUTE (BE_ID,ATTR_ID,DEFAULT_SEARCH_ATTRIBUTE) SELECT 1,GUID, 0 FROM TBIDB_ATTRIBUTE where TITLE IN ('PM-LOGGING','ObjectEvents') ; - GO +CREATE OR ALTER PROCEDURE PRIDB_NEW_CATALOG_USER @USRID INTEGER +AS +BEGIN + IF NOT EXISTS(SELECT GUID FROM TBIDB_CATALOG_USER WHERE USR_ID = @USRID AND CAT_TITLE = 'QUICKSEARCH1_TITLE') + INSERT INTO TBIDB_CATALOG_USER (USR_ID,CAT_TITLE,CAT_STRING,ADDED_WHO) VALUES ( + @USRID,'QUICKSEARCH1_TITLE','Schnellsuche1','System'); + IF NOT EXISTS(SELECT GUID FROM TBIDB_CATALOG_USER WHERE USR_ID = @USRID AND CAT_TITLE = 'QUICKSEARCH1_POS') + INSERT INTO TBIDB_CATALOG_USER (USR_ID,CAT_TITLE,CAT_STRING,ADDED_WHO) VALUES ( + @USRID,'QUICKSEARCH1_POS','Top','System'); + IF NOT EXISTS(SELECT GUID FROM TBIDB_CATALOG_USER WHERE USR_ID = @USRID AND CAT_TITLE = 'APPLICATION_THEME') + INSERT INTO TBIDB_CATALOG_USER (USR_ID,CAT_TITLE,CAT_STRING,ADDED_WHO) VALUES ( + @USRID,'APPLICATION_THEME','DEFAULT','System'); + IF NOT EXISTS(SELECT GUID FROM TBIDB_CATALOG_USER WHERE USR_ID = @USRID AND CAT_TITLE = 'GLOBIX_DROPAREA') + INSERT INTO TBIDB_CATALOG_USER (USR_ID,CAT_TITLE,CAT_STRING,ADDED_WHO) VALUES ( + @USRID,'GLOBIX_DROPAREA','PROGRESSIVE','System'); +END +GO + + CREATE VIEW [dbo].[VWGI_ADMIN_OVERVIEW] AS SELECT T3.GUID as ID, @@ -5123,5 +5367,17 @@ WHERE T4.IDB_OBJECT_STORE_ID = T5.GUID AND T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) GO +DECLARE @USR_GUID INTEGER +DECLARE c_CATALOG_USR CURSOR FOR + select GUID FROM DD_ECM.dbo.TBDD_USER +OPEN c_CATALOG_USR + FETCH NEXT FROM c_CATALOG_USR INTO @USR_GUID + WHILE @@FETCH_STATUS = 0 + BEGIN + EXEC PRIDB_NEW_CATALOG_USER @USR_GUID; + FETCH NEXT FROM c_CATALOG_USR INTO @USR_GUID + END +CLOSE c_CATALOG_USR +DEALLOCATE c_CATALOG_USR diff --git a/00_IDB/Development/TextSearch.sql b/00_IDB/Development/TextSearch.sql new file mode 100644 index 0000000..d6cb131 --- /dev/null +++ b/00_IDB/Development/TextSearch.sql @@ -0,0 +1,117 @@ +CREATE OR ALTER PROCEDURE PRIDB_SEARCH_TEXT_GET_RESULTS (@pUSR_ID as INTEGER,@pSEARCH_TERM as VARCHAR(900),@pDATE_RESTRICTION VARCHAR(500), @pLANG_CODE as VARCHAR(5) = 'de-DE') +AS +BEGIN + DECLARE @SRCH_VAR VARCHAR(900), @SQL NVARCHAR(MAX),@DateStr VARCHAR(100) + IF @pSEARCH_TERM like '%*%' + SET @SRCH_VAR = ' "' + @pSEARCH_TERM + '" ' + ELSE + SET @SRCH_VAR = @pSEARCH_TERM + PRINT '@SRCH_VAR [' + @SRCH_VAR + ']' + DELETE FROM TBIDB_SEARCH_RESULT_USER WHERE USR_ID = @pUSR_ID; + + IF LEN(@pDATE_RESTRICTION) > 0 + BEGIN + PRINT '@pDATE_RESTRICTION....' + DECLARE @IDX TINYINT, @ATTR_ID VARCHAR(100) + SET @IDX = CHARINDEX('~',@pDATE_RESTRICTION) + PRINT '@IDX: ' + CONVERT(VARCHAR(10),@IDX) + SET @ATTR_ID = LEFT(@pDATE_RESTRICTION,@IDX-1) + PRINT CONVERT(VARCHAR(10),@ATTR_ID) + SET @DateStr = SUBSTRING(@pDATE_RESTRICTION,@IDX + 1,LEN(@pDATE_RESTRICTION)-@IDX) + PRINT @DateStr + END + + SET @SQL = 'INSERT INTO TBIDB_SEARCH_RESULT_USER(MD_GUID,USR_ID) + select MD.GUID,' + CONVERT(VARCHAR(10),@pUSR_ID) + char(10) + + 'FROM TBIDB_TERM_VALUE_VARCHAR TERM + INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TERM.GUID = TLANG.TERM_ID + INNER JOIN TBIDB_LANGUAGE LANG ON TLANG.LANG_ID = LANG.GUID + INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.OBJECT_ID = MD.GUID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + WHERE + OBJ.ACTIVE = 1' + char(10) + IF @DateStr = 'DATEPART' + BEGIN + DECLARE @DATE1 DATE,@DATE2 DATE + SELECT @DATE1 = DATE_FROM ,@DATE2 = DATE_TILL FROM TBIDB_SEARCH_DATE_VALUE_USER WHERE USR_ID = @pUSR_ID; + SET @SQL += 'AND CONVERT(DATE,OBJ.ADDED_WHEN) >= CONVERT(DATE,''' + CONVERT(VARCHAR(10),@DATE1) + ''') AND CONVERT(DATE,OBJ.ADDED_WHEN) <= CONVERT(DATE,''' + CONVERT(VARCHAR(10),@DATE2) + ''')' + char(10) + END + ELSE IF @DateStr = 'ECM_CREATED_TODAY' + SET @SQL += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) = 0' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_YESTERDAY' + SET @SQL += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) = 1' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_LAST7DAYS' + SET @SQL += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) <= 7' + char(10) + ELSE IF @DateStr = 'ECM_YEAR_CURRENT' + SET @SQL += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + ELSE IF @DateStr = 'ECM_YEAR_LAST' + SET @SQL += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())-1' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_MONTH_CURRENT' + BEGIN + SET @SQL += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + SET @SQL += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = DATEPART(MONTH,GETDATE())' + char(10) + END + ELSE IF @DateStr = 'ECM_CREATED_MONTH_LAST' + BEGIN + IF DATEPART(MONTH,GETDATE()) = 1 + BEGIN + SET @SQL += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())-1' + char(10) + SET @SQL += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = 12' + char(10) + END + ELSE + BEGIN + SET @SQL += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + SET @SQL += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = DATEPART(MONTH,GETDATE())-1' + char(10) + END + END + + + IF LEN(@SRCH_VAR) > 0 + BEGIN + IF @pSEARCH_TERM like '%*%' + SET @SQL += 'AND CONTAINS(TERM.TERM_VALUE,''' + @SRCH_VAR + ''')' + char(10) + ELSE + SET @SQL += 'AND TERM.TERM_VALUE = ''' + @SRCH_VAR + '''' + char(10) + END + + SET @SQL += 'AND LANG.LANG_CODE = ''' + @pLANG_CODE + '''' + PRINT @SQL + EXEC sp_executesql @SQL +END +GO +EXEC PRIDB_SEARCH_TEXT_GET_RESULTS 1,'strun*','' --doct* +GO + +SELECT + DOC.* +FROM + TBIDB_SEARCH_RESULT_USER RES INNER JOIN VWIDB_LANGUAGE_TERM VWLTERM ON RES.MD_GUID = VWLTERM.MD_ID + INNER JOIN VWIDB_DOCRESULT_DE DOC ON VWLTERM.IDB_OBJ_ID = DOC.DocID +WHERE + RES.USR_ID = 1 AND VWLTERM.LANG_CODE = '@LANG_CODE' + + + +--' "doct*" +EXEC PRIDB_SEARCH_TEXT_GET_RESULTS 1,'','ADDED_WHEN~ECM_CREATED_MONTH_CURRENT' + +select * from TBIDB_OBJECT order by IDB_OBJ_ID desc + +CREATE TABLE TBIDB_SEARCH_DATE_VALUE_USER +( + USR_ID INTEGER + ,DATE_FROM DATE NOT NULL + ,DATE_TILL DATE + + CONSTRAINT PK_TBIDB_SEARCH_DATE_VALUE_USER PRIMARY KEY (USR_ID) +) +GO + +CREATE PROCEDURE PRIDB_SEARCH_ADD_USR_DATE @USERID INT,@DATE1 DATE, @DATE2 DATE +AS +BEGIN + DELETE FROM TBIDB_SEARCH_DATE_VALUE_USER WHERE USR_ID = @USERID; + INSERT INTO TBIDB_SEARCH_DATE_VALUE_USER (USR_ID,DATE_FROM,DATE_TILL) VALUES + (@USERID,@DATE1,@DATE2); + +END \ No newline at end of file diff --git a/00_IDB/Fulltext.sql b/00_IDB/Fulltext.sql new file mode 100644 index 0000000..3d49e8c --- /dev/null +++ b/00_IDB/Fulltext.sql @@ -0,0 +1,19 @@ +--Prüfung Volltext is enabled +SELECT name as [DBName], is_fulltext_enabled +FROM sys.databases +--volltextcatalog vorhanden +SELECT * FROM sys.fulltext_catalogs; +--Prüfen wieviele Tabellen enthalten +EXEC sp_help_fulltext_catalogs; + +--###### SUCHEN ##### +--SUCHEN NACH GANZEN WORTEN +select * from TBIDB_FULLTEXT_OBJECT A +WHERE CONTAINS(FULL_TEXT,'Kabel') +--SUCHEN NACH Teilen +--BEGINNEND MIT +select * from TBIDB_FULLTEXT_OBJECT A +WHERE CONTAINS(FULL_TEXT,' "do*" ') +--ENDEND MIT +select * from TBIDB_FULLTEXT_OBJECT A +WHERE CONTAINS(FULL_TEXT,' "*ut" ') diff --git a/04_APPSERV/INSERT_JOBS.sql b/04_APPSERV/INSERT_JOBS.sql index 383bc03..cd22a3d 100644 --- a/04_APPSERV/INSERT_JOBS.sql +++ b/04_APPSERV/INSERT_JOBS.sql @@ -256,6 +256,13 @@ INSERT INTO [dbo].[TBAPPSERV_CRON_DETAIL]( CRON_ID, CON_ID, TITLE ,DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES ( 3, 2, 'VWIDB_DOCTYPE_HANDLING', 'VWIDB_DOCTYPE_HANDLING', 1,'SELECT * FROM VWIDB_DOCTYPE_HANDLING'); GO +INSERT INTO [dbo].[TBAPPSERV_CRON_DETAIL]( +CRON_ID, CON_ID, TITLE ,DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES ( +3, 2, 'TBIDB_CATALOG_USER', 'TBIDB_CATALOG_USER', 1,'SELECT * FROM TBIDB_CATALOG_USER'); +GO + + + --Insert Into TBAPPSERV_CRON_DETAIL ( --CRON_ID, CON_ID, TITLE, DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES ( --2, 2, 'TBIDB_DOC_INFO', 'TBIDB_DOC_INFO', 1, diff --git a/10_Monitor/CreateDBObjects.sql b/10_Monitor/CreateDBObjects.sql new file mode 100644 index 0000000..ee09a3e --- /dev/null +++ b/10_Monitor/CreateDBObjects.sql @@ -0,0 +1,55 @@ +DROP TABLE TBMON_PROFILE_PARAM; +DROP TABLE TBMON_PROFILE; +CREATE TABLE TBMON_PROFILE +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + TITLE VARCHAR(250) NOT NULL, + CAPTION VARCHAR(250), + EXEC_SQL NVARCHAR(MAX), + RETURN_TYPE VARCHAR(100) NOT NULL, + COMMENT VARCHAR(500), + ACTIVE BIT NOT NULL DEFAULT 1, + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'System', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBMON_PROFILE PRIMARY KEY (GUID), + --CONSTRAINT FK_OS_CAT_ID FOREIGN KEY (CAT_ID) REFERENCES TBIDB_CATALOG (GUID) , + CONSTRAINT UQ1_TBMON_PROFILE UNIQUE (TITLE), +) +GO +CREATE TRIGGER TBIDB_OBJECT_STORE_AFT_UPD ON TBMON_PROFILE +FOR UPDATE +AS + UPDATE TBMON_PROFILE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBMON_PROFILE.GUID = INSERTED.GUID +GO + +CREATE TABLE TBMON_PROFILE_PARAM +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + PROFILE_ID INTEGER NOT NULL, + CAPTION VARCHAR(250) NOT NULL, + P_TYPE VARCHAR(50) NOT NULL DEFAULT 'TEXT', + ITEMS NVARCHAR(MAX), + SEQUENCE TINYINT NOT NULL DEFAULT 0, + OPTIONAL BIT NOT NULL DEFAULT 0, + COMMENT VARCHAR(500), + ACTIVE BIT NOT NULL DEFAULT 1, + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'System', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBMON_PROFILE_PARAM PRIMARY KEY (GUID), + CONSTRAINT FK_TBMON_PROFILE_PARAM_OID FOREIGN KEY (PROFILE_ID) REFERENCES TBMON_PROFILE (GUID) , + CONSTRAINT UQ1_TBMON_PROFILE_PARAM UNIQUE (CAPTION), +) +GO +CREATE TRIGGER TBMON_PROFILE_PARAM_AFT_UPD ON TBMON_PROFILE_PARAM +FOR UPDATE +AS + UPDATE TBMON_PROFILE_PARAM SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBMON_PROFILE_PARAM.GUID = INSERTED.GUID +GO \ No newline at end of file From 6d47c2a0a37aa6cbaedfae82236a0f4d706a67e3 Mon Sep 17 00:00:00 2001 From: Digital Data - Marlon Schreiber Date: Fri, 11 Mar 2022 15:39:11 +0100 Subject: [PATCH 5/9] MS --- 00_IDB/CreateDBObjects.sql | 677 ++++++++++++++++++++++------------ 00_IDB/CreateFulltext.sql | 14 + 00_IDB/DB01.sql | 16 + 01_PM/CreateDBObjects.sql | 76 +++- 01_PM/Updates/2.2.0.0.sql | 78 ++++ 02_GI/CreateDBObjects.sql | 5 +- 09_ZooFlow/Update/1.0.0.1.sql | Bin 30678 -> 32046 bytes 7 files changed, 628 insertions(+), 238 deletions(-) create mode 100644 00_IDB/CreateFulltext.sql create mode 100644 00_IDB/DB01.sql create mode 100644 01_PM/Updates/2.2.0.0.sql diff --git a/00_IDB/CreateDBObjects.sql b/00_IDB/CreateDBObjects.sql index 88a1f60..c912237 100644 --- a/00_IDB/CreateDBObjects.sql +++ b/00_IDB/CreateDBObjects.sql @@ -1,35 +1,37 @@ --REPLACE @MY_DD_ECM_DB WITH REAL_DBNAME - -USE IDB +ALTER TABLE DD_ECM.dbo.TBDD_DOKUMENTART +ADD IDB_DOCTYPE_ID INT NOT NULL DEFAULT 0; GO -CREATE TABLE TBIDB_LAYOUT_CONFIG +CREATE TABLE TBIDB_DOCTYPE ( - GUID INTEGER NOT NULL IDENTITY (1, 1), + GUID INT NOT NULL IDENTITY (1, 1), TITLE VARCHAR(100) NOT NULL, - COMMENT VARCHAR(500), - XML_CONTENT NVARCHAR(MAX) NOT NULL, - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', - ADDED_WHEN DATETIME DEFAULT (GETDATE()), - CHANGED_WHO VARCHAR(30), - CHANGED_WHEN DATETIME, - CONSTRAINT PK_TBIDB_LAYOUT_CONFIG PRIMARY KEY (GUID), - CONSTRAINT UQ_TBIDB_LAYOUT_CONFIG_TITLE UNIQUE (TITLE) -) + COMMENT VARCHAR(500), + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Systm', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_DOCTYPES PRIMARY KEY (GUID), + CONSTRAINT UN_TBIDB_DOCTYPES UNIQUE(TITLE)) GO -CREATE TRIGGER TBIDB_LAYOUT_CONFIG_AFT_UPD ON TBIDB_LAYOUT_CONFIG +CREATE TRIGGER TBIDB_DOCTYPE_AFT_UPD ON TBIDB_DOCTYPE FOR UPDATE AS - UPDATE TBIDB_LAYOUT_CONFIG SET CHANGED_WHEN = GETDATE() + UPDATE TBIDB_DOCTYPE SET CHANGED_WHEN = GETDATE() FROM INSERTED - WHERE TBIDB_LAYOUT_CONFIG.GUID = INSERTED.GUID + WHERE TBIDB_DOCTYPE.GUID = INSERTED.GUID GO +INSERT INTO TBIDB_DOCTYPE (TITLE) VALUES ('Ausgangsrechnung'); +INSERT INTO TBIDB_DOCTYPE (TITLE) VALUES ('Eingangsrechnung'); +INSERT INTO TBIDB_DOCTYPE (TITLE) VALUES ('Gutschrift'); +INSERT INTO TBIDB_DOCTYPE (TITLE) VALUES ('Quittung'); --DROP TABLE TBIDB_CATALOG CREATE TABLE TBIDB_CATALOG ( GUID INTEGER NOT NULL IDENTITY (1, 1), CAT_TITLE VARCHAR(100) NOT NULL, CAT_STRING VARCHAR(900) NOT NULL, - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, @@ -58,6 +60,54 @@ AS FROM INSERTED WHERE TBIDB_CATALOG_USER.GUID = INSERTED.GUID GO +CREATE TABLE TBIDB_ACTION_OBJECT +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + TITLE VARCHAR(100) NOT NULL, + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_ACTION_OBJECT PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_ACTION_OBJECT UNIQUE (TITLE) +) +GO +CREATE TRIGGER TBIDB_ACTION_OBJECT_AFT_UPD ON TBIDB_ACTION_OBJECT +FOR UPDATE +AS + UPDATE TBIDB_ACTION_OBJECT SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_ACTION_OBJECT.GUID = INSERTED.GUID +GO +INSERT INTO TBIDB_ACTION_OBJECT (TITLE) VALUES ('NEW_FILE'); + +CREATE TABLE TBIDB_ACTION_STEPS +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + TITLE_DESC VARCHAR(500) NOT NULL, + ACTION_ID INTEGER NOT NULL, + CRITERIA_DESC VARCHAR(100) NOT NULL, + PARAM1 VARCHAR(500) NOT NULL, + OPERATOR VARCHAR(100) NOT NULL, + PARAM2 VARCHAR(500) NOT NULL, + TASK VARCHAR(100) NOT NULL, + SQL1 NVARCHAR(MAX) NOT NULL, + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_ACTION_STEPS PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_ACTION_STEPS UNIQUE (ACTION_ID,PARAM1,OPERATOR,PARAM2), + CONSTRAINT FK_TBIDB_ACTION_STEPS_ACTID FOREIGN KEY (ACTION_ID) REFERENCES TBIDB_ACTION_OBJECT (GUID), +) +GO +CREATE TRIGGER TBIDB_ACTION_STEPS_AFT_UPD ON TBIDB_ACTION_STEPS +FOR UPDATE +AS + UPDATE TBIDB_ACTION_STEPS SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_ACTION_STEPS.GUID = INSERTED.GUID +GO CREATE TABLE TBIDB_FULLTEXT_OBJECT ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -125,7 +175,7 @@ CREATE TABLE TBIDB_OBJECT_STORE IS_ARCHIVE BIT NOT NULL DEFAULT 0, COMMENT VARCHAR(500), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, @@ -142,7 +192,7 @@ AS FROM INSERTED WHERE TBIDB_OBJECT_STORE.GUID = INSERTED.GUID GO - +--DROP TABLE TBIDB_DOCTYPE_OBJECT_STORE CREATE TABLE TBIDB_DOCTYPE_OBJECT_STORE ( GUID INT NOT NULL IDENTITY (1, 1), @@ -150,12 +200,13 @@ CREATE TABLE TBIDB_DOCTYPE_OBJECT_STORE OBJECT_ST_ID INT NOT NULL, ACTIVE BIT NOT NULL DEFAULT 1, COMMENT VARCHAR(1000), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'System', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), - CHANGED_WHO VARCHAR(30), + CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_DOCTYPE_OBJECT_STORE PRIMARY KEY (GUID), CONSTRAINT UQ_TBIDB_DOCTYPE_OBJECT_STORE UNIQUE (DOCTYPE_ID,OBJECT_ST_ID), + CONSTRAINT FK_TBIDB_DOCTYPE_OBJECT_STORE_DTID FOREIGN KEY (DOCTYPE_ID) REFERENCES TBIDB_DOCTYPE (GUID), CONSTRAINT FK_TBIDB_DOCTYPE_OBJECT_STORE_OSTID FOREIGN KEY (OBJECT_ST_ID) REFERENCES TBIDB_OBJECT_STORE (GUID) ) GO @@ -166,7 +217,30 @@ AS FROM INSERTED WHERE TBIDB_DOCTYPE_OBJECT_STORE.GUID = INSERTED.GUID GO - +CREATE TABLE TBIDB_DOCTYPE_BE +( + GUID INT NOT NULL IDENTITY (1, 1), + DOCTYPE_ID INT NOT NULL, + BE_ID INT NOT NULL, + ACTIVE BIT NOT NULL DEFAULT 1, + COMMENT VARCHAR(1000), + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'System', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_DOCTYPE_BE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_DOCTYPE_BE_STORE UNIQUE (DOCTYPE_ID,BE_ID), + CONSTRAINT FK_TBIDB_DOCTYPE_BE_DTID FOREIGN KEY (DOCTYPE_ID) REFERENCES TBIDB_DOCTYPE (GUID), + CONSTRAINT FK_TBIDB_DOCTYPE_BE_BE_ID FOREIGN KEY (BE_ID) REFERENCES TBIDB_BUSINESS_ENTITY (GUID) +) +GO +CREATE TRIGGER TBIDB_DOCTYPE_BE_AFT_UPD ON TBIDB_DOCTYPE_BE +FOR UPDATE +AS + UPDATE TBIDB_DOCTYPE_BE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_DOCTYPE_BE.GUID = INSERTED.GUID +GO CREATE TABLE TBIDB_DOCTYPE_HANDLING ( @@ -175,7 +249,7 @@ CREATE TABLE TBIDB_DOCTYPE_HANDLING CHANGED_ACTION INT NOT NULL, ACTIVE BIT NOT NULL DEFAULT 1, COMMENT VARCHAR(1000), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, @@ -196,7 +270,7 @@ CREATE TABLE TBIDB_TERM_VALUE_VARCHAR GUID BIGINT NOT NULL IDENTITY (1, 1), TERM_VALUE VARCHAR(900) NOT NULL, TERM_VALUE_REVERSE VARCHAR(900), - ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, @@ -223,7 +297,7 @@ CREATE TABLE TBIDB_TERM_VALUE_INTEGER ( GUID BIGINT NOT NULL IDENTITY (1, 1), TERM_VALUE BIGINT NOT NULL, - ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, @@ -245,7 +319,7 @@ CREATE TABLE TBIDB_TERM_VALUE_FLOAT ( GUID BIGINT NOT NULL IDENTITY (1, 1), TERM_VALUE FLOAT NOT NULL, - ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, @@ -264,7 +338,7 @@ CREATE TABLE TBIDB_TERM_VALUE_DECIMAL ( GUID BIGINT NOT NULL IDENTITY (1, 1), TERM_VALUE DECIMAL(19, 0) NOT NULL, - ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, @@ -283,7 +357,7 @@ CREATE TABLE TBIDB_TERM_VALUE_DATE ( GUID BIGINT NOT NULL IDENTITY (1, 1), TERM_VALUE DATE NOT NULL, - ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, @@ -309,7 +383,7 @@ CREATE TABLE TBIDB_TERM_VALUE_DATETIME ( GUID BIGINT NOT NULL IDENTITY (1, 1), TERM_VALUE DATETIME NOT NULL, - ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, @@ -337,7 +411,7 @@ CREATE TABLE TBIDB_ATTRIBUTE_TYPE DELETED BIT NOT NULL DEFAULT 0, DELETED_WHO VARCHAR(100), DELETED_WHEN DATETIME, - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, @@ -367,7 +441,7 @@ CREATE TABLE TBIDB_OBJECT_KIND ( GUID TINYINT NOT NULL IDENTITY (1, 1), KIND_NAME VARCHAR(100) NOT NULL, - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, @@ -393,7 +467,7 @@ CREATE TABLE TBIDB_BUSINESS_ENTITY PARENT_ENT_ID INTEGER NOT NULL DEFAULT 0, INHERITS_ATTRIBUTES BIT NOT NULL DEFAULT 1, COMMENT VARCHAR(1000), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, @@ -416,7 +490,7 @@ CREATE TABLE TBIDB_LANGUAGE LANG_CODE VARCHAR(10) NOT NULL, CREATE_DEFAULT_ENTRY BIT NOT NULL DEFAULT 0, COMMENT VARCHAR(1000), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, @@ -440,7 +514,7 @@ GO --DROP TABLE TBIDB_OBJECT CREATE TABLE TBIDB_OBJECT ( - IDB_OBJ_ID BIGINT NOT NULL IDENTITY (10000, 1), + IDB_OBJ_ID BIGINT NOT NULL IDENTITY (1000000, 1), KIND_TYPE_ID TINYINT NOT NULL, REFERENCE_KEY BIGINT, PARENT_OBJ_ID BIGINT NOT NULL DEFAULT 0, @@ -448,7 +522,7 @@ CREATE TABLE TBIDB_OBJECT ACTIVE BIT NOT NULL DEFAULT 1, DELETED BIT NOT NULL DEFAULT 0, COMMENT VARCHAR(1000), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, @@ -489,6 +563,52 @@ AS FROM INSERTED WHERE TBIDB_OBJECT.IDB_OBJ_ID = INSERTED.IDB_OBJ_ID GO + +CREATE TABLE TBIDB_STRUCTURE_TYPE +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + TITLE VARCHAR(100) NOT NULL, + COMMENT VARCHAR(1000), + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_STRUCTURE_TYPE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_STRUCTURE_TYPE UNIQUE (TITLE) +) +GO +CREATE TRIGGER TBIDB_STRUCTURE_TYPE_AFT_UPD ON TBIDB_STRUCTURE_TYPE +FOR UPDATE +AS + UPDATE TBIDB_STRUCTURE_TYPE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_STRUCTURE_TYPE.GUID = INSERTED.GUID +GO +CREATE TABLE TBIDB_OBJECT_STRUCTURE_TYPE +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + IDB_OBJ_ID BIGINT NOT NULL, + STRUCTURE_ID INTEGER NOT NULL, + PARENT_OBJ_ID BIGINT NOT NULL DEFAULT 0, + COMMENT VARCHAR(1000), + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_OBJ_STRUCTURE_TYPE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_OBJ_STRUCTURE_TYPE UNIQUE (IDB_OBJ_ID,STRUCTURE_ID), + CONSTRAINT FK_TBIDB_OBJ_STRUCTURE_TYPE_IDBOBJID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), + CONSTRAINT FK_TBIDB_OBJ_STRUCTURE_TYPE_STRIID FOREIGN KEY (STRUCTURE_ID) REFERENCES TBIDB_STRUCTURE_TYPE (GUID) +) +GO +CREATE TRIGGER TBIDB_OBJECT_STRUCTURE_TYPE_AFT_UPD ON TBIDB_OBJECT_STRUCTURE_TYPE +FOR UPDATE +AS + UPDATE TBIDB_OBJECT_STRUCTURE_TYPE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_OBJECT_STRUCTURE_TYPE.GUID = INSERTED.GUID +GO + CREATE TABLE TBIDB_DOC_INFO ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -502,9 +622,9 @@ CREATE TABLE TBIDB_DOC_INFO FULL_TEXT VARBINARY(MAX), FILE_SIZE INTEGER, COMMENT VARCHAR(1000), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), - CHANGED_WHO VARCHAR(30), + CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_DOC_INFO PRIMARY KEY (GUID), CONSTRAINT UQ_DI_IDB_OBJ_ID UNIQUE (IDB_OBJ_ID), @@ -529,9 +649,9 @@ CREATE TABLE TBIDB_OBJECT_BE IDB_OBJ_ID BIGINT NOT NULL, BE_ID INTEGER NOT NULL, COMMENT VARCHAR(1000), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), - CHANGED_WHO VARCHAR(30), + CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_OBJECT_BE PRIMARY KEY (GUID), CONSTRAINT UQ_TBIDB_OBJECT_BE UNIQUE (IDB_OBJ_ID,BE_ID), @@ -559,9 +679,9 @@ CREATE TABLE TBIDB_ATTRIBUTE VIEW_VISIBLE BIT NOT NULL DEFAULT 1, SYS_ATTRIBUTE BIT NOT NULL DEFAULT 0, COMMENT VARCHAR(1000), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), - CHANGED_WHO VARCHAR(30), + CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, DELETED BIT NOT NULL DEFAULT 0, DELETED_WHO VARCHAR(100), @@ -636,9 +756,9 @@ CREATE TABLE TBIDB_BE_ATTRIBUTE ATTR_ID INTEGER NOT NULL, DEFAULT_SEARCH_ATTRIBUTE BIT NOT NULL DEFAULT 0, COMMENT VARCHAR(1000), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), - CHANGED_WHO VARCHAR(30), + CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_BE_ATTRIBUTE PRIMARY KEY (GUID), CONSTRAINT UQ_TBIDB_BE_ATTRIBUTE UNIQUE (BE_ID,ATTR_ID), @@ -703,23 +823,48 @@ DEALLOCATE c_TBIDB_ATTRIBUTE_AFT_DEL GO - +CREATE TABLE TBIDB_LANGUAGE_TERM_TYPE +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + TITLE VARCHAR(100) NOT NULL, + COMMENT VARCHAR(500), + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'System', + ADDED_WHEN DATETIME DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_LANGUAGE_TERM_TYPE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_LANGUAGE_TERM_TYPE UNIQUE (TITLE) +) +GO +INSERT INTO TBIDB_LANGUAGE_TERM_TYPE (TITLE) VALUES ('METADATA-TERM'); +INSERT INTO TBIDB_LANGUAGE_TERM_TYPE (TITLE) VALUES ('DOCTYPE'); +INSERT INTO TBIDB_LANGUAGE_TERM_TYPE (TITLE) VALUES ('DOC_STATE'); +GO +CREATE TRIGGER TBIDB_LANGUAGE_TERM_TYPE_UPD ON TBIDB_LANGUAGE_TERM_TYPE +FOR UPDATE +AS + UPDATE TBIDB_LANGUAGE_TERM_TYPE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_LANGUAGE_TERM_TYPE.GUID = INSERTED.GUID +GO CREATE TABLE TBIDB_LANGUAGE_TERM ( GUID BIGINT NOT NULL IDENTITY (1, 1), OBJECT_ID BIGINT NOT NULL, + OBJECT_ID1 INT, TERM_ID BIGINT NOT NULL, LANG_ID TINYINT NOT NULL, - KIND_TYPE VARCHAR(100), + KIND_TYPE INTEGER, ADDED_WHO BIGINT, ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), CHANGED_WHO BIGINT, CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_LANGUAGE_TERM PRIMARY KEY (GUID), - CONSTRAINT UN_TBIDB_LANGUAGE_TERM UNIQUE(OBJECT_ID,TERM_ID,LANG_ID), + CONSTRAINT UN_TBIDB_LANGUAGE_TERM UNIQUE(OBJECT_ID,TERM_ID,LANG_ID,KIND_TYPE), CONSTRAINT FK_TBIDB_LANGUAGE_TERM_TERMID FOREIGN KEY (TERM_ID) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), CONSTRAINT FK_TBIDB_LANGUAGE_TERM_LANG_ID FOREIGN KEY (LANG_ID) REFERENCES TBIDB_LANGUAGE (GUID), + CONSTRAINT FK_TBIDB_LANGUAGE_TERM_KINDTYPE FOREIGN KEY (KIND_TYPE) REFERENCES TBIDB_LANGUAGE_TERM_TYPE (GUID), CONSTRAINT FK_TBIDB_LANGUAGE_TERM_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), CONSTRAINT FK_TBIDB_LANGUAGE_TERM_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) GO @@ -727,6 +872,11 @@ CREATE NONCLUSTERED INDEX [IDXTBIDB_LANGUAGE_TERM_LANGID_OID_TERMID] ON [dbo].[TBIDB_LANGUAGE_TERM] ([LANG_ID]) INCLUDE ([OBJECT_ID],[TERM_ID]) GO +CREATE NONCLUSTERED INDEX IDXTBIDB_LANGUAGE_TERM_KINDTYPEID_OID_TID +ON [dbo].[TBIDB_LANGUAGE_TERM] ([KIND_TYPE]) +INCLUDE ([OBJECT_ID],[TERM_ID]) +GO + CREATE OR ALTER TRIGGER [dbo].[TBIDB_LANGUAGE_TERM_AFT_UPD] ON [dbo].[TBIDB_LANGUAGE_TERM] FOR UPDATE AS @@ -780,7 +930,7 @@ CREATE TABLE TBIDB_OBJECT_METADATA FLOAT_TERM_ID BIGINT, DATE_TERM_ID BIGINT, DATETIME_TERM_ID BIGINT, - ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, @@ -816,7 +966,7 @@ CREATE TABLE TBIDB_OBJECT_METADATA_CHANGE NEW_DATE_TERM_ID BIGINT, COMMENT VARCHAR(500), ADDED_WHO VARCHAR(100), - CHANGED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', + CHANGED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', CHANGED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CONSTRAINT PK_TBIDB_OBJECT_METADATA_CHANGE PRIMARY KEY (GUID), CONSTRAINT FK_OMDC_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), @@ -869,7 +1019,7 @@ CREATE TABLE TBIDB_OBJECT_METADATA_DELETE USER_DELETE_ID INTEGER NOT NULL DEFAULT 0, ADDED_WHO VARCHAR(100), ADDED_WHEN DATETIME, - DELETED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data', + DELETED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', DELETED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CONSTRAINT PK_TBIDB_OBJECT_METADATA_DELETE PRIMARY KEY (GUID), CONSTRAINT FK_OMDD_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), @@ -998,7 +1148,7 @@ BEGIN TRY END TRY BEGIN CATCH - PRINT 'ERROR IN TRIGGER: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + PRINT 'ERROR IN TRIGGER: ' + CONVERT(VARCHAR(100),ERROR_PROCEDURE()) + ' - ERROR-MESSAGE: ' + CONVERT(VARCHAR(500),ERROR_MESSAGE()) END CATCH @@ -1011,9 +1161,9 @@ CREATE TABLE TBIDB_ATTRIBUTE_LANGUAGE LANGUAGE_ID TINYINT NOT NULL, TERM_ID BIGINT NOT NULL, COMMENT VARCHAR(500), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), - CHANGED_WHO VARCHAR(30), + CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_ATT_LANGUAGE PRIMARY KEY(GUID), CONSTRAINT UN_TBIDB_ATT_LANGUAGE UNIQUE(ATTRIBUTE_ID,LANGUAGE_ID), @@ -1081,7 +1231,7 @@ CREATE TABLE TBIDB_BASE CONFIG_NAME VARCHAR(900) NOT NULL, CONFIG_VALUE VARCHAR(MAX) NOT NULL, COMMENT VARCHAR(500), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, @@ -1122,33 +1272,9 @@ AS WHERE TBIDB_STATES.GUID = INSERTED.GUID GO -CREATE TABLE TBIDB_STATE_LANG_GROUP -( - GUID BIGINT NOT NULL IDENTITY (1, 1), - STATE_ID INTEGER NOT NULL, - LANG_TERM_ID BIGINT NOT NULL, - LANG_ID TINYINT NOT NULL, - ADDED_WHO BIGINT, - ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), - CHANGED_WHO BIGINT, - CHANGED_WHEN DATETIME, - CONSTRAINT PK_TBIDB_STATE_LANG_GROUP PRIMARY KEY (GUID), - CONSTRAINT FK_TBIDB_STATE_LANG_GROUP_STATE_ID FOREIGN KEY (STATE_ID) REFERENCES TBIDB_STATES (GUID), - CONSTRAINT FK_TBIDB_STATE_LANG_GROUP_LANG_TERM_ID FOREIGN KEY (LANG_TERM_ID) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), - CONSTRAINT FK_TBIDB_STATE_LANG_GROUP_LANG_ID FOREIGN KEY (LANG_ID) REFERENCES TBIDB_LANGUAGE (GUID), - CONSTRAINT FK_TBIDB_STATE_LANG_GROUP_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), - CONSTRAINT FK_TTBIDB_STATE_LANG_GROUP_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) -GO -CREATE TRIGGER TBIDB_STATE_LANG_GROUP_AFT_UPD ON TBIDB_STATE_LANG_GROUP -FOR UPDATE -AS - UPDATE TBIDB_STATE_LANG_GROUP SET CHANGED_WHEN = GETDATE() - FROM INSERTED - WHERE TBIDB_STATE_LANG_GROUP.GUID = INSERTED.GUID -GO -DROP TABLE TBIDB_CONVERSATION_MESSAGE -DROP TABLE TBIDB_CONVERSATION_USER -DROP TABLE TBIDB_CONVERSATION_OBJECT +--DROP TABLE TBIDB_CONVERSATION_MESSAGE +--DROP TABLE TBIDB_CONVERSATION_USER +--DROP TABLE TBIDB_CONVERSATION_OBJECT CREATE TABLE TBIDB_CONVERSATION_OBJECT ( @@ -1689,7 +1815,7 @@ GO -- GUID BIGINT NOT NULL IDENTITY (1, 1), -- ATTRIBUTE_ID INTEGER NOT NULL, -- ACTIVE BIT NOT NULL DEFAULT 1, --- ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data (DEF)', +-- ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM (DEF)', -- ADDED_WHEN DATETIME DEFAULT GETDATE(), -- CHANGED_WHO VARCHAR(100), -- CHANGED_WHEN DATETIME, @@ -1712,7 +1838,7 @@ CREATE TABLE TBIDB_FILE_OBJECT FILE_SIZE BIGINT, FILE_HASH VARCHAR(500) NOT NULL, FULLTEXT_CREATED DATETIME, - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, @@ -1794,28 +1920,25 @@ AS WHERE TBIDB_OBJ_STATES_LANGUAGE.GUID = INSERTED.GUID GO -CREATE TABLE TBIDB_OBJ_MY_STATES +CREATE TABLE TBIDB_TERM_TYPE ( - GUID BIGINT NOT NULL IDENTITY (1, 1), - IDB_OBJ_ID BIGINT NOT NULL, - STATE_ID INTEGER NOT NULL, - ADDED_WHO BIGINT, + GUID INT NOT NULL IDENTITY (1, 1), + TITLE VARCHAR(100) NOT NULL, + ADDED_WHO VARCHAR(100) DEFAULT 'System', ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), - CHANGED_WHO BIGINT, + CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, - CONSTRAINT PK_TBIDB_OBJ_MY_STATES PRIMARY KEY (GUID), - CONSTRAINT FK_TBIDB_OBJ_MY_STATES_IDBOBJID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), - CONSTRAINT FK_TBIDB_OBJ_MY_STATES_STATE_ID FOREIGN KEY (STATE_ID) REFERENCES TBIDB_OBJ_STATES (GUID), - CONSTRAINT FK_TBIDB_OBJ_MY_STATES_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), - CONSTRAINT FK_TBIDB_OBJ_MY_STATES_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) + CONSTRAINT PK_TBIDB_TERM_TYPE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_TERM_TYPE_TITLE UNIQUE (TITLE)) GO -CREATE TRIGGER TBIDB_OBJ_MY_STATES_AFT_UPD ON TBIDB_OBJ_MY_STATES +CREATE TRIGGER TBIDB_TERM_TYPE_AFT_UPD ON TBIDB_TERM_TYPE FOR UPDATE AS - UPDATE TBIDB_OBJ_MY_STATES SET CHANGED_WHEN = GETDATE() + UPDATE TBIDB_TERM_TYPE SET CHANGED_WHEN = GETDATE() FROM INSERTED - WHERE TBIDB_OBJ_MY_STATES.GUID = INSERTED.GUID + WHERE TBIDB_TERM_TYPE.GUID = INSERTED.GUID GO + /*########################### ######### FUNCTIONS ######### #############################*/ @@ -2346,7 +2469,7 @@ BEGIN END GO ------------------------------------------------------------------- -CREATE FUNCTION [dbo].[FNIDB_GET_STATE_FOR_OBJECT_ID] (@OBJ_ID BIGINT,@LANG_CODE VARCHAR(5)) +CREATE OR ALTER FUNCTION [dbo].[FNIDB_GET_STATE_FOR_OBJECT_ID] (@OBJ_ID BIGINT,@LANG_CODE VARCHAR(5)) RETURNS @Output TABLE (ID BIGINT,[STATE] VARCHAR(100),ADDED_WHO VARCHAR(100), ADDED_WHEN DATETIME) AS BEGIN @@ -2355,9 +2478,9 @@ BEGIN ,F.TERM_VALUE AS ADDED_WHO , A.ADDED_WHEN FROM TBIDB_MYOBJECT_STATES A INNER JOIN TBIDB_STATES B ON A.STATE_ID = B.GUID - INNER JOIN TBIDB_STATE_LANG_GROUP C ON B.GUID = C.STATE_ID + INNER JOIN TBIDB_LANGUAGE_TERM C ON B.GUID = C.OBJECT_ID INNER JOIN TBIDB_LANGUAGE D ON C.LANG_ID = D.GUID - INNER JOIN TBIDB_TERM_VALUE_VARCHAR E ON C.LANG_TERM_ID = E.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR E ON C.TERM_ID = E.GUID INNER JOIN TBIDB_TERM_VALUE_VARCHAR F ON A.ADDED_WHO = F.GUID WHERE D.LANG_CODE = @LANG_CODE AND A.MY_OBJECT_ID = @OBJ_ID @@ -2554,7 +2677,7 @@ GO --END --GO -- ======================================================= --- Author: Digital Data, DD MS +-- Author: SYSTEM, DD MS -- Create Date: 22.10.2020 -- Gunction returns all values for parameterized Attribute -- ======================================================= @@ -2639,7 +2762,7 @@ END GO --============================================= - --Author: Digital Data MS + --Author: SYSTEM MS --Creation date: 22.10.2020 --============================================= CREATE OR ALTER FUNCTION [dbo].[FNIDB_GET_SEARCH_PROFILES] (@pUSERID INT, @pLANGCODE VARCHAR(5)) @@ -3001,16 +3124,6 @@ FROM VWIDB_VALUE_TEXT where [Geändert wann] IS NULL ORDER BY IDB_OBJ_ID DESC,LAST_CHANGE DESC GO -CREATE VIEW VWIDB_OBJECTSTORE AS -SELECT - T.GUID As OST_ID, - T.OBJECT_TITLE AS OS_TITLE, - T.IS_ARCHIVE AS OS_IS_ARCHIVE, - T1.CAT_STRING AS IDB_PRAEFIX -FROM -TBIDB_OBJECT_STORE T - INNER JOIN TBIDB_CATALOG T1 ON T.CAT_ID = T1.GUID -GO CREATE VIEW VWIDB_CONVERSATION AS SELECT @@ -3189,89 +3302,140 @@ FROM INNER JOIN TBIDB_LANGUAGE_TERM LTERM ON MD.GUID = LTERM.OBJECT_ID INNER JOIN TBIDB_LANGUAGE LANG ON LTERM.LANG_ID = LANG.GUID INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON LTERM.TERM_ID = TERM.GUID +GO +CREATE OR ALTER VIEW VWIDB_DOCTYPE_LANGUAGE AS +SELECT + LT.GUID as ID + ,LT.OBJECT_ID as Doctype_ID + ,DT.TITLE AS SYS_TITLE + ,TERM.TERM_VALUE AS Doctype + ,LT.LANG_ID + ,LANG.LANG_CODE + ,LT.ADDED_WHEN + ,LT.CHANGED_WHEN +FROM + TBIDB_LANGUAGE_TERM LT INNER JOIN TBIDB_LANGUAGE_TERM_TYPE LT_T ON LT.KIND_TYPE = LT_T.GUID + INNER JOIN TBIDB_DOCTYPE DT ON LT.OBJECT_ID = DT.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON LT.TERM_ID = TERM.GUID + INNER JOIN TBIDB_LANGUAGE LANG ON LT.LANG_ID = LANG.GUID +WHERE LT.KIND_TYPE = 2 +GO +CREATE VIEW VWIDB_DOCTYPE_OBJECT_STORE AS +select + A.DOCTYPE_ID + ,A.OBJECT_ST_ID + ,C.TITLE AS SYS_TITLE + ,B.Objectstore + ,B.REL_PATH + ,LTERM.Doctype + ,LTERM.LANG_CODE + ,LTERM.LANG_ID +From + TBIDB_DOCTYPE_OBJECT_STORE A INNER JOIN VWIDB_OBJECT_STORE B ON A.OBJECT_ST_ID = B.GUID + INNER JOIN TBIDB_DOCTYPE C ON A.DOCTYPE_ID = C.GUID + INNER JOIN VWIDB_DOCTYPE_LANGUAGE LTERM ON C.GUID = LTERM.Doctype_ID +GO +CREATE OR ALTER VIEW VWIDB_DOCTYPE_BUSINESS_ENTITY AS +select + A.GUID ID, + A.DOCTYPE_ID + ,A.BE_ID + ,B.TITLE as BusinessEntity + ,C.TITLE AS SYS_TITLE + ,LTERM.Doctype + ,LTERM.LANG_CODE + ,LTERM.LANG_ID + ,A.ADDED_WHEN + ,A.ADDED_WHO + ,A.CHANGED_WHO + ,A.CHANGED_WHEN +From + TBIDB_DOCTYPE_BE A INNER JOIN TBIDB_BUSINESS_ENTITY B ON A.BE_ID = B.GUID + INNER JOIN TBIDB_DOCTYPE C ON A.DOCTYPE_ID = C.GUID + INNER JOIN VWIDB_DOCTYPE_LANGUAGE LTERM ON C.GUID = LTERM.Doctype_ID +GO +CREATE OR ALTER VIEW VWIDB_DOC_STATES AS +SELECT + A.GUID ID + ,A.MY_OBJECT_ID AS IDB_OBJ_ID + ,C.LANG_ID + ,LANG.LANG_CODE + ,TERM.TERM_VALUE AS STATE_LANG + ,A.ADDED_WHEN +FROM + TBIDB_MYOBJECT_STATES A INNER JOIN TBIDB_OBJ_STATES B ON A.STATE_ID = B.GUID + INNER JOIN TBIDB_LANGUAGE_TERM C ON B.GUID = C.OBJECT_ID + INNER JOIN TBIDB_LANGUAGE LANG ON C.LANG_ID = LANG.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON C.TERM_ID = TERM.GUID +WHERE + C.KIND_TYPE = 3 +GO /*########################################### ############## PROCEDURES ################### #############################################*/ -GO -CREATE PROCEDURE [dbo].[PRIDB_NEW_STATE_OBJECT] @pIDB_OBJ_ID BIGINT, @pSYSSTATE VARCHAR(100),@pWHO VARCHAR(100) -AS -BEGIN - DECLARE - @LANG_ID INTEGER, - @STATE_ID INTEGER - - SELECT @STATE_ID = GUID FROM TBIDB_OBJ_STATES WHERE TITLE = @pSYSSTATE; - - DECLARE @ADDED_WHO_TERM_ID BIGINT - EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @ADDED_WHO_TERM_ID OUTPUT; - - INSERT INTO TBIDB_OBJ_MY_STATES (IDB_OBJ_ID,STATE_ID,ADDED_WHO) VALUES (@pIDB_OBJ_ID,@STATE_ID,@ADDED_WHO_TERM_ID); -END -GO - -CREATE PROCEDURE [dbo].[PRIDB_NEW_IDB_OBJECT_STATE] @pSYSSTATE VARCHAR(512),@pWHO VARCHAR(100) -AS -BEGIN - DECLARE - @LANG_ID TINYINT, - @pLANG_CODE VARCHAR(5), - @STATE_ID INTEGER +--CREATE PROCEDURE [dbo].[PRIDB_NEW_IDB_OBJECT_STATE] @pSYSSTATE VARCHAR(512),@pWHO VARCHAR(100) +--AS +--BEGIN +-- DECLARE +-- @LANG_ID TINYINT, +-- @pLANG_CODE VARCHAR(5), +-- @STATE_ID INTEGER - DECLARE @WHO_TERM_ID BIGINT - EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT; - DECLARE @STATE_TERM_ID BIGINT,@LANG_STATE_TERM_ID BIGINT - EXEC PRIDB_NEW_TERM 'VARCHAR',@pSYSSTATE,@pWHO,@TERM_ID = @STATE_TERM_ID OUTPUT; +-- DECLARE @WHO_TERM_ID BIGINT +-- EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT; +-- DECLARE @STATE_TERM_ID BIGINT,@LANG_STATE_TERM_ID BIGINT +-- EXEC PRIDB_NEW_TERM 'VARCHAR',@pSYSSTATE,@pWHO,@TERM_ID = @STATE_TERM_ID OUTPUT; - IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJ_STATES WHERE TITLE = @pSYSSTATE) - BEGIN - INSERT INTO TBIDB_OBJ_STATES (TITLE,ADDED_WHO) VALUES (@pSYSSTATE,@WHO_TERM_ID) - END - SELECT @STATE_ID = GUID FROM TBIDB_OBJ_STATES WHERE TITLE = @pSYSSTATE; +-- IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJ_STATES WHERE TITLE = @pSYSSTATE) +-- BEGIN +-- INSERT INTO TBIDB_OBJ_STATES (TITLE,ADDED_WHO) VALUES (@pSYSSTATE,@WHO_TERM_ID) +-- END +-- SELECT @STATE_ID = GUID FROM TBIDB_OBJ_STATES WHERE TITLE = @pSYSSTATE; - DECLARE c_PRIDB_NEW_IDB_OBJECT_STATE CURSOR FOR - select GUID,LANG_CODE FROM TBIDB_LANGUAGE - OPEN c_PRIDB_NEW_IDB_OBJECT_STATE - FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE - WHILE @@FETCH_STATUS = 0 - BEGIN - IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJ_STATES_LANGUAGE WHERE STATE_ID = @STATE_ID AND LANG_ID = @LANG_ID) - INSERT INTO TBIDB_OBJ_STATES_LANGUAGE (STATE_ID,LANG_ID,TERM_ID,ADDED_WHO) VALUES (@STATE_ID,@LANG_ID,@STATE_TERM_ID,@WHO_TERM_ID) - FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE - END - CLOSE c_PRIDB_NEW_IDB_OBJECT_STATE - DEALLOCATE c_PRIDB_NEW_IDB_OBJECT_STATE -END -GO -EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File Versioned', 'Digital Data'; -EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File opened', 'Digital Data'; -EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File added', 'Digital Data'; -EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File changed', 'Digital Data'; -EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File deleted', 'Digital Data'; -EXEC PRIDB_NEW_IDB_OBJECT_STATE 'Metadata changed', 'Digital Data'; -EXEC PRIDB_NEW_IDB_OBJECT_STATE 'Attributevalue deleted', 'Digital Data'; -GO +-- DECLARE c_PRIDB_NEW_IDB_OBJECT_STATE CURSOR FOR +-- select GUID,LANG_CODE FROM TBIDB_LANGUAGE +-- OPEN c_PRIDB_NEW_IDB_OBJECT_STATE +-- FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE +-- WHILE @@FETCH_STATUS = 0 +-- BEGIN +-- IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJ_STATES_LANGUAGE WHERE STATE_ID = @STATE_ID AND LANG_ID = @LANG_ID) +-- INSERT INTO TBIDB_OBJ_STATES_LANGUAGE (STATE_ID,LANG_ID,TERM_ID,ADDED_WHO) VALUES (@STATE_ID,@LANG_ID,@STATE_TERM_ID,@WHO_TERM_ID) +-- FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE +-- END +-- CLOSE c_PRIDB_NEW_IDB_OBJECT_STATE +-- DEALLOCATE c_PRIDB_NEW_IDB_OBJECT_STATE +--END +--GO +--EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File Versioned', 'SYSTEM'; +--EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File opened', 'SYSTEM'; +--EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File added', 'SYSTEM'; +--EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File changed', 'SYSTEM'; +--EXEC PRIDB_NEW_IDB_OBJECT_STATE 'File deleted', 'SYSTEM'; +--EXEC PRIDB_NEW_IDB_OBJECT_STATE 'Metadata changed', 'SYSTEM'; +--EXEC PRIDB_NEW_IDB_OBJECT_STATE 'Attributevalue deleted', 'SYSTEM'; +--GO -CREATE PROCEDURE [dbo].[PRIDB_UPDATE_IDB_OBJECT_STATE] @pOLD_TERM VARCHAR(512), @pNEW_TERM VARCHAR(512),@pLANG_CODE VARCHAR(5),@pWHO VARCHAR(100) -AS -BEGIN - DECLARE - @LANG_ID TINYINT, - @STATE_ID INTEGER +--CREATE PROCEDURE [dbo].[PRIDB_UPDATE_IDB_OBJECT_STATE] @pOLD_TERM VARCHAR(512), @pNEW_TERM VARCHAR(512),@pLANG_CODE VARCHAR(5),@pWHO VARCHAR(100) +--AS +--BEGIN +-- DECLARE +-- @LANG_ID TINYINT, +-- @STATE_ID INTEGER - DECLARE @WHO_TERM_ID BIGINT - SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE; - EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT; - DECLARE @NEW_STATE_TERM_ID BIGINT,@OLD_STATE_TERM_ID BIGINT - EXEC PRIDB_NEW_TERM 'VARCHAR',@pNEW_TERM,@pWHO,@TERM_ID = @NEW_STATE_TERM_ID OUTPUT; - EXEC PRIDB_NEW_TERM 'VARCHAR',@pOLD_TERM,@pWHO,@TERM_ID = @OLD_STATE_TERM_ID OUTPUT; +-- DECLARE @WHO_TERM_ID BIGINT +-- SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE; +-- EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT; +-- DECLARE @NEW_STATE_TERM_ID BIGINT,@OLD_STATE_TERM_ID BIGINT +-- EXEC PRIDB_NEW_TERM 'VARCHAR',@pNEW_TERM,@pWHO,@TERM_ID = @NEW_STATE_TERM_ID OUTPUT; +-- EXEC PRIDB_NEW_TERM 'VARCHAR',@pOLD_TERM,@pWHO,@TERM_ID = @OLD_STATE_TERM_ID OUTPUT; - UPDATE TBIDB_OBJ_STATES_LANGUAGE SET TERM_ID = @NEW_STATE_TERM_ID,CHANGED_WHO = @WHO_TERM_ID WHERE TERM_ID = @OLD_STATE_TERM_ID AND LANG_ID = @LANG_ID - AND TERM_ID <> @NEW_STATE_TERM_ID +-- UPDATE TBIDB_OBJ_STATES_LANGUAGE SET TERM_ID = @NEW_STATE_TERM_ID,CHANGED_WHO = @WHO_TERM_ID WHERE TERM_ID = @OLD_STATE_TERM_ID AND LANG_ID = @LANG_ID +-- AND TERM_ID <> @NEW_STATE_TERM_ID -END -GO +--END +--GO -CREATE VIEW [dbo].[VWIDB_STATES_LANGUAGE] AS +CREATE OR ALTER VIEW [dbo].[VWIDB_STATES_LANGUAGE] AS SELECT A.GUID AS STATE_ID, A.TITLE AS STATE_TITLE, @@ -3286,8 +3450,8 @@ SELECT FROM TBIDB_STATES A -INNER JOIN TBIDB_STATE_LANG_GROUP B ON A.GUID = B.STATE_ID -INNER JOIN TBIDB_TERM_VALUE_VARCHAR D ON B.LANG_TERM_ID = D.GUID +INNER JOIN TBIDB_LANGUAGE_TERM B ON A.GUID = B.OBJECT_ID +INNER JOIN TBIDB_TERM_VALUE_VARCHAR D ON B.TERM_ID = D.GUID INNER JOIN TBIDB_LANGUAGE C ON B.LANG_ID = C.GUID INNER JOIN TBIDB_TERM_VALUE_VARCHAR E ON A.ADDED_WHO = E.GUID INNER JOIN TBIDB_TERM_VALUE_VARCHAR F ON B.CHANGED_WHO = F.GUID @@ -3360,9 +3524,7 @@ BEGIN PRINT '### PRIDB_NEW_TERM: TERM-ID: ' + CONVERT(VARCHAR(10),@TERM_ID) + '###' END GO - - -CREATE PROCEDURE [dbo].[PRIDB_NEW_IDB_STATE] @pSTATE VARCHAR(512),@pWHO VARCHAR(100) +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_IDB_STATE] @pSTATE VARCHAR(512),@pWHO VARCHAR(100) AS BEGIN DECLARE @@ -3376,7 +3538,9 @@ BEGIN EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @ADDED_WHO_TERM_ID OUTPUT; IF NOT EXISTS(SELECT GUID FROM TBIDB_STATES WHERE TITLE = @pSTATE) - INSERT INTO TBIDB_STATES (TITLE,ADDED_WHO) VALUES (@pSTATE,@ADDED_WHO_TERM_ID); + BEGIN + INSERT INTO TBIDB_STATES (TITLE,ADDED_WHO) VALUES (@pSTATE,@ADDED_WHO_TERM_ID); + END SELECT @STATE_ID = GUID FROM TBIDB_STATES WHERE TITLE = @pSTATE; @@ -3386,9 +3550,10 @@ BEGIN FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE WHILE @@FETCH_STATUS = 0 BEGIN - IF NOT EXISTS(SELECT GUID FROM TBIDB_STATE_LANG_GROUP WHERE STATE_ID = @STATE_ID AND LANG_ID = @LANG_ID) - INSERT INTO TBIDB_STATE_LANG_GROUP (STATE_ID,LANG_ID,LANG_TERM_ID,ADDED_WHO) VALUES (@STATE_ID,@LANG_ID,@STATE_TERM_ID,@ADDED_WHO_TERM_ID) - UPDATE TBIDB_STATE_LANG_GROUP SET LANG_TERM_ID = @STATE_TERM_ID,CHANGED_WHO = @ADDED_WHO_TERM_ID WHERE STATE_ID = @STATE_ID AND LANG_ID = @LANG_ID + IF NOT EXISTS(SELECT GUID FROM TBIDB_LANGUAGE_TERM WHERE [OBJECT_ID] = @STATE_ID AND LANG_ID = @LANG_ID AND KIND_TYPE = 3) + INSERT INTO TBIDB_LANGUAGE_TERM (KIND_TYPE, [OBJECT_ID],TERM_ID,LANG_ID,ADDED_WHO) VALUES(3, @STATE_ID,@STATE_TERM_ID,@LANG_ID,@ADDED_WHO_TERM_ID); + ELSE + UPDATE TBIDB_LANGUAGE_TERM SET TERM_ID = @STATE_TERM_ID,CHANGED_WHO = @ADDED_WHO_TERM_ID WHERE [OBJECT_ID] = @STATE_ID AND LANG_ID = @LANG_ID FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE END @@ -3397,7 +3562,7 @@ BEGIN END GO -CREATE PROCEDURE [dbo].[PRIDB_SET_IDB_STATE] @pSTATE_ID INTEGER, @pSTATE VARCHAR(100), @pLANG_CODE VARCHAR(5),@pWHO VARCHAR(100) +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_SET_IDB_STATE] @pSTATE_ID INTEGER, @pSTATE VARCHAR(100), @pLANG_CODE VARCHAR(5),@pWHO VARCHAR(100) AS BEGIN DECLARE @@ -3409,30 +3574,26 @@ BEGIN EXEC PRIDB_NEW_TERM 'VARCHAR',@pSTATE,@pWHO,@TERM_ID = @STATE_TERM_ID OUTPUT; DECLARE @CHANGED_WHO_TERM_ID BIGINT EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @CHANGED_WHO_TERM_ID OUTPUT; - - - - UPDATE TBIDB_STATE_LANG_GROUP SET LANG_TERM_ID = @STATE_TERM_ID, CHANGED_WHO = @CHANGED_WHO_TERM_ID - WHERE STATE_ID = @pSTATE_ID AND LANG_ID = @LANG_ID + UPDATE TBIDB_LANGUAGE_TERM SET TERM_ID = @STATE_TERM_ID,CHANGED_WHO = @CHANGED_WHO_TERM_ID WHERE [OBJECT_ID] = @pSTATE_ID AND LANG_ID = @LANG_ID END GO -EXEC PRIDB_NEW_IDB_STATE 'Started', 'Digital Data'; -EXEC PRIDB_NEW_IDB_STATE 'Ended', 'Digital Data'; -EXEC PRIDB_NEW_IDB_STATE 'File Versioned','Digital Data'; -EXEC PRIDB_NEW_IDB_STATE 'File added', 'Digital Data'; -EXEC PRIDB_NEW_IDB_STATE 'File changed', 'Digital Data'; -EXEC PRIDB_NEW_IDB_STATE 'File deleted', 'Digital Data'; -EXEC PRIDB_NEW_IDB_STATE 'Metadata changed','Digital Data'; -EXEC PRIDB_NEW_IDB_STATE 'Attributevalue deleted','Digital Data'; -EXEC PRIDB_NEW_IDB_STATE 'File opened', 'Digital Data'; - -EXEC PRIDB_SET_IDB_STATE 3,'Datei versioniert', 'de-DE', 'Digital Data'; -EXEC PRIDB_SET_IDB_STATE 4,'Datei erstellt', 'de-DE', 'Digital Data'; -EXEC PRIDB_SET_IDB_STATE 5,'Datei geändert', 'de-DE', 'Digital Data'; -EXEC PRIDB_SET_IDB_STATE 6,'Datei gelöscht', 'de-DE', 'Digital Data'; -EXEC PRIDB_SET_IDB_STATE 7,'Attributwert geändert', 'de-DE', 'Digital Data'; -EXEC PRIDB_SET_IDB_STATE 8,'Attributwert gelöscht', 'de-DE', 'Digital Data'; -EXEC PRIDB_SET_IDB_STATE 9,'Datei geöffnet', 'de-DE', 'Digital Data'; +EXEC PRIDB_NEW_IDB_STATE 'Started', 'SYSTEM'; +EXEC PRIDB_NEW_IDB_STATE 'Ended', 'SYSTEM'; +EXEC PRIDB_NEW_IDB_STATE 'File Versioned','SYSTEM'; +EXEC PRIDB_NEW_IDB_STATE 'File added', 'SYSTEM'; +EXEC PRIDB_NEW_IDB_STATE 'File changed', 'SYSTEM'; +EXEC PRIDB_NEW_IDB_STATE 'File deleted', 'SYSTEM'; +EXEC PRIDB_NEW_IDB_STATE 'Metadata changed','SYSTEM'; +EXEC PRIDB_NEW_IDB_STATE 'Attributevalue deleted','SYSTEM'; +EXEC PRIDB_NEW_IDB_STATE 'File opened', 'SYSTEM'; + +EXEC PRIDB_SET_IDB_STATE 3,'Datei versioniert', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE 4,'Datei erstellt', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE 5,'Datei geändert', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE 6,'Datei gelöscht', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE 7,'Attributwert geändert', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE 8,'Attributwert gelöscht', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE 9,'Datei geöffnet', 'de-DE', 'SYSTEM'; GO CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE_DATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @WHO VARCHAR(100) @@ -3736,7 +3897,7 @@ BEGIN IF NOT EXISTS(SELECT GUID FROM TBIDB_LANGUAGE_TERM WHERE LANG_ID = @LANG_ID AND [OBJECT_ID] = @OMD_ID) BEGIN PRINT 'INSERT LANGUAGE-TERM...' - INSERT INTO TBIDB_LANGUAGE_TERM (KIND_TYPE, [OBJECT_ID],TERM_ID,LANG_ID,ADDED_WHO) VALUES('METADATA', @OMD_ID,@MY_TERM_ID,@LANG_ID,@WHO_TERM_ID); + INSERT INTO TBIDB_LANGUAGE_TERM (KIND_TYPE, [OBJECT_ID],TERM_ID,LANG_ID,ADDED_WHO) VALUES(1, @OMD_ID,@MY_TERM_ID,@LANG_ID,@WHO_TERM_ID); END ELSE BEGIN @@ -4756,18 +4917,14 @@ GO -- Author: DD MS 15.03.2021 -- Change date: -- ============================================= -CREATE PROCEDURE [dbo].[PRIDB_NEW_OBJECT] @KIND_TYPE VARCHAR(20),@WHO VARCHAR(100),@BE VARCHAR(500) = '',@FOREIGN_REFID Bigint = 0, @IDB_OBJ_ID BIGINT OUTPUT +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_OBJECT] @KIND_TYPE VARCHAR(20),@WHO VARCHAR(100),@IDB_DOCTYPE_ID INTEGER,@FOREIGN_REFID Bigint = 0, @IDB_OBJ_ID BIGINT OUTPUT AS BEGIN DECLARE - @KINDTYPE_ID TINYINT, - @BE_ID INTEGER + @KINDTYPE_ID TINYINT - SELECT @KINDTYPE_ID = GUID FROM TBIDB_OBJECT_KIND WHERE UPPER(KIND_NAME) = UPPER(@KIND_TYPE) - IF @BE = '' - SELECT @BE_ID = GUID FROM TBIDB_BUSINESS_ENTITY WHERE GUID = 1 - ELSE - SELECT @BE_ID = GUID FROM TBIDB_BUSINESS_ENTITY WHERE UPPER(TITLE) = UPPER(@BE) + SELECT @KINDTYPE_ID = GUID FROM TBIDB_OBJECT_KIND WHERE UPPER(KIND_NAME) = UPPER(@KIND_TYPE); + IF @FOREIGN_REFID <> 0 IF EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @FOREIGN_REFID) @@ -4779,12 +4936,13 @@ BEGIN END ELSE BEGIN - INSERT INTO [dbo].[TBIDB_OBJECT] - ([KIND_TYPE_ID],[ADDED_WHO]) VALUES (@KINDTYPE_ID,@WHO) + INSERT INTO [dbo].[TBIDB_OBJECT] + ([KIND_TYPE_ID],[ADDED_WHO]) VALUES (@KINDTYPE_ID,@WHO); END - SELECT @IDB_OBJ_ID = MAX(IDB_OBJ_ID) FROM TBIDB_OBJECT - IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_BE WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND BE_ID = @BE_ID) - INSERT INTO TBIDB_OBJECT_BE (IDB_OBJ_ID,BE_ID, ADDED_WHO) VALUES (@IDB_OBJ_ID,@BE_ID, @WHO) + SELECT @IDB_OBJ_ID = MAX(IDB_OBJ_ID) FROM TBIDB_OBJECT WHERE ADDED_WHO = @WHO; + INSERT INTO TBIDB_OBJECT_BE (IDB_OBJ_ID,BE_ID, ADDED_WHO) + SELECT @IDB_OBJ_ID,BE_ID,@WHO FROM TBIDB_DOCTYPE_BE WHERE DOCTYPE_ID = @IDB_DOCTYPE_ID; + END GO -- ============================================= @@ -4907,7 +5065,7 @@ DEALLOCATE cursorAttributes SELECT * FROM @TBRESULT order BY AttributID,ADDED_WHEN GO -- ============================================= --- Author: Digital Data, MS +-- Author: SYSTEM, MS -- Create date: 12.10.2021 -- ============================================= CREATE OR ALTER PROCEDURE [dbo].[PRIDB_GET_ATTRIBUTE_VALUE] @IDB_OBJ_ID BIGINT,@ATTRIBUTE VARCHAR(100), @LANG_CODE VARCHAR(5), @VALUE VARCHAR(MAX) OUTPUT @@ -5266,8 +5424,8 @@ BEGIN ) LTERM_VERS INNER JOIN TBIDB_OBJECT_METADATA MD ON MD.ATTR_ID = LTERM_VERS.ATTR_ID WHERE MD.IDB_OBJ_ID = @NEW_IDB_OBJ_ID; - INSERT INTO [dbo].[TBIDB_OBJ_MY_STATES] - ([IDB_OBJ_ID] + INSERT INTO TBIDB_MYOBJECT_STATES + (MY_OBJECT_ID ,[STATE_ID] ,[ADDED_WHO] ,[ADDED_WHEN] @@ -5278,7 +5436,7 @@ BEGIN ,[ADDED_WHO] ,[ADDED_WHEN] ,[CHANGED_WHO] - ,[CHANGED_WHEN] FROM TBIDB_OBJ_MY_STATES WHERE IDB_OBJ_ID = @IDB_OBJ_ID; + ,[CHANGED_WHEN] FROM TBIDB_MYOBJECT_STATES WHERE MY_OBJECT_ID = @IDB_OBJ_ID; END GO @@ -5320,8 +5478,61 @@ BEGIN @USRID,'GLOBIX_DROPAREA','PROGRESSIVE','System'); END GO +ALTER PROCEDURE [dbo].[PRIDB_NEW_DOCTYPE] @pDoctypeUnique VARCHAR(100),@pDoctype_Lang VARCHAR(100),@pWHO VARCHAR(100),@LANG_CODE VARCHAR(5) = 'de-DE' +AS +BEGIN + DECLARE + @DOCTYPE_ID INTEGER, + @TYP_ID TINYINT, + @TYP_DESCR VARCHAR(100), + @MULTI BIT, + @LANG_ID INT, + @WHO_TERM_ID BIGINT, + @MY_DOCTYPE_TERM_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT; + EXEC PRIDB_NEW_TERM 'VARCHAR',@pDoctype_Lang,@pWHO,@TERM_ID = @MY_DOCTYPE_TERM_ID OUTPUT; + SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @LANG_CODE + IF NOT EXISTS(SELECT GUID FROM TBIDB_DOCTYPE WHERE TITLE = @pDoctypeUnique) + BEGIN + INSERT INTO TBIDB_DOCTYPE (TITLE,ADDED_WHO) VALUES (@pDoctypeUnique, @pWHO); + END + SELECT @DOCTYPE_ID = GUID FROM TBIDB_DOCTYPE WHERE TITLE = @pDoctypeUnique; + PRINT '##@DOCTYPE_ID is: ' + Convert(Varchar(10),@DOCTYPE_ID) + IF NOT EXISTS(SELECT GUID FROM TBIDB_LANGUAGE_TERM WHERE OBJECT_ID = @DOCTYPE_ID AND LANG_ID = @LANG_ID AND KIND_TYPE = 2) + BEGIN + PRINT 'TBIDB_LANGUAGE_TERM_ENTRY NOT EXISTING...' + INSERT INTO [dbo].[TBIDB_LANGUAGE_TERM] + ([OBJECT_ID] + ,TERM_ID + ,LANG_ID + ,KIND_TYPE + ,ADDED_WHO) + VALUES + (@DOCTYPE_ID + ,@MY_DOCTYPE_TERM_ID + ,@LANG_ID + ,2 + ,@WHO_TERM_ID); + END + ELSE + IF EXISTS(SELECT GUID FROM TBIDB_LANGUAGE_TERM WHERE OBJECT_ID = @DOCTYPE_ID AND LANG_ID = @LANG_ID AND TERM_ID <> @MY_DOCTYPE_TERM_ID AND KIND_TYPE = 2) + BEGIN + UPDATE [dbo].[TBIDB_LANGUAGE_TERM] SET TERM_ID = @MY_DOCTYPE_TERM_ID, CHANGED_WHO = @WHO_TERM_ID + WHERE OBJECT_ID = @DOCTYPE_ID AND LANG_ID = @LANG_ID AND KIND_TYPE = 2; + END +END + +GO +EXEC PRIDB_NEW_DOCTYPE 'Ausgangsrechnung','Ausgangsrechnung','System','de-DE'; +EXEC PRIDB_NEW_DOCTYPE 'Ausgangsrechnung','Outgoing invoice','System','en-EN'; +EXEC PRIDB_NEW_DOCTYPE 'Eingangsrechnung','Eingangsrechnung','System','de-DE'; +EXEC PRIDB_NEW_DOCTYPE 'Eingangsrechnung','Incoming invoice','System','en-EN'; +EXEC PRIDB_NEW_DOCTYPE 'Gutschrift','Gutschrift','System','de-DE'; +EXEC PRIDB_NEW_DOCTYPE 'Gutschrift','Credit note','System','en-EN'; +EXEC PRIDB_NEW_DOCTYPE 'Quittung','Quittung','System','de-DE'; +GO CREATE VIEW [dbo].[VWGI_ADMIN_OVERVIEW] AS SELECT T3.GUID as ID, diff --git a/00_IDB/CreateFulltext.sql b/00_IDB/CreateFulltext.sql new file mode 100644 index 0000000..def3656 --- /dev/null +++ b/00_IDB/CreateFulltext.sql @@ -0,0 +1,14 @@ +USE [IDB] +GO + +/****** Object: FullTextCatalog [Fulltext] Script Date: 11.03.2022 09:27:07 ******/ +CREATE FULLTEXT CATALOG [Fulltext_DE] WITH ACCENT_SENSITIVITY = ON +AS DEFAULT +GO + +CREATE FULLTEXT INDEX ON dbo.TBIDB_TERM_VALUE_VARCHAR(TERM_VALUE LANGUAGE 1) KEY INDEX PK_TBIDB_TERM_VALUE_VARCHAR; +GO +CREATE FULLTEXT INDEX ON dbo.TBIDB_FULLTEXT_OBJECT(FULL_TEXT) KEY INDEX PK_TBIDB_FULLTEXT_OBJECT; +GO +--DROP FULLTEXT INDEX ON TBIDB_FULLTEXT_OBJECT; +GO \ No newline at end of file diff --git a/00_IDB/DB01.sql b/00_IDB/DB01.sql new file mode 100644 index 0000000..8ddd171 --- /dev/null +++ b/00_IDB/DB01.sql @@ -0,0 +1,16 @@ +CREATE OR ALTER VIEW VWIDB_DOC_STATES AS +SELECT + A.GUID ID + ,A.MY_OBJECT_ID AS IDB_OBJ_ID + ,C.LANG_ID + ,LANG.LANG_CODE + ,TERM.TERM_VALUE AS STATE_LANG + ,A.ADDED_WHEN +FROM + TBIDB_MYOBJECT_STATES A INNER JOIN TBIDB_OBJ_STATES B ON A.STATE_ID = B.GUID + INNER JOIN TBIDB_LANGUAGE_TERM C ON B.GUID = C.OBJECT_ID + INNER JOIN TBIDB_LANGUAGE LANG ON C.LANG_ID = LANG.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON C.TERM_ID = TERM.GUID +WHERE + C.KIND_TYPE = 3 +GO \ No newline at end of file diff --git a/01_PM/CreateDBObjects.sql b/01_PM/CreateDBObjects.sql index eba26cd..c757121 100644 --- a/01_PM/CreateDBObjects.sql +++ b/01_PM/CreateDBObjects.sql @@ -8,7 +8,7 @@ ADD SYS_CONNECTION BIT DEFAULT 0 NOT NULL; GO ####################################*/ -UPDATE TBDD_MODULES SET DB_VERSION = '2.1.0.1' where NAME = 'Process-Manager' +UPDATE TBDD_MODULES SET DB_VERSION = '2.2.0.0' where NAME = 'Process-Manager' GO INSERT INTO TBDD_USER_MODULES (USER_ID,MODULE_ID,IS_ADMIN) SELECT GUID,(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'PM'),1 FROM TBDD_USER where UPPER(USERNAME) = UPPER('@MyUSER') GO @@ -71,9 +71,9 @@ CHANGED_WHEN DATETIME, CONSTRAINT PK_TBPM_TYPE_GUID PRIMARY KEY (GUID) ) GO -INSERT INTO TBPM_TYPE(BEZEICHNUNG) VALUES ('Man. Validation') +INSERT INTO TBPM_TYPE(BEZEICHNUNG) VALUES ('Metadata based') GO -INSERT INTO TBPM_TYPE(BEZEICHNUNG) VALUES ('Automatism') +INSERT INTO TBPM_TYPE(BEZEICHNUNG) VALUES ('Serially') GO CREATE TRIGGER TBPM_TYPE_AFT_UPD ON TBPM_TYPE FOR UPDATE @@ -159,6 +159,76 @@ CREATE TABLE TBPM_PROFILE_FILES_TEMP ) GO ------------------------------------------------------------------------------ + +CREATE TABLE TBPM_SERIELL_DOC +( + GUID BIGINT IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + OBJ_ID BIGINT NOT NULL, + WF_FINISHED DATETIME, + ADDED_WHO VARCHAR(100) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBPM_SERIELL_DOC PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_SERIELL_DOC_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TRIGGER TBPM_SERIELL_DOC_AFT_UPD ON TBPM_SERIELL_DOC +FOR UPDATE +AS + UPDATE TBPM_SERIELL_DOC SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_SERIELL_DOC.GUID = INSERTED.GUID +GO + +CREATE TABLE TBPM_PROFILE_SERIELL_PARTIES +( + GUID BIGINT IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + ENTITY_TYPE VARCHAR(50) NOT NULL, + USER_OR_GROUP_ID INTEGER NOT NULL, + CRITERIA_NEXT_STEP VARCHAR(500), + SEQUENCE TINYINT NOT NULL DEFAULT 0, + ADDED_WHO VARCHAR(50) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBPM_PROFILE_SERIELL_PARTIES PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_PROFILE_SERIELL_PARTIES_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TRIGGER TBPM_PROFILE_SERIELL_PARTIES_AFT_UPD ON TBPM_PROFILE_SERIELL_PARTIES +FOR UPDATE +AS + UPDATE TBPM_PROFILE_SERIELL_PARTIES SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE_SERIELL_PARTIES.GUID = INSERTED.GUID +GO + +CREATE TABLE TBPM_SERIELL_PARTIES_STATE +( + GUID BIGINT IDENTITY(1,1), + SPID_ID BIGINT NOT NULL, + ENTITY_TYPE VARCHAR(50) NOT NULL, + USER_OR_GROUP_ID INTEGER NOT NULL, + STATE_DESC VARCHAR(500) NOT NULL, + COMMENT VARCHAR(500), + ADDED_WHO VARCHAR(50) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME , + CONSTRAINT PK_TBPM_SP_STATE PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_SP_STATE_SPID_ID FOREIGN KEY (SPID_ID) REFERENCES TBPM_PROFILE_SERIELL_PARTIES (GUID) +) +GO +CREATE TRIGGER TBPM_SERIELL_PARTIES_STATE_AFT_UPD ON TBPM_SERIELL_PARTIES_STATE +FOR UPDATE +AS + UPDATE TBPM_SERIELL_PARTIES_STATE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_SERIELL_PARTIES_STATE.GUID = INSERTED.GUID +GO CREATE TABLE TBPM_FILES_USER_NOT_INDEXED ( USR_NAME VARCHAR(50), diff --git a/01_PM/Updates/2.2.0.0.sql b/01_PM/Updates/2.2.0.0.sql new file mode 100644 index 0000000..83fdeca --- /dev/null +++ b/01_PM/Updates/2.2.0.0.sql @@ -0,0 +1,78 @@ +UPDATE TBDD_MODULES SET DB_VERSION = '2.2.0.0' where NAME = 'Process-Manager' +GO + +UPDATE TBPM_TYPE SET BEZEICHNUNG = 'Metadata based' where BEZEICHNUNG = 'Man. Validation' +GO +UPDATE TBPM_TYPE SET BEZEICHNUNG = 'Serially' where BEZEICHNUNG = 'Automatism' +GO +DROP TABLE TBPM_SERIELL_PARTIES_STATE +DROP TABLE TBPM_PROFILE_SERIELL_PARTIES +CREATE TABLE TBPM_SERIELL_DOC +( + GUID BIGINT IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + OBJ_ID BIGINT NOT NULL, + WF_FINISHED DATETIME, + ADDED_WHO VARCHAR(100) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBPM_SERIELL_DOC PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_SERIELL_DOC_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TRIGGER TBPM_SERIELL_DOC_AFT_UPD ON TBPM_SERIELL_DOC +FOR UPDATE +AS + UPDATE TBPM_SERIELL_DOC SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_SERIELL_DOC.GUID = INSERTED.GUID +GO + +CREATE TABLE TBPM_PROFILE_SERIELL_PARTIES +( + GUID BIGINT IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + ENTITY_TYPE VARCHAR(50) NOT NULL, + USER_OR_GROUP_ID INTEGER NOT NULL, + CRITERIA_NEXT_STEP VARCHAR(500), + SEQUENCE TINYINT NOT NULL DEFAULT 0, + ADDED_WHO VARCHAR(50) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBPM_PROFILE_SERIELL_PARTIES PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_PROFILE_SERIELL_PARTIES_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TRIGGER TBPM_PROFILE_SERIELL_PARTIES_AFT_UPD ON TBPM_PROFILE_SERIELL_PARTIES +FOR UPDATE +AS + UPDATE TBPM_PROFILE_SERIELL_PARTIES SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE_SERIELL_PARTIES.GUID = INSERTED.GUID +GO + +CREATE TABLE TBPM_SERIELL_PARTIES_STATE +( + GUID BIGINT IDENTITY(1,1), + SPID_ID BIGINT NOT NULL, + ENTITY_TYPE VARCHAR(50) NOT NULL, + USER_OR_GROUP_ID INTEGER NOT NULL, + STATE_DESC VARCHAR(500) NOT NULL, + COMMENT VARCHAR(500), + ADDED_WHO VARCHAR(50) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME , + CONSTRAINT PK_TBPM_SP_STATE PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_SP_STATE_SPID_ID FOREIGN KEY (SPID_ID) REFERENCES TBPM_PROFILE_SERIELL_PARTIES (GUID) +) +GO +CREATE TRIGGER TBPM_SERIELL_PARTIES_STATE_AFT_UPD ON TBPM_SERIELL_PARTIES_STATE +FOR UPDATE +AS + UPDATE TBPM_SERIELL_PARTIES_STATE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_SERIELL_PARTIES_STATE.GUID = INSERTED.GUID +GO \ No newline at end of file diff --git a/02_GI/CreateDBObjects.sql b/02_GI/CreateDBObjects.sql index 48b0898..b4bd937 100644 --- a/02_GI/CreateDBObjects.sql +++ b/02_GI/CreateDBObjects.sql @@ -510,7 +510,7 @@ GO ALTER TABLE TBGI_HISTORY ALTER COLUMN FILENAME_ORIGINAL VARCHAR(500) NOT NULL GO -CREATE VIEW [dbo].[VWGI_DOCTYPE_IDB] AS +CREATE OR ALTER VIEW [dbo].[VWGI_DOCTYPE_IDB] AS SELECT T4.GUID as DOCTYPE_ID, T4.BEZEICHNUNG AS DOCTYPE, @@ -525,7 +525,8 @@ SELECT T7.CAT_TITLE AS OBJECT_ST_PATH, T4.ERSTELLTWANN, T4.GEAENDERTWANN, - T4.SEQUENCE + T4.SEQUENCE, + T4.IDB_DOCTYPE_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART T4 LEFT JOIN IDB.dbo.TBIDB_OBJECT_STORE T6 ON T4.IDB_OBJECT_STORE_ID = T6.GUID LEFT JOIN IDB.dbo.TBIDB_CATALOG T7 On T6.CAT_ID = T7.GUID diff --git a/09_ZooFlow/Update/1.0.0.1.sql b/09_ZooFlow/Update/1.0.0.1.sql index 2affb1aeb1aa9cec7bf26f672967126c2f5d1a9b..57f1c1fe79fe64c01a8ac44e42e1dd5c6118d509 100644 GIT binary patch delta 659 zcma)&PfG$(6vdAbMn)3IGzdl0LPD@;8MJaVLy{~NLPVm{G*ZXENvl3X++DONXsv?Z zpmmE@ZQAq=tZl2#vka-I819=l_nmX+o!>*x)_S#d?n@IUmXJW073n^f7HyLT{4fx~ z8bU~jyXlpu6Q^dtWH*XUu6|m=2*Q+}rAsV7BcW`kdt1I6m8D}x_p-4(qB>fT`Tz$f zvBhb-ba1A$3$t=@;7HYwMS*pII%leRKE$bwQ~7Zr>J99n#x=$MDR*@`iu_LChbJ3cw9YVLPmg#Hq8Xz-m=XE3B)(e)HlWcXxR26m9=u7tFlXXeC_bm~Jr zo*OtsmH#NpbzRr`+535h@=0Y%^F$Hrr;O2IGK=EqC$n{`1Eiq{_@v!*D?YBTd`zqj z=(v8MBjL(ifcO7}(ty!`jZ%MM!~Ear1ei^+P;{)i$7ab!(Jjy0cDcz-OY6iw_ILi5 W%)DIfkFG4hi&ad*@vj>HRJ{T6z=+fU delta 61 zcmZ4Yi}Bif#tj$pxLp|h8JrnH7$O-0Hs8+EWn@)n&}6Wl?3lWBvrFL_mdPJd`8G?H O88C5iGVn5RfiVD-SrNzp From e3c44d9396bd039a4475eb47e6271617fb54214c Mon Sep 17 00:00:00 2001 From: Digital Data - Marlon Schreiber Date: Fri, 25 Mar 2022 14:30:43 +0100 Subject: [PATCH 6/9] MS --- 00_IDB/CreateDBObjects.sql | 351 ++++++++++++++++++++++++++++++------- 00_IDB/Search_Logic.sql | Bin 0 -> 13232 bytes 00_IDB/Search_TEST.sql | Bin 0 -> 110 bytes 00_IDB/StructureNode.sql | 59 +++++++ 04_APPSERV/INSERT_JOBS.sql | 6 + 5 files changed, 349 insertions(+), 67 deletions(-) create mode 100644 00_IDB/Search_Logic.sql create mode 100644 00_IDB/Search_TEST.sql create mode 100644 00_IDB/StructureNode.sql diff --git a/00_IDB/CreateDBObjects.sql b/00_IDB/CreateDBObjects.sql index c912237..719fd31 100644 --- a/00_IDB/CreateDBObjects.sql +++ b/00_IDB/CreateDBObjects.sql @@ -451,6 +451,7 @@ CREATE TABLE TBIDB_OBJECT_KIND GO INSERT INTO TBIDB_OBJECT_KIND (KIND_NAME) VALUES ('DOC'); INSERT INTO TBIDB_OBJECT_KIND (KIND_NAME) VALUES ('OBJECT'); +INSERT INTO TBIDB_OBJECT_KIND (KIND_NAME) VALUES ('DYNAMIC_FOLDER'); GO CREATE TRIGGER TBIDB_OBJECT_KIND_AFT_UPD ON TBIDB_OBJECT_KIND FOR UPDATE @@ -526,8 +527,9 @@ CREATE TABLE TBIDB_OBJECT ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), CHANGED_WHEN DATETIME, - CONSTRAINT PK_TBIDB_OBJECT PRIMARY KEY (IDB_OBJ_ID), - CONSTRAINT UQ_TBIDB_OBJECT UNIQUE (REFERENCE_KEY), + CHANGED_WHEN_SUBSTRUCTURE DATETIME, + CHANGED_WHO_SUBSTRUCTURE VARCHAR(100), + CONSTRAINT PK_TBIDB_OBJECT PRIMARY KEY (IDB_OBJ_ID), CONSTRAINT FK_KIND_TYPE_ID FOREIGN KEY (KIND_TYPE_ID) REFERENCES TBIDB_OBJECT_KIND (GUID) ) GO @@ -584,12 +586,15 @@ AS FROM INSERTED WHERE TBIDB_STRUCTURE_TYPE.GUID = INSERTED.GUID GO +INSERT INTO TBIDB_STRUCTURE_TYPE (TITLE) VALUES ('DOC_DOCTYPE'); +GO + CREATE TABLE TBIDB_OBJECT_STRUCTURE_TYPE ( GUID BIGINT NOT NULL IDENTITY (1, 1), IDB_OBJ_ID BIGINT NOT NULL, STRUCTURE_ID INTEGER NOT NULL, - PARENT_OBJ_ID BIGINT NOT NULL DEFAULT 0, + RELATION_ID INTEGER NOT NULL, COMMENT VARCHAR(1000), ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), @@ -609,6 +614,10 @@ AS WHERE TBIDB_OBJECT_STRUCTURE_TYPE.GUID = INSERTED.GUID GO +INSERT INTO TBIDB_OBJECT_STRUCTURE_TYPE (IDB_OBJ_ID,STRUCTURE_ID,RELATION_ID) VALUES (12031,1 ,(SELECT GUID FROM TBIDB_DOCTYPE WHERE TITLE = 'Projektunterlage')) +INSERT INTO TBIDB_OBJECT_STRUCTURE_TYPE (IDB_OBJ_ID,STRUCTURE_ID,RELATION_ID) VALUES (12037,1 ,(SELECT GUID FROM TBIDB_DOCTYPE WHERE TITLE = 'Lieferschein')) +INSERT INTO TBIDB_OBJECT_STRUCTURE_TYPE (IDB_OBJ_ID,STRUCTURE_ID,RELATION_ID) VALUES (12035,1 ,(SELECT GUID FROM TBIDB_DOCTYPE WHERE TITLE = 'Gutschrift')) + CREATE TABLE TBIDB_DOC_INFO ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -699,7 +708,7 @@ AS WHERE TBIDB_ATTRIBUTE.GUID = INSERTED.GUID GO -CREATE TRIGGER [dbo].[TBIDB_ATTRIBUTE_AFT_INS] ON [dbo].[TBIDB_ATTRIBUTE] +CREATE OR ALTER TRIGGER [dbo].[TBIDB_ATTRIBUTE_AFT_INS] ON [dbo].[TBIDB_ATTRIBUTE] FOR INSERT AS DECLARE @@ -737,16 +746,14 @@ AS ,@LANG_ID ,@NEW_TERM_ID ,@ADDED_WHO); - --BEGIN TRY - -- EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE - --END TRY - --BEGIN CATCH - --END CATCH + EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE,'DEFAULT' + EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE,'' FETCH NEXT FROM cursorIDBLANGUAGE_ATTR INTO @LANG_ID,@LANG_CODE END CLOSE cursorIDBLANGUAGE_ATTR DEALLOCATE cursorIDBLANGUAGE_ATTR + GO CREATE TABLE TBIDB_BE_ATTRIBUTE @@ -1351,7 +1358,7 @@ CREATE TABLE TBIDB_COMMON_SQL CONSTRAINT PK_TBIDB_COMMON_SQL PRIMARY KEY (GUID) ) GO - +DELETE FROM [TBIDB_COMMON_SQL] WHERE TITLE = 'FLOW_SEARCH_SQL_BASE'; INSERT INTO [dbo].[TBIDB_COMMON_SQL] ([TITLE] ,[SQL_COMMAND] @@ -1359,16 +1366,24 @@ INSERT INTO [dbo].[TBIDB_COMMON_SQL] VALUES ('FLOW_SEARCH_SQL_BASE' ,'SELECT - DOC.* -FROM - TBIDB_SEARCH_RESULT_USER RES INNER JOIN VWIDB_LANGUAGE_TERM VWLTERM ON RES.MD_GUID = VWLTERM.MD_ID - INNER JOIN VWIDB_DOCRESULT_DE DOC ON VWLTERM.IDB_OBJ_ID = DOC.DocID -WHERE - RES.USR_ID = @USER_ID AND VWLTERM.LANG_CODE = ''@LANG_CODE''','SYSTEM') + DOC.* + FROM + TBIDB_SEARCH_RESULT_TERM_USER RES INNER JOIN VWIDB_LANGUAGE_TERM VWLTERM ON RES.MD_GUID = VWLTERM.MD_ID + INNER JOIN VWIDB_DOCRESULT_DE DOC ON VWLTERM.IDB_OBJ_ID = DOC.DocID + WHERE + RES.USR_ID = @USER_ID AND VWLTERM.LANG_CODE = ''@LANG_CODE''' + CHAR(10) + + 'UNION + SELECT + DOC.* + FROM + TBIDB_SEARCH_RESULT_STRUCT_TYPE_USER RES INNER JOIN VWIDB_DOC_DOCTYPE VWDT ON RES.STRUCTURE_ID = VWDT.STRUCTURE_ID AND RES.IDB_OBJ_ID = VWDT.IDB_OBJ_ID + INNER JOIN VWIDB_DOCRESULT_DE DOC ON RES.IDB_OBJ_ID = DOC.DocID + WHERE + RES.USR_ID = @USER_ID AND VWDT.LANG_CODE = ''@LANG_CODE''','SYSTEM') GO -CREATE TABLE TBIDB_SEARCH_RESULT_USER +CREATE TABLE TBIDB_SEARCH_RESULT_TERM_USER ( GUID BIGINT NOT NULL IDENTITY (1, 1), MD_GUID BIGINT @@ -1376,6 +1391,16 @@ CREATE TABLE TBIDB_SEARCH_RESULT_USER CONSTRAINT FK_TBIDB_SEARCH_RESULT_USER_MD_GUID FOREIGN KEY (MD_GUID) REFERENCES TBIDB_OBJECT_METADATA (GUID) ) GO +CREATE TABLE TBIDB_SEARCH_RESULT_STRUCT_TYPE_USER +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + IDB_OBJ_ID BIGINT NOT NULL, + STRUCTURE_ID INTEGER NOT NULL, + USR_ID INTEGER + CONSTRAINT FK_TBIDB_SEARCH_RESULT_STRUCT_TYPE_USER_IDBOBJID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), + CONSTRAINT FK_TBIDB_SEARCH_RESULT_STRUCT_TYPE_USER_STRUCTURE_ID FOREIGN KEY (STRUCTURE_ID) REFERENCES TBIDB_STRUCTURE_TYPE (GUID) +) +GO CREATE TABLE TBIDB_SEARCH_DATE_VALUE_USER ( @@ -1938,7 +1963,52 @@ AS FROM INSERTED WHERE TBIDB_TERM_TYPE.GUID = INSERTED.GUID GO - +CREATE TABLE TBIDB_OBJECT_DYNAMIC_FOLDER +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + IDB_OBJ_ID BIGINT NOT NULL, + DYN_FOLD_ID BIGINT NOT NULL, + COMMENT VARCHAR(1000), + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', + ADDED_WHEN DATETIME DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_OBJECT_DYNAMIC_FOLDER PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_OBJECT_DYNAMIC_FOLDER UNIQUE (IDB_OBJ_ID,DYN_FOLD_ID), + CONSTRAINT FK_TBIDB_OBJECT_DYNAMIC_FOLDER_IDBOBJID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), + CONSTRAINT FK_TBIDB_OBJECT_DYNAMIC_FOLDER_DYNFOLDID FOREIGN KEY (DYN_FOLD_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID) +) +GO +CREATE TRIGGER TBIDB_OBJECT_DYNAMIC_FOLDER_AFT_UPD ON TBIDB_OBJECT_DYNAMIC_FOLDER +FOR UPDATE +AS + UPDATE TBIDB_OBJECT_DYNAMIC_FOLDER SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_OBJECT_DYNAMIC_FOLDER.GUID = INSERTED.GUID +GO +DROP TABLE TBIDB_OBJECT_CHECK_IN_OUT +CREATE TABLE TBIDB_OBJECT_CHECK_IN_OUT +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + IDB_OBJ_ID BIGINT NOT NULL, + CHECKED_OUT_WHEN DATETIME NOT NULL, + CHECKED_IN_WHEN DATETIME, + COMMENT VARCHAR(1000), + ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'SYSTEM', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_OBJECT_CHECK_IN_OUT PRIMARY KEY (GUID), + CONSTRAINT FK_TBIDB_OBJECT_CHECK_IN_OUT_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID) +) +GO +CREATE TRIGGER TBIDB_OBJECT_CHECK_IN_OUT_AFT_UPD ON TBIDB_OBJECT_CHECK_IN_OUT +FOR UPDATE +AS + UPDATE TBIDB_OBJECT_CHECK_IN_OUT SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_OBJECT_CHECK_IN_OUT.IDB_OBJ_ID = INSERTED.IDB_OBJ_ID +GO /*########################### ######### FUNCTIONS ######### #############################*/ @@ -3308,6 +3378,7 @@ SELECT LT.GUID as ID ,LT.OBJECT_ID as Doctype_ID ,DT.TITLE AS SYS_TITLE + ,LT.TERM_ID ,TERM.TERM_VALUE AS Doctype ,LT.LANG_ID ,LANG.LANG_CODE @@ -3370,6 +3441,53 @@ FROM WHERE C.KIND_TYPE = 3 GO +CREATE OR ALTER VIEW VWIDB_DOC_DOCTYPE AS +SELECT A.GUID, + + A.IDB_OBJ_ID + ,A.STRUCTURE_ID + ,B.TITLE AS STRUCTURE_TITLE + ,C.SYS_TITLE + ,C.Doctype_ID + ,C.Doctype + ,C.TERM_ID + ,C.LANG_CODE + ,C.LANG_ID + ,A.ADDED_WHO + ,A.ADDED_WHEN + ,B.CHANGED_WHO + ,B.CHANGED_WHEN + ,OBJ.ADDED_WHEN OBJ_ADDED_WHEN + ,OBJ.CHANGED_WHEN OBJ_CHANGED_WHEN + ,OBJ.ACTIVE OBJ_ACTIVE +FROM + TBIDB_OBJECT_STRUCTURE_TYPE A INNER JOIN TBIDB_STRUCTURE_TYPE B ON A.STRUCTURE_ID = B.GUID + INNER JOIN VWIDB_DOCTYPE_LANGUAGE C ON A.RELATION_ID = C.Doctype_ID + INNER JOIN TBIDB_OBJECT OBJ ON A.IDB_OBJ_ID = OBJ.IDB_OBJ_ID +WHERE B.TITLE = 'DOC_DOCTYPE' +GO +CREATE OR ALTER VIEW VWIDB_STRUCTURE_NODES AS +select + T.GUID AS MetadataID, + T1.GUID AS AttributID, + T.IDB_OBJ_ID, + OBJ.PARENT_OBJ_ID, + T1.TITLE as Attribut, + T3.GUID as TERM_GUID, + T3.TERM_VALUE, + T4.LANG_CODE, + T.ADDED_WHO, + T.ADDED_WHEN, + T.CHANGED_WHO [Geändert wer], + T.CHANGED_WHEN [Geändert wann] +from TBIDB_OBJECT_METADATA T + INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTR_ID = T1.GUID + INNER JOIN TBIDB_LANGUAGE_TERM T2 ON T.GUID = T2.[OBJECT_ID] + INNER JOIN TBIDB_OBJECT OBJ ON T.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T2.TERM_ID = T3.GUID + INNER JOIN TBIDB_LANGUAGE T4 ON T2.LANG_ID = T4.GUID +WHERE OBJ.ACTIVE = 1 AND OBJ.KIND_TYPE_ID = 3 AND T1.GUID = (SELECT GUID FROM TBIDB_ATTRIBUTE WHERE TITLE = 'VIRTUAL_FOLDER_PART') +GO /*########################################### ############## PROCEDURES ################### #############################################*/ @@ -3438,6 +3556,7 @@ GO CREATE OR ALTER VIEW [dbo].[VWIDB_STATES_LANGUAGE] AS SELECT A.GUID AS STATE_ID, + B.GUID LANG_TERM_ID, A.TITLE AS STATE_TITLE, D.TERM_VALUE AS STATE_TERM, B.LANG_ID, @@ -3455,6 +3574,7 @@ INNER JOIN TBIDB_TERM_VALUE_VARCHAR D ON B.TERM_ID = D.GUID INNER JOIN TBIDB_LANGUAGE C ON B.LANG_ID = C.GUID INNER JOIN TBIDB_TERM_VALUE_VARCHAR E ON A.ADDED_WHO = E.GUID INNER JOIN TBIDB_TERM_VALUE_VARCHAR F ON B.CHANGED_WHO = F.GUID +WHERE B.KIND_TYPE = 3 GO -- ============================================= -- Author: DD MS @@ -3554,6 +3674,7 @@ BEGIN INSERT INTO TBIDB_LANGUAGE_TERM (KIND_TYPE, [OBJECT_ID],TERM_ID,LANG_ID,ADDED_WHO) VALUES(3, @STATE_ID,@STATE_TERM_ID,@LANG_ID,@ADDED_WHO_TERM_ID); ELSE UPDATE TBIDB_LANGUAGE_TERM SET TERM_ID = @STATE_TERM_ID,CHANGED_WHO = @ADDED_WHO_TERM_ID WHERE [OBJECT_ID] = @STATE_ID AND LANG_ID = @LANG_ID + AND TERM_ID <> @STATE_TERM_ID; FETCH NEXT FROM c_PRIDB_NEW_IDB_OBJECT_STATE INTO @LANG_ID,@pLANG_CODE END @@ -3562,19 +3683,23 @@ BEGIN END GO -CREATE OR ALTER PROCEDURE [dbo].[PRIDB_SET_IDB_STATE] @pSTATE_ID INTEGER, @pSTATE VARCHAR(100), @pLANG_CODE VARCHAR(5),@pWHO VARCHAR(100) +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_SET_IDB_STATE_LANG] @pSTATE VARCHAR(100),@pSTATE_LANG VARCHAR(100), @pLANG_CODE VARCHAR(5),@pWHO VARCHAR(100) AS BEGIN DECLARE - @LANG_ID INTEGER + @LANG_ID INTEGER, + @pSTATE_ID INTEGER SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE; - + SELECT @pSTATE_ID = GUID FROM TBIDB_STATES WHERE TITLE = @pSTATE DECLARE @STATE_TERM_ID BIGINT,@LANG_STATE_TERM_ID BIGINT - EXEC PRIDB_NEW_TERM 'VARCHAR',@pSTATE,@pWHO,@TERM_ID = @STATE_TERM_ID OUTPUT; + EXEC PRIDB_NEW_TERM 'VARCHAR',@pSTATE_LANG,@pWHO,@TERM_ID = @STATE_TERM_ID OUTPUT; DECLARE @CHANGED_WHO_TERM_ID BIGINT EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @CHANGED_WHO_TERM_ID OUTPUT; - UPDATE TBIDB_LANGUAGE_TERM SET TERM_ID = @STATE_TERM_ID,CHANGED_WHO = @CHANGED_WHO_TERM_ID WHERE [OBJECT_ID] = @pSTATE_ID AND LANG_ID = @LANG_ID + IF NOT EXISTS(SELECT GUID FROM TBIDB_LANGUAGE_TERM WHERE [OBJECT_ID] = @pSTATE_ID AND LANG_ID = @LANG_ID AND KIND_TYPE = 3) + INSERT INTO TBIDB_LANGUAGE_TERM (KIND_TYPE, [OBJECT_ID],TERM_ID,LANG_ID,ADDED_WHO) VALUES(3, @pSTATE_ID,@STATE_TERM_ID,@LANG_ID,@CHANGED_WHO_TERM_ID); + ELSE + UPDATE TBIDB_LANGUAGE_TERM SET TERM_ID = @STATE_TERM_ID,CHANGED_WHO = @CHANGED_WHO_TERM_ID WHERE KIND_TYPE = 3 AND [OBJECT_ID] = @pSTATE_ID AND LANG_ID = @LANG_ID AND TERM_ID <> @STATE_TERM_ID; END GO EXEC PRIDB_NEW_IDB_STATE 'Started', 'SYSTEM'; @@ -3587,13 +3712,13 @@ EXEC PRIDB_NEW_IDB_STATE 'Metadata changed','SYSTEM'; EXEC PRIDB_NEW_IDB_STATE 'Attributevalue deleted','SYSTEM'; EXEC PRIDB_NEW_IDB_STATE 'File opened', 'SYSTEM'; -EXEC PRIDB_SET_IDB_STATE 3,'Datei versioniert', 'de-DE', 'SYSTEM'; -EXEC PRIDB_SET_IDB_STATE 4,'Datei erstellt', 'de-DE', 'SYSTEM'; -EXEC PRIDB_SET_IDB_STATE 5,'Datei geändert', 'de-DE', 'SYSTEM'; -EXEC PRIDB_SET_IDB_STATE 6,'Datei gelöscht', 'de-DE', 'SYSTEM'; -EXEC PRIDB_SET_IDB_STATE 7,'Attributwert geändert', 'de-DE', 'SYSTEM'; -EXEC PRIDB_SET_IDB_STATE 8,'Attributwert gelöscht', 'de-DE', 'SYSTEM'; -EXEC PRIDB_SET_IDB_STATE 9,'Datei geöffnet', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE_LANG 'File Versioned','Datei versioniert', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE_LANG 'File added','Datei erstellt', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE_LANG 'File changed','Datei geändert', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE_LANG 'File deleted','Datei gelöscht', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE_LANG 'Metadata changed','Attributwert geändert', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE_LANG 'Attributevalue deleted','Attributwert gelöscht', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE_LANG 'File opened','Datei geöffnet', 'de-DE', 'SYSTEM'; GO CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE_DATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @WHO VARCHAR(100) @@ -3982,9 +4107,9 @@ BEGIN ,@WHO) END ELSE - UPDATE TBIDB_OBJECT_METADATA SET [DATE_TERM_ID] = @MY_TERM_ID, CHANGED_WHO = @WHO WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID + UPDATE TBIDB_OBJECT_METADATA SET [DATE_TERM_ID] = @MY_TERM_ID, CHANGED_WHO = @WHO WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID; - SELECT @OMD_ID = GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DATE_TERM_ID = @MY_TERM_ID + SELECT @OMD_ID = GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DATE_TERM_ID = @MY_TERM_ID; END ELSE IF @TYP_ID = 6 --DATETIME BEGIN @@ -3999,20 +4124,18 @@ BEGIN (@IDB_OBJ_ID ,@ATTR_ID ,@MY_TERM_ID - ,@WHO) + ,@WHO); END ELSE - UPDATE TBIDB_OBJECT_METADATA SET [DATETIME_TERM_ID] = @MY_TERM_ID, CHANGED_WHO = @WHO WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID - - SELECT @OMD_ID = GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DATE_TERM_ID = @MY_TERM_ID + UPDATE TBIDB_OBJECT_METADATA SET [DATETIME_TERM_ID] = @MY_TERM_ID, CHANGED_WHO = @WHO WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID; + EXEC PRIDB_OBJECT_CHANGED_SUBSTRUCTURE @IDB_OBJ_ID,@WHO; + SELECT @OMD_ID = GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DATE_TERM_ID = @MY_TERM_ID; END --PRINT 'PRIDB_NEW_OBJ_DATA - Got the new @OMD_ID: ' + CONVERT(VARCHAR(20),@OMD_ID) END GO - - -CREATE OR ALTER PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5) ,@pVar VARCHAR(15) = 'DEFAULT' +ALTER PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5) ,@pVar VARCHAR(15) = 'DEFAULT' AS DECLARE @ATTR_ID INT, @@ -4037,6 +4160,8 @@ DECLARE SET @SQL1 += +'T.IDB_OBJ_ID' + char(10) ELSE SET @SQL1 += +'T.IDB_OBJ_ID as DocID' + char(10) + + SET @SQL1 += char(9) + ',DT.Doctype as Doctype' + char(10) BEGIN DECLARE c_PRIDB_CREATE_VIEW_DOC_DATA CURSOR FOR SELECT DISTINCT ATTR_ID,ATTR_TITLE,TYPE_ID,VIEW_SEQUENCE @@ -4097,19 +4222,23 @@ BEGIN END SET @SQL1 += char(9) + ',T.ADDED_WHEN AS [Added when]' + char(10) + char(9) + ',T.ADDED_WHO AS [Added who]' + char(10) - + char(9) + ',T.CHANGED_WHEN AS [Changed when]' + char(10) - + char(9) + ',T.CHANGED_WHO AS [Changed who]' + char(10) + + char(9) + ',T.CHANGED_WHEN_SUBSTRUCTURE AS [Changed when]' + char(10) + + char(9) + ',T.CHANGED_WHO_SUBSTRUCTURE AS [Changed who]' + char(10) SET @SQL1 += 'FROM' + char(10) IF @pVar = 'DEFAULT' SET @SQL1 += char(9)+'TBIDB_OBJECT T INNER JOIN TBIDB_FILE_OBJECT T2 ON T.IDB_OBJ_ID = T2.IDB_OBJ_ID' + char(10) + + char(9) + 'INNER JOIN VWIDB_DOC_DOCTYPE DT ON T.IDB_OBJ_ID = DT.IDB_OBJ_ID' + char(10) + char(9) + 'INNER JOIN TBIDB_OBJECT_STORE T3 ON T2.OBJ_ST_ID = T3.GUID' + char(10) + char(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR T4 ON T2.RELPATH_TERM_ID = T4.GUID' + char(10) + char(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR T5 ON T2.FILENAME_TERM_ID = T5.GUID' + char(10) ELSE SET @SQL1 += char(9) + 'TBIDB_OBJECT T ' + char(10) + + char(9) + 'INNER JOIN VWIDB_DOC_DOCTYPE DT ON T.IDB_OBJ_ID = DT.IDB_OBJ_ID' + char(10) - SET @SQL1 += 'WHERE ' + char(10) + char(9) + 'T.KIND_TYPE_ID = 1 AND T.DELETED = 0 AND T.ACTIVE = 1' + SET @SQL1 += 'WHERE' + char(10) + + char(9) + 'DT.LANG_CODE = ''' + @pLANGCODE + ''' AND' + char(10) + + char(9) + 'T.KIND_TYPE_ID = 1 AND T.DELETED = 0 AND T.ACTIVE = 1' PRINT @SQL1 IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2))) BEGIN @@ -4120,7 +4249,6 @@ BEGIN EXEC sp_executesql @SQL1 END GO -GO --EXEC PRIDB_CREATE_VIEW_DOC_DATA 'de-DE','DEFAULT' --GO --EXEC PRIDB_CREATE_VIEW_DOC_DATA 'de-DE','' @@ -4913,44 +5041,68 @@ GO -- ,@WHO_TERM_ID FROM TBIDB_USER_SEARCH_CRITERIA WHERE USERID = @pUserID AND SEARCH_PROFIL_ID = @pSEARCHID --END --GO --- ============================================= --- Author: DD MS 15.03.2021 --- Change date: --- ============================================= -CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_OBJECT] @KIND_TYPE VARCHAR(20),@WHO VARCHAR(100),@IDB_DOCTYPE_ID INTEGER,@FOREIGN_REFID Bigint = 0, @IDB_OBJ_ID BIGINT OUTPUT +ALTER PROCEDURE [dbo].[PRIDB_NEW_OBJECT] @KIND_TYPE VARCHAR(20),@WHO VARCHAR(100),@FOREIGN_REFID Bigint = 0,@PARENT_OBJ_ID BIGINT = 0, @IDB_OBJ_ID BIGINT OUTPUT AS BEGIN DECLARE @KINDTYPE_ID TINYINT - SELECT @KINDTYPE_ID = GUID FROM TBIDB_OBJECT_KIND WHERE UPPER(KIND_NAME) = UPPER(@KIND_TYPE); + SELECT @KINDTYPE_ID = GUID FROM TBIDB_OBJECT_KIND WHERE KIND_NAME = @KIND_TYPE; IF @FOREIGN_REFID <> 0 - IF EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @FOREIGN_REFID) - SELECT @IDB_OBJ_ID = IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @FOREIGN_REFID - ELSE - BEGIN - INSERT INTO [dbo].[TBIDB_OBJECT] - ([KIND_TYPE_ID],[REFERENCE_KEY],[ADDED_WHO]) VALUES (@KINDTYPE_ID,@FOREIGN_REFID,@WHO) - END + BEGIN + IF EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @FOREIGN_REFID) + SELECT @IDB_OBJ_ID = IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @FOREIGN_REFID + ELSE + BEGIN + INSERT INTO [dbo].[TBIDB_OBJECT] + ([KIND_TYPE_ID],[REFERENCE_KEY],PARENT_OBJ_ID,[ADDED_WHO]) VALUES (@KINDTYPE_ID,@FOREIGN_REFID,@PARENT_OBJ_ID,@WHO); + END + END ELSE BEGIN INSERT INTO [dbo].[TBIDB_OBJECT] - ([KIND_TYPE_ID],[ADDED_WHO]) VALUES (@KINDTYPE_ID,@WHO); + ([KIND_TYPE_ID],[REFERENCE_KEY],PARENT_OBJ_ID,[ADDED_WHO]) VALUES (@KINDTYPE_ID,@FOREIGN_REFID,@PARENT_OBJ_ID,@WHO); END SELECT @IDB_OBJ_ID = MAX(IDB_OBJ_ID) FROM TBIDB_OBJECT WHERE ADDED_WHO = @WHO; - INSERT INTO TBIDB_OBJECT_BE (IDB_OBJ_ID,BE_ID, ADDED_WHO) - SELECT @IDB_OBJ_ID,BE_ID,@WHO FROM TBIDB_DOCTYPE_BE WHERE DOCTYPE_ID = @IDB_DOCTYPE_ID; +END +GO +-- ============================================= +-- Author: DD MS +-- ============================================= +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_DOC_DOCTYPE] @pIDB_OBJ_ID BIGINT,@pDoctypeID INTEGER, @pWHO VARCHAR(100) +AS +BEGIN + + IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_STRUCTURE_TYPE WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND STRUCTURE_ID = 1 AND RELATION_ID = @pDoctypeID ) + INSERT INTO TBIDB_OBJECT_STRUCTURE_TYPE (IDB_OBJ_ID,STRUCTURE_ID,RELATION_ID,ADDED_WHO) VALUES (@pIDB_OBJ_ID,1 ,@pDoctypeID,@pWHO); + UPDATE TBIDB_OBJECT_STRUCTURE_TYPE SET RELATION_ID = @pDoctypeID,CHANGED_WHO = @pWHO + WHERE + IDB_OBJ_ID = @pIDB_OBJ_ID AND STRUCTURE_ID = 1 + AND RELATION_ID <> @pDoctypeID; + EXEC PRIDB_OBJECT_CHANGED_SUBSTRUCTURE @pIDB_OBJ_ID,@pWHO +END +GO +-- ============================================= +-- Author: DD MS +-- ============================================= +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_OBJECT_CHANGED_SUBSTRUCTURE] @pIDB_OBJ_ID BIGINT,@pWHO VARCHAR(100) +AS +BEGIN + + UPDATE TBIDB_OBJECT SET + CHANGED_WHEN_SUBSTRUCTURE = GETDATE() + ,CHANGED_WHO_SUBSTRUCTURE = @pWHO WHERE IDB_OBJ_ID = @pIDB_OBJ_ID END GO -- ============================================= -- Author: DD MS 15.03.2021 -- Change: 13.07.2021 Filesize -- ============================================= -CREATE PROCEDURE [dbo].[PRIDB_NEW_IDBFO] @REL_PATH VARCHAR(512),@FILE_NAME VARCHAR(200),@FILE_EXT VARCHAR(10), @FILE_SIZE BIGINT, @FILE_HASH VARCHAR(500), - @WHO VARCHAR(100), @IDB_OBJ_ID BIGINT,@OBJ_ST_ID INT +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_IDBFO] @REL_PATH VARCHAR(512),@FILE_NAME VARCHAR(200),@FILE_EXT VARCHAR(10), @FILE_SIZE BIGINT, @FILE_HASH VARCHAR(500), + @WHO VARCHAR(100), @IDB_OBJ_ID BIGINT,@OBJ_ST_ID INT,@IDB_DOCTYPE_ID INTEGER AS BEGIN DECLARE @@ -4969,7 +5121,11 @@ BEGIN --SELECT @FILENAME_ONLY = [dbo].[FNGetFileNameWithoutExtension] (@REL_PATH); --SELECT @EXT = UPPER([dbo].[FNGetExtension] (@REL_PATH)); --PRINT 'PRIDB_NEW_IDBFO: ' + @REL_PATH - + INSERT INTO TBIDB_OBJECT_BE (IDB_OBJ_ID,BE_ID, ADDED_WHO) + SELECT @IDB_OBJ_ID,BE_ID,@WHO FROM TBIDB_DOCTYPE_BE WHERE DOCTYPE_ID = @IDB_DOCTYPE_ID; + --ADD THE DOCTYPE + EXEC PRIDB_NEW_DOC_DOCTYPE @IDB_OBJ_ID,@IDB_DOCTYPE_ID, @WHO; + BEGIN IF NOT EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_FILE_OBJECT WHERE IDB_OBJ_ID = @IDB_OBJ_ID) INSERT INTO [dbo].[TBIDB_FILE_OBJECT] @@ -5298,7 +5454,7 @@ GO -- Changed: 01.11.2021 MS TERM_COLUMNS -- Changed: 10.08.2020 MS Anpassung -- ============================================= -CREATE PROCEDURE [dbo].[PRIDB_NEW_DOCUMENT] @OBJ_ST_ID INT, @REL_PATH VARCHAR(512),@WHO VARCHAR(100), @REF_DOCID BIGINT = 0, @BE VARCHAR(500) = '', @IDB_OBJ_ID BIGINT OUTPUT +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_DOCUMENT] @OBJ_ST_ID INT, @REL_PATH VARCHAR(512),@WHO VARCHAR(100), @REF_DOCID BIGINT = 0, @BE VARCHAR(500) = '', @IDB_OBJ_ID BIGINT OUTPUT AS BEGIN DECLARE @@ -5333,7 +5489,7 @@ BEGIN EXECUTE [dbo].[PRIDB_NEW_TERM] 'Varchar',@EXT,@WHO, @TERM_ID = @EXTENSION_TERM OUTPUT --PRINT '@EXT: ' + @EXT --IF NOT EXISTS(SELECT [IDB_OBJ_ID] FROM [TBIDB_DOC_INFO] WHERE [OBJ_ST_ID] = @OBJ_ST_ID AND UPPER([RELATIVE_PATH]) = @RELATIVE_PATH) - EXEC PRIDB_NEW_OBJECT 'DOC',@WHO,@BE,@REF_DOCID, @IDB_OBJ_ID = @IDB_OBJ_ID OUTPUT; + EXEC PRIDB_NEW_OBJECT 'DOC',@WHO,@BE,@REF_DOCID, 0,@IDB_OBJ_ID = @IDB_OBJ_ID OUTPUT; PRINT 'PRIDB_NEW_DOCUMENT - @IDB_OBJ_ID from PRIDB_NEW_OBJECT: ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) BEGIN IF NOT EXISTS(SELECT IDB_OBJ_ID FROM [TBIDB_DOC_INFO] WHERE IDB_OBJ_ID = @IDB_OBJ_ID) @@ -5441,10 +5597,69 @@ BEGIN END GO +-- ============================================= +-- Author: DD MS +-- Changed: +-- ============================================= +CREATE PROCEDURE PRIDB_NEW_DYNAMIC_FOLDER_FOR_OBJECT @pIDB_OBJ_ID BIGINT, @pDYNAMIC_FOLDER VARCHAR(900),@pWHO VARCHAR(100),@pLANG_CODE VARCHAR(5) +AS +DECLARE + @FOLD_PART VARCHAR(250) +BEGIN + DECLARE @FOLDER_DEPTH TINYINT,@FOLDER_PART VARCHAR(900) + SET @FOLDER_DEPTH = 0 + DECLARE @PARENT_OBJ_ID BIGINT + --SPLIT FOR FOLDER PARTS + DECLARE cursSplitFolder CURSOR FOR + SELECT Item FROM [dbo].[FN_SPLIT_STRING] (@pDYNAMIC_FOLDER,'\') + OPEN cursSplitFolder + FETCH NEXT FROM cursSplitFolder INTO @FOLD_PART + WHILE @@FETCH_STATUS = 0 + BEGIN + --EACH FOLDER PART WORKED SEPERATELY + IF @FOLDER_DEPTH = 0 + BEGIN + SET @PARENT_OBJ_ID = 0 + SET @FOLDER_PART = @FOLD_PART + END + ELSE + BEGIN + SET @FOLDER_PART += '\' + @FOLD_PART + END + PRINT '##############################' + PRINT '@FOLDER_PART: ' + @FOLDER_PART + DECLARE @PATH_PART_ID BIGINT,@FOLDER_PART_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@FOLD_PART,@pWHO,@TERM_ID = @PATH_PART_ID OUTPUT; + --EXEC PRIDB_NEW_TERM 'VARCHAR',@FOLDER_PART,'DD MS',@TERM_ID = @FOLDER_PART_ID OUTPUT; + DECLARE @FOLD_PART_IDB_OBJ_ID BIGINT + IF NOT EXISTS(SELECT * FROM VWIDB_STRUCTURE_NODES WHERE TERM_GUID = @PATH_PART_ID AND PARENT_OBJ_ID = @PARENT_OBJ_ID) + BEGIN + PRINT 'FOLDER-PART ' + @FOLD_PART + ' muss angelegt werden' + EXEC PRIDB_NEW_OBJECT 'DYNAMIC_FOLDER',@pWHO,0, @PARENT_OBJ_ID, @IDB_OBJ_ID = @FOLD_PART_IDB_OBJ_ID OUTPUT; + DECLARE @NEW_OBJ_MD_ID BIGINT + EXEC PRIDB_NEW_OBJ_DATA @FOLD_PART_IDB_OBJ_ID, 'VIRTUAL_FOLDER_PART', @pWHO, @FOLD_PART, @pLANG_CODE, 0, @OMD_ID = @NEW_OBJ_MD_ID OUTPUT + END + ELSE + BEGIN + SELECT @FOLD_PART_IDB_OBJ_ID = MAX(IDB_OBJ_ID) FROM VWIDB_STRUCTURE_NODES WHERE TERM_GUID = @PATH_PART_ID AND PARENT_OBJ_ID = @PARENT_OBJ_ID + PRINT 'FOLDER-PART ' + @FOLD_PART + ' EXISTIERT BEREITS' + END + SET @PARENT_OBJ_ID = @FOLD_PART_IDB_OBJ_ID + + SET @FOLDER_DEPTH += 1 + FETCH NEXT FROM cursSplitFolder INTO @FOLD_PART + END + CLOSE cursSplitFolder + DEALLOCATE cursSplitFolder + + IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_DYNAMIC_FOLDER WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND DYN_FOLD_ID = @FOLD_PART_IDB_OBJ_ID) + INSERT INTO TBIDB_OBJECT_DYNAMIC_FOLDER (IDB_OBJ_ID,DYN_FOLD_ID,ADDED_WHO) VALUES (@pIDB_OBJ_ID,@FOLD_PART_IDB_OBJ_ID,@pWHO); +END +GO -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('Doctype',1,1); +--INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('Doctype',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginFileName',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginCreationDatetime',6,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginChangedDatetime',6,1); @@ -5456,6 +5671,8 @@ INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailSubject', INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailFrom',1,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailDate',5,1); INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('PM-LOGGING',8,0,1); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('VIRTUAL_FOLDER',1,1); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('VIRTUAL_FOLDER_PART',1,1); --INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('ObjectEvents',1,1,1); INSERT INTO TBIDB_BE_ATTRIBUTE (BE_ID,ATTR_ID,DEFAULT_SEARCH_ATTRIBUTE) SELECT 1,GUID, 1 FROM TBIDB_ATTRIBUTE WHERE TITLE NOT IN ('PM-LOGGING','ObjectEvents') ; @@ -5478,7 +5695,7 @@ BEGIN @USRID,'GLOBIX_DROPAREA','PROGRESSIVE','System'); END GO -ALTER PROCEDURE [dbo].[PRIDB_NEW_DOCTYPE] @pDoctypeUnique VARCHAR(100),@pDoctype_Lang VARCHAR(100),@pWHO VARCHAR(100),@LANG_CODE VARCHAR(5) = 'de-DE' +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_DOCTYPE] @pDoctypeUnique VARCHAR(100),@pDoctype_Lang VARCHAR(100),@pWHO VARCHAR(100),@LANG_CODE VARCHAR(5) = 'de-DE' AS BEGIN DECLARE @@ -5520,7 +5737,7 @@ BEGIN IF EXISTS(SELECT GUID FROM TBIDB_LANGUAGE_TERM WHERE OBJECT_ID = @DOCTYPE_ID AND LANG_ID = @LANG_ID AND TERM_ID <> @MY_DOCTYPE_TERM_ID AND KIND_TYPE = 2) BEGIN UPDATE [dbo].[TBIDB_LANGUAGE_TERM] SET TERM_ID = @MY_DOCTYPE_TERM_ID, CHANGED_WHO = @WHO_TERM_ID - WHERE OBJECT_ID = @DOCTYPE_ID AND LANG_ID = @LANG_ID AND KIND_TYPE = 2; + WHERE OBJECT_ID = @DOCTYPE_ID AND LANG_ID = @LANG_ID AND KIND_TYPE = 2 AND TERM_ID <> @MY_DOCTYPE_TERM_ID; END END diff --git a/00_IDB/Search_Logic.sql b/00_IDB/Search_Logic.sql new file mode 100644 index 0000000000000000000000000000000000000000..909ace0ea44c9765ac58f629be1d4c92ebf106a5 GIT binary patch literal 13232 zcmeHOYik=v6un?f1DTz%8OCN!j2I|Hw^izL&+jHjb z)y%GDceN`e@e3hkA2WCE``$U@{P*vt@`>!oNM^Dxr;@nO39crxhbKdMj_Z9qeI-B3 zkMg^`mOidI;s|edC6y`O@8EtLtOD+&Yyw~*O+2{B3*eZ7kDzoyVTK1 zc?JvVNV{;3>etj>5bUzs~jc&a*{x_@^;;n2y+ryFj} z9&|(QN&BhOit18%TjbHpxPkFQIR}SR`5siLO5Nj=GrxFX4l)nbER=42Y5#7ms$0#{3^eJCu;GYe1UJr>1_kL;v7m9 z(~;^ukw0BgXNofKx_7-sZ~T>p6e) zypfZiUUGo(6Bh+D#9%xU!?@G9WZa}K?ljh4B4T+(iuq`yHj6R(wbM;#NAfeyqSwJY(%)6P57~LA_-DvD;7Sy?# zg~)yA+eO(a2d#PljcAsxa-FUc+H!er^Bl#wF6J$A%?h)NU(N8$*iHG@ ztTBMKn)&tSTmvDuq4dm%VWu@ZGkS(uJZz#~e14@r$~F0VhT%QjqaHS%PuDn+iq zUR&RVdeyJErMv_Gp`yl3?1X-+kcT}veRoU)A zwpXC9(|?LJ()jCTR_}w$AwJxdr5Sf)mp`63O6BuAutf9xW$Ux5Ywl7yyjz{;Z{91< z+Y3CK{BghDfL47iw!HxNqgDP+-(^R=2Y=xnm^qNPnZaVz-gyuK%T>UlPnZpcj*|n_ z45eG`6FryDXKpNc>Ovc|8lz=v?g?>CtSb9C)?*jO7`m!DsLOJz>VWl%I(VFEV0y*; zKx6OmnmvJ*XWnN#5H(^APx<|L zlYYUx*7M=@*fugk3T?%ZbdWZ+VPm7%x=$Qb=++QMgVv*8L65}>R ze*B)a-&!O7=?;ml(}9r&g<>=P!Vd8K3G&X~Cn2VflEDq4FA~jD9=W<6jrB=4eK!N7yZI zhFQKGw>QLh2MDsCNhvhL+Os0Q9O9J9GbtES{Bbc}<;QC19op+_Q#o2&w+FpLd+qOg ztT(+aXm5&~wTMgHF0{9~4&FCj_K@Y(Go%p95%u*#B?@yz_}3QPA?hws ftpACXw*}t literal 0 HcmV?d00001 diff --git a/00_IDB/Search_TEST.sql b/00_IDB/Search_TEST.sql new file mode 100644 index 0000000000000000000000000000000000000000..a992f05816730208c7a4fb87ef5ed5a14e5d4ae9 GIT binary patch literal 110 zcmW;DF$#b%5Jb^m3*NylAU4)k8iNWJk|?B0rC{s*QAdl}*|)II?T9!m1q+^uo{mJ& mt(7gKv`SGkF=+eRs{ Date: Wed, 13 Apr 2022 11:49:36 +0200 Subject: [PATCH 7/9] MS --- 00_DD/DD_ECM.sql | 39 ++-- 00_IDB/CreateDBObjects.sql | 321 +++++++++++++++++++++-------- 00_IDB/Search_Logic.sql | Bin 13232 -> 13544 bytes 00_IDB/Search_TEST.sql | Bin 110 -> 236 bytes 01_PM/CreateDBObjects.sql | 13 +- 01_PM/Updates/2.2.1.0.sql | 17 ++ 02_GI/CreateDBObjects.sql | 28 +-- 02_GI/Updates/2.5.0.0.sql | 3 - 02_GI/Updates/2.5.2.0.sql | 4 +- 07_UserManager/CreateDBObjects.sql | 21 +- 09_ZooFlow/Update/1.0.0.1.sql | Bin 32046 -> 33326 bytes 10_Monitor/CreateDBObjects.sql | 6 +- 12 files changed, 302 insertions(+), 150 deletions(-) create mode 100644 01_PM/Updates/2.2.1.0.sql diff --git a/00_DD/DD_ECM.sql b/00_DD/DD_ECM.sql index e1fac4f..a79e272 100644 --- a/00_DD/DD_ECM.sql +++ b/00_DD/DD_ECM.sql @@ -1,14 +1,19 @@ -/*################################## -1. Search for @MY_INSTALL_USER and replace it with the username You use for administration -2. In case windream is installed on another SQL-Server: - Replace windream60 in code with name of linked Database - Example: [172.24.12.41\REMOTESERVER\windream60]. -3. Search for DIGITALDATA.LOCAL and replace with Your Domainname -4. Add the ECM-Login Data - Search for @ECM_IP and replace it with IP of MSSQL Server - Search for @ECM_USER and replace it with DB-Username for ECM-DB - Search for @ECM_PW and replace it with PW for ECM-User - ####################################*/ - +--################################## +--1. Replace @ADMINUSER NAmes +DECLARE @ADMINUSER1 VARCHAR(100),@ADMINUSER2 VARCHAR(100) +SET @ADMINUSER1 = 'Administrator' +SET @ADMINUSER2 = 'digitaldata' +-- 2. In case windream is installed on another SQL-Server: +-- Replace windream60 in code with name of linked Database - Example: [172.24.12.41\REMOTESERVER\windream60]. +-- 3. Search for DIGITALDATA.LOCAL and replace with Your Domainname +-- 4. Add the ECM-Login Data +-- Search for @ECM_IP and replace it with IP or Name of MSSQL Server +-- Search for @ECM_USER and replace it with DB-Username for ECM-DB +-- Search for @ECM_PW and replace it with PW for ECM-User +-- #################################### +CREATE TABLE TBIMPORT_USER (USR_NAME VARCHAR(100)); +INSERT INTO TBIMPORT_USER (USR_NAME) VALUES (@ADMINUSER1); +INSERT INTO TBIMPORT_USER (USR_NAME) VALUES (@ADMINUSER2); CREATE TABLE TBDD_BASECONFIG ( GUID TINYINT, @@ -207,10 +212,10 @@ CREATE TABLE TBDD_USER CONSTRAINT PK_TBDD_USER PRIMARY KEY (GUID) ) GO -DECLARE @MY_INSTALL_ADMIN_USER VARCHAR(50) -SET @MY_INSTALL_ADMIN_USER = '@MY_INSTALL_USER' -INSERT INTO TBDD_USER(PRENAME,NAME,USERNAME) VALUES -('DefPrename','DefSurname',@MY_INSTALL_ADMIN_USER) + + +INSERT INTO TBDD_USER(PRENAME,NAME,USERNAME) +SELECT 'Prename','Surname',USR_NAME FROM TBIMPORT_USER; GO @@ -761,6 +766,8 @@ GO ------------------------------------------------------------------------------ INSERT INTO TBDD_CONNECTION(BEZEICHNUNG,SQL_PROVIDER,SERVER,DATENBANK,USERNAME,PASSWORD) VALUES ('DD_ECM','MS-SQL','@ECM_IP','DD_ECM','@ECM_USER','@ECM_PW') GO +INSERT INTO TBDD_CONNECTION(BEZEICHNUNG,SQL_PROVIDER,SERVER,DATENBANK,USERNAME,PASSWORD) VALUES ('IDB','MS-SQL','@ECM_IP','DD_ECM','@ECM_USER','@ECM_PW') +GO --INSERT INTO TBCONNECTION(BEZEICHNUNG,SQL_PROVIDER,SERVER,DATENBANK,USERNAME,PASSWORD) VALUES ('Zeiterfassung','SQLOLEDB','192.168.48.13','DD_ZEITERFASSUNG_AB_112011','sa','dd') --GO --INSERT INTO TBCONNECTION(BEZEICHNUNG,SQL_PROVIDER,SERVER,DATENBANK,USERNAME,PASSWORD) VALUES ('Oracle-Fuchs','OraOLEDB.Oracle','192.168.48.32','10FUCHS','IID_GH','dd') @@ -1005,6 +1012,7 @@ CREATE TABLE TBDD_INDEX_AUTOM SQL_ACTIVE BIT DEFAULT 0 NOT NULL, COMMENT VARCHAR(400), ACTIVE BIT DEFAULT 1 NOT NULL, -- 1 - Index aktiv, bei 0 - inaktiv. + SEQUENCE INT DEFAULT 1 NOT NULL, ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, ADDED_WHEN DATETIME DEFAULT GETDATE() , CHANGED_WHO VARCHAR(50), @@ -1581,7 +1589,6 @@ DECLARE c_REDO CURSOR FOR WHILE @@FETCH_STATUS = 0 BEGIN DECLARE @ECM_USR_ID INTEGER - --SELECT [dwUserID] FROM windream60.[dbo].[UserInfo] where UPPER(szUserName) = UPPER('windream') SELECT @ECM_USR_ID = [dwUserID] FROM windream60.[dbo].[UserInfo] where UPPER(szUserName) = UPPER(@USERNAME) IF @ECM_USR_ID IS NOT NULL diff --git a/00_IDB/CreateDBObjects.sql b/00_IDB/CreateDBObjects.sql index 719fd31..d120d96 100644 --- a/00_IDB/CreateDBObjects.sql +++ b/00_IDB/CreateDBObjects.sql @@ -1,4 +1,6 @@ --REPLACE @MY_DD_ECM_DB WITH REAL_DBNAME +USE IDB +GO ALTER TABLE DD_ECM.dbo.TBDD_DOKUMENTART ADD IDB_DOCTYPE_ID INT NOT NULL DEFAULT 0; GO @@ -108,30 +110,6 @@ AS FROM INSERTED WHERE TBIDB_ACTION_STEPS.GUID = INSERTED.GUID GO -CREATE TABLE TBIDB_FULLTEXT_OBJECT -( - GUID BIGINT NOT NULL IDENTITY (1, 1), - OBJECT_ID BIGINT NOT NULL, - FULL_TEXT NVARCHAR(MAX) NOT NULL, - CAT_ID INTEGER NOT NULL, - ADDED_WHO BIGINT, - ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), - CHANGED_WHO BIGINT, - CHANGED_WHEN DATETIME, - CONSTRAINT PK_TBIDB_FULLTEXT_OBJECT PRIMARY KEY (GUID), - CONSTRAINT UN_TBIDB_FULLTEXT_OBJECT UNIQUE(OBJECT_ID,CAT_ID), - CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_CAT_ID FOREIGN KEY (CAT_ID) REFERENCES TBIDB_CATALOG (GUID), - CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), - CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) -GO -CREATE TRIGGER TBIDB_FULLTEXT_OBJECT_AFT_UPD ON TBIDB_FULLTEXT_OBJECT -FOR UPDATE -AS - UPDATE TBIDB_FULLTEXT_OBJECT SET CHANGED_WHEN = GETDATE() - FROM INSERTED - WHERE TBIDB_FULLTEXT_OBJECT.GUID = INSERTED.GUID -GO - INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DB_VERSION','1.0.4.1') GO @@ -164,7 +142,30 @@ AS FROM INSERTED WHERE TBIDB_CATALOG.GUID = INSERTED.GUID GO - +--DROP TABLE TBIDB_BUSINESS_ENTITY +CREATE TABLE TBIDB_BUSINESS_ENTITY +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + TITLE VARCHAR(500) NOT NULL, + PARENT_ENT_ID INTEGER NOT NULL DEFAULT 0, + INHERITS_ATTRIBUTES BIT NOT NULL DEFAULT 1, + COMMENT VARCHAR(1000), + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_BUSINESS_ENTITY PRIMARY KEY (GUID), + CONSTRAINT UQ_TBIDB_BUSINESS_ENTITY UNIQUE (TITLE) +) +GO +CREATE TRIGGER TBIDB_BUSINESS_ENTITY_AFT_UPD ON TBIDB_BUSINESS_ENTITY +FOR UPDATE +AS + UPDATE TBIDB_BUSINESS_ENTITY SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_BUSINESS_ENTITY.GUID = INSERTED.GUID +GO +INSERT INTO TBIDB_BUSINESS_ENTITY (TITLE) VALUES ('DEFAULT'); --DROP TABLE TBIDB_OBJECT_STORE CREATE TABLE TBIDB_OBJECT_STORE ( @@ -276,7 +277,7 @@ CREATE TABLE TBIDB_TERM_VALUE_VARCHAR CHANGED_WHEN DATETIME, CONSTRAINT PK_TBIDB_TERM_VALUE_VARCHAR PRIMARY KEY (GUID), CONSTRAINT UQ_TBIDB_TERM_VALUE_VARCHAR UNIQUE (TERM_VALUE), - CONSTRAINT UQ_TBIDB_TERM_VALUE_VARCHAR UNIQUE (TERM_VALUE_REVERSE) + CONSTRAINT UQ_TBIDB_TERM_VALUE_VARCHAR_REV UNIQUE (TERM_VALUE_REVERSE) ) GO CREATE TRIGGER TBIDB_TERM_VALUE_VARCHAR_AFT_UPD ON TBIDB_TERM_VALUE_VARCHAR @@ -398,6 +399,30 @@ AS FROM INSERTED WHERE TBIDB_TERM_VALUE_DATETIME.GUID = INSERTED.GUID GO +CREATE TABLE TBIDB_FULLTEXT_OBJECT +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + OBJECT_ID BIGINT NOT NULL, + FULL_TEXT NVARCHAR(MAX) NOT NULL, + CAT_ID INTEGER NOT NULL, + ADDED_WHO BIGINT, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHO BIGINT, + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_FULLTEXT_OBJECT PRIMARY KEY (GUID), + CONSTRAINT UN_TBIDB_FULLTEXT_OBJECT UNIQUE(OBJECT_ID,CAT_ID), + CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_CAT_ID FOREIGN KEY (CAT_ID) REFERENCES TBIDB_CATALOG (GUID), + CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID), + CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),) +GO +CREATE TRIGGER TBIDB_FULLTEXT_OBJECT_AFT_UPD ON TBIDB_FULLTEXT_OBJECT +FOR UPDATE +AS + UPDATE TBIDB_FULLTEXT_OBJECT SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_FULLTEXT_OBJECT.GUID = INSERTED.GUID +GO + --DROP TABLE TBIDB_ATTRIBUTE_TYPE CREATE TABLE TBIDB_ATTRIBUTE_TYPE ( @@ -460,30 +485,7 @@ AS FROM INSERTED WHERE TBIDB_OBJECT_KIND.GUID = INSERTED.GUID GO ---DROP TABLE TBIDB_BUSINESS_ENTITY -CREATE TABLE TBIDB_BUSINESS_ENTITY -( - GUID INTEGER NOT NULL IDENTITY (1, 1), - TITLE VARCHAR(500) NOT NULL, - PARENT_ENT_ID INTEGER NOT NULL DEFAULT 0, - INHERITS_ATTRIBUTES BIT NOT NULL DEFAULT 1, - COMMENT VARCHAR(1000), - ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM', - ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), - CHANGED_WHO VARCHAR(30), - CHANGED_WHEN DATETIME, - CONSTRAINT PK_TBIDB_BUSINESS_ENTITY PRIMARY KEY (GUID), - CONSTRAINT UQ_TBIDB_BUSINESS_ENTITY UNIQUE (TITLE) -) -GO -CREATE TRIGGER TBIDB_BUSINESS_ENTITY_AFT_UPD ON TBIDB_BUSINESS_ENTITY -FOR UPDATE -AS - UPDATE TBIDB_BUSINESS_ENTITY SET CHANGED_WHEN = GETDATE() - FROM INSERTED - WHERE TBIDB_BUSINESS_ENTITY.GUID = INSERTED.GUID -GO -INSERT INTO TBIDB_BUSINESS_ENTITY (TITLE) VALUES ('DEFAULT'); + CREATE TABLE TBIDB_LANGUAGE ( @@ -558,13 +560,14 @@ BEGIN CATCH + CONVERT(VARCHAR(500),ERROR_MESSAGE()) END CATCH GO -CREATE TRIGGER TBIDB_OBJECT_AFT_UPD ON TBIDB_OBJECT + +CREATE TRIGGER [dbo].[TBIDB_OBJECT_AFT_UPD] ON [dbo].[TBIDB_OBJECT] FOR UPDATE AS - UPDATE TBIDB_OBJECT SET CHANGED_WHEN = GETDATE() - FROM INSERTED - WHERE TBIDB_OBJECT.IDB_OBJ_ID = INSERTED.IDB_OBJ_ID -GO +IF UPDATE(REFERENCE_KEY) OR UPDATE(PARENT_OBJ_ID) OR UPDATE(IS_VERSION) OR UPDATE(ACTIVE) OR UPDATE(DELETED) OR UPDATE(COMMENT) + UPDATE TBIDB_OBJECT SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_OBJECT.IDB_OBJ_ID = INSERTED.IDB_OBJ_ID CREATE TABLE TBIDB_STRUCTURE_TYPE ( @@ -613,11 +616,6 @@ AS FROM INSERTED WHERE TBIDB_OBJECT_STRUCTURE_TYPE.GUID = INSERTED.GUID GO - -INSERT INTO TBIDB_OBJECT_STRUCTURE_TYPE (IDB_OBJ_ID,STRUCTURE_ID,RELATION_ID) VALUES (12031,1 ,(SELECT GUID FROM TBIDB_DOCTYPE WHERE TITLE = 'Projektunterlage')) -INSERT INTO TBIDB_OBJECT_STRUCTURE_TYPE (IDB_OBJ_ID,STRUCTURE_ID,RELATION_ID) VALUES (12037,1 ,(SELECT GUID FROM TBIDB_DOCTYPE WHERE TITLE = 'Lieferschein')) -INSERT INTO TBIDB_OBJECT_STRUCTURE_TYPE (IDB_OBJ_ID,STRUCTURE_ID,RELATION_ID) VALUES (12035,1 ,(SELECT GUID FROM TBIDB_DOCTYPE WHERE TITLE = 'Gutschrift')) - CREATE TABLE TBIDB_DOC_INFO ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -955,7 +953,7 @@ CREATE NONCLUSTERED INDEX IDXTBIDB_OBJECT_METADATA_IDBOBJID ON [dbo].[TBIDB_OBJECT_METADATA] ([IDB_OBJ_ID]) GO -DROP TABLE TBIDB_OBJECT_METADATA_CHANGE; +--DROP TABLE TBIDB_OBJECT_METADATA_CHANGE; CREATE TABLE TBIDB_OBJECT_METADATA_CHANGE ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -990,7 +988,7 @@ CREATE TABLE TBIDB_OBJECT_METADATA_CHANGE CONSTRAINT FK_OMDC_NEW_DATE_TERM_ID FOREIGN KEY (NEW_DATE_TERM_ID) REFERENCES TBIDB_TERM_VALUE_DATE (GUID), ) GO -DROP TABLE TBIDB_OBJECT_METADATA_ADD +--DROP TABLE TBIDB_OBJECT_METADATA_ADD CREATE TABLE [dbo].[TBIDB_OBJECT_METADATA_ADD]( [GUID] BIGINT IDENTITY(1,1) NOT NULL, [IDB_OBJ_ID] BIGINT NOT NULL, @@ -1307,7 +1305,7 @@ GO GO -DROP TABLE TBIDB_MYOBJECT_STATES; +--DROP TABLE TBIDB_MYOBJECT_STATES; CREATE TABLE TBIDB_MYOBJECT_STATES ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -1367,19 +1365,24 @@ INSERT INTO [dbo].[TBIDB_COMMON_SQL] ('FLOW_SEARCH_SQL_BASE' ,'SELECT DOC.* + ,CONVERT(BIT,IIF(CHK.CHECKED_OUT_WHEN IS NULL,''False'',''True'')) CHECKED_OUT FROM TBIDB_SEARCH_RESULT_TERM_USER RES INNER JOIN VWIDB_LANGUAGE_TERM VWLTERM ON RES.MD_GUID = VWLTERM.MD_ID INNER JOIN VWIDB_DOCRESULT_DE DOC ON VWLTERM.IDB_OBJ_ID = DOC.DocID + LEFT JOIN TBIDB_OBJECT_CHECK_IN_OUT CHK ON DOC.DocID = CHK.IDB_OBJ_ID WHERE - RES.USR_ID = @USER_ID AND VWLTERM.LANG_CODE = ''@LANG_CODE''' + CHAR(10) - + 'UNION + RES.USR_ID = @USER_ID AND VWLTERM.LANG_CODE = ''@LANG_CODE'' +UNION SELECT DOC.* + ,CONVERT(BIT,IIF(CHK.CHECKED_OUT_WHEN IS NULL,''False'',''True'')) CHECKED_OUT FROM TBIDB_SEARCH_RESULT_STRUCT_TYPE_USER RES INNER JOIN VWIDB_DOC_DOCTYPE VWDT ON RES.STRUCTURE_ID = VWDT.STRUCTURE_ID AND RES.IDB_OBJ_ID = VWDT.IDB_OBJ_ID INNER JOIN VWIDB_DOCRESULT_DE DOC ON RES.IDB_OBJ_ID = DOC.DocID + LEFT JOIN TBIDB_OBJECT_CHECK_IN_OUT CHK ON DOC.DocID = CHK.IDB_OBJ_ID WHERE - RES.USR_ID = @USER_ID AND VWDT.LANG_CODE = ''@LANG_CODE''','SYSTEM') + RES.USR_ID = @USER_ID AND VWDT.LANG_CODE = ''@LANG_CODE'' + AND CHK.CHECKED_IN_WHEN IS NULL','SYSTEM') GO @@ -1420,9 +1423,25 @@ BEGIN END GO +CREATE PROCEDURE PRIDB_SEARCH_AUTOSUGGEST @pLANGCODE VARCHAR(5),@pUSRID INT +AS +DECLARE @TBRESULT TABLE(TERM VARCHAR(900)) +INSERT INTO @TBRESULT (TERM) +select DISTINCT TERM.TERM_VALUE + FROM TBIDB_TERM_VALUE_VARCHAR TERM + INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TLANG.TERM_ID = TERM.GUID + INNER JOIN TBIDB_LANGUAGE LANG ON LANG.GUID = TLANG.LANG_ID + INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.OBJECT_ID = MD.GUID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + WHERE + OBJ.ACTIVE = 1 AND LANG.LANG_CODE = @pLANGCODE; +INSERT INTO @TBRESULT (TERM) +select Doctype FROM VWIDB_DOC_DOCTYPE where LANG_CODE = @pLANGCODE; +SELECT * FROM @TBRESULT; +GO --DROP TABLE TBIDB_SEARCH_PROFILE -DROP TABLE TBIDB_SEARCH_LANGUAGE_SQL_RESULT -DROP TABLE TBIDB_SEARCH_PROFILE_USER_GROUP +--DROP TABLE TBIDB_SEARCH_LANGUAGE_SQL_RESULT +--DROP TABLE TBIDB_SEARCH_PROFILE_USER_GROUP CREATE TABLE TBIDB_SEARCH_PROFILE ( GUID INTEGER NOT NULL IDENTITY (1, 1), @@ -1986,7 +2005,7 @@ AS FROM INSERTED WHERE TBIDB_OBJECT_DYNAMIC_FOLDER.GUID = INSERTED.GUID GO -DROP TABLE TBIDB_OBJECT_CHECK_IN_OUT +--DROP TABLE TBIDB_OBJECT_CHECK_IN_OUT CREATE TABLE TBIDB_OBJECT_CHECK_IN_OUT ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -3138,7 +3157,7 @@ SELECT T.IDB_OBJ_ID ,T.ATTR_ID ,T1.TITLE ATTR_NAME - ,(SELECT [dbo].[FNIDB_GET_TERM_TEXT] (T.IDB_OBJ_ID,T.ATTR_ID)) AS 'Term_Value' + ,(SELECT [dbo].[FNIDB_GET_TERM_TEXT] (T.IDB_OBJ_ID,T.ATTR_ID,'de-DE')) AS 'Term_Value' FROM TBIDB_OBJECT_METADATA T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTR_ID = T1.GUID INNER JOIN TBIDB_ATTRIBUTE_TYPE T2 ON T1.TYP_ID = T2.GUID @@ -3158,8 +3177,8 @@ select T.DELETED_WHEN [Gelöscht wann] from TBIDB_OBJECT_METADATA_DELETE T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTR_ID = T1.GUID - INNER JOIN TBIDB_LANGUAGE_TERM T2 ON T.T = T2.GUID - INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T2.TEXT_TERM_ID = T3.GUID + INNER JOIN TBIDB_LANGUAGE_TERM T2 ON T.GUID = T2.[OBJECT_ID] + INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON T2.TERM_ID = T3.GUID GO CREATE OR ALTER VIEW [dbo].[VWIDB_VALUE_TEXT] AS select TOP 100 PERCENT @@ -3199,8 +3218,8 @@ CREATE VIEW VWIDB_CONVERSATION AS SELECT GUID As CONVERSATION_ID ,IDB_OBJ_ID - ,[dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (TITLE_TERM_ID) as TITLE - ,[dbo].[FNIDB_GET_STATE_FOR_OBJECT_ID] (GUID) AS CONVERSATION_STATE + ,[dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (TITLE_TERM_ID,'de-DE') as TITLE + --,[dbo].[FNIDB_GET_STATE_FOR_OBJECT_ID] (GUID) AS CONVERSATION_STATE ,[dbo].[FNIDB_GET_TERM_VALUE_VARCHAR] (ADDED_WHO) as ADDED_WHO ,ADDED_WHEN ,[dbo].[FNIDB_GET_TERM_VALUE_VARCHAR] (CHANGED_WHO) as CHANGED_WHO @@ -3211,11 +3230,11 @@ CREATE VIEW VWIDB_CONV_MESSAGES AS select T.GUID, T.CONV_ID, - (SELECT EMAIL FROM @MY_DD_ECM_DB.dbo.TBDD_USER WHERE GUID = T.TO_USER) TO_USER, - [dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (T1.TITLE_TERM_ID) AS CONV_TITLE + (SELECT EMAIL FROM DD_ECM.dbo.TBDD_USER WHERE GUID = T.TO_USER) TO_USER, + [dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (T1.TITLE_TERM_ID,'de-DE') AS CONV_TITLE ,[dbo].[FNIDB_GET_TERM_VALUE_VARCHAR] (T.FROM_USER) as USER_FROM - ,[dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (T.MESSAGE_TERM_ID) as MESSAGE_TEXT - ,[dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (T.ADDED_WHO) as ADDED_WHO + ,[dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (T.MESSAGE_TERM_ID,'de-DE') as MESSAGE_TEXT + ,[dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (T.ADDED_WHO,'de-DE') as ADDED_WHO ,T.ADDED_WHEN from TBIDB_CONVERSATION_MESSAGE T INNER JOIN TBIDB_CONVERSATION_OBJECT T1 ON T.CONV_ID = T1.GUID GO @@ -3488,6 +3507,42 @@ from TBIDB_OBJECT_METADATA T INNER JOIN TBIDB_LANGUAGE T4 ON T2.LANG_ID = T4.GUID WHERE OBJ.ACTIVE = 1 AND OBJ.KIND_TYPE_ID = 3 AND T1.GUID = (SELECT GUID FROM TBIDB_ATTRIBUTE WHERE TITLE = 'VIRTUAL_FOLDER_PART') GO +CREATE VIEW VWOBJECT_CHECKED_OUT AS +SELECT + CHK.GUID ID, + CHK.IDB_OBJ_ID, + CHK.CHECKED_OUT_WHEN, + CHK.CHECKED_IN_WHEN, + USR.EMAIL, + USR.NAME + ', ' + USR.PRENAME USR_NAME_PRENAME + +FROM TBIDB_OBJECT_CHECK_IN_OUT CHK INNER JOIN DD_ECM.dbo.TBDD_USER USR ON CHK.ADDED_WHO = USR.USERNAME +GO +CREATE VIEW [dbo].[VWIDB_OBJECT] +AS +SELECT + OBJ.IDB_OBJ_ID, + dbo.TBIDB_OBJECT_BE.BE_ID, + dbo.TBIDB_OBJECT_KIND.GUID AS KIND_ID, + dbo.TBIDB_OBJECT_KIND.KIND_NAME, + dbo.TBIDB_BUSINESS_ENTITY.TITLE AS BE_NAME, + dbo.TBIDB_OBJECT_STORE.GUID AS STORE_ID, + dbo.TBIDB_OBJECT_STORE.OBJECT_TITLE AS STORE_NAME, + DT.Doctype_ID, + DT.SYS_TITLE as DoxtypeSysTitle +FROM + dbo.TBIDB_OBJECT OBJ INNER JOIN + dbo.TBIDB_OBJECT_BE ON OBJ.IDB_OBJ_ID = dbo.TBIDB_OBJECT_BE.IDB_OBJ_ID INNER JOIN + dbo.TBIDB_OBJECT_KIND ON OBJ.KIND_TYPE_ID = dbo.TBIDB_OBJECT_KIND.GUID INNER JOIN + dbo.TBIDB_FILE_OBJECT ON dbo.TBIDB_FILE_OBJECT.IDB_OBJ_ID = OBJ.IDB_OBJ_ID INNER JOIN + dbo.TBIDB_OBJECT_STORE ON dbo.TBIDB_OBJECT_STORE.GUID = dbo.TBIDB_FILE_OBJECT.OBJ_ST_ID INNER JOIN + dbo.TBIDB_BUSINESS_ENTITY ON dbo.TBIDB_OBJECT_BE.BE_ID = dbo.TBIDB_BUSINESS_ENTITY.GUID INNER JOIN + VWIDB_DOC_DOCTYPE DT ON OBJ.IDB_OBJ_ID = DT.IDB_OBJ_ID +GO + + + + /*########################################### ############## PROCEDURES ################### #############################################*/ @@ -3711,6 +3766,8 @@ EXEC PRIDB_NEW_IDB_STATE 'File deleted', 'SYSTEM'; EXEC PRIDB_NEW_IDB_STATE 'Metadata changed','SYSTEM'; EXEC PRIDB_NEW_IDB_STATE 'Attributevalue deleted','SYSTEM'; EXEC PRIDB_NEW_IDB_STATE 'File opened', 'SYSTEM'; +EXEC PRIDB_NEW_IDB_STATE 'File Checked Out', 'SYSTEM'; +EXEC PRIDB_NEW_IDB_STATE 'File Checked In', 'SYSTEM'; EXEC PRIDB_SET_IDB_STATE_LANG 'File Versioned','Datei versioniert', 'de-DE', 'SYSTEM'; EXEC PRIDB_SET_IDB_STATE_LANG 'File added','Datei erstellt', 'de-DE', 'SYSTEM'; @@ -3719,6 +3776,8 @@ EXEC PRIDB_SET_IDB_STATE_LANG 'File deleted','Datei gel EXEC PRIDB_SET_IDB_STATE_LANG 'Metadata changed','Attributwert geändert', 'de-DE', 'SYSTEM'; EXEC PRIDB_SET_IDB_STATE_LANG 'Attributevalue deleted','Attributwert gelöscht', 'de-DE', 'SYSTEM'; EXEC PRIDB_SET_IDB_STATE_LANG 'File opened','Datei geöffnet', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE_LANG 'File Checked Out','Datei ausgechecked', 'de-DE', 'SYSTEM'; +EXEC PRIDB_SET_IDB_STATE_LANG 'File Checked In','Datei wieder eingecheckt', 'de-DE', 'SYSTEM'; GO CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE_DATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @WHO VARCHAR(100) @@ -4135,7 +4194,7 @@ BEGIN END GO -ALTER PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5) ,@pVar VARCHAR(15) = 'DEFAULT' +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5) ,@pVar VARCHAR(15) = 'DEFAULT' AS DECLARE @ATTR_ID INT, @@ -4522,7 +4581,7 @@ BEGIN INSERT INTO TBIDB_CONVERSATION_OBJECT (TITLE_TERM_ID,IDB_OBJ_ID,ADDED_WHO) VALUES (@LANG_TITLE_TERM_ID,@pIDB_OBJ_ID,@ADDED_WHO_TERM_ID) DECLARE @STARTED_STATE BIGINT - SELECT @STARTED_STATE = GUID FROM TBIDB_STATES T WHERE dbo.[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (STATE_LTERM_ID) = 'Started' + SELECT @STARTED_STATE = GUID FROM TBIDB_STATES T WHERE dbo.[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (T.TITLE,'de-DE') = 'Started' DECLARE @CONVERSATION_ID BIGINT SELECT @CONVERSATION_ID = GUID FROM TBIDB_CONVERSATION_OBJECT WHERE TITLE_TERM_ID = @LANG_TITLE_TERM_ID AND IDB_OBJ_ID = @pIDB_OBJ_ID @@ -4557,7 +4616,7 @@ BEGIN ,@ENDED_STATE BIGINT SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE - SELECT @ENDED_STATE = GUID FROM TBIDB_STATES T WHERE dbo.[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (STATE_LTERM_ID) = 'Ended' + SELECT @ENDED_STATE = GUID FROM TBIDB_STATES T WHERE dbo.[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (T.TITLE,'de-DE') = 'Ended' DECLARE @WHO_TERM_ID BIGINT EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT; @@ -4687,6 +4746,7 @@ BEGIN END GO + CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_PROFILE] @BE_ID INT, @pTITLE VARCHAR(512),@pWHO VARCHAR(100),@pCOMMENT VARCHAR(900) = NULL, @pLANG_CODE VARCHAR(5) = 'de-DE' AS BEGIN @@ -4729,7 +4789,7 @@ BEGIN WHILE @@FETCH_STATUS = 0 BEGIN IF NOT EXISTS (SELECT GUID FROM TBIDB_SEARCH_RESULT_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @SEARCH_ID AND ATTRIBUTE_ID = @ATTR_ID) - EXEC PRIDB_NEW_SEARCH_RESULT_ATTRIBUTE @SEARCH_ID,@ATTR_ID,@pWHO_TERMID,@SEQUENCE + EXEC PRIDB_NEW_SEARCH_RESULT_ATTRIBUTE @SEARCH_ID,@ATTR_ID,@WHO_TERM_ID,@SEQUENCE SET @SEQUENCE += 1 FETCH NEXT FROM cursorDefaultAttributes INTO @ATTR_ID END @@ -4737,7 +4797,6 @@ BEGIN DEALLOCATE cursorDefaultAttributes END GO -GO --CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_SQL_RESULT] @SEARCH_ID INT,@pWHO_TERMID BIGINT --AS --BEGIN @@ -5041,7 +5100,7 @@ GO -- ,@WHO_TERM_ID FROM TBIDB_USER_SEARCH_CRITERIA WHERE USERID = @pUserID AND SEARCH_PROFIL_ID = @pSEARCHID --END --GO -ALTER PROCEDURE [dbo].[PRIDB_NEW_OBJECT] @KIND_TYPE VARCHAR(20),@WHO VARCHAR(100),@FOREIGN_REFID Bigint = 0,@PARENT_OBJ_ID BIGINT = 0, @IDB_OBJ_ID BIGINT OUTPUT +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_OBJECT] @KIND_TYPE VARCHAR(20),@WHO VARCHAR(100),@FOREIGN_REFID Bigint = 0,@PARENT_OBJ_ID BIGINT = 0, @IDB_OBJ_ID BIGINT OUTPUT AS BEGIN DECLARE @@ -5806,6 +5865,98 @@ OPEN c_CATALOG_USR FETCH NEXT FROM c_CATALOG_USR INTO @USR_GUID END CLOSE c_CATALOG_USR -DEALLOCATE c_CATALOG_USR +DEALLOCATE c_CATALOG_USR; +GO + +USE DD_ECM +GO +CREATE VIEW VWGI_DOCTYPE_USER AS +SELECT DISTINCT + T.GUID AS [USER_ID], + T.USERNAME, + --T2.NAME AS GROUP_NAME, + T3.DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.ZIEL_PFAD, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, + T5.OBJECT_TITLE as OBJECT_ST_NAME, + T4.SEQUENCE +FROM + DD_ECM.dbo.TBDD_USER T, + DD_ECM.dbo.TBDD_GROUPS_USER T1, + DD_ECM.dbo.TBDD_GROUPS T2, + DD_ECM.dbo.TBDD_USRGRP_DOKTYPE T3, + DD_ECM.dbo.TBDD_DOKUMENTART T4, + IDB.dbo.TBIDB_OBJECT_STORE T5 +WHERE + T4.AKTIV = 1 AND + T.GUID = T1.[USER_ID] AND + T1.GROUP_ID = T2.GUID AND + T2.GUID = T3.GROUP_ID AND + T3.DOCTYPE_ID = T4.GUID AND + T4.IDB_OBJECT_STORE_ID = T5.GUID AND + + T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +UNION +SELECT DISTINCT + T.GUID AS [USER_ID], + T.USERNAME, + --'' AS GROUP_NAME, + T4.GUID as DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.ZIEL_PFAD, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, + T5.OBJECT_TITLE as OBJECT_ST_NAME, + T4.SEQUENCE +FROM + DD_ECM.dbo.TBDD_USER T, + DD_ECM.dbo.TBDD_USER_DOKTYPE T3, + DD_ECM.dbo.TBDD_DOKUMENTART T4, + IDB.dbo.TBIDB_OBJECT_STORE T5 +WHERE + T4.AKTIV = 1 AND + T.GUID = T3.[USER_ID] AND + T3.DOCTYPE_ID = T4.GUID AND + T4.IDB_OBJECT_STORE_ID = T5.GUID AND + T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +GO +------------------------------------------------------------------------------ + + +CREATE OR ALTER VIEW [dbo].[VWGI_DOCTYPE_IDB] AS +SELECT + T4.GUID as DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.FOLDER_FOR_INDEX DYNAMIC_FOLDER, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + T6.OBJECT_TITLE AS OBJECT_STORE, + T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, + T7.CAT_TITLE AS OBJECT_ST_PATH, + T4.ERSTELLTWANN, + T4.GEAENDERTWANN, + T4.SEQUENCE, + T4.IDB_DOCTYPE_ID +FROM + DD_ECM.dbo.TBDD_DOKUMENTART T4 LEFT JOIN IDB.dbo.TBIDB_OBJECT_STORE T6 ON T4.IDB_OBJECT_STORE_ID = T6.GUID + LEFT JOIN IDB.dbo.TBIDB_CATALOG T7 On T6.CAT_ID = T7.GUID +WHERE + T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +GO + + diff --git a/00_IDB/Search_Logic.sql b/00_IDB/Search_Logic.sql index 909ace0ea44c9765ac58f629be1d4c92ebf106a5..a167c6c3ae254c4b9d4f1a544e14fe26b0290374 100644 GIT binary patch delta 325 zcmdmx{vxyf|G!X%Ux=IAs7}ObbfLNWunt_*r3ycAyX9eW| diff --git a/01_PM/CreateDBObjects.sql b/01_PM/CreateDBObjects.sql index c757121..e66070b 100644 --- a/01_PM/CreateDBObjects.sql +++ b/01_PM/CreateDBObjects.sql @@ -1,8 +1,6 @@ /*################################## -1. Search for @MyUSER and replace the username - You use for administration -2. If windream database is not located: Search for windream60 and replace with databaselink.windream60 +1. If windream database is not located: Search for windream60 and replace with databaselink.windream60 ALTER TABLE TBDD_CONNECTION ADD SYS_CONNECTION BIT DEFAULT 0 NOT NULL; GO @@ -10,11 +8,10 @@ GO UPDATE TBDD_MODULES SET DB_VERSION = '2.2.0.0' where NAME = 'Process-Manager' GO -INSERT INTO TBDD_USER_MODULES (USER_ID,MODULE_ID,IS_ADMIN) SELECT GUID,(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'PM'),1 FROM TBDD_USER where UPPER(USERNAME) = UPPER('@MyUSER') -GO -INSERT INTO TBDD_CLIENT_USER (USER_ID,CLIENT_ID) SELECT GUID,1 FROM TBDD_USER WHERE GUID NOT IN (SELECT USER_ID FROM TBDD_CLIENT_USER WHERE CLIENT_ID = 1) -GO -INSERT INTO TBDD_GROUPS_USER (USER_ID,GROUP_ID) VALUES ((SELECT GUID FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER('@MyUSER')),(SELECT GUID FROM TBDD_GROUPS WHERE NAME = 'PM_ADMINS')) +INSERT INTO TBDD_USER_MODULES (USER_ID,MODULE_ID,IS_ADMIN) SELECT GUID,(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'PM'),1 FROM TBDD_USER where USERNAME IN (SELECT USR_NAME FROM TBIMPORT_USER); +INSERT INTO TBDD_CLIENT_USER (USER_ID,CLIENT_ID) SELECT GUID,1 FROM TBDD_USER WHERE GUID NOT IN (SELECT USER_ID FROM TBDD_CLIENT_USER WHERE CLIENT_ID = 1); +INSERT INTO TBDD_GROUPS_USER (USER_ID,GROUP_ID) + SELECT GUID,(SELECT GUID FROM TBDD_GROUPS WHERE NAME = 'PM_ADMINS') FROM TBDD_USER WHERE USERNAME IN (SELECT USR_NAME FROM TBIMPORT_USER) GO CREATE TABLE TBPM_KONFIGURATION ( diff --git a/01_PM/Updates/2.2.1.0.sql b/01_PM/Updates/2.2.1.0.sql new file mode 100644 index 0000000..ba9bca4 --- /dev/null +++ b/01_PM/Updates/2.2.1.0.sql @@ -0,0 +1,17 @@ +UPDATE TBDD_MODULES SET DB_VERSION = '2.2.1.0' where NAME = 'Process-Manager' +GO + +ALTER TABLE TBPM_CONTROL_TABLE ADD LU_CAPTION VARCHAR(150) NOT NULL DEFAULT 'NONE' +GO +CREATE TABLE TBPM_VALIDATION_PROFILE_GROUP_USER +( + GUID BIGINT IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + DocID BIGINT NOT NULL, + UserID INTEGER NOT NULL, + ADDED_WHO VARCHAR(100) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBPM_VALIDATION_PROFILE_GROUP_USER PRIMARY KEY(GUID), + CONSTRAINT UQ_TBPM_VALIDATION_PROFILE_GROUP_USER UNIQUE (PROFIL_ID,DocID,UserID) +) +GO \ No newline at end of file diff --git a/02_GI/CreateDBObjects.sql b/02_GI/CreateDBObjects.sql index b4bd937..7f011da 100644 --- a/02_GI/CreateDBObjects.sql +++ b/02_GI/CreateDBObjects.sql @@ -314,22 +314,22 @@ SELECT DISTINCT T4.NAMENKONVENTION, T4.OBJEKTTYP, T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, - T5.OBJECT_TITLE as OBJECT_ST_NAME, + --T5.OBJECT_TITLE as OBJECT_ST_NAME, T4.SEQUENCE FROM DD_ECM.dbo.TBDD_USER T, DD_ECM.dbo.TBDD_GROUPS_USER T1, DD_ECM.dbo.TBDD_GROUPS T2, DD_ECM.dbo.TBDD_USRGRP_DOKTYPE T3, - DD_ECM.dbo.TBDD_DOKUMENTART T4, - IDB.dbo.TBIDB_OBJECT_STORE T5 + DD_ECM.dbo.TBDD_DOKUMENTART T4--, + --IDB.dbo.TBIDB_OBJECT_STORE T5 WHERE T4.AKTIV = 1 AND T.GUID = T1.[USER_ID] AND T1.GROUP_ID = T2.GUID AND T2.GUID = T3.GROUP_ID AND T3.DOCTYPE_ID = T4.GUID AND - T4.IDB_OBJECT_STORE_ID = T5.GUID AND + --T4.IDB_OBJECT_STORE_ID = T5.GUID AND T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) UNION @@ -346,18 +346,18 @@ SELECT DISTINCT T4.NAMENKONVENTION, T4.OBJEKTTYP, T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, - T5.OBJECT_TITLE as OBJECT_ST_NAME, + --T5.OBJECT_TITLE as OBJECT_ST_NAME, T4.SEQUENCE FROM DD_ECM.dbo.TBDD_USER T, DD_ECM.dbo.TBDD_USER_DOKTYPE T3, - DD_ECM.dbo.TBDD_DOKUMENTART T4, - IDB.dbo.TBIDB_OBJECT_STORE T5 + DD_ECM.dbo.TBDD_DOKUMENTART T4--, + --IDB.dbo.TBIDB_OBJECT_STORE T5 WHERE T4.AKTIV = 1 AND T.GUID = T3.[USER_ID] AND T3.DOCTYPE_ID = T4.GUID AND - T4.IDB_OBJECT_STORE_ID = T5.GUID AND + --T4.IDB_OBJECT_STORE_ID = T5.GUID AND T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) GO ------------------------------------------------------------------------------ @@ -520,16 +520,16 @@ SELECT T4.AKTIV, T4.NAMENKONVENTION, T4.OBJEKTTYP, - T6.OBJECT_TITLE AS OBJECT_STORE, + --T6.OBJECT_TITLE AS OBJECT_STORE, T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, - T7.CAT_TITLE AS OBJECT_ST_PATH, + --T7.CAT_TITLE AS OBJECT_ST_PATH, T4.ERSTELLTWANN, T4.GEAENDERTWANN, - T4.SEQUENCE, - T4.IDB_DOCTYPE_ID + T4.SEQUENCE--, + --T4.IDB_DOCTYPE_ID FROM - DD_ECM.dbo.TBDD_DOKUMENTART T4 LEFT JOIN IDB.dbo.TBIDB_OBJECT_STORE T6 ON T4.IDB_OBJECT_STORE_ID = T6.GUID - LEFT JOIN IDB.dbo.TBIDB_CATALOG T7 On T6.CAT_ID = T7.GUID + DD_ECM.dbo.TBDD_DOKUMENTART T4 --LEFT JOIN IDB.dbo.TBIDB_OBJECT_STORE T6 ON T4.IDB_OBJECT_STORE_ID = T6.GUID + --LEFT JOIN IDB.dbo.TBIDB_CATALOG T7 On T6.CAT_ID = T7.GUID WHERE T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) GO diff --git a/02_GI/Updates/2.5.0.0.sql b/02_GI/Updates/2.5.0.0.sql index 36876e3..542daea 100644 --- a/02_GI/Updates/2.5.0.0.sql +++ b/02_GI/Updates/2.5.0.0.sql @@ -13,6 +13,3 @@ ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX8 VARCHAR(250) ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX9 VARCHAR(250) ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX10 VARCHAR(250) GO - -ALTER TABLE TBGI_FILES_USER ADD FILE_HASH VARCHAR(100) NULL -GO \ No newline at end of file diff --git a/02_GI/Updates/2.5.2.0.sql b/02_GI/Updates/2.5.2.0.sql index 9cb289b..b397a9e 100644 --- a/02_GI/Updates/2.5.2.0.sql +++ b/02_GI/Updates/2.5.2.0.sql @@ -15,7 +15,7 @@ SELECT DISTINCT T4.AKTIV, T4.NAMENKONVENTION, T4.OBJEKTTYP, - T4.IDB_FILESTORE_ID, + --T4.IDB_FILESTORE_ID, T4.SEQUENCE FROM TBDD_USER T, @@ -43,7 +43,7 @@ SELECT DISTINCT T4.AKTIV, T4.NAMENKONVENTION, T4.OBJEKTTYP, - T4.IDB_FILESTORE_ID, + --T4.IDB_FILESTORE_ID, T4.SEQUENCE FROM TBDD_USER T, diff --git a/07_UserManager/CreateDBObjects.sql b/07_UserManager/CreateDBObjects.sql index 9638a5e..533ffe6 100644 --- a/07_UserManager/CreateDBObjects.sql +++ b/07_UserManager/CreateDBObjects.sql @@ -1,20 +1,9 @@ - -/*################################## -1. Search for @INSTALL_ADMIN_USER and replace the username You use for adminsitration -####################################*/ - UPDATE TBDD_MODULES SET PRODUCT_VERSION = '1.0.0.1' where SHORT_NAME = 'UM' GO BEGIN IF NOT EXISTS (SELECT 1 FROM TBDD_GROUPS WHERE NAME = 'UM_ADMINS') INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('UM_ADMINS',1); END -DECLARE @MY_INSTALL_ADMIN_USER VARCHAR(50) -SET @MY_INSTALL_ADMIN_USER = '@INSTALL_ADMIN_USER' -IF NOT EXISTS(SELECT GUID FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER(@MY_INSTALL_ADMIN_USER)) - INSERT INTO TBDD_USER(PRENAME,NAME,USERNAME) VALUES - ('DefPrename','DefSurname',@MY_INSTALL_ADMIN_USER) -GO ALTER TABLE [dbo].[TBDD_GROUPS_USER] DROP CONSTRAINT [FK_TBDD_GROUPS_USER_GROUP_ID] GO @@ -25,16 +14,10 @@ GO ALTER TABLE [dbo].[TBDD_GROUPS_USER] CHECK CONSTRAINT [FK_TBDD_GROUPS_USER_GROUP_ID] GO - - -DECLARE @MY_INSTALL_ADMIN_USER VARCHAR(50) -SET @MY_INSTALL_ADMIN_USER = '@INSTALL_ADMIN_USER' -DECLARE @USERID Int -SELECT @USERID = GUID FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER(@MY_INSTALL_ADMIN_USER) DECLARE @UM_GROUP_ID INT SELECT @UM_GROUP_ID = GUID FROM TBDD_GROUPS WHERE NAME = 'UM_ADMINS' -IF NOT EXISTS(SELECT GUID FROM TBDD_GROUPS_USER WHERE USER_ID = @USERID AND GROUP_ID = @UM_GROUP_ID) - INSERT INTO TBDD_GROUPS_USER (GROUP_ID,USER_ID) VALUES (@UM_GROUP_ID,@USERID) +INSERT INTO TBDD_GROUPS_USER (GROUP_ID,USER_ID) + SELECT @UM_GROUP_ID,B.GUID FROM TBIMPORT_USER A INNER JOIN TBDD_USER B ON A.USR_NAME = B.USERNAME GO --if not exists (select * from sysobjects where name='TBDD_GROUPS_MODULES' and xtype='U') --CREATE TABLE TBDD_GROUPS_MODULES diff --git a/09_ZooFlow/Update/1.0.0.1.sql b/09_ZooFlow/Update/1.0.0.1.sql index 57f1c1fe79fe64c01a8ac44e42e1dd5c6118d509..80ac3d06563e20a9b75f3f301cff1c5b48668147 100644 GIT binary patch delta 477 zcmZ4Yi*a2G(}LQ`ZmAojLm7e@Tp5CZWIO|m?Ze;+tl9_2_G54d+Uf`-fhJ5o zDA?t+FsvK(2EK+UE~c9RSpi;=ajWas(!CN|w+^w#yS}b_m#K zAW?{ojzE{k1N{&QlyhcKnEX*dbaI?D55hifB>N^m}BYcmr z3q2fQW*}4``y1hlczAdzFr+aQG2}Dk0?iL&2nX5&awp6jpwB12<>nNQ2Zo+MP$m@U Y8&?KM82ztNoh(qx!o|tJ%fJQ30NqhqbpQYW delta 27 fcmZ42!nE!e Date: Thu, 19 May 2022 17:26:06 +0200 Subject: [PATCH 8/9] MS Sprint --- 00_DD/DD_ECM.sql | 4 +- 00_DD/Microsoft Publisher Document (neu).pub | Bin 0 -> 59904 bytes 00_DD/SQL_JOB1.sql | 68 +++ 00_DD/Update/1.9.0.8.sql | 5 + 00_DD/Update/1.9.0.9.sql | 23 + 00_IDB/CreateDBObjects.sql | 427 +++++++++++++++++-- 00_IDB/Update/1.1.1.sql | 125 ++++++ 00_IDB/Update/g1hxflhb.tpr~ | 167 ++++++++ 01_PM/Updates/2.2.0.0.sql | 38 +- 01_PM/Updates/2.2.1.1.sql | 28 ++ 02_GI/Updates/2.5.2.1.sql | 8 + 04_APPSERV/INSERT_JOBS.sql | 5 + 09_ZooFlow/Update/1.0.0.1.sql | Bin 33326 -> 34712 bytes 09_ZooFlow/Update/1.0.1.0.sql | Bin 0 -> 30440 bytes 14 files changed, 845 insertions(+), 53 deletions(-) create mode 100644 00_DD/Microsoft Publisher Document (neu).pub create mode 100644 00_DD/SQL_JOB1.sql create mode 100644 00_DD/Update/1.9.0.8.sql create mode 100644 00_DD/Update/1.9.0.9.sql create mode 100644 00_IDB/Update/g1hxflhb.tpr~ create mode 100644 01_PM/Updates/2.2.1.1.sql create mode 100644 02_GI/Updates/2.5.2.1.sql create mode 100644 09_ZooFlow/Update/1.0.1.0.sql diff --git a/00_DD/DD_ECM.sql b/00_DD/DD_ECM.sql index a79e272..f70d073 100644 --- a/00_DD/DD_ECM.sql +++ b/00_DD/DD_ECM.sql @@ -311,8 +311,8 @@ CREATE TABLE TBDD_CLIENT CONSTRAINT PK_TBDD_CLIENT PRIMARY KEY (GUID) ) GO -INSERT INTO TBDD_CLIENT(CLIENT_NAME,SHORTNAME) VALUES -('DEFAULT','DEF') +INSERT INTO TBDD_CLIENT(CLIENT_NAME,SHORTNAME,ACTIVE) VALUES +('DEFAULT','DEF',1) GO CREATE TRIGGER TBDD_CLIENT_AFT_UPD ON TBDD_CLIENT diff --git a/00_DD/Microsoft Publisher Document (neu).pub b/00_DD/Microsoft Publisher Document (neu).pub new file mode 100644 index 0000000000000000000000000000000000000000..56b6e97311e22944a9a89146c4401cb2e06ec2d9 GIT binary patch literal 59904 zcmeHNYiu0Xbv`r8T@D{2mk&v+_lS~hS(atmaumsNWJ#pnZ;_TIOL0WWlt_yr*Q6v% zZt6&~Y%`7{C~c6sMT@9tn-*I(2>hc6nA&KQ!WH{{ z_s-4^SG&XIt%D@!9rD~gd%t_`<2&choSE78{<`VrZ~oETf0m+Soh0PeM2(~(^$v83 zI?^IlQ271U#KeTI6oG1wpCbnT2Xl4dyaeQQ;LAaLRzo~U4Wt%Q2dRh5fHXiFAqW9! zf;2-~Agz#@kXew~kPKuFWG-YLWIkj8WFce`#D^?~v_Y0YmO}1;+zGi0vJ7%JWI5y> z$O_24kd=`8AnlO*ArC-SK^}yB3bGpVX~-JLTF66?&p;lAd=|0}@(5%-WCLU)qyy3k z*#y}P*#g-L*#_AT*#X%J*#+4R*#p@N*$3GV>4J1a9)%o$JO()kIRxSUIE>FDkk3J$ zfP5Zu6w(7Z200FS64DDf0XYfjgY-k5f}Da3K-d>$2znOsG-Mbu0%84hkNq-)zccW~ zCK<%%uv|b-l^?St8SeQ6%$#Od8|TyqsSJ&%p8OADH*$|n=V-!^JDX~lJOr$qi&vT zaX2{h4dKk64R)fgt-Qqej)UgBUQ{|h&l5Zc@<`&$c^2cJ2KPMo&>JT(qhVEZ278nI zls}eX{1jkbqbePr?ce%c-DeVK{UPi?&Y@R%VtVsgW57R0>QC)-CM+E<^yY!P7Yq ze-78p>+*Eg{~bC32Ytu$2d^DGkL9l~^rz|dpMCr^um2pM*MEN6Bc6d+;9}a5&sPV$6Szc$0Mri@T?E7Y58kg@uveXC$Ras%HrIE`RA_w%4D=pZdQcH`YpHGijah6%?5 zd*%Iq^M!Bx$B*~)rT^fo@c&)k{)cvS@CweG`FZ*H&be~lO%UearTn@D^}At5AJNv6 z@78{Z6PClfi^Mm&s6CBRueweJqq;`AFX8-;b;!r4gE2IYcP~}~OIeUwEaSp9Jn{&8 zT3_SKn5xaAoFm)41aZ`ziO6q%Q#G-LW#DIl0d5a_OoxGj*QR4-+mZpxop~Hs?ksoa z447NmxU<}uGhl9M4R zrHwnwojC*MmNxDzcjgS3TiUp@+?g|AZfWDra%awfxuuOe%bhs`=9V_@EO+J%m|NPo zv)q|8U~XyS&T?nYfVriOJIkFp1Ll@C?ksoa447NmxU<}uGhl9M4RrHwnwojC*MmNxDzcjgS3TiUp@+?g|A zZfWDra%awfxuuOe%bhs`=9V_@EO+J%m|NPov)q|8U~XyS&T?nYfVriOJIkFp1Ll@C z?ksoa447NmxU<}uGhl9M4RrHwnwojC*MmNxDzcjgS3TiUp@+?g|AZfWDra%awfxuuOe%bhs`=9V_@EO+J% zm|NPov)q|8U~XyS&T?nYfVriOJIkFp1Ll@C?ksoa447NmxU<}uGhl9M4RrHwnwojC*MmNxDzcjgS3TiUp@ z+?g|AZfWDra%awfxuuOe%bhs`=9V_@EO+J%m|NPov)q|8U~XyS&T?nYfVriOJIkFp z1Ll@C?mh|b3M^V}S_~vq>-XQEmQk6;AADg4tsLHe|A8171 z{#Dqxs+YtyA2l*MAB6+EgfAE^<#}FB+8L|&)kFi-jYSi&XjLqlj73wiXmu>=#iBK_ zXl*Q77mL=%qBCOAhFG+*3_4eNFdd+I|GB7@QH?dlV9haDOAOW;gUyV=X2oE$W3WsN zHYWy~8-vY@!RE(c3u3T^G1#J#*evBgKg8;Nb^Zx_w>Ye?NmpTCYE0X-h1lf!C1vWD zmZ`s^O#Pi@>hCI3zpPCC-DT>Rm#M#}O#O;7_4k&kUs zeWdaGr@$YW0$()+{@@h&r>4MHPl11W3Vh8J_}VG(ho-SSz}HQIKT;Og zSHblGuFs)$UcH}G-uF~=Y{2@E7oe_-rLbT6a5v+K;-4U$V zZchYr!#*|Vdqej3h1&km4_$$!&R^WI+R%5JneMRX{7f^7$47&DeQu4e;Xr6nlP>1v zu?SXJpC0L8h~-Dpk#H!ekDgofcp85^#2I~wG5U}<0WzxlJ$zfg+DAvidY!jL*YLRr zR=kEMVzAFgu)_NEct=ZOdjIqUSl$bH2DAr{!CShIiJF`!#L8Mf+;v?@e{?%_lP zE1u!W7_6@(rWx)JvHZOCSWkuZw@1mT7;GSd6|;Z3B&Hb{4C8wUnr1c|v@d2>qfbYA zi^jf2hhx!^GN@krnFw0oS@(N3z>4Rj**q6oPG<9&u>N*7&&OaFVz6gpuwRJ5z7T`` zVo6M|{J8+rD=$Q_-pOAK(Lxpx-IW(3Js09y+g_T&_Hx9w;1BJq=Ycii9**aaV(bdA zrT{Cn}R zF+Ji}fH{-yaHBrC8ld{huOs#?ULkzmWxLmxp_FVjZ;G?Es+^(9v?^OvIU8jny9i}f zb_q()Yw(&!(=c)T@mJ5`zWe&KzbdWSJAh@f36yiPNtAQ54oW{e7v!n z9(?&4bTH{ykx9zExMRP+Zx&iTtXi%2Hu!ARnO%yytsb-1sGP(1M0PQ-WH6(f?;UYm zpJhrdj@C6<4=w7lH7FZ$JR5C*H0FGiyQD`(s#Pvs7a@>uZWel0%@^7@H_J~jp*-~L3Q{fSkD zdOkKt<#->q5&6_vP5T@0(-W+7(fs7%bg_U~vRqr)ip2FQK2I9E+%8YP*QG29vC z9z?61D!)06ylGfYiI4n<*~>7#`^bwPl>4O}+A`=}ayQzC@2G;Tq~W4|XZ6zt6P3-nf&X}4lkl&9vr4M`4*^zt zHU33>*80o`>wNeD`R&Pi*^z)Auw7FS9o8>WW z$hLYG;lB>8DtjmVU*~@tI%8Q>95`z2T5t7zRL@fNcdGIs^@_Ac=_WP@5$=x9eB1Sz zwh7lT{qJK?8PFij){YM0_kRs0{>Xyyx-)UqUbX~Q%#)l zWVF!tN}N=p>(SPl3HE(e;e58jzVoB9-(Q-9XuCqcZ?=@`m)BuE=T^{~?Bmm#QgdEd z0xk5td1idy*A>oZK&ATr{Ss)Q@9*H$bUPn~d9RpFoKKcY^}V_TI#;dvi(u>t&>HPq zzpc_fK30T9y+}X2rEosWDmCsqB~ZPl!?69qoXO+rzV*C%fY(Az_VGCv`}T0v(^xOC zhTAaR?-5|l3X{-I^^5(WTkJrKYqz!FZqoQ3;IGZ&$b2@ZM~+6(PT(mJUx;1qMr_P* zgzaeYHPxbM4#E6i2L3F5g;R?2gTS6E!t`F(zTU;Y6@Ev^Ip96+{y0dqNn?5>hyp}3+)*JUL(x6m}-&XEq}kbJVc2djT7 zUtRHMv$$&g{IMEmP>JDcG&&G8?7+CYao@K|m0gvXPilklr@ek=ox&SD_2Ib4M7=AC zo45&hL6tA6@+DRNmbCrwVYFM%*Ad>vWHri*O24f1oYHS7U6?(3Zi;QzD}AHZW#JET zY39j^qw-GE`!75Qck!iB-0^<_&@SFMLH>To#eE8XO*a1LsBe_2@nxuUq-LCb6d$hC zDm(s2kyBy&ck$UA)H|pb+_L_w)QxvTy(C=cWmP_}$}6h8q`dexnlF+Z#ue{|!*xtJ z9wr^n(Vv2&tuT2Tc1LBxSugneKk&8PNssgHfWr0Mz~@Fsuan$VvL4PQjg>Ga^-BJN ztHSKCs43R-N%)*=;FALVw17iX=qB zk(S9NCzs1fRiXy^BMAp{Xo0U7n%YZH)SR~BGaZ=|sh{?oV8c00@95aNd&jojJ8x3QW|jP4Z5By()9~b{~EsNdN-^e!-nGiMg5^|ok2g) z)F#yRTlV@vJ+w4dfq%5;taLrK*06r_p553;9G6-K^{p5qBYSuHL3?T|uz7f%vqwAw zYJZ>!o|}!4cPi>rdH>fyGXsJsK`ICixr+K5av5cP8=r|Refc1CNB#Z_t`IlW5}{TV zYRN#ulbEosI@G*C!;_gnOGs^?RY_f-C8a*lQZggZs-+>&JZTKH8c7FQtuzH%oiqnp zy|e_{3~3ECM`i|EgUkxFMwuOGX~_gylgtUxxq;R!3j?i176n?XEDp4p(iUj5WJ#dS zmZgD~k!684M^*%y$Xdm3=gahyw6WM4(Z|M;+^o{xoE&rTWU;ij;1KL??q(=zca4n| ze<#9&zULcTUI=;jLC@#oq7UC+fn0~Y4*4_4-$K3*`ELkwa6Ug>3E2pF0&)ey^Fj{t z_mCez7*ew!>md6fS;$4mYmo0j8j+9mBPZgUYae+@FWyD-O*ZqS9=xsQQLUc94dBgn z5AZ>C-A>`jD)Eyj2NW+Ui)qB7vu|7UO?vfd3)eMdG!(fBI5;%eWeY|-mU$kWQ z+QUl_R<;ouXUGwGWvEfTurD>anKH+r#e_blpj;vmayg3PonvEA#R}@XgD@A=LP) zU;fgdAF~l@Lhi_4KJYm=M`8{=gjSotAU(*nGLot>#sOu`XQusvTTaY#8}L(T&pPt4 z7aHf>05l2Tb2UWp@C4r3tMozDf+O+Q5nO*qkiie3uU`By8*ar6&LXd7ZciVvcm5jU zBx>0sf2Yv_&bz=oV{R8l=KS^SxR&Tj>(Iu5@V=ABa){H0!gJfWvl7((Dy1h?nYv6C zMgH*38RI{@;>fLu1VWQ*D86^1*Y=(59~fA>+V46uGvs(FjEpD?GQ#7d MwXZ*|wdt1s3stqbTL1t6 literal 0 HcmV?d00001 diff --git a/00_DD/SQL_JOB1.sql b/00_DD/SQL_JOB1.sql new file mode 100644 index 0000000..49f07f1 --- /dev/null +++ b/00_DD/SQL_JOB1.sql @@ -0,0 +1,68 @@ +USE [msdb] +GO + +/****** Object: Job [DD_DAILY] Script Date: 05.05.2022 16:42:48 ******/ +BEGIN TRANSACTION +DECLARE @ReturnCode INT +SELECT @ReturnCode = 0 +/****** Object: JobCategory [[Uncategorized (Local)]] Script Date: 05.05.2022 16:42:48 ******/ +IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'[Uncategorized (Local)]' AND category_class=1) +BEGIN +EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'[Uncategorized (Local)]' +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback + +END + +DECLARE @jobId BINARY(16) +EXEC @ReturnCode = msdb.dbo.sp_add_job @job_name=N'DD_DAILY', + @enabled=1, + @notify_level_eventlog=0, + @notify_level_email=0, + @notify_level_netsend=0, + @notify_level_page=0, + @delete_level=0, + @description=N'Es ist keine Beschreibung verfügbar.', + @category_name=N'[Uncategorized (Local)]', + @owner_login_name=N'sa', @job_id = @jobId OUTPUT +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +/****** Object: Step [PRAPPSERV_FILL_TBDD_USER_MODULE] Script Date: 05.05.2022 16:42:48 ******/ +EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'PRAPPSERV_FILL_TBDD_USER_MODULE', + @step_id=1, + @cmdexec_success_code=0, + @on_success_action=1, + @on_success_step_id=0, + @on_fail_action=2, + @on_fail_step_id=0, + @retry_attempts=0, + @retry_interval=0, + @os_run_priority=0, @subsystem=N'TSQL', + @command=N'EXEC PRAPPSERV_FILL_TBDD_USER_MODULE;', + @database_name=N'DD_ECM', + @flags=0 +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +EXEC @ReturnCode = msdb.dbo.sp_update_job @job_id = @jobId, @start_step_id = 1 +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +EXEC @ReturnCode = msdb.dbo.sp_add_jobschedule @job_id=@jobId, @name=N'DAILY08_12_16', + @enabled=1, + @freq_type=8, + @freq_interval=62, + @freq_subday_type=8, + @freq_subday_interval=4, + @freq_relative_interval=0, + @freq_recurrence_factor=1, + @active_start_date=20220505, + @active_end_date=99991231, + @active_start_time=80000, + @active_end_time=160259, + @schedule_uid=N'42f54c9f-e4f2-466c-9543-d454d6fb6c03' +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +EXEC @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @jobId, @server_name = N'(local)' +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +COMMIT TRANSACTION +GOTO EndSave +QuitWithRollback: + IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION +EndSave: +GO + + diff --git a/00_DD/Update/1.9.0.8.sql b/00_DD/Update/1.9.0.8.sql new file mode 100644 index 0000000..36041b4 --- /dev/null +++ b/00_DD/Update/1.9.0.8.sql @@ -0,0 +1,5 @@ +UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.8' +GO +ALTER TABLE TBDD_USER +ADD ACTIVE BIT NOT NULL DEFAULT 1 +GO \ No newline at end of file diff --git a/00_DD/Update/1.9.0.9.sql b/00_DD/Update/1.9.0.9.sql new file mode 100644 index 0000000..a56df7b --- /dev/null +++ b/00_DD/Update/1.9.0.9.sql @@ -0,0 +1,23 @@ +UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.9' +GO +DELETE FROM TBDD_SQL_COMMANDS WHERE TITLE IN ('ZF_DISPLAY_PM_JOBS_INDIVIDUAL','ZF_DISPLAY_PM_JOBS_GROUP') +INSERT INTO [dbo].[TBDD_SQL_COMMANDS] + ([TITLE] + ,[SQL_COMMAND] + ) + VALUES + ('ZF_DISPLAY_PM_JOBS_INDIVIDUAL' + ,'SELECT COUNT(A.DOC_ID) FROM +(SELECT DISTINCT DOC_ID FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = 1) A' + ) +GO +INSERT INTO [dbo].[TBDD_SQL_COMMANDS] + ([TITLE] + ,[SQL_COMMAND] + ) + VALUES + ('ZF_DISPLAY_PM_JOBS_GROUP' + ,'SELECT COUNT(A.DOC_ID) FROM +(SELECT DISTINCT DOC_ID FROM TBPM_PROFILE_FILES WHERE PROFIL_ID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] (@USR_ID))) A' + ) +GO \ No newline at end of file diff --git a/00_IDB/CreateDBObjects.sql b/00_IDB/CreateDBObjects.sql index d120d96..aa01b61 100644 --- a/00_IDB/CreateDBObjects.sql +++ b/00_IDB/CreateDBObjects.sql @@ -1198,6 +1198,8 @@ from INNER JOIN TBIDB_LANGUAGE LANG ON AL.LANGUAGE_ID = LANG.GUID INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON AL.TERM_ID = TERM.GUID INNER JOIN TBIDB_ATTRIBUTE_TYPE ATY ON ATTR.TYP_ID = ATY.GUID +WHERE + ATTR.DELETED = 0 GO CREATE OR ALTER VIEW [dbo].[VWIDB_BE_ATTRIBUTE] AS @@ -1384,8 +1386,19 @@ UNION RES.USR_ID = @USER_ID AND VWDT.LANG_CODE = ''@LANG_CODE'' AND CHK.CHECKED_IN_WHEN IS NULL','SYSTEM') GO - - +DROP TABLE TBIDB_SEARCH_INPUT_USER +CREATE TABLE TBIDB_SEARCH_INPUT_USER +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + USR_ID INTEGER, + ATTR_ID INT, + ATTR_TITLE VARCHAR(100), + TERM_ID BIGINT, + OPERATOR VARCHAR(20) NOT NULL DEFAULT 'AND', + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CONSTRAINT PK_TBIDB_SEARCH_INPUT_USER PRIMARY KEY (GUID), +) +GO CREATE TABLE TBIDB_SEARCH_RESULT_TERM_USER ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -1394,6 +1407,25 @@ CREATE TABLE TBIDB_SEARCH_RESULT_TERM_USER CONSTRAINT FK_TBIDB_SEARCH_RESULT_USER_MD_GUID FOREIGN KEY (MD_GUID) REFERENCES TBIDB_OBJECT_METADATA (GUID) ) GO +DROP TABLE TBIDB_SEARCH_RESULT_TOKEN +CREATE TABLE TBIDB_SEARCH_RESULT_TOKEN +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + DocID BIGINT NOT NULL, + USR_ID INTEGER NOT NULL, + TOKEN_ID TINYINT NOT NULL, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), +) +GO +DROP TABLE TBIDB_SEARCH_RESULT_DOCS +CREATE TABLE TBIDB_SEARCH_RESULT_DOCS +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + DocID BIGINT NOT NULL, + USR_ID INTEGER NOT NULL, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE() +) +GO CREATE TABLE TBIDB_SEARCH_RESULT_STRUCT_TYPE_USER ( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -1423,21 +1455,333 @@ BEGIN END GO -CREATE PROCEDURE PRIDB_SEARCH_AUTOSUGGEST @pLANGCODE VARCHAR(5),@pUSRID INT +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_SEARCH_AUTOSUGGEST] @pLANGCODE VARCHAR(5),@pUSRID INT AS -DECLARE @TBRESULT TABLE(TERM VARCHAR(900)) -INSERT INTO @TBRESULT (TERM) -select DISTINCT TERM.TERM_VALUE - FROM TBIDB_TERM_VALUE_VARCHAR TERM - INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TLANG.TERM_ID = TERM.GUID - INNER JOIN TBIDB_LANGUAGE LANG ON LANG.GUID = TLANG.LANG_ID - INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.OBJECT_ID = MD.GUID - INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID +BEGIN + DECLARE @TBRESULT TABLE(TERM VARCHAR(900),TERM_ID BIGINT, ATTR_TITLE VARCHAR(100),ATTR_ID INT) + INSERT INTO @TBRESULT (TERM, TERM_ID, ATTR_ID,ATTR_TITLE) + select DISTINCT TERM.TERM_VALUE, TERM.GUID, ATTR.ATTR_ID, ATTR.ATTR_TITLE + FROM TBIDB_TERM_VALUE_VARCHAR TERM + INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TLANG.TERM_ID = TERM.GUID + INNER JOIN TBIDB_LANGUAGE LANG ON LANG.GUID = TLANG.LANG_ID + INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.OBJECT_ID = MD.GUID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + INNER JOIN VWIDB_BE_ATTRIBUTE ATTR ON MD.ATTR_ID = ATTR.ATTR_ID + WHERE + OBJ.ACTIVE = 1 AND LANG.LANG_CODE = @pLANGCODE + AND ATTR.LANG_CODE = @pLANGCODE + AND ATTR.VIEW_VISIBLE = 1; + INSERT INTO @TBRESULT (TERM, TERM_ID, ATTR_ID,ATTR_TITLE) + select DISTINCT TERM.TERM_VALUE, TERM.GUID, ATTR.ATTR_ID, ATTR.ATTR_TITLE + FROM TBIDB_TERM_VALUE_INTEGER TERM + INNER JOIN TBIDB_OBJECT_METADATA MD ON MD.INT_TERM_ID = TERM.GUID + INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID + INNER JOIN VWIDB_BE_ATTRIBUTE ATTR ON MD.ATTR_ID = ATTR.ATTR_ID + WHERE + OBJ.ACTIVE = 1 + AND ATTR.LANG_CODE = @pLANGCODE + AND ATTR.VIEW_VISIBLE = 1; + INSERT INTO @TBRESULT (TERM,ATTR_ID,ATTR_TITLE) + select DISTINCT Doctype,Doctype_ID,'DOCTYPE' FROM VWIDB_DOC_DOCTYPE where LANG_CODE = @pLANGCODE; + SELECT * FROM @TBRESULT +END +GO + +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_SEARCH_GET_TOKEN_RESULT] (@pUSR_ID as INTEGER,@pType AS VARCHAR(20), @DateStr VARCHAR(500), @pTERM_ID BIGINT, @pTOKENID TINYINT = 0, @pLANG_CODE as VARCHAR(5) = 'de-DE') +AS +BEGIN + DECLARE @DYNSQL_INSERT NVARCHAR(MAX) + DECLARE @DATE1 DATE,@DATE2 DATE + SET @DYNSQL_INSERT = 'INSERT INTO TBIDB_SEARCH_RESULT_TOKEN(DocID,TOKEN_ID,USR_ID)' + char(10) + + 'SELECT DISTINCT MD.IDB_OBJ_ID,' + CONVERT(VARCHAR(2),@pTOKENID) + ',' + CONVERT(VARCHAR(10),@pUSR_ID) + char(10) + + IF @pType = 'BIG INTEGER' + SET @DYNSQL_INSERT += 'FROM ' + char(10) + CHAR(9) + 'TBIDB_TERM_VALUE_INTEGER TERM' + char(10) + + CHAR(9) + 'INNER JOIN JOIN TBIDB_OBJECT_METADATA MD ON MD.INT_TERM_ID = TERM.GUID' + + CHAR(9) + 'INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID' + char(10) + ELSE IF @pType = 'VARCHAR' + SET @DYNSQL_INSERT += 'FROM ' + char(10) + CHAR(9) + 'TBIDB_TERM_VALUE_VARCHAR TERM' + char(10) + + CHAR(9) + 'INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TLANG.TERM_ID = TERM.GUID' + + CHAR(9) + 'INNER JOIN TBIDB_LANGUAGE LANG ON LANG.GUID = TLANG.LANG_ID' + + CHAR(9) + 'INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.OBJECT_ID = MD.GUID' + + CHAR(9) + 'INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID' + char(10) + ELSE IF @pType = 'DOCTYPE' + SET @DYNSQL_INSERT = 'INSERT INTO TBIDB_SEARCH_RESULT_TOKEN(DocID,TOKEN_ID,USR_ID)' + char(10) + + 'SELECT DISTINCT DT.IDB_OBJ_ID,' + CONVERT(VARCHAR(2),@pTOKENID) + ',' + CONVERT(VARCHAR(10),@pUSR_ID) + char(10) + + 'FROM' + char(10) + CHAR(9) + 'VWIDB_DOC_DOCTYPE DT' + char(10) + + CHAR(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON DT.TERM_ID = TERM.GUID' + + CHAR(9) + 'INNER JOIN TBIDB_OBJECT OBJ ON DT.IDB_OBJ_ID = OBJ.IDB_OBJ_ID' + char(10) + + SET @DYNSQL_INSERT += 'WHERE ' + char(10)+ CHAR(9) + 'OBJ.ACTIVE = 1' + IF @DateStr = 'DATEPART' + BEGIN + SELECT @DATE1 = DATE_FROM ,@DATE2 = DATE_TILL FROM TBIDB_SEARCH_DATE_VALUE_USER WHERE USR_ID = @pUSR_ID; + SET @DYNSQL_INSERT += 'AND CONVERT(DATE,OBJ.ADDED_WHEN) >= CONVERT(DATE,''' + CONVERT(VARCHAR(10),@DATE1) + ''') AND CONVERT(DATE,OBJ.ADDED_WHEN) <= CONVERT(DATE,''' + CONVERT(VARCHAR(10),@DATE2) + ''')' + char(10) + END + ELSE IF @DateStr = 'ECM_CREATED_TODAY' + SET @DYNSQL_INSERT += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) = 0' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_YESTERDAY' + SET @DYNSQL_INSERT += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) = 1' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_LAST7DAYS' + SET @DYNSQL_INSERT += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) <= 7' + char(10) + ELSE IF @DateStr = 'ECM_YEAR_CURRENT' + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + ELSE IF @DateStr = 'ECM_YEAR_LAST' + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())-1' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_MONTH_CURRENT' + BEGIN + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + SET @DYNSQL_INSERT += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = DATEPART(MONTH,GETDATE())' + char(10) + END + ELSE IF @DateStr = 'ECM_CREATED_MONTH_LAST' + BEGIN + IF DATEPART(MONTH,GETDATE()) = 1 + BEGIN + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())-1' + char(10) + SET @DYNSQL_INSERT += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = 12' + char(10) + END + ELSE + BEGIN + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + SET @DYNSQL_INSERT += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = DATEPART(MONTH,GETDATE())-1' + char(10) + END + END + + SET @DYNSQL_INSERT += 'AND TERM.guid = ' + CONVERT(VARCHAR(20),@pTERM_ID) + char(10) + + DECLARE @LANGUAGE AS VARCHAR(100) + IF @pType <> 'DOCTYPE' + SET @LANGUAGE = 'AND LANG.LANG_CODE = ''' + @pLANG_CODE + '''' + ELSE + SET @LANGUAGE = 'AND DT.LANG_CODE = ''' + @pLANG_CODE + '''' + SET @DYNSQL_INSERT += @LANGUAGE + char(10) + PRINT @DYNSQL_INSERT + EXEC sp_executesql @DYNSQL_INSERT +END +GO +USE [IDB] +GO +USE [IDB] +GO +-- ============================================= +-- Author: DD MS +-- Changed: 19.05.2022 +-- ============================================= +ALTER PROCEDURE [dbo].[PRIDB_SEARCH_GET_TOKEN_RESULT_DOCS] (@pUSR_ID as INTEGER,@pDATE_RESTRICTION VARCHAR(500), @pLANG_CODE as VARCHAR(5) = 'de-DE') +AS +BEGIN + DECLARE @SRCH_VAR VARCHAR(900), @DYNSQL_INSERT NVARCHAR(MAX),@DateStr VARCHAR(100) + DECLARE @DATE1 DATE,@DATE2 DATE + + DELETE FROM TBIDB_SEARCH_RESULT_TOKEN WHERE USR_ID = @pUSR_ID; + IF LEN(@pDATE_RESTRICTION) > 0 + BEGIN + PRINT '@pDATE_RESTRICTION....' + DECLARE @IDX TINYINT, @ATTR_ID_DATE VARCHAR(100) + SET @IDX = CHARINDEX('~',@pDATE_RESTRICTION) + PRINT '@IDX: ' + CONVERT(VARCHAR(10),@IDX) + SET @ATTR_ID_DATE = LEFT(@pDATE_RESTRICTION,@IDX-1) + SET @DateStr = SUBSTRING(@pDATE_RESTRICTION,@IDX + 1,LEN(@pDATE_RESTRICTION)-@IDX) + PRINT @DateStr + END + --############################################################################### + --SUCHE NACH TERM-WERTEN + DECLARE @DOC_RESULTS TABLE (DocID BIGINT) + DECLARE @DOC_RESULTS_TEMP TABLE (DocID BIGINT) + DECLARE @ATTR_ID INT, @ATTR_TITLE VARCHAR(100),@TERM_ID BIGINT,@OPERATOR VARCHAR(10),@TOKEN_ID TINYINT ,@TYPE_ATTR VARCHAR(50) + SET @TOKEN_ID = 0 + DECLARE curs_Tokens CURSOR LOCAL FOR + SELECT A.ATTR_ID, A.ATTR_TITLE,A.TERM_ID,A.OPERATOR,B.TYPE_NAME + FROM TBIDB_SEARCH_INPUT_USER A INNER JOIN VWIDB_BE_ATTRIBUTE B ON A.ATTR_ID = B.ATTR_ID WHERE A.USR_ID = @pUSR_ID AND B.LANG_CODE = @pLANG_CODE + UNION + SELECT B.Doctype_ID, B.Doctype,B.TERM_ID,A.OPERATOR,A.ATTR_TITLE + FROM TBIDB_SEARCH_INPUT_USER A INNER JOIN VWIDB_DOCTYPE_LANGUAGE B ON A.ATTR_ID = B.Doctype_ID WHERE A.USR_ID = @pUSR_ID AND B.LANG_CODE = @pLANG_CODE AND A.ATTR_TITLE = 'DOCTYPE' + OPEN curs_Tokens + FETCH NEXT FROM curs_Tokens INTO @ATTR_ID, @ATTR_TITLE,@TERM_ID,@OPERATOR,@TYPE_ATTR + WHILE @@FETCH_STATUS = 0 + BEGIN + --IF @TOKEN_ID > 0 + -- BEGIN + -- DELETE FROM @DOC_RESULTS; + -- END + SET @TOKEN_ID += 1 + + EXEC PRIDB_SEARCH_GET_TOKEN_RESULT @pUSR_ID,@TYPE_ATTR,@DateStr,@TERM_ID,@TOKEN_ID,@pLANG_CODE + + IF @TOKEN_ID > 1 AND @OPERATOR = 'AND' + BEGIN + DELETE FROM @DOC_RESULTS; + INSERT INTO @DOC_RESULTS(DocID) + SELECT DocID FROM TBIDB_SEARCH_RESULT_TOKEN WHERE TOKEN_ID = @TOKEN_ID AND DocID IN (SELECT DocID FROM TBIDB_SEARCH_RESULT_TOKEN WHERE TOKEN_ID < @TOKEN_ID) + END + ELSE + INSERT INTO @DOC_RESULTS(DocID) + SELECT DocID FROM TBIDB_SEARCH_RESULT_TOKEN WHERE TOKEN_ID = @TOKEN_ID AND DocID NOT IN (SELECT DocID FROM @DOC_RESULTS) + FETCH NEXT FROM curs_Tokens INTO @ATTR_ID, @ATTR_TITLE,@TERM_ID,@OPERATOR,@TYPE_ATTR + END + CLOSE curs_Tokens + DEALLOCATE curs_Tokens + DELETE FROM TBIDB_SEARCH_RESULT_DOCS WHERE USR_ID = @pUSR_ID; + INSERT INTO TBIDB_SEARCH_RESULT_DOCS(DocID,USR_ID) + SELECT DISTINCT DocID,@pUSR_ID FROM @DOC_RESULTS; +END +GO +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_SEARCH_GET_ATTRIBUTE_RESULT] (@pUSR_ID as INTEGER,@pType AS VARCHAR(20), @DateStr VARCHAR(500), @pSEARCH_TERM as VARCHAR(900), @pLANG_CODE as VARCHAR(5) = 'de-DE') +AS +BEGIN + PRINT '##############################################################' + PRINT '######### [PRIDB_SEARCH_GET_ATTRIBUTE_RESULT] ################' + PRINT '##############################################################' + DECLARE @DYNSQL_INSERT NVARCHAR(MAX) + DECLARE @DATE1 DATE,@DATE2 DATE + SET @DYNSQL_INSERT = 'INSERT INTO TBIDB_SEARCH_RESULT_DOCS(DocID,USR_ID)' + char(10) + + 'SELECT DISTINCT MD.IDB_OBJ_ID,' + CONVERT(VARCHAR(10),@pUSR_ID) + char(10) + + IF @pType = 'BIG INTEGER' + SET @DYNSQL_INSERT += 'FROM' + char(10) + CHAR(9) + 'TBIDB_TERM_VALUE_INTEGER TERM' + char(10) + + CHAR(9) + 'INNER JOIN TBIDB_OBJECT_METADATA MD ON MD.INT_TERM_ID = TERM.GUID' + char(10) + + CHAR(9) + 'INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID' + char(10) + ELSE IF @pType = 'VARCHAR' + SET @DYNSQL_INSERT += 'FROM' + char(10) + CHAR(9) + 'TBIDB_TERM_VALUE_VARCHAR TERM' + char(10) + + 'INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TLANG.TERM_ID = TERM.GUID' + char(10) + + CHAR(9) + 'INNER JOIN TBIDB_LANGUAGE LANG ON LANG.GUID = TLANG.LANG_ID' + char(10) + + CHAR(9) + 'INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.OBJECT_ID = MD.GUID' + char(10) + + CHAR(9) + 'INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID' + char(10) + SET @DYNSQL_INSERT += 'WHERE ' + char(10) + CHAR(9) + 'OBJ.ACTIVE = 1' + char(10) + + IF @DateStr = 'DATEPART' + BEGIN + SELECT @DATE1 = DATE_FROM ,@DATE2 = DATE_TILL FROM TBIDB_SEARCH_DATE_VALUE_USER WHERE USR_ID = @pUSR_ID; + SET @DYNSQL_INSERT += 'AND CONVERT(DATE,OBJ.ADDED_WHEN) >= CONVERT(DATE,''' + CONVERT(VARCHAR(10),@DATE1) + ''') AND CONVERT(DATE,OBJ.ADDED_WHEN) <= CONVERT(DATE,''' + CONVERT(VARCHAR(10),@DATE2) + ''')' + char(10) + END + ELSE IF @DateStr = 'ECM_CREATED_TODAY' + SET @DYNSQL_INSERT += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) = 0' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_YESTERDAY' + SET @DYNSQL_INSERT += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) = 1' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_LAST7DAYS' + SET @DYNSQL_INSERT += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) <= 7' + char(10) + ELSE IF @DateStr = 'ECM_YEAR_CURRENT' + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + ELSE IF @DateStr = 'ECM_YEAR_LAST' + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())-1' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_MONTH_CURRENT' + BEGIN + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + SET @DYNSQL_INSERT += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = DATEPART(MONTH,GETDATE())' + char(10) + END + ELSE IF @DateStr = 'ECM_CREATED_MONTH_LAST' + BEGIN + IF DATEPART(MONTH,GETDATE()) = 1 + BEGIN + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())-1' + char(10) + SET @DYNSQL_INSERT += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = 12' + char(10) + END + ELSE + BEGIN + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + SET @DYNSQL_INSERT += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = DATEPART(MONTH,GETDATE())-1' + char(10) + END + END + + IF LEN(@pSEARCH_TERM) > 0 + BEGIN + IF @pSEARCH_TERM like '%*%' AND @pType = 'VARCHAR' + SET @DYNSQL_INSERT += 'AND CONTAINS(TERM.TERM_VALUE,''' + @pSEARCH_TERM + ''')' + char(10) + ELSE + SET @DYNSQL_INSERT += 'AND TERM.TERM_VALUE = ''' + @pSEARCH_TERM + '''' + char(10) + END + + IF @pType = 'VARCHAR' + SET @DYNSQL_INSERT += 'AND LANG.LANG_CODE = ''' + @pLANG_CODE + '''' + char(10) + PRINT @DYNSQL_INSERT + EXEC sp_executesql @DYNSQL_INSERT +END +GO + +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_SEARCH_GET_TEXT_RESULTS] (@pUSR_ID as INTEGER,@pSEARCH_TERM as VARCHAR(900),@pDATE_RESTRICTION VARCHAR(500), @pLANG_CODE as VARCHAR(5) = 'de-DE') +AS +BEGIN + DECLARE @SRCH_VAR VARCHAR(900), @DYNSQL_INSERT NVARCHAR(MAX),@DateStr VARCHAR(100) + DECLARE @DATE1 DATE,@DATE2 DATE + IF @pSEARCH_TERM like '%*%' + SET @SRCH_VAR = ' "' + @pSEARCH_TERM + '" ' + ELSE + SET @SRCH_VAR = @pSEARCH_TERM + PRINT '@SRCH_VAR [' + @SRCH_VAR + ']' + DELETE FROM TBIDB_SEARCH_RESULT_DOCS WHERE USR_ID = @pUSR_ID; + + IF LEN(@pDATE_RESTRICTION) > 0 + BEGIN + PRINT '@pDATE_RESTRICTION....' + DECLARE @IDX TINYINT, @ATTR_ID VARCHAR(100) + SET @IDX = CHARINDEX('~',@pDATE_RESTRICTION) + PRINT '@IDX: ' + CONVERT(VARCHAR(10),@IDX) + SET @ATTR_ID = LEFT(@pDATE_RESTRICTION,@IDX-1) + PRINT CONVERT(VARCHAR(10),@ATTR_ID) + SET @DateStr = SUBSTRING(@pDATE_RESTRICTION,@IDX + 1,LEN(@pDATE_RESTRICTION)-@IDX) + PRINT @DateStr + END + --############################################################################### + --SUCHE NACH TERM-WERTEN + EXEC PRIDB_SEARCH_GET_ATTRIBUTE_RESULT @pUSR_ID,'VARCHAR', @DateStr,@pSEARCH_TERM, @pLANG_CODE; + EXEC PRIDB_SEARCH_GET_ATTRIBUTE_RESULT @pUSR_ID,'BIG INTEGER', @DateStr,@pSEARCH_TERM, @pLANG_CODE; + --############################################################################### + --SUCHE NACH STRUCTURE/DOCTYPE-WERTEN + SET @DYNSQL_INSERT = 'INSERT INTO TBIDB_SEARCH_RESULT_DOCS(DocID, USR_ID) + select A.IDB_OBJ_ID, ' + CONVERT(VARCHAR(10),@pUSR_ID) + char(10) + + 'FROM VWIDB_DOC_DOCTYPE A' + char(10) + + CHAR(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON A.TERM_ID = TERM.GUID WHERE - OBJ.ACTIVE = 1 AND LANG.LANG_CODE = @pLANGCODE; -INSERT INTO @TBRESULT (TERM) -select Doctype FROM VWIDB_DOC_DOCTYPE where LANG_CODE = @pLANGCODE; -SELECT * FROM @TBRESULT; + A.OBJ_ACTIVE = 1' + char(10) + IF @DateStr = 'DATEPART' + BEGIN + + SELECT @DATE1 = DATE_FROM ,@DATE2 = DATE_TILL FROM TBIDB_SEARCH_DATE_VALUE_USER WHERE USR_ID = @pUSR_ID; + SET @DYNSQL_INSERT += 'AND CONVERT(DATE,OBJ.ADDED_WHEN) >= CONVERT(DATE,''' + CONVERT(VARCHAR(10),@DATE1) + ''') AND CONVERT(DATE,OBJ.ADDED_WHEN) <= CONVERT(DATE,''' + CONVERT(VARCHAR(10),@DATE2) + ''')' + char(10) + END + ELSE IF @DateStr = 'ECM_CREATED_TODAY' + SET @DYNSQL_INSERT += 'AND DATEDIFF(DAY,OBJ_ADDED_WHEN,GETDATE()) = 0' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_YESTERDAY' + SET @DYNSQL_INSERT += 'AND DATEDIFF(DAY,OBJ_ADDED_WHEN,GETDATE()) = 1' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_LAST7DAYS' + SET @DYNSQL_INSERT += 'AND DATEDIFF(DAY,OBJ_ADDED_WHEN,GETDATE()) <= 7' + char(10) + ELSE IF @DateStr = 'ECM_YEAR_CURRENT' + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ_ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + ELSE IF @DateStr = 'ECM_YEAR_LAST' + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ_ADDED_WHEN) = DATEPART(YEAR,GETDATE())-1' + char(10) + ELSE IF @DateStr = 'ECM_CREATED_MONTH_CURRENT' + BEGIN + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ_ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + SET @DYNSQL_INSERT += 'AND DATEPART(MONTH,OBJ_ADDED_WHEN) = DATEPART(MONTH,GETDATE())' + char(10) + END + ELSE IF @DateStr = 'ECM_CREATED_MONTH_LAST' + BEGIN + IF DATEPART(MONTH,GETDATE()) = 1 + BEGIN + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ_ADDED_WHEN) = DATEPART(YEAR,GETDATE())-1' + char(10) + SET @DYNSQL_INSERT += 'AND DATEPART(MONTH,OBJ_ADDED_WHEN) = 12' + char(10) + END + ELSE + BEGIN + SET @DYNSQL_INSERT += 'AND DATEPART(YEAR,OBJ_ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10) + SET @DYNSQL_INSERT += 'AND DATEPART(MONTH,OBJ_ADDED_WHEN) = DATEPART(MONTH,GETDATE())-1' + char(10) + END + END + + + IF LEN(@SRCH_VAR) > 0 + BEGIN + IF @pSEARCH_TERM like '%*%' + SET @DYNSQL_INSERT += 'AND CONTAINS(TERM.TERM_VALUE,''' + @SRCH_VAR + ''')' + char(10) + ELSE + SET @DYNSQL_INSERT += 'AND TERM.TERM_VALUE = ''' + @SRCH_VAR + '''' + char(10) + END + + SET @DYNSQL_INSERT += 'AND LANG_CODE = ''' + @pLANG_CODE + '''' + char(10) + + 'AND A.IDB_OBJ_ID NOT IN (SELECT DocID FROM TBIDB_SEARCH_RESULT_DOCS WHERE USR_ID = ' + CONVERT(VARCHAR(10),@pUSR_ID) + ')' + PRINT @DYNSQL_INSERT + EXEC sp_executesql @DYNSQL_INSERT +END GO --DROP TABLE TBIDB_SEARCH_PROFILE --DROP TABLE TBIDB_SEARCH_LANGUAGE_SQL_RESULT @@ -4017,7 +4361,7 @@ BEGIN SET @IDB_OBJ_ID_OUT = @IDB_OBJ_ID END GO -CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_OBJ_DATA] @IDB_OBJ_ID BIGINT,@ATTRIBUTE VARCHAR(100),@WHO VARCHAR(100), @TERM_VAL VARCHAR(MAX), +ALTER PROCEDURE [dbo].[PRIDB_NEW_OBJ_DATA] @IDB_OBJ_ID BIGINT,@ATTRIBUTE VARCHAR(100),@WHO VARCHAR(100), @TERM_VAL VARCHAR(MAX), @LANG_CODE VARCHAR(5) = 'de-DE', @FOREIGN_KEY BIGINT = 0, @OMD_ID BIGINT OUTPUT AS BEGIN @@ -4082,11 +4426,22 @@ BEGIN BEGIN PRINT 'INSERT LANGUAGE-TERM...' INSERT INTO TBIDB_LANGUAGE_TERM (KIND_TYPE, [OBJECT_ID],TERM_ID,LANG_ID,ADDED_WHO) VALUES(1, @OMD_ID,@MY_TERM_ID,@LANG_ID,@WHO_TERM_ID); + EXEC PRIDB_OBJECT_SUBSTRUCTURE_CHANGED @IDB_OBJ_ID,@WHO; END ELSE BEGIN PRINT 'UPDATE LANGUAGE-TERM...' - UPDATE TBIDB_LANGUAGE_TERM SET ADDED_WHO = @WHO_TERM_ID, TERM_ID = @MY_TERM_ID WHERE [OBJECT_ID] = @OMD_ID AND LANG_ID = @LANG_ID; + DECLARE @OLD_TERM_ID BIGINT + SELECT @OLD_TERM_ID = TERM_ID FROM TBIDB_LANGUAGE_TERM WHERE LANG_ID = @LANG_ID AND [OBJECT_ID] = @OMD_ID; + IF @OLD_TERM_ID <> @MY_TERM_ID + BEGIN + UPDATE TBIDB_LANGUAGE_TERM SET ADDED_WHO = @WHO_TERM_ID, TERM_ID = @MY_TERM_ID WHERE [OBJECT_ID] = @OMD_ID AND LANG_ID = @LANG_ID; + EXEC PRIDB_OBJECT_SUBSTRUCTURE_CHANGED @IDB_OBJ_ID,@WHO; + INSERT INTO TBIDB_OBJECT_METADATA_CHANGE ( + IDB_OBJ_ID, ATTR_ID, OLD_TEXT_TERM, NEW_TEXT_TERM, CHANGED_WHO) VALUES ( + @IDB_OBJ_ID,@ATTR_ID, @OLD_TERM_ID, @MY_TERM_ID, @WHO); + END + END END END @@ -4192,7 +4547,6 @@ BEGIN END --PRINT 'PRIDB_NEW_OBJ_DATA - Got the new @OMD_ID: ' + CONVERT(VARCHAR(20),@OMD_ID) END - GO CREATE OR ALTER PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5) ,@pVar VARCHAR(15) = 'DEFAULT' AS @@ -4225,7 +4579,6 @@ BEGIN DECLARE c_PRIDB_CREATE_VIEW_DOC_DATA CURSOR FOR SELECT DISTINCT ATTR_ID,ATTR_TITLE,TYPE_ID,VIEW_SEQUENCE FROM VWIDB_BE_ATTRIBUTE WHERE VIEW_VISIBLE = 1 AND LANG_CODE = @pLANGCODE AND ATTR_ID IS NOT NULL - AND SYS_ATTRIBUTE = 0 ORDER BY VIEW_SEQUENCE OPEN c_PRIDB_CREATE_VIEW_DOC_DATA @@ -5719,19 +6072,19 @@ GO --INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('Doctype',1,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginFileName',1,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginCreationDatetime',6,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginChangedDatetime',6,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('DisplayFileName',1,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('DisplayFileName1',1,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('Dynamic Folder',1,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailMessageID',1,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailSubject',1,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailFrom',1,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailDate',5,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('PM-LOGGING',8,0,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('VIRTUAL_FOLDER',1,1); -INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('VIRTUAL_FOLDER_PART',1,1); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('OriginFileName',1,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('OriginCreationDatetime',6,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('OriginChangedDatetime',6,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('DisplayFileName',1,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('DisplayFileName1',1,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('Dynamic Folder',1,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('EmailMessageID',1,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('EmailSubject',1,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('EmailFrom',1,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('EmailDate',5,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT,VIEW_VISIBLE) VALUES ('PM-LOGGING',8,0,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('VIRTUAL_FOLDER',1,1,0); +INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,VIEW_VISIBLE) VALUES ('VIRTUAL_FOLDER_PART',1,1,0); --INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('ObjectEvents',1,1,1); INSERT INTO TBIDB_BE_ATTRIBUTE (BE_ID,ATTR_ID,DEFAULT_SEARCH_ATTRIBUTE) SELECT 1,GUID, 1 FROM TBIDB_ATTRIBUTE WHERE TITLE NOT IN ('PM-LOGGING','ObjectEvents') ; @@ -5799,7 +6152,6 @@ BEGIN WHERE OBJECT_ID = @DOCTYPE_ID AND LANG_ID = @LANG_ID AND KIND_TYPE = 2 AND TERM_ID <> @MY_DOCTYPE_TERM_ID; END END - GO EXEC PRIDB_NEW_DOCTYPE 'Ausgangsrechnung','Ausgangsrechnung','System','de-DE'; EXEC PRIDB_NEW_DOCTYPE 'Ausgangsrechnung','Outgoing invoice','System','en-EN'; @@ -5809,6 +6161,15 @@ EXEC PRIDB_NEW_DOCTYPE 'Gutschrift','Gutschrift','System','de-DE'; EXEC PRIDB_NEW_DOCTYPE 'Gutschrift','Credit note','System','en-EN'; EXEC PRIDB_NEW_DOCTYPE 'Quittung','Quittung','System','de-DE'; GO +CREATE PROCEDURE [dbo].[PRIDB_OBJECT_SUBSTRUCTURE_CHANGED] @IDB_OBJ_ID BIGINT,@WHO VARCHAR(100) +AS +BEGIN + UPDATE TBIDB_OBJECT + SET CHANGED_WHO_SUBSTRUCTURE = @WHO, CHANGED_WHEN_SUBSTRUCTURE = GETDATE() + WHERE + IDB_OBJ_ID = @IDB_OBJ_ID +END +GO CREATE VIEW [dbo].[VWGI_ADMIN_OVERVIEW] AS SELECT T3.GUID as ID, diff --git a/00_IDB/Update/1.1.1.sql b/00_IDB/Update/1.1.1.sql index 40c4a07..85b2235 100644 --- a/00_IDB/Update/1.1.1.sql +++ b/00_IDB/Update/1.1.1.sql @@ -48,4 +48,129 @@ SELECT FROM GO +ALTER PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5) ,@pVar VARCHAR(15) = 'DEFAULT' +AS +DECLARE + @ATTR_ID INT, + @TITLE VARCHAR(100), + @TYPID INT, + @SQL1 NVARCHAR(MAX), + @Date Varchar(20), + @Bool4 Varchar(1), + @Integer24 Varchar(20), + @Float Varchar(20), + @RELPATH Varchar(200), + @SEQUENCE Integer, + @NAME_VIEW VARCHAR(20) + IF @pVar = 'DEFAULT' + SET @NAME_VIEW = 'VWIDB_DOC_DATA_' + ELSE + SET @NAME_VIEW = 'VWIDB_DOCRESULT_' + SET @SQL1 = 'CREATE VIEW ' + @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2)) + ' AS '+ char(10) + 'SELECT ' + char(10) + char(9) + + IF @pVar = 'DEFAULT' + SET @SQL1 += +'T.IDB_OBJ_ID' + char(10) + ELSE + SET @SQL1 += +'T.IDB_OBJ_ID as DocID' + char(10) + + SET @SQL1 += char(9) + ',DT.Doctype as Doctype' + char(10) +BEGIN + DECLARE c_PRIDB_CREATE_VIEW_DOC_DATA CURSOR FOR + SELECT DISTINCT ATTR_ID,ATTR_TITLE,TYPE_ID,VIEW_SEQUENCE + FROM VWIDB_BE_ATTRIBUTE WHERE VIEW_VISIBLE = 1 AND LANG_CODE = @pLANGCODE AND ATTR_ID IS NOT NULL + ORDER BY VIEW_SEQUENCE + + OPEN c_PRIDB_CREATE_VIEW_DOC_DATA + FETCH NEXT FROM c_PRIDB_CREATE_VIEW_DOC_DATA INTO @ATTR_ID,@TITLE,@TYPID,@SEQUENCE + WHILE @@FETCH_STATUS = 0 + BEGIN + DECLARE @FN_COMMAND as VARCHAR(100), @FN_TYP as VARCHAR(50) + IF @TYPID IN (1,8) + BEGIN + SET @FN_COMMAND = '(SELECT [dbo].[FNIDB_GET_TERM_@TYPE] (@OBJ_ID,@ATTR_ID,''@LANG_CODE''))' + SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@LANG_CODE',@pLANGCODE) + END + ELSE + SET @FN_COMMAND = '(SELECT [dbo].[FNIDB_GET_TERM_@TYPE] (@OBJ_ID,@ATTR_ID))' + SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@OBJ_ID','T.IDB_OBJ_ID') + SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@ATTR_ID',@ATTR_ID) + + + IF @TYPID = 1 + SET @FN_TYP = 'TEXT' + ELSE IF @TYPID = 2 + SET @FN_TYP = 'INTEGER' + ELSE IF @TYPID = 3 + SET @FN_TYP = 'FLOAT' + ELSE IF @TYPID = 4 + SET @FN_TYP = 'DECIMAL' + ELSE IF @TYPID = 5 + SET @FN_TYP = 'DATE' + ELSE IF @TYPID = 6 + SET @FN_TYP = 'DATE_TIME' + ELSE IF @TYPID = 7 + SET @FN_TYP = 'BIT' + ELSE IF @TYPID = 8 + SET @FN_TYP = 'TEXT_VECTOR' + ELSE IF @TYPID = 8 + SET @FN_TYP = 'INTEGER_VECTOR' + + SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@TYPE',@FN_TYP) + + --PRINT '@FN_COMMAND: ' + @FN_COMMAND + SET @SQL1 += char(9) + ',' + @FN_COMMAND + char(9) + char(9) + ' AS ''' + @TITLE + '''' + char(10) + --PRINT @SQL1 + FETCH NEXT FROM c_PRIDB_CREATE_VIEW_DOC_DATA INTO @ATTR_ID,@TITLE,@TYPID,@SEQUENCE + END + CLOSE c_PRIDB_CREATE_VIEW_DOC_DATA + DEALLOCATE c_PRIDB_CREATE_VIEW_DOC_DATA + IF @pVar = 'DEFAULT' + BEGIN + SET @SQL1 += char(9) + ',T5.TERM_VALUE AS DocExtension' + char(10) + + char(9) + ',T5.TERM_VALUE AS DocName' + char(10) + + char(9) + ',CONCAT(T4.TERM_VALUE,''\'',T5.TERM_VALUE) AS DocRelativePath' + char(10) + + char(9) + ',T4.TERM_VALUE AS DocRelativePathOnly' + char(10) + END + SET @SQL1 += char(9) + ',T.ADDED_WHEN AS [Added when]' + char(10) + + char(9) + ',T.ADDED_WHO AS [Added who]' + char(10) + + char(9) + ',T.CHANGED_WHEN_SUBSTRUCTURE AS [Changed when]' + char(10) + + char(9) + ',T.CHANGED_WHO_SUBSTRUCTURE AS [Changed who]' + char(10) + + SET @SQL1 += 'FROM' + char(10) + IF @pVar = 'DEFAULT' + SET @SQL1 += char(9)+'TBIDB_OBJECT T INNER JOIN TBIDB_FILE_OBJECT T2 ON T.IDB_OBJ_ID = T2.IDB_OBJ_ID' + char(10) + + char(9) + 'INNER JOIN VWIDB_DOC_DOCTYPE DT ON T.IDB_OBJ_ID = DT.IDB_OBJ_ID' + char(10) + + char(9) + 'INNER JOIN TBIDB_OBJECT_STORE T3 ON T2.OBJ_ST_ID = T3.GUID' + char(10) + + char(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR T4 ON T2.RELPATH_TERM_ID = T4.GUID' + char(10) + + char(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR T5 ON T2.FILENAME_TERM_ID = T5.GUID' + char(10) + ELSE + SET @SQL1 += char(9) + 'TBIDB_OBJECT T ' + char(10) + + char(9) + 'INNER JOIN VWIDB_DOC_DOCTYPE DT ON T.IDB_OBJ_ID = DT.IDB_OBJ_ID' + char(10) + + SET @SQL1 += 'WHERE' + char(10) + + char(9) + 'DT.LANG_CODE = ''' + @pLANGCODE + ''' AND' + char(10) + + char(9) + 'T.KIND_TYPE_ID = 1 AND T.DELETED = 0 AND T.ACTIVE = 1' + PRINT @SQL1 + IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2))) + BEGIN + DECLARE @DELETE NVARCHAR(100) + SET @DELETE = 'DROP VIEW [dbo].[' + @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2)) + ']' + EXEC sp_executesql @DELETE + END + EXEC sp_executesql @SQL1 +END +GO +DELETE FROM TBIDB_CATALOG WHERE CAT_TITLE IN ('AHWF_CMD_LAYOUT_SELECT','AHWF_CMD_USR_SELECT'); +DELETE FROM TBIDB_COMMON_SQL WHERE TITLE IN ('AHWF_CMD_LAYOUT_SELECT','AHWF_CMD_USR_SELECT','RECENT_FILES_USER'); +INSERT INTO TBIDB_COMMON_SQL (TITLE,SQL_COMMAND) VALUES ('AHWF_CMD_LAYOUT_SELECT','SELECT NAME + '', '' + PRENAME AS FULLNAME,EMAIL,USERNAME FROM DD_ECM.dbo.TBDD_USER WHERE ACTIVE = 1') +GO +INSERT INTO TBIDB_COMMON_SQL (TITLE,SQL_COMMAND) VALUES ('AHWF_CMD_USR_SELECT','SELECT NAME + '', '' + PRENAME AS FULLNAME,EMAIL,USERNAME FROM TBDD_USER') +GO +INSERT INTO TBIDB_COMMON_SQL (TITLE,SQL_COMMAND) VALUES ('RECENT_FILES_USER','--3 Columns are needed: 1 DocID, 2 Description1, 3 Description2 +SELECT TOP 10 DocID,Doctype,DisplayFileName FROM VWIDB_DOCRESULT_DE WHERE [Changed who] = ''@UserName'' ORDER BY [Changed when] DESC') +GO +INSERT INTO TBIDB_COMMON_SQL (TITLE,SQL_COMMAND) VALUES ('ZF_DISPLAY_PM_JOBS_INDIVIDUAL','SELECT COUNT(A.DOC_ID) FROM (SELECT DISTINCT DOC_ID FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = 1) A') +GO +INSERT INTO TBIDB_COMMON_SQL (TITLE,SQL_COMMAND) VALUES ('ZF_DISPLAY_PM_JOBS_GROUP','SELECT COUNT(A.DOC_ID) FROM (SELECT DISTINCT DOC_ID FROM TBPM_PROFILE_FILES WHERE PROFIL_ID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] (@USR_ID))) A') +GO diff --git a/00_IDB/Update/g1hxflhb.tpr~ b/00_IDB/Update/g1hxflhb.tpr~ new file mode 100644 index 0000000..71a1ed0 --- /dev/null +++ b/00_IDB/Update/g1hxflhb.tpr~ @@ -0,0 +1,167 @@ +UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.1.1' where CONFIG_NAME = 'DB_VERSION' +GO +ALTER VIEW [dbo].[VWIDB_BE_ATTRIBUTE] AS +SELECT + T.[BE_ID] + ,T2.TITLE AS BE + ,[ATTR_ID] + ,T.DEFAULT_SEARCH_ATTRIBUTE + ,T6.TERM_VALUE AS ATTR_TITLE + ,T1.TYP_ID + ,T1.TYP_ID AS [TYPE_ID] + ,T3.NAME_TYPE AS [TYPE_NAME] + ,T1.VIEW_VISIBLE + ,T1.VIEW_SEQUENCE + ,T5.GUID AS LANG_ID + ,T5.LANG_CODE + ,T.ADDED_WHEN + ,T.ADDED_WHO + ,T.CHANGED_WHEN + ,T.CHANGED_WHO + FROM + [TBIDB_BE_ATTRIBUTE] T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTR_ID = T1.GUID + INNER JOIN TBIDB_BUSINESS_ENTITY T2 ON T.BE_ID = T2.GUID + INNER JOIN TBIDB_ATTRIBUTE_TYPE T3 ON T1.TYP_ID = T3.GUID + INNER JOIN TBIDB_ATTRIBUTE_LANGUAGE T4 ON T1.GUID = T4.ATTRIBUTE_ID + INNER JOIN TBIDB_LANGUAGE T5 ON T4.LANGUAGE_ID = T5.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR T6 ON T4.TERM_ID = T6.GUID + WHERE + T1.DELETED = 0 +UNION +SELECT + T.[BE_ID] + ,T2.TITLE AS BE + ,[ATTR_ID] + ,T.DEFAULT_SEARCH_ATTRIBUTE + ,T6.TERM_VALUE AS ATTR_TITLE + ,T1.TYP_ID + ,T1.TYP_ID AS [TYPE_ID] + ,T3.NAME_TYPE AS [TYPE_NAME] + ,T1.VIEW_VISIBLE + ,T1.VIEW_SEQUENCE + ,T5.GUID AS LANG_ID + ,T5.LANG_CODE + ,T.ADDED_WHEN + ,T.ADDED_WHO + ,T.CHANGED_WHEN + ,T.CHANGED_WHO + FROM +GO + +ALTER PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5) ,@pVar VARCHAR(15) = 'DEFAULT' +AS +DECLARE + @ATTR_ID INT, + @TITLE VARCHAR(100), + @TYPID INT, + @SQL1 NVARCHAR(MAX), + @Date Varchar(20), + @Bool4 Varchar(1), + @Integer24 Varchar(20), + @Float Varchar(20), + @RELPATH Varchar(200), + @SEQUENCE Integer, + @NAME_VIEW VARCHAR(20) + + IF @pVar = 'DEFAULT' + SET @NAME_VIEW = 'VWIDB_DOC_DATA_' + ELSE + SET @NAME_VIEW = 'VWIDB_DOCRESULT_' + SET @SQL1 = 'CREATE VIEW ' + @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2)) + ' AS '+ char(10) + 'SELECT ' + char(10) + char(9) + + IF @pVar = 'DEFAULT' + SET @SQL1 += +'T.IDB_OBJ_ID' + char(10) + ELSE + SET @SQL1 += +'T.IDB_OBJ_ID as DocID' + char(10) + + SET @SQL1 += char(9) + ',DT.Doctype as Doctype' + char(10) +BEGIN + DECLARE c_PRIDB_CREATE_VIEW_DOC_DATA CURSOR FOR + SELECT DISTINCT ATTR_ID,ATTR_TITLE,TYPE_ID,VIEW_SEQUENCE + FROM VWIDB_BE_ATTRIBUTE WHERE VIEW_VISIBLE = 1 AND LANG_CODE = @pLANGCODE AND ATTR_ID IS NOT NULL + ORDER BY VIEW_SEQUENCE + + OPEN c_PRIDB_CREATE_VIEW_DOC_DATA + FETCH NEXT FROM c_PRIDB_CREATE_VIEW_DOC_DATA INTO @ATTR_ID,@TITLE,@TYPID,@SEQUENCE + WHILE @@FETCH_STATUS = 0 + BEGIN + DECLARE @FN_COMMAND as VARCHAR(100), @FN_TYP as VARCHAR(50) + IF @TYPID IN (1,8) + BEGIN + SET @FN_COMMAND = '(SELECT [dbo].[FNIDB_GET_TERM_@TYPE] (@OBJ_ID,@ATTR_ID,''@LANG_CODE''))' + SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@LANG_CODE',@pLANGCODE) + END + ELSE + SET @FN_COMMAND = '(SELECT [dbo].[FNIDB_GET_TERM_@TYPE] (@OBJ_ID,@ATTR_ID))' + SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@OBJ_ID','T.IDB_OBJ_ID') + SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@ATTR_ID',@ATTR_ID) + + + IF @TYPID = 1 + SET @FN_TYP = 'TEXT' + ELSE IF @TYPID = 2 + SET @FN_TYP = 'INTEGER' + ELSE IF @TYPID = 3 + SET @FN_TYP = 'FLOAT' + ELSE IF @TYPID = 4 + SET @FN_TYP = 'DECIMAL' + ELSE IF @TYPID = 5 + SET @FN_TYP = 'DATE' + ELSE IF @TYPID = 6 + SET @FN_TYP = 'DATE_TIME' + ELSE IF @TYPID = 7 + SET @FN_TYP = 'BIT' + ELSE IF @TYPID = 8 + SET @FN_TYP = 'TEXT_VECTOR' + ELSE IF @TYPID = 8 + SET @FN_TYP = 'INTEGER_VECTOR' + + SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@TYPE',@FN_TYP) + + --PRINT '@FN_COMMAND: ' + @FN_COMMAND + SET @SQL1 += char(9) + ',' + @FN_COMMAND + char(9) + char(9) + ' AS ''' + @TITLE + '''' + char(10) + --PRINT @SQL1 + FETCH NEXT FROM c_PRIDB_CREATE_VIEW_DOC_DATA INTO @ATTR_ID,@TITLE,@TYPID,@SEQUENCE + END + CLOSE c_PRIDB_CREATE_VIEW_DOC_DATA + DEALLOCATE c_PRIDB_CREATE_VIEW_DOC_DATA + IF @pVar = 'DEFAULT' + BEGIN + SET @SQL1 += char(9) + ',T5.TERM_VALUE AS DocExtension' + char(10) + + char(9) + ',T5.TERM_VALUE AS DocName' + char(10) + + char(9) + ',CONCAT(T4.TERM_VALUE,''\'',T5.TERM_VALUE) AS DocRelativePath' + char(10) + + char(9) + ',T4.TERM_VALUE AS DocRelativePathOnly' + char(10) + END + SET @SQL1 += char(9) + ',T.ADDED_WHEN AS [Added when]' + char(10) + + char(9) + ',T.ADDED_WHO AS [Added who]' + char(10) + + char(9) + ',T.CHANGED_WHEN_SUBSTRUCTURE AS [Changed when]' + char(10) + + char(9) + ',T.CHANGED_WHO_SUBSTRUCTURE AS [Changed who]' + char(10) + + SET @SQL1 += 'FROM' + char(10) + IF @pVar = 'DEFAULT' + SET @SQL1 += char(9)+'TBIDB_OBJECT T INNER JOIN TBIDB_FILE_OBJECT T2 ON T.IDB_OBJ_ID = T2.IDB_OBJ_ID' + char(10) + + char(9) + 'INNER JOIN VWIDB_DOC_DOCTYPE DT ON T.IDB_OBJ_ID = DT.IDB_OBJ_ID' + char(10) + + char(9) + 'INNER JOIN TBIDB_OBJECT_STORE T3 ON T2.OBJ_ST_ID = T3.GUID' + char(10) + + char(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR T4 ON T2.RELPATH_TERM_ID = T4.GUID' + char(10) + + char(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR T5 ON T2.FILENAME_TERM_ID = T5.GUID' + char(10) + ELSE + SET @SQL1 += char(9) + 'TBIDB_OBJECT T ' + char(10) + + char(9) + 'INNER JOIN VWIDB_DOC_DOCTYPE DT ON T.IDB_OBJ_ID = DT.IDB_OBJ_ID' + char(10) + + SET @SQL1 += 'WHERE' + char(10) + + char(9) + 'DT.LANG_CODE = ''' + @pLANGCODE + ''' AND' + char(10) + + char(9) + 'T.KIND_TYPE_ID = 1 AND T.DELETED = 0 AND T.ACTIVE = 1' + PRINT @SQL1 + IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2))) + BEGIN + DECLARE @DELETE NVARCHAR(100) + SET @DELETE = 'DROP VIEW [dbo].[' + @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2)) + ']' + EXEC sp_executesql @DELETE + END + EXEC sp_executesql @SQL1 +END +GO +INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('AHWF_CMD_LAYOUT_SELECT','') +GO +INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('AHWF_CMD_USR_SELECT','SELECT NAME + ', ' + PRENAME AS FULLNAME,EMAIL,USERNAME FROM TBDD_USER') +GO diff --git a/01_PM/Updates/2.2.0.0.sql b/01_PM/Updates/2.2.0.0.sql index 83fdeca..c2d52ca 100644 --- a/01_PM/Updates/2.2.0.0.sql +++ b/01_PM/Updates/2.2.0.0.sql @@ -5,60 +5,62 @@ UPDATE TBPM_TYPE SET BEZEICHNUNG = 'Metadata based' where BEZEICHNUNG = 'Man. Va GO UPDATE TBPM_TYPE SET BEZEICHNUNG = 'Serially' where BEZEICHNUNG = 'Automatism' GO -DROP TABLE TBPM_SERIELL_PARTIES_STATE -DROP TABLE TBPM_PROFILE_SERIELL_PARTIES -CREATE TABLE TBPM_SERIELL_DOC + +--Ein Object wird einem Profil zugeordnet +CREATE TABLE TBPM_WF_ADHOC_OBJECT ( GUID BIGINT IDENTITY(1,1), PROFIL_ID INTEGER NOT NULL, OBJ_ID BIGINT NOT NULL, + WORK_INSTRUCTION VARCHAR(250) NOT NULL, + CMD_WF_SELECT NVARCHAR(MAX) NOT NULL, WF_FINISHED DATETIME, ADDED_WHO VARCHAR(100) DEFAULT 'SYSTEM' NOT NULL, ADDED_WHEN DATETIME DEFAULT GETDATE(), CHANGED_WHO VARCHAR(100), CHANGED_WHEN DATETIME, - CONSTRAINT PK_TBPM_SERIELL_DOC PRIMARY KEY(GUID), - CONSTRAINT FK_TBPM_SERIELL_DOC_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) + CONSTRAINT PK_TBPM_WF_ADHOC_OBJECT PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_WF_ADHOC_OBJECT_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) ) GO -CREATE TRIGGER TBPM_SERIELL_DOC_AFT_UPD ON TBPM_SERIELL_DOC +CREATE TRIGGER TBPM_WF_ADHOC_OBJECT_AFT_UPD ON TBPM_WF_ADHOC_OBJECT FOR UPDATE AS - UPDATE TBPM_SERIELL_DOC SET CHANGED_WHEN = GETDATE() + UPDATE TBPM_WF_ADHOC_OBJECT SET CHANGED_WHEN = GETDATE() FROM INSERTED - WHERE TBPM_SERIELL_DOC.GUID = INSERTED.GUID + WHERE TBPM_WF_ADHOC_OBJECT.GUID = INSERTED.GUID GO -CREATE TABLE TBPM_PROFILE_SERIELL_PARTIES +CREATE TABLE TBPM_WF_ADHOC_OBJECT_PARTIES ( GUID BIGINT IDENTITY(1,1), - PROFIL_ID INTEGER NOT NULL, + AH_WF_ID BIGINT NOT NULL, ENTITY_TYPE VARCHAR(50) NOT NULL, USER_OR_GROUP_ID INTEGER NOT NULL, - CRITERIA_NEXT_STEP VARCHAR(500), + CRITERIA_NEXT_STEP NVARCHAR(MAX), SEQUENCE TINYINT NOT NULL DEFAULT 0, ADDED_WHO VARCHAR(50) DEFAULT 'SYSTEM' NOT NULL, ADDED_WHEN DATETIME DEFAULT GETDATE(), CHANGED_WHO VARCHAR(50), CHANGED_WHEN DATETIME, - CONSTRAINT PK_TBPM_PROFILE_SERIELL_PARTIES PRIMARY KEY(GUID), - CONSTRAINT FK_TBPM_PROFILE_SERIELL_PARTIES_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) + CONSTRAINT PK_TBPM_WF_ADHOC_OBJECT_PARTIES PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_WF_ADHOC_OBJECT_PARTIES_PROFIL_ID FOREIGN KEY (AH_WF_ID) REFERENCES TBPM_WF_ADHOC_OBJECT (GUID) ) GO -CREATE TRIGGER TBPM_PROFILE_SERIELL_PARTIES_AFT_UPD ON TBPM_PROFILE_SERIELL_PARTIES +CREATE TRIGGER TBPM_PROFILE_SERIELL_PARTIES_AFT_UPD ON TBPM_WF_ADHOC_OBJECT_PARTIES FOR UPDATE AS - UPDATE TBPM_PROFILE_SERIELL_PARTIES SET CHANGED_WHEN = GETDATE() + UPDATE TBPM_WF_ADHOC_OBJECT_PARTIES SET CHANGED_WHEN = GETDATE() FROM INSERTED - WHERE TBPM_PROFILE_SERIELL_PARTIES.GUID = INSERTED.GUID + WHERE TBPM_WF_ADHOC_OBJECT_PARTIES.GUID = INSERTED.GUID GO CREATE TABLE TBPM_SERIELL_PARTIES_STATE ( GUID BIGINT IDENTITY(1,1), SPID_ID BIGINT NOT NULL, - ENTITY_TYPE VARCHAR(50) NOT NULL, - USER_OR_GROUP_ID INTEGER NOT NULL, + --ENTITY_TYPE VARCHAR(50) NOT NULL, + --USER_OR_GROUP_ID INTEGER NOT NULL, STATE_DESC VARCHAR(500) NOT NULL, COMMENT VARCHAR(500), ADDED_WHO VARCHAR(50) DEFAULT 'SYSTEM' NOT NULL, diff --git a/01_PM/Updates/2.2.1.1.sql b/01_PM/Updates/2.2.1.1.sql new file mode 100644 index 0000000..9e3a2a9 --- /dev/null +++ b/01_PM/Updates/2.2.1.1.sql @@ -0,0 +1,28 @@ +UPDATE TBDD_MODULES SET DB_VERSION = '2.2.1.1' where NAME = 'Process-Manager' +GO +-- ============================================= +-- Author: Digital Data MS +-- Created: 11.06.2021 +-- Description: Gets the next DocumentID +-- Changed: 05.05.2022 Insert only when <> 0 +-- ============================================= +ALTER PROCEDURE [dbo].[PRPM_GET_NEXT_DOC_INFO] +( + @PROFIL_ID Integer, + @DocID BigInt, + @UserID Integer +) +AS +BEGIN + IF @DocID <> 0 + BEGIN + INSERT INTO TBPM_DOCWALKOVER (DocID,UserID) VALUES (@DocID,@UserID); + END + + SELECT GUID as DocGUID, DOC_ID as DocID + ,(SELECT COUNT(GUID) FROM TBPM_VALIDATION_PROFILE_GROUP_USER WHERE UserID = @UserID) - (SELECT COUNT(DocID) + 1 FROM TBPM_DOCWALKOVER WHERE UserID = @UserID) REMAINING + FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = @PROFIL_ID AND DOC_ID = ( + SELECT MIN(DocID) FROM TBPM_VALIDATION_PROFILE_GROUP_USER WHERE UserID = @UserID AND DocID not in (SELECT DISTINCT DocID FROM TBPM_DOCWALKOVER WHERE UserID = @UserID)) + + RETURN +END diff --git a/02_GI/Updates/2.5.2.1.sql b/02_GI/Updates/2.5.2.1.sql new file mode 100644 index 0000000..17260e9 --- /dev/null +++ b/02_GI/Updates/2.5.2.1.sql @@ -0,0 +1,8 @@ +UPDATE TBDD_MODULES SET DB_VERSION = '2.5.2.1' where NAME = 'Global-Indexer' +GO + + +ALTER TABLE TBGI_FILES_USER ADD DocID BIGINT NOT NULL DEFAULT 0 +GO + + diff --git a/04_APPSERV/INSERT_JOBS.sql b/04_APPSERV/INSERT_JOBS.sql index 0cc08ca..4e1f7bd 100644 --- a/04_APPSERV/INSERT_JOBS.sql +++ b/04_APPSERV/INSERT_JOBS.sql @@ -266,6 +266,11 @@ CRON_ID, CON_ID, TITLE ,DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES ( FROM VWGI_DOCTYPE_USER A INNER JOIN TBDD_DOKUMENTART DT ON A.DOCTYPE_ID = DT.GUID INNER JOIN IDB.dbo.VWIDB_DOCTYPE_LANGUAGE DL ON DT.IDB_DOCTYPE_ID = DL.Doctype_ID WHERE A.AKTIV = 1'); GO +Insert Into TBAPPSERV_CRON_DETAIL ( +CRON_ID, CON_ID, TITLE, DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES ( +1, 1, 'TBZF_USER_DISPLAY_JOBS', 'TBZF_USER_DISPLAY_JOBS', 1, +'SELECT * from TBZF_USER_DISPLAY_JOBS'); + diff --git a/09_ZooFlow/Update/1.0.0.1.sql b/09_ZooFlow/Update/1.0.0.1.sql index 80ac3d06563e20a9b75f3f301cff1c5b48668147..f22698d800336bee9c6cd204023f1544659c49d8 100644 GIT binary patch delta 918 zcmb7DyGjF55FOHFR}e`cO~R5Z7A6uB5L=ZzcH?T?S2lW9Ls00&;n4BCp3x4Vr?4|By9 zKhtXW%sV7m#@G;*O42*#=;^zA=FR)>f3~Uz)vao=+N@Tpo_?2fcB|@F_p1B)->UBF z`iAao=zmlHw^X8E{Z(h{x^_pU)^zozzO&VQb+Njnul>*J+TW`e)zfNUUt0J^rPtL; zUv(DM13g;JpQ_uc|J&*})vC(yzmCW%Wh&>8a+E>Sy(}UA?Vt zsBQXuTkWO(cQnp@9dGOYPW5g8(?cCU(bY$S`k_j!S3uI&(LMdH3&Pv!7ufrPTyX|9;LplziqX=TfI@g;OepdpC(x5t3M>{T+{DmVd=6yJz?s)?q1P3 zzhCJ}KB6zvXdUy5!WtL{d(h>s&KUDrffFzNoyy!#RE3&%1j~v_ZtCc^zEH1O_d<0+ zS8tx!2fA7xi=x0=@dmWHQOzV8_k{C}G!`qfoM>bi+!^4|I4j3tw0W{{FACqt2zcWI zuiO_;t_b$6#3S(PhvFtiwK%}WlKNN`&5X|A3R!>$;m=;RkYr_jK;>R4xtZ|TR(7NM zPIcjkHMMj{k_>NbskOUmYfb00yDWa^e@--6tbVA@Rp-@@*Im_}`>OL`Xbr|N41#5~ zaWAzGB*XfqC2Q?K()4m5;f&lNY99@{#Y@zCyDje8t6r%D<6n|g8tpEM%1eW5ec{1i zM9TVuwo0vrL~ROpr7mmg3ezaAG1~EO8gQoS8fA|6vplwd(?`_g*`S!~(SFiSj>|e9 zUXzYAE{xWXQq%aywc~=Q=KSB@irFQjT9gf0@mfB@Xn7QTdCSeR-d+=9%i`B})oba^ zbxFX1j$i8dKpea&8C@Fi;GB3iFZVXty4R|)lXx8)aIQl;Y^SmZl599|U%$6x%MN7C zUdocam%ZDQwWP;omBIdF&wH{c_HQ_z(e;%C&9eIHNq21}d7>P8^ru7oH01Gw^egfEq|lhYdZcRK^?G; z-y(dnsS(z7viHPT?hNR(Ang@Bqg$Zjrf`K-hes|A#x^6`mKI<}dKLR){o#52?(hS~ zpvJf9?yA}`56v+O2b*s+Tm4>l(Qs&eaJ(sfUzfZ2L%E{`w=(BcliK)r(KkoVzrY9& zqZ!S&42+^-&ChbEn)=c;Wyt|K42GrB`u*_`XWhLoXw12Uge2v)@soN9`ZZx?xTOIb zf7UlB#^~Fq#`Vw?UA7785AV@AiuP=zrAGi&w-PtzmIlAYc&4mB9z@8X`M!8PIZoV4 z;-TJ>r!Xt%b4tx7?;*e98pz=^y$cn|Rm<)!(F}a;(*1 zLbmI0IW~Zgx;cbx+*M*Nm%yM_*>70`+=FW*%|_YIhh?o9)iBI-QLav14;DIMcH!1CVO3F+hh$sDzR&PjxH{}@}uY;i#DA{`8VHx zPHpDA(pB!f%9$R^eVbvW(U=>e#`+-AZT3x@i^+ZxdGwQgysy%A+|MLUephhPVu{}v zN6GW;rSSa0rbP?x_v9n$uGh|eUFBz!RhuLNpRJ7_U*J|Y>Ml#v&CBE1g7DssW&v`| zG23CUqitk}nC)Wv+ye$JV9qDOeFo_l|xjL+-pxnisC-1|(bMP7zB@JGpu-%EJ*9DcK%EAnG5X|BWP zK`zNA(RPm0m^s%MJo_B4wG<*dbzm*u}Lxm!z-kfJ=1`7f_Ny)1LY~vSc_MByLhI@Y{4D6~u`+OEz{{*3__5f;?CDd*!|zmz zY~ilzyc8V!q9j>8_gMIcYBnphsTr*~%|{Ul&#V9Q1Mm5v`utH;UC}r^8mU9=xmlo? zQGDX#8@~oETC6gx&b;Q#95?N=Bg_Z_#ir(#$XxcsLF7!C5!@9gz1EfOG$*-T{gUp3 z8!`v)bOv@V=xcKfza|M_9?z~Y6J>4CF493yUsN_rSI@#2E@nhCsJJ02GJoV4wCF6K zX90(n;f|WbnCN|Y>DFOgi)_gVa?j~RPf;FA17&TN)p{LHwX#0&!gZ6^_qpE5+gOo2 zEo$U<4@Z8K5imctmU7RF2~+Jj@a$$A&V5$AKge$bjZv@;$FNo`$DLEKn|{nLo8BmO zNjvPPseLRuolu?Qk{(Qs&drmGG>X%+mM+hgF`-(nXWc|%cFd3^=iVn z%{v1}_lQf4Ih*5+%XJ_+vz$qZQgvCea;aa*{pNZdxT=)Saq2onhf7Kqw7CWG-V8q1TX`PH`)cP$aO!Pv+&{D$K4SPFMm-LV z%J!nh#vvBVHitu)^S8I0Upp?ud0Xx6A9n=EfVa%?aUpKD*M!hG!EzRB(m2d8FmC{- zZ|Ymmvbe6yXJupcms6-d`}QDtf~*Vi60YgUfRfE&RS4c9W!ijR_ut?MWC>2Q`4H3B zHhY@;xpRWwJkawhZyw3{EW1t5Xb8`B;{nee!e?_kv#A%f^SbU4<2(FB!iFtmb1m6D zaD&XDKWt|E?f{Qmi(E5y5%^sS+h+W@pU;1IzvdAb&YTu83uRtk?mIYk4PWRsZ1lJK zHN5rJ4=d#AZIqs%wNhRSiw;e44O)7ERyQc%GiC;BtnTv?R=#ioIF+XdxfnlRT(oCUZ;N7UhsJ7)pTb{$iPxxLg`fWNL?>yX#)p9Pq6n^}i9 zzgNNHT18AtU~q`W%tXiE5V zuQDHJyVseQi1AX^RwzMNJUYvL=AM|ZCxnLNn^_eI*L{R{1NNl_dTEA&6|T_go%Dpo9=0}eobmZ8%5#MT z0?|0Ua#1qY&M85uoIj0gn!FIDje^7J3N7 zZwnTUTO*dY_3c58Vfk2>+lz`+J!^}cx9N>&F{jSyaYJZCu*%AkaudB z7Jm}Ua1>n-Wyi6OJS*5`AH(1HJUpqeA-U&yJYTA*J;%4br6c&9692!K-Daqns7%&T4dfR=LNFWac@9c0aUidpr zs*LZOefYdcz%?nqO(QCB=qo)VPkqu66?iAxQm$j*+GyR<}wNz=@C()+eQaj53 z>dIgr1^#XiEHsT-`)Jku!_l*Bllci{)@9~!-QCHqoyw_7T>WX}U)rFq)9bYJFl{h~ zhaNHXr<0Fq8&PhL$H~it{w*^!whH+FDKo=}rx_X3s?(Jzw&P%P&WU-R&>G{cU^wo| z6!`L}_I)yoH#5|)&*QBRnTat?WBYqGXI-Wl7*;*yTHPeHe$DXraaN|(eKKZt${g1y z-;5Y?y1r$afdKiAwd z=-J36Hg|-2B~O^$;LEp7P>YOAe0Vyz{>BO0BRhX@g{=hVeG#@V2kTndO~?1^+0gp* zu6IT>-*>?7JiIO9vUX6qQC+RRRyzTaKZO+eW}g38PtUz<=-2ko<~e6Z!_FS%zQOD) z?)$#78!S5p*^@5zMgcTYzOJXeJZpz-FXVCYwVa-+daCvLybOa(HEA8B4Z-B5n zyVXAjtM}&w2XFIWHv62gd9wI4d+bk&=TGq1eoHx4UJIsI32(7V$vG*XDw$=;^(UK9u8wVu*zs_}$c&!sP_Q75 zUf0K-^Z(OeA8&u|pP0T)BD@@Hc+elV>-%?ldSqA7f1iF|sP3L{{8BpNu}1t$!m#1h zpLgJ_DTP0)-V?#dQ!4BngP*fL*q`hAfKt9Ew8b55Fd~ILaiZz6obz((SYNbaM}5hh z@vmXucj|A~Vnz{0fwo-`uBdH0luy3S7rg3aaFIc_&`I{fNfXuMCxcT>BG@CzTDp45)EW4vkVX?gty8QoY9mE{4h2nHd)YcCuz$m3yR4QvCE7O#Y!AcG8{5)> z$fdn6pfCA(Ckf&`VAwwFp!qpX8D+n~W_fhE?*xeDETL(yQ-`sxYpm9@ffmDd=6zgl z?ITK$Y8_qiR&t5X#TLVQzP@{a9kg2k@)x05h~?ZPKQdzZS= z?I3&X)a$ZKDHg%7dAgb^aMb0ypl7?JoM)H~6JVg}8z5mm+hKQ0Ik)Gckr~s5rWNuT z%+u51$HRn8!S*IW+l|%rUbh}B`DsHE&btx)iR1YOSB>(ec+!`BUi(SX%wPVh zrYWLKQ%9 z1#}}C6iw9B(XL&sH+a?g)_MP?aAWUiyi{G2j;}*swqPD)|4?#nDk`@RJJwzqQ9JJ+ z91uI+RCLd7mwZYZwf7wLc+X^e%{tHarIF2IqFb*@^L-_pJ<%H}zZTRNbbMWSd90(W zI=-T-7j$-6qr9%8r#il_kx}-E{taI{YUxwfe|0H0%g1l{rnydYsn4}w)Cn768W23s ziPs}2Fmat|lgD Z@AsvYw_*ntFW<~$l~7rap4S7${{acJXPE#1 literal 0 HcmV?d00001 From 930405b8e4550992fa66fe26fa998fee437bbed0 Mon Sep 17 00:00:00 2001 From: Digital Data - Marlon Schreiber Date: Mon, 30 May 2022 13:43:22 +0200 Subject: [PATCH 9/9] MS Collected Script --- 00_DD/Update/1.9.0.9.sql | 23 - 00_IDB/StructureNode.sql | 59 - .../CreateDB_Objects_WM_based.sql | 5989 +++++++++++++++++ {00_DD => 01_DD_ECM}/DD_ECM.sql | 61 +- .../Microsoft Publisher Document (neu).pub | Bin {00_DD => 01_DD_ECM}/SQL_JOB1.sql | 0 .../Update/Added2Main_script/1.1.sql | 0 .../Update/Added2Main_script/1.2.sql | 0 .../Update/Added2Main_script/1.3.sql | 0 .../Update/Added2Main_script/1.4.sql | 0 .../Update/Added2Main_script/1.5.sql | 0 .../Update/Added2Main_script/1.6.sql | 0 .../Update/Added2Main_script/1.7.sql | 0 .../Update/Added2Main_script/1.8.0.0.sql | 0 .../Update/Added2Main_script/1.8.0.1.sql | 0 .../Update/Added2Main_script/1.9.0.0.sql | 0 .../Update/Added2Main_script/1.9.0.1.sql | 0 .../Update/Added2Main_script/1.9.0.2.sql | 0 .../Update/Added2Main_script/1.9.0.3.sql | 0 .../Update/Added2Main_script/1.9.0.4.sql | 0 .../Update/Added2Main_script/1.9.0.5.sql | 0 .../Update/Added2Main_script/1.9.0.6.sql | Bin .../Update/Added2Main_script/1.9.0.7.sql | Bin .../Update/Added2Main_script/1.9.0.8.sql | Bin .../Update/Added2Main_script/1.9.0.8_1.sql | 0 .../Update/Added2Main_script/1.9.1.0.sql | 0 .../Update/Added2Main_script/1.9.1.1.sql | 0 .../Update/Added2Main_script/1.9.2.0.sql | 0 .../Update/Added2Main_script/2.0.0.2.sql | 0 .../Update/Added2Main_script/2.0.0.3.sql | 0 .../Update/Added2Main_script/2.0.0.4.sql | 0 .../Update/Added2Main_script/2.0.0.5.sql | 0 .../Update/Added2Main_script/2.0.0.6.sql | 0 .../Update/Added2Main_script/2.1.0.0.sql | 0 .../Update/Added2Main_script/2.1.0.1.sql | 0 {00_IDB => 01_IDB}/CreateDB.sql | 0 {00_IDB => 01_IDB}/CreateDBObjects.sql | 8 + {00_IDB => 01_IDB}/CreateFulltext.sql | 0 {00_IDB => 01_IDB}/DB01.sql | 0 {00_IDB => 01_IDB}/Development/TextSearch.sql | 0 {00_IDB => 01_IDB}/Fulltext.sql | 0 {00_IDB => 01_IDB}/Search_Logic.sql | Bin {00_IDB => 01_IDB}/Search_TEST.sql | Bin 01_IDB/StructureNode.sql | 226 + {00_IDB => 01_IDB}/Update/1.1.1.sql | 0 .../Update/Added2CreateDBObjects/1.0.1.sql | 0 .../Update/Added2CreateDBObjects/1.0.2.sql | 0 .../Update/Added2CreateDBObjects/1.0.3.sql | 0 .../Update/Added2CreateDBObjects/1.0.4.1.sql | 0 .../Update/Added2CreateDBObjects/1.0.4.sql | 0 .../Update/Added2CreateDBObjects/1.0.5.sql | 0 .../Update/Added2CreateDBObjects/1.0.6.sql | 0 .../Update/Added2CreateDBObjects/1.0.7.sql | Bin .../Update/Added2CreateDBObjects/1.0.8.sql | 0 .../Update/Added2CreateDBObjects/1.0.9.sql | 0 .../Update/Added2CreateDBObjects/1.1.0.sql | 0 {00_IDB => 01_IDB}/Update/g1hxflhb.tpr~ | 0 {01_PM => 02_PM}/CreateDBObjects.sql | 54 +- .../Updates/Added2MainScript}/1.9.4.9.sql | 0 .../Updates/Added2MainScript}/1.9.5.0.sql | 0 .../2.2.0.0 - AH Workflows.sql | 0 .../Updates/Added2MainScript}/2.2.1.0.sql | 0 .../Updates/Added2MainScript}/2.2.1.1.sql | 0 03_CW/windream_related_scripts.sql | 16 +- {02_GI => 03_GI}/CreateDBObjects.sql | 71 +- .../Updates/Added2MainScript/1.9.3.1.sql | 0 .../Updates/Added2MainScript/1.9.8.2.sql | 0 .../Updates/Added2MainScript/1.9.8.3.sql | 0 .../Updates/Added2MainScript/1.9.8.4.sql | 0 .../Updates/Added2MainScript/1.9.8.5.sql | 0 .../Updates/Added2MainScript/1.9.8.6.sql | 0 .../Updates/Added2MainScript/2.0.0.0.sql | 0 .../Updates/Added2MainScript/2.0.0.1.sql | 0 .../Updates/Added2MainScript/2.0.0.12.sql | 0 .../Updates/Added2MainScript/2.0.0.16.sql | 0 .../Updates/Added2MainScript/2.0.0.34.sql | 0 .../Updates/Added2MainScript/2.3.0.0.sql | 0 .../Updates/Added2MainScript}/2.4.0.0.sql | 0 .../Updates/Added2MainScript}/2.5.0.0.sql | 0 .../Updates/Added2MainScript}/2.5.0.1.sql | 0 .../Updates/Added2MainScript}/2.5.1.0.sql | 0 .../Updates/Added2MainScript}/2.5.2.0.sql | 0 .../Updates/Added2MainScript}/2.5.2.1.sql | 0 05_ToolCollection/CreateDBObjects.sql | 27 +- .../{ => Added2MainScript}/1.0.0.1.sql | 0 .../{ => Added2MainScript}/1.1.0.0.sql | 0 ...iler DBObjects.sql => CreateDBObjects.sql} | 98 +- 07_UserManager/CreateDBObjects.sql | 101 - 88 files changed, 6367 insertions(+), 366 deletions(-) delete mode 100644 00_DD/Update/1.9.0.9.sql delete mode 100644 00_IDB/StructureNode.sql create mode 100644 00_SCRIPT_COLLECTED/CreateDB_Objects_WM_based.sql rename {00_DD => 01_DD_ECM}/DD_ECM.sql (95%) rename {00_DD => 01_DD_ECM}/Microsoft Publisher Document (neu).pub (100%) rename {00_DD => 01_DD_ECM}/SQL_JOB1.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.1.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.2.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.3.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.4.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.5.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.6.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.7.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.8.0.0.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.8.0.1.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.0.0.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.0.1.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.0.2.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.0.3.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.0.4.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.0.5.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.0.6.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.0.7.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.0.8.sql (100%) rename 00_DD/Update/1.9.0.8.sql => 01_DD_ECM/Update/Added2Main_script/1.9.0.8_1.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.1.0.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.1.1.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/1.9.2.0.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/2.0.0.2.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/2.0.0.3.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/2.0.0.4.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/2.0.0.5.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/2.0.0.6.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/2.1.0.0.sql (100%) rename {00_DD => 01_DD_ECM}/Update/Added2Main_script/2.1.0.1.sql (100%) rename {00_IDB => 01_IDB}/CreateDB.sql (100%) rename {00_IDB => 01_IDB}/CreateDBObjects.sql (97%) rename {00_IDB => 01_IDB}/CreateFulltext.sql (100%) rename {00_IDB => 01_IDB}/DB01.sql (100%) rename {00_IDB => 01_IDB}/Development/TextSearch.sql (100%) rename {00_IDB => 01_IDB}/Fulltext.sql (100%) rename {00_IDB => 01_IDB}/Search_Logic.sql (100%) rename {00_IDB => 01_IDB}/Search_TEST.sql (100%) create mode 100644 01_IDB/StructureNode.sql rename {00_IDB => 01_IDB}/Update/1.1.1.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.0.1.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.0.2.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.0.3.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.0.4.1.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.0.4.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.0.5.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.0.6.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.0.7.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.0.8.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.0.9.sql (100%) rename {00_IDB => 01_IDB}/Update/Added2CreateDBObjects/1.1.0.sql (100%) rename {00_IDB => 01_IDB}/Update/g1hxflhb.tpr~ (100%) rename {01_PM => 02_PM}/CreateDBObjects.sql (94%) rename {01_PM/Updates => 02_PM/Updates/Added2MainScript}/1.9.4.9.sql (100%) rename {01_PM/Updates => 02_PM/Updates/Added2MainScript}/1.9.5.0.sql (100%) rename 01_PM/Updates/2.2.0.0.sql => 02_PM/Updates/Added2MainScript/2.2.0.0 - AH Workflows.sql (100%) rename {01_PM/Updates => 02_PM/Updates/Added2MainScript}/2.2.1.0.sql (100%) rename {01_PM/Updates => 02_PM/Updates/Added2MainScript}/2.2.1.1.sql (100%) rename {02_GI => 03_GI}/CreateDBObjects.sql (93%) rename {02_GI => 03_GI}/Updates/Added2MainScript/1.9.3.1.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/1.9.8.2.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/1.9.8.3.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/1.9.8.4.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/1.9.8.5.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/1.9.8.6.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/2.0.0.0.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/2.0.0.1.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/2.0.0.12.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/2.0.0.16.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/2.0.0.34.sql (100%) rename {02_GI => 03_GI}/Updates/Added2MainScript/2.3.0.0.sql (100%) rename {02_GI/Updates => 03_GI/Updates/Added2MainScript}/2.4.0.0.sql (100%) rename {02_GI/Updates => 03_GI/Updates/Added2MainScript}/2.5.0.0.sql (100%) rename {02_GI/Updates => 03_GI/Updates/Added2MainScript}/2.5.0.1.sql (100%) rename {02_GI/Updates => 03_GI/Updates/Added2MainScript}/2.5.1.0.sql (100%) rename {02_GI/Updates => 03_GI/Updates/Added2MainScript}/2.5.2.0.sql (100%) rename {02_GI/Updates => 03_GI/Updates/Added2MainScript}/2.5.2.1.sql (100%) rename 05_ToolCollection/Updates/{ => Added2MainScript}/1.0.0.1.sql (100%) rename 05_ToolCollection/Updates/{ => Added2MainScript}/1.1.0.0.sql (100%) rename 06_EmailProfiler/{01_Create EmailProfiler DBObjects.sql => CreateDBObjects.sql} (80%) diff --git a/00_DD/Update/1.9.0.9.sql b/00_DD/Update/1.9.0.9.sql deleted file mode 100644 index a56df7b..0000000 --- a/00_DD/Update/1.9.0.9.sql +++ /dev/null @@ -1,23 +0,0 @@ -UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.9' -GO -DELETE FROM TBDD_SQL_COMMANDS WHERE TITLE IN ('ZF_DISPLAY_PM_JOBS_INDIVIDUAL','ZF_DISPLAY_PM_JOBS_GROUP') -INSERT INTO [dbo].[TBDD_SQL_COMMANDS] - ([TITLE] - ,[SQL_COMMAND] - ) - VALUES - ('ZF_DISPLAY_PM_JOBS_INDIVIDUAL' - ,'SELECT COUNT(A.DOC_ID) FROM -(SELECT DISTINCT DOC_ID FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = 1) A' - ) -GO -INSERT INTO [dbo].[TBDD_SQL_COMMANDS] - ([TITLE] - ,[SQL_COMMAND] - ) - VALUES - ('ZF_DISPLAY_PM_JOBS_GROUP' - ,'SELECT COUNT(A.DOC_ID) FROM -(SELECT DISTINCT DOC_ID FROM TBPM_PROFILE_FILES WHERE PROFIL_ID IN (SELECT PROFILE_ID FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] (@USR_ID))) A' - ) -GO \ No newline at end of file diff --git a/00_IDB/StructureNode.sql b/00_IDB/StructureNode.sql deleted file mode 100644 index b49ec29..0000000 --- a/00_IDB/StructureNode.sql +++ /dev/null @@ -1,59 +0,0 @@ --- ============================================= --- Author: DD MS --- Changed: --- ============================================= -CREATE PROCEDURE PRIDB_NEW_DYNAMIC_FOLDER_FOR_OBJECT @pIDB_OBJ_ID BIGINT, @pDYNAMIC_FOLDER VARCHAR(900),@pWHO VARCHAR(100),@pLANG_CODE VARCHAR(5) -AS -DECLARE - @FOLD_PART VARCHAR(250) -BEGIN - - DECLARE @FOLDER_DEPTH TINYINT,@FOLDER_PART VARCHAR(900) - SET @FOLDER_DEPTH = 0 - DECLARE @PARENT_OBJ_ID BIGINT - --SPLIT FOR FOLDER PARTS - DECLARE cursSplitFolder CURSOR FOR - SELECT Item FROM [dbo].[FN_SPLIT_STRING] (@pDYNAMIC_FOLDER,'\') - OPEN cursSplitFolder - FETCH NEXT FROM cursSplitFolder INTO @FOLD_PART - WHILE @@FETCH_STATUS = 0 - BEGIN - --EACH FOLDER PART WORKED SEPERATELY - IF @FOLDER_DEPTH = 0 - BEGIN - SET @PARENT_OBJ_ID = 0 - SET @FOLDER_PART = @FOLD_PART - END - ELSE - BEGIN - SET @FOLDER_PART += '\' + @FOLD_PART - END - PRINT '##############################' - PRINT '@FOLDER_PART: ' + @FOLDER_PART - DECLARE @PATH_PART_ID BIGINT,@FOLDER_PART_ID BIGINT - EXEC PRIDB_NEW_TERM 'VARCHAR',@FOLD_PART,@pWHO,@TERM_ID = @PATH_PART_ID OUTPUT; - --EXEC PRIDB_NEW_TERM 'VARCHAR',@FOLDER_PART,'DD MS',@TERM_ID = @FOLDER_PART_ID OUTPUT; - DECLARE @FOLD_PART_IDB_OBJ_ID BIGINT - IF NOT EXISTS(SELECT * FROM VWIDB_STRUCTURE_NODES WHERE TERM_GUID = @PATH_PART_ID AND PARENT_OBJ_ID = @PARENT_OBJ_ID) - BEGIN - PRINT 'FOLDER-PART ' + @FOLD_PART + ' muss angelegt werden' - EXEC PRIDB_NEW_OBJECT 'DYNAMIC_FOLDER',@pWHO,0, @PARENT_OBJ_ID, @IDB_OBJ_ID = @FOLD_PART_IDB_OBJ_ID OUTPUT; - DECLARE @NEW_OBJ_MD_ID BIGINT - EXEC PRIDB_NEW_OBJ_DATA @FOLD_PART_IDB_OBJ_ID, 'VIRTUAL_FOLDER_PART', @pWHO, @FOLD_PART, @pLANG_CODE, 0, @OMD_ID = @NEW_OBJ_MD_ID OUTPUT - END - ELSE - BEGIN - SELECT @FOLD_PART_IDB_OBJ_ID = MAX(IDB_OBJ_ID) FROM VWIDB_STRUCTURE_NODES WHERE TERM_GUID = @PATH_PART_ID AND PARENT_OBJ_ID = @PARENT_OBJ_ID - PRINT 'FOLDER-PART ' + @FOLD_PART + ' EXISTIERT BEREITS' - END - SET @PARENT_OBJ_ID = @FOLD_PART_IDB_OBJ_ID - - SET @FOLDER_DEPTH += 1 - FETCH NEXT FROM cursSplitFolder INTO @FOLD_PART - END - CLOSE cursSplitFolder - DEALLOCATE cursSplitFolder - - IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_DYNAMIC_FOLDER WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND DYN_FOLD_ID = @FOLD_PART_IDB_OBJ_ID) - INSERT INTO TBIDB_OBJECT_DYNAMIC_FOLDER (IDB_OBJ_ID,DYN_FOLD_ID,ADDED_WHO) VALUES (@pIDB_OBJ_ID,@FOLD_PART_IDB_OBJ_ID,@pWHO); -END diff --git a/00_SCRIPT_COLLECTED/CreateDB_Objects_WM_based.sql b/00_SCRIPT_COLLECTED/CreateDB_Objects_WM_based.sql new file mode 100644 index 0000000..c850b1f --- /dev/null +++ b/00_SCRIPT_COLLECTED/CreateDB_Objects_WM_based.sql @@ -0,0 +1,5989 @@ +/*################################## +This script creates all database-objects related to following modules +- DD_ECM +- ProcessManager aka Task-Flow +- Globix aka File-Flow +- Clipboard-Watcher +- User Manager +- ToolCollection +- WM ResultHandler +*/ +--######################################################################### +--############### PREPERATIONS BEFORE EXECUTE ######################### +--######################################################################### +--1. Define Your AdminUsers via replacing @ADMINUSER with proper UserNames +DECLARE @ADMINUSER1 VARCHAR(100),@ADMINUSER2 VARCHAR(100) +SET @ADMINUSER1 = 'Administrator' +SET @ADMINUSER2 = 'digitaldata' +-- 2. Replace @WINDREAM_DB in code with name of WM-Database +-- 3. Replace @DIGITALDATA.LOCAL with Your Domainname +-- 4. Add the ECM-Login Data +-- Search for @ECM_IP and replace it with IP or Name of MSSQL Server +-- Search for @ECM_USER and replace it with DB-Username for ECM-DB +-- Search for @ECM_PW and replace it with PW for ECM-User +--######################################################################### + + + + + +CREATE TABLE TBIMPORT_USER (USR_NAME VARCHAR(100)); +INSERT INTO TBIMPORT_USER (USR_NAME) VALUES (@ADMINUSER1); +INSERT INTO TBIMPORT_USER (USR_NAME) VALUES (@ADMINUSER2); +CREATE TABLE TBDD_BASECONFIG +( + GUID TINYINT, + WD_UNICODE BIT NOT NULL DEFAULT 1, + WM_DB_CONSTRING VARCHAR(1000) NOT NULL DEFAULT '', + WM_DRIVE VARCHAR(1) NOT NULL DEFAULT 'W', + DB_VERSION VARCHAR(10) NOT NULL DEFAULT '1.0.0.0', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_BASECONFIG_GUID PRIMARY KEY(GUID), + CONSTRAINT CH_TBDD_BASECONFIG_GUID CHECK(GUID = 1) +) +GO +------------------------------------------------------------------------------ +CREATE TRIGGER TBDD_BASECONFIG_AFT_UPD ON TBDD_BASECONFIG +FOR UPDATE +AS + UPDATE TBDD_BASECONFIG SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBDD_BASECONFIG.GUID = INSERTED.GUID +GO +INSERT INTO TBDD_BASECONFIG (GUID,WD_UNICODE,DB_VERSION) VALUES (1,1,'1.9.0.0') +GO +CREATE TABLE [dbo].[TBDD_3RD_PARTY_MODULES]( + [GUID] [int] IDENTITY(1,1) NOT NULL, + [ACTIVE] [bit] NOT NULL, + [NAME] [varchar](50) NOT NULL, + [DESCRIPTION] [varchar](500) NULL, + [LICENSE] [varchar](max) NOT NULL, + [VERSION] [varchar](20) NOT NULL, + [STRING1] [varchar](100) NULL, + [STRING2] [varchar](100) NULL, + [STRING3] [varchar](100) NULL, + [STRING4] [varchar](100) NULL, + [STRING5] [varchar](100) NULL, + [STRING6] [varchar](100) NULL, + [STRING7] [varchar](100) NULL, + [STRING8] [varchar](100) NULL, + [STRING9] [varchar](100) NULL, + [STRING10] [varchar](100) NULL, + [ADDED_WHO] [varchar](50) NULL, + [ADDED_WHEN] [datetime] NULL, + [CHANGED_WHO] [varchar](50) NULL, + [CHANGED_WHEN] [datetime] NULL +) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] +GO + +ALTER TABLE [dbo].[TBDD_3RD_PARTY_MODULES] ADD CONSTRAINT [DF_TBDD_3RD_PARTY_MODULES_ACTIVE] DEFAULT ((0)) FOR [ACTIVE] +GO + +ALTER TABLE [dbo].[TBDD_3RD_PARTY_MODULES] ADD CONSTRAINT [DF_TBDD_3RD_PARTY_MODULES_VERSION] DEFAULT ('1.0.0.0') FOR [VERSION] +GO +INSERT INTO TBDD_3RD_PARTY_MODULES (ACTIVE,NAME,LICENSE) VALUES (1,'GDPICTURE','21182889975216572111813147150675976632') +GO + + + +CREATE TABLE TBDD_SERV_EXT_PROGRAMS +( + GUID TINYINT, + PDFTK_LOCATION VARCHAR(500) DEFAULT '', + PDFXCHANGE_LOCATION VARCHAR(500) DEFAULT '', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_SERV_EXT_PROGRAMS_GUID PRIMARY KEY(GUID), + CONSTRAINT CH_TBDD_SERV_EXT_PROGRAMS_GUID CHECK(GUID = 1) +) +GO +CREATE TABLE TBDD_EINGANGSARTEN +( + GUID TINYINT IDENTITY(1,1), + BEZEICHNUNG VARCHAR(100) NOT NULL, + BESCHREIBUNG VARCHAR(500), + ERSTELLTWER VARCHAR(50) DEFAULT 'DD_ECM DEFAULT' NOT NULL, + ERSTELLTWANN DATETIME DEFAULT GETDATE(), + GEANDERTWER VARCHAR(50), + GEAENDERTWANN DATETIME, + CONSTRAINT PK_TBDD_EINGANGSARTEN PRIMARY KEY (GUID), + CONSTRAINT UNIQUE_TBDD_EINGANGSARTEN UNIQUE(BEZEICHNUNG) +) +GO +------------------------------------------------------------------------------ + +CREATE TRIGGER TBDD_EINGANGSARTEN_AFT_UPD ON TBDD_EINGANGSARTEN +FOR UPDATE +AS + UPDATE TBDD_EINGANGSARTEN SET GEAENDERTWANN = GETDATE() FROM INSERTED WHERE TBDD_EINGANGSARTEN.GUID = INSERTED.GUID +GO +------------------------------------------------------------------------------ + +INSERT INTO TBDD_EINGANGSARTEN(BEZEICHNUNG,BESCHREIBUNG) VALUES('manueller Scan','Dokumentarten die manuell gescannt werden') +GO +INSERT INTO TBDD_EINGANGSARTEN(BEZEICHNUNG,BESCHREIBUNG) VALUES('aus Anwendung','Dokumentarten die über Simple-Print abgelegt werden') +GO +INSERT INTO TBDD_EINGANGSARTEN(BEZEICHNUNG,BESCHREIBUNG) VALUES('manuelle Ablage','alle Dokumentarten die manuell abgelegt werden') +GO + +CREATE TABLE TBDD_MODULES +( + GUID INTEGER NOT NULL IDENTITY(1,1), + NAME VARCHAR(50), + SHORT_NAME VARCHAR(20), + LICENSE VARCHAR(2000) NOT NULL DEFAULT '', + PRODUCT_VERSION VARCHAR(20) NOT NULL DEFAULT '1.0.0.0', + DB_VERSION VARCHAR(20) NOT NULL DEFAULT '1.0.0.0', + ACTIVE BIT NOT NULL DEFAULT 0, + VERSION_DELIMITER VARCHAR(1) NOT NULL DEFAULT '~', + FILE_DELIMITER VARCHAR(1) NOT NULL DEFAULT '_', + BIT1 BIT NOT NULL DEFAULT 0, + BIT2 BIT NOT NULL DEFAULT 0, + STRING1 VARCHAR(50), + STRING2 VARCHAR(50), + BACKGROUND_IMAGE VARBINARY(MAX), + PRODUCT_NAME1 VARCHAR(200) NOT NULL DEFAULT '', + PRODUCT_NAME2 VARCHAR(200), + VERSION_UPATE_PATH VARCHAR(500) NOT NULL DEFAULT '', + AUTO_LOGOUT_USER INTEGER NOT NULL DEFAULT 0, + WMSESSION_STARTSTOP_STARTUP BIT NOT NULL DEFAULT 0, + MIN_REQUIRED_VERSION VARCHAR(10) NOT NULL DEFAULT '1.0.0.0', + LICENSE_VALID BIT NOT NULL DEFAULT 1, + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_MODULE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBDD_MODULE UNIQUE(NAME) +) +GO +CREATE TRIGGER TBDD_MODULE_AFT_UPD ON TBDD_MODULES +FOR UPDATE +AS + UPDATE TBDD_MODULES SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBDD_MODULES.GUID = INSERTED.GUID +GO + +INSERT INTO TBDD_MODULES(NAME,SHORT_NAME,LICENSE,STRING1,ACTIVE) VALUES +('Record-Organizer','ADDI','a0c+ADsUcVQiOBrieIt5tEVrgl/P/ns5w9+A/ZdDo8k=','W',1) +GO +INSERT INTO TBDD_MODULES(NAME,SHORT_NAME,LICENSE,STRING1,ACTIVE) VALUES +('Global-Indexer','GLOBIX','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=','W',1) +GO +INSERT INTO TBDD_MODULES(NAME,SHORT_NAME,LICENSE,STRING1,DB_VERSION,PRODUCT_VERSION,ACTIVE) VALUES +('Process-Manager','PM','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=','W','1.9.4.3','1.9.4.3',1) +GO +INSERT INTO TBDD_MODULES(NAME,SHORT_NAME,LICENSE,STRING1,ACTIVE) VALUES +('User-Manager','UM','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=','W',1) +GO +INSERT INTO TBDD_MODULES(NAME,SHORT_NAME,LICENSE,STRING1,ACTIVE) VALUES +('Clipboard-Watcher','CW','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=','W',1) +GO +INSERT INTO TBDD_MODULES(NAME,SHORT_NAME,LICENSE,STRING1,ACTIVE) VALUES +('Email-Profiler','EMLP','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=','W',1) +GO + +CREATE TABLE TBDD_USER +( + GUID INTEGER IDENTITY(1,1), + PRENAME VARCHAR(50), + NAME VARCHAR(50), + USERNAME VARCHAR(50) NOT NULL UNIQUE, + SHORTNAME VARCHAR(30), + EMAIL VARCHAR(100), + [LANGUAGE] VARCHAR(5) NOT NULL DEFAULT 'de-DE', + GENERAL_VIEWER VARCHAR(30) NOT NULL DEFAULT 'NONE', + COMMENT VARCHAR(500), + WAN_ENVIRONMENT BIT NOT NULL DEFAULT 0, + USERID_FK_INT_ECM INTEGER NOT NULL DEFAULT 0, + ATTR_CHAR1 VARCHAR(250), + ATTR_CHAR2 VARCHAR(250), + ATTR_CHAR3 VARCHAR(250), + ATTR_CHAR4 VARCHAR(250), + ATTR_CHAR5 VARCHAR(250), + ATTR_CHAR6 VARCHAR(250), + ATTR_CHAR7 VARCHAR(250), + ATTR_CHAR8 VARCHAR(250), + ATTR_CHAR9 VARCHAR(250), + ATTR_CHAR10 VARCHAR(250), + ATTR_CHAR11 VARCHAR(250), + ATTR_CHAR12 VARCHAR(250), + ATTR_CHAR13 VARCHAR(250), + ATTR_CHAR14 VARCHAR(250), + ATTR_CHAR15 VARCHAR(250), + ATTR_BIT1 BIT NOT NULL DEFAULT 0, + ATTR_BIT2 BIT NOT NULL DEFAULT 0, + ATTR_BIT3 BIT NOT NULL DEFAULT 0, + ATTR_BIT4 BIT NOT NULL DEFAULT 0, + ACTIVE BIT NOT NULL DEFAULT 1, + DELETED BIT NOT NULL DEFAULT 0, + DELETED_WHEN DATETIME, + DELETED_WHO DATETIME, + DATE_FORMAT VARCHAR(10) NOT NULL DEFAULT 'dd.MM.yyyy', + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_USER PRIMARY KEY (GUID) +) +GO + + +INSERT INTO TBDD_USER(PRENAME,NAME,USERNAME) +SELECT 'Prename','Surname',USR_NAME FROM TBIMPORT_USER; +GO + + +CREATE TABLE TBDD_GROUPS +( + GUID INTEGER IDENTITY(1,1), + NAME VARCHAR(50), + ECM_FK_ID INTEGER NOT NULL DEFAULT 0, + AD_SYNC BIT NOT NULL DEFAULT 0, + INTERNAL BIT NOT NULL DEFAULT 0, + ACTIVE BIT NOT NULL DEFAULT 1, + COMMENT VARCHAR(200), + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_GROUPS PRIMARY KEY (GUID), + CONSTRAINT UQ_TBDD_GROUPS UNIQUE(NAME) +) +GO +CREATE TRIGGER TBDD_GROUPS_AFT_UPD ON TBDD_GROUPS +FOR UPDATE +AS +BEGIN + DECLARE @GRPNAME VARCHAR(50) + SELECT @GRPNAME = NAME FROM inserted + IF UPDATE (NAME) + BEGIN + DECLARE @ECM_GRP_ID INTEGER + SELECT @ECM_GRP_ID = [dwGroupID] + FROM @WINDREAM_DB.[dbo].[GroupInfo] where UPPER(szGroupName) = UPPER(@GRPNAME) AND szNTDomain = '@DIGITALDATA.LOCAL' + IF @ECM_GRP_ID IS NULL + SET @ECM_GRP_ID = 0 + UPDATE TBDD_GROUPS SET ECM_FK_ID = @ECM_GRP_ID + FROM INSERTED + WHERE TBDD_GROUPS.GUID = INSERTED.GUID + END + UPDATE TBDD_GROUPS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_GROUPS.GUID = INSERTED.GUID +END +GO + +INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('PM_USER',1) +GO +INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('PM_ADMINS',1) +GO +INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('GLOBIX_USER',1) +GO +INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('GLOBIX_ADMINS',1) +GO +INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('ADDI_USER',1) +GO +INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('ADDI_ADMINS',1) +GO +INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('CW_USER',1) +GO +INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('CW_ADMINS',1) +GO +INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('UM_ADMINS',1) +GO +INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('SERVER_USER',1) +GO + +CREATE TABLE TBDD_GROUPS_MODULES +( + GUID INTEGER IDENTITY(1,1), + MODULE_ID INT NOT NULL, + GROUP_ID INT NOT NULL, + COMMENT VARCHAR(200), + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_GROUPS_MODULES PRIMARY KEY (GUID), + CONSTRAINT UC_MODULE_GROUP UNIQUE (MODULE_ID,GROUP_ID), + CONSTRAINT FK_TBDD_GROUPS_MODULES_GROUP_ID FOREIGN KEY(GROUP_ID) REFERENCES TBDD_GROUPS(GUID), + CONSTRAINT FK_TBDD_GROUPS_MODULES_MODULE_ID FOREIGN KEY(MODULE_ID) REFERENCES TBDD_MODULES(GUID), +) +GO +CREATE TABLE TBDD_CLIENT +( + GUID INTEGER IDENTITY(1,1), + CLIENT_NAME VARCHAR(50) NOT NULL UNIQUE, + SHORTNAME VARCHAR(30), + LICENSE_PMO VARCHAR(5000) NOT NULL DEFAULT '', + LICENSE_GI VARCHAR(5000) NOT NULL DEFAULT '', + LICENSE_PM VARCHAR(5000) NOT NULL DEFAULT '', + COMMENT VARCHAR(200), + ACTIVE BIT NOT NULL DEFAULT 0, + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_CLIENT PRIMARY KEY (GUID) +) +GO +INSERT INTO TBDD_CLIENT(CLIENT_NAME,SHORTNAME,ACTIVE) VALUES +('DEFAULT','DEF',1) +GO + +CREATE TRIGGER TBDD_CLIENT_AFT_UPD ON TBDD_CLIENT +FOR UPDATE +AS +BEGIN + UPDATE TBDD_CLIENT SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_CLIENT.GUID = INSERTED.GUID +END +GO +CREATE TABLE TBDD_GROUPS_CLIENT +( + GUID INTEGER IDENTITY(1,1), + CLIENT_ID INT NOT NULL, + GROUP_ID INT NOT NULL, + COMMENT VARCHAR(200), + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_GROUPS_CLIENT PRIMARY KEY (GUID), + CONSTRAINT UC_CLIENT_GROUP UNIQUE (CLIENT_ID,GROUP_ID), + CONSTRAINT FK_TBDD_GROUPS_CLIENT_GROUP_ID FOREIGN KEY(GROUP_ID) REFERENCES TBDD_GROUPS(GUID), + CONSTRAINT FK_TBDD_GROUPS_CLIENT_CLIENT_ID FOREIGN KEY(CLIENT_ID) REFERENCES TBDD_CLIENT(GUID), +) +GO + + +CREATE TABLE TBDD_GROUPS_USER +( + GUID INTEGER IDENTITY(1,1), + [USER_ID] INT NOT NULL, + GROUP_ID INT NOT NULL, + COMMENT VARCHAR(200), + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_GROUPS_USER PRIMARY KEY (GUID), + CONSTRAINT UC_USER_GROUP UNIQUE (USER_ID,GROUP_ID), + CONSTRAINT FK_TBDD_GROUPS_USER_GROUP_ID FOREIGN KEY(GROUP_ID) REFERENCES TBDD_GROUPS(GUID), + CONSTRAINT FK_TBDD_GROUPS_USER_USER_ID FOREIGN KEY([USER_ID]) REFERENCES TBDD_USER(GUID), +) +GO +CREATE TRIGGER TBDD_GROUPS_USER_AFT_UPD ON TBDD_GROUPS_USER +FOR UPDATE +AS + UPDATE TBDD_GROUPS_USER SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBDD_GROUPS_USER.GUID = INSERTED.GUID +GO +CREATE TRIGGER [dbo].[TBDD_GROUPS_USER_AFT_DEL] ON [dbo].[TBDD_GROUPS_USER] +FOR DELETE +AS + DECLARE @USER_ID INTEGER + SELECT @USER_ID = deleted.USER_ID FROM deleted + IF @USER_ID IS NOT NULL + BEGIN + if exists (select * from sysobjects where name='TBPMO_USER_RIGHTS_JOBS' and xtype='U') + INSERT INTO TBPMO_USER_RIGHTS_JOBS (USER_ID,COMMENT,ADDED_WHO) VALUES (@USER_ID,'USER DELETED FROM GROUP','TBDD_GROUPS_USER_AFT_DEL') + if exists (select * from sysobjects where name='TBPMO_LOG_ESSENTIALS' and xtype='U') + INSERT INTO TBPMO_LOG_ESSENTIALS (REFERENCE_KEY,REFERENCE_STRING,COMMENT,ADDED_WHO) VALUES (@USER_ID,'USER-ID','USER DELETED FROM USER-GROUP',(SELECT USERNAME FROM TBDD_USER WHERE GUID = @USER_ID )) + END +GO +CREATE TABLE TBDD_FUNCTION_REGEX + +( + GUID INTEGER IDENTITY(1,1), + FUNCTION_NAME VARCHAR(250) NOT NULL, + REGEX VARCHAR(MAX) NOT NULL, + STRING1 VARCHAR(500), + STRING2 VARCHAR(500), + ADDED_WHO VARCHAR(50) DEFAULT 'Digital Data', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_FUNCTION_REGEX PRIMARY KEY (GUID) +) +GO +CREATE TRIGGER TBTBDD_FUNCTION_REGEX_AFT_UPD ON TBDD_FUNCTION_REGEX +FOR UPDATE +AS + UPDATE TBDD_FUNCTION_REGEX SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_FUNCTION_REGEX.GUID = INSERTED.GUID +GO + + +INSERT INTO TBDD_FUNCTION_REGEX(FUNCTION_NAME,REGEX) VALUES +('FROM_EMAIL_HEADER','From:(?:\s*[\w\s\d.@&,|+%\)\(\-]*<|\s*=\?[\w\s\d.@&,|+%?=\)\(\-]+\?=\s*<|\s*""[\w\s\d.@&,|+%\)\(\-]+""\s*<|\s*)([A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,})>?') +GO +INSERT INTO TBDD_FUNCTION_REGEX(FUNCTION_NAME,REGEX) VALUES +('TO_EMAIL_HEADER','To:(?:\s*[\w\s\d.@&,|+%\)\(\-]+<|\s*=\?[\w\s\d.@&,|+%?=\)\(\-]+\?=\s*<|\s*""[\w\s\d.@&,|+%\)\(\-]+""\s*<|\s*)([A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,})>?') +GO +INSERT INTO TBDD_FUNCTION_REGEX(FUNCTION_NAME,REGEX) VALUES +('EMAIL_PROFILER - BODY REMOVE NewLine','[^\s]([\w\s\!\§\$\%\&\/\(\)\=\?\[\]\,\.\-\–\:\;\<\>\@\r\n\#]{1,})^[\#]{2}') +GO + +CREATE TABLE TBDD_LANGUAGE_OBJECTS +( + GUID VARCHAR(50) NOT NULL, + MODULE_ID INTEGER NOT NULL, + FORM_NAME VARCHAR(100) NOT NULL, + [LANGUAGE] VARCHAR(20), + CONTENT VARCHAR(MAX), + COMMENT VARCHAR(200), + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_LANGUAGE_OBJECTS PRIMARY KEY (GUID), + CONSTRAINT FK_TBDD_LANGUAGE_OBJECTS_MODULE_ID FOREIGN KEY(MODULE_ID) REFERENCES TBDD_MODULES(GUID), +) +GO +CREATE TRIGGER TBDD_LANGUAGE_OBJECTS_AFT_UPD ON TBDD_LANGUAGE_OBJECTS +FOR UPDATE +AS + UPDATE TBDD_LANGUAGE_OBJECTS SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBDD_LANGUAGE_OBJECTS.GUID = INSERTED.GUID +GO + + +CREATE TABLE TBDD_VERSION_USER_UPDATE_PATH( + GUID INTEGER NOT NULL IDENTITY(1,1), + USER_ID INT NOT NULL, + MODULE_NAME VARCHAR(30) NOT NULL, + UPDATE_PATH VARCHAR(500) NOT NULL DEFAULT '', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHEN DATETIME DEFAULT GETDATE(), +CONSTRAINT [PK_TBDD_VERSION_USER_UPDATE_PATH] PRIMARY KEY(GUID)) +GO +CREATE TRIGGER TBDD_VERSION_USER_UPDATE_PATH_AFT_UPD ON TBDD_VERSION_USER_UPDATE_PATH +FOR UPDATE +AS + UPDATE TBDD_VERSION_USER_UPDATE_PATH SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_VERSION_USER_UPDATE_PATH.GUID = INSERTED.GUID + +GO +CREATE TABLE TBDD_VERSION_UPDATE( + GUID INTEGER NOT NULL IDENTITY(1,1), + ALL_USERS BIT NOT NULL DEFAULT 0, + FORCE_UPD BIT NOT NULL DEFAULT 0, + MODULE_NAME VARCHAR(30) NOT NULL, + VERSION_NO VARCHAR(20) NOT NULL, + VERSION_FORCE_UPD VARCHAR(100) NOT NULL DEFAULT '', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHEN DATETIME DEFAULT GETDATE(), +CONSTRAINT [PK_TBDD_VERSION_UPDATE] PRIMARY KEY(GUID)) +GO + +CREATE TRIGGER [dbo].[TBDD_VERSION_UPDATE_AFT_UPD] ON [dbo].[TBDD_VERSION_UPDATE] +FOR UPDATE +AS +BEGIN TRY + DECLARE + @UPDATE_ID INTEGER, + @USER_ID INTEGER, + @ALL_USERS INT + SELECT @UPDATE_ID = GUID FROM INSERTED + + IF UPDATE (ALL_USERS) + BEGIN + SELECT @ALL_USERS = ALL_USERS FROM INSERTED + DELETE FROM TBDD_VERSION_USER_UPDATE WHERE UPDATE_ID = @UPDATE_ID + IF @ALL_USERS = 1 + BEGIN + DECLARE cursorUsers CURSOR FOR + select GUID FROM TBDD_USER + OPEN cursorUsers + FETCH NEXT FROM cursorUsers INTO @USER_ID + WHILE @@FETCH_STATUS = 0 + BEGIN + INSERT INTO TBDD_VERSION_USER_UPDATE (USER_ID, UPDATE_ID) VALUES (@USER_ID,@UPDATE_ID) + + FETCH NEXT FROM cursorUsers INTO @USER_ID + END + CLOSE cursorUsers + DEALLOCATE cursorUsers + END + END + --Generelle Updates (Datum und Recor-Änderungen) + UPDATE TBDD_VERSION_UPDATE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_VERSION_UPDATE.GUID = INSERTED.GUID +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 TBDD_VERSION_ITEMS( + GUID INTEGER NOT NULL IDENTITY(1,1), + UPDATE_ID INTEGER NOT NULL, + ITEM_INFO VARCHAR(100) NOT NULL, + INFO1 VARCHAR(100), + INFO2 VARCHAR(100), + INFO3 VARCHAR(100), + BIT1 BIT NOT NULL DEFAULT 0, + BIT2 BIT NOT NULL DEFAULT 0, + BIT3 BIT NOT NULL DEFAULT 0, + COMMENT VARCHAR(250), + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHEN DATETIME DEFAULT GETDATE(), +CONSTRAINT [PK_TBDD_VERSION_ITEMS] PRIMARY KEY(GUID), +CONSTRAINT FK_TBDD_VERSION_ITEMS_UPDATE_ID FOREIGN KEY (UPDATE_ID) REFERENCES TBDD_VERSION_UPDATE (GUID)) +GO +CREATE TABLE TBDD_VERSION_USER_UPDATE( + GUID INTEGER NOT NULL IDENTITY(1,1), + [USER_ID] INTEGER NOT NULL, + UPDATE_ID INTEGER NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHEN DATETIME DEFAULT GETDATE(), +CONSTRAINT [PK_TBDD_VERSION_USER_UPDATE] PRIMARY KEY(GUID), +CONSTRAINT FK_TBDD_VERSION_USER_UPDATE_UPDATE_ID FOREIGN KEY (UPDATE_ID) REFERENCES TBDD_VERSION_UPDATE (GUID)) +GO + + +CREATE OR ALTER TRIGGER [dbo].[TBDD_USER_AFT_INS] ON [dbo].[TBDD_USER] +WITH EXECUTE AS CALLER +FOR INSERT +AS +BEGIN TRY + DECLARE + @USER_ID INTEGER, + @CLIENT_ID INTEGER, + @ADDED_WHO VARCHAR(50), + @CLIENT_COUNT INTEGER, + @ECM_USR_ID INTEGER, + @USRNAME VARCHAR(50), + @UPDATE_PATH VARCHAR(500) + SELECT + @USER_ID = GUID, + @ADDED_WHO = ADDED_WHO, + @USRNAME = USERNAME + + FROM INSERTED + + SELECT @ECM_USR_ID = [dwUserID] + FROM @WINDREAM_DB.[dbo].[UserInfo] where UPPER(szUserName) = UPPER(@USRNAME) + IF @ECM_USR_ID IS NOT NULL + UPDATE TBDD_USER SET USERID_FK_INT_ECM = @ECM_USR_ID + FROM INSERTED + WHERE TBDD_USER.GUID = INSERTED.GUID + EXEC IDB.dbo.PRIDB_NEW_CATALOG_USER @USER_ID; + -- SELECT @CLIENT_COUNT = COUNT(*) FROM TBDD_CLIENT + -- IF @CLIENT_COUNT = 1 + -- BEGIN + -- SELECT @CLIENT_COUNT = GUID FROM TBDD_CLIENT + -- INSERT INTO TBDD_CLIENT_USER (USER_ID,CLIENT_ID,ADDED_WHO) VALUES + -- (@USER_ID,@CLIENT_COUNT,@ADDED_WHO) + -- END + + -- --INSERT INTO TBDD_USER_MODULES (USER_ID,MODULE_ID) VALUES (@USER_ID,3) + -- 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 TRIGGER TBDD_USER_AFT_UPD ON TBDD_USER +FOR UPDATE +AS +BEGIN + DECLARE @USRNAME VARCHAR(50) + SELECT @USRNAME = USERNAME FROM inserted + IF UPDATE (USERNAME) + BEGIN + DECLARE @ECM_USR_ID INTEGER + SELECT @ECM_USR_ID = [dwUserID] + FROM @WINDREAM_DB.[dbo].[UserInfo] where UPPER(szUserName) = UPPER(@USRNAME) + IF @ECM_USR_ID IS NOT NULL + UPDATE TBDD_USER SET USERID_FK_INT_ECM = @ECM_USR_ID + FROM INSERTED + WHERE TBDD_USER.GUID = INSERTED.GUID + END + UPDATE TBDD_USER SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_USER.GUID = INSERTED.GUID +END +GO + +CREATE TABLE TBDD_CLIENT_USER +( + GUID INTEGER IDENTITY(1,1), + [USER_ID] INT NOT NULL, + CLIENT_ID INT NOT NULL, + COMMENT VARCHAR(200), + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBDD_CLIENT_USER PRIMARY KEY (GUID), + CONSTRAINT FK_TBDD_CLIENT_USER_GROUP_ID FOREIGN KEY(CLIENT_ID) REFERENCES TBDD_CLIENT(GUID), + CONSTRAINT FK_TBDD_CLIENT_USER_USER_ID FOREIGN KEY([USER_ID]) REFERENCES TBDD_USER(GUID), +) +GO +CREATE TABLE TBDD_CLIENT_GROUP +( + GUID INTEGER IDENTITY(1,1), + [GROUP_ID] INT NOT NULL, + CLIENT_ID INT NOT NULL, + COMMENT VARCHAR(200), + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBDD_CLIENT_GROUP PRIMARY KEY (GUID), + CONSTRAINT FK_TBDD_CLIENT_GROUP_GROUP_ID FOREIGN KEY(GROUP_ID) REFERENCES TBDD_GROUPS(GUID), + CONSTRAINT FK_TBDD_CLIENT_GROUP_CLIENT_ID FOREIGN KEY(CLIENT_ID) REFERENCES TBDD_CLIENT(GUID), +) +GO + +CREATE TABLE TBDD_USER_MODULES +( + GUID INTEGER IDENTITY(1,1), + [USER_ID] INT NOT NULL, + MODULE_ID INT NOT NULL, + IS_ADMIN BIT NOT NULL DEFAULT 0, + RIGHT1 BIT NOT NULL DEFAULT 0, + RIGHT2 BIT NOT NULL DEFAULT 0, + RIGHT3 BIT NOT NULL DEFAULT 0, + RIGHT4 BIT NOT NULL DEFAULT 0, + COMMENT VARCHAR(200), + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME , + CONSTRAINT PK_TBDD_USER_MODULES PRIMARY KEY (GUID), + CONSTRAINT UQ_TBDD_USER_MODULES UNIQUE([USER_ID],MODULE_ID), + CONSTRAINT FK_TBDD_USER_MODULES_MODULE_ID FOREIGN KEY(MODULE_ID) REFERENCES TBDD_MODULES(GUID), + CONSTRAINT FK_TBDD_USER_MODULES2_USER_ID FOREIGN KEY([USER_ID]) REFERENCES TBDD_USER(GUID), +) +GO +CREATE TRIGGER TBDD_USER_MODULES_AFT_UPD ON TBDD_USER_MODULES +FOR UPDATE +AS + UPDATE TBDD_USER_MODULES SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBDD_USER_MODULES.GUID = INSERTED.GUID +GO + +INSERT INTO TBDD_USER_MODULES (USER_ID,MODULE_ID,IS_ADMIN) SELECT GUID,(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'UM'),1 FROM TBDD_USER where GUID NOT IN ( +SELECT USER_ID FROM TBDD_USER_MODULES WHERE MODULE_ID = (SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'UM')) +GO + +CREATE TRIGGER [dbo].[TBDD_USER_AFT_DEL] ON [dbo].[TBDD_USER] +FOR DELETE +AS +DECLARE @USER_ID INTEGER +BEGIN + SELECT @USER_ID = GUID FROM DELETED + IF @USER_ID IN (0,1) + BEGIN + ROLLBACK TRANSACTION + RAISERROR('THIS USER CAN NOT BE DELETED!',16,10) + END + ELSE + BEGIN + INSERT INTO TBPMO_USER_RIGHTS_JOBS (USER_ID,COMMENT,ADDED_WHO) VALUES + (@USER_ID,'USER DELETED','TBDD_GROUPS_USER_AFT_DEL') + END +END +GO +CREATE TABLE TBDD_USER_MODULE_LOG_IN +( + GUID INTEGER IDENTITY(1,1), + CLIENT_ID INTEGER NOT NULL DEFAULT 0, + CONNECTION_STRING VARCHAR(500) NOT NULL DEFAULT '' , + USER_ID INTEGER NOT NULL, + MACHINE_NAME VARCHAR(250) NOT NULL DEFAULT '', + MODULE VARCHAR(50), + VERSION_CLIENT VARCHAR(30), + ADDED_WHEN DATETIME DEFAULT GETDATE() NOT NULL, + CONSTRAINT PK_TBDD_USER_MODULE_LOG_IN PRIMARY KEY (GUID) +) +GO +CREATE TRIGGER TBDD_USER_MODULE_LOG_IN_AFT_INS ON TBDD_USER_MODULE_LOG_IN +WITH EXECUTE AS CALLER +FOR INSERT +AS +BEGIN TRY + DECLARE + @USER_ID INTEGER, + @MODULE VARCHAR(50), + @CLIENT_ID INTEGER, + @VERSION_CLIENT VARCHAR(30), + @MACHINE_NAME VARCHAR(50), + @CONNECTION_STRING VARCHAR(500) + SELECT + @USER_ID = USER_ID, + @MODULE = MODULE, + @CLIENT_ID = CLIENT_ID, + @VERSION_CLIENT = VERSION_CLIENT, + @MACHINE_NAME = MACHINE_NAME, + @CONNECTION_STRING = CONNECTION_STRING + FROM INSERTED + + IF @VERSION_CLIENT IS NULL + SET @VERSION_CLIENT = '1.0.0.0' + INSERT INTO TBDD_USER_LOGIN_OUT (MODULE,USER_ID,CLIENT_ID,VERSION_CLIENT,MACHINE_NAME,CONNECTION_STRING) VALUES (@MODULE,@USER_ID,@CLIENT_ID,@VERSION_CLIENT,@MACHINE_NAME,@CONNECTION_STRING) +END TRY +BEGIN CATCH + PRINT 'FEHLER IN TRIGGER: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + ' - ZEILE: ' + CONVERT(VARCHAR(10),ERROR_LINE()) + + ' - FEHLER-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +CREATE TRIGGER TBDD_USER_MODULE_LOG_IN_AFT_DEL ON TBDD_USER_MODULE_LOG_IN +FOR DELETE +AS +BEGIN TRY + DECLARE + @USER_ID INTEGER, + @MODULE VARCHAR(50), + @CLIENT_ID INTEGER + SELECT + @USER_ID = USER_ID, + @MODULE = MODULE, + @CLIENT_ID = CLIENT_ID + FROM DELETED + + UPDATE TBDD_USER_LOGIN_OUT SET LOGOUT = GETDATE() WHERE GUID = ( + SELECT MAX(GUID) FROM TBDD_USER_LOGIN_OUT WHERE USER_ID = @USER_ID AND MODULE = @MODULE AND CLIENT_ID = @CLIENT_ID) + +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 TBDD_CONNECTION + +( + GUID SMALLINT IDENTITY(1,1), + BEZEICHNUNG VARCHAR(100), + SQL_PROVIDER VARCHAR(50), + SERVER VARCHAR(150), + DATENBANK VARCHAR(100), + USERNAME VARCHAR(100), + PASSWORD VARCHAR(100), + BEMERKUNG VARCHAR(400), + SYS_CONNECTION BIT DEFAULT 0 NOT NULL, + AKTIV BIT DEFAULT 1 NOT NULL, -- 1 - Connection aktiv, 0 - inaktiv + ERSTELLTWER VARCHAR(50) DEFAULT 'DD_ECM DEFAULT' NOT NULL, + ERSTELLTWANN DATETIME DEFAULT GETDATE(), + GEANDERTWER VARCHAR(50), + GEAENDERTWANN DATETIME, + CONSTRAINT PK_TBDD_CONNECTION PRIMARY KEY (GUID) +) +GO +------------------------------------------------------------------------------ + +CREATE TRIGGER TBDD_CONNECTION_AFT_UPD ON TBDD_CONNECTION +FOR UPDATE +AS + UPDATE TBDD_CONNECTION SET GEAENDERTWANN = GETDATE() FROM INSERTED WHERE TBDD_CONNECTION.GUID = INSERTED.GUID +GO +------------------------------------------------------------------------------ +INSERT INTO TBDD_CONNECTION(BEZEICHNUNG,SQL_PROVIDER,SERVER,DATENBANK,USERNAME,PASSWORD) VALUES ('DD_ECM','MS-SQL','@ECM_IP','DD_ECM','@ECM_USER','@ECM_PW') +GO +INSERT INTO TBDD_CONNECTION(BEZEICHNUNG,SQL_PROVIDER,SERVER,DATENBANK,USERNAME,PASSWORD) VALUES ('IDB','MS-SQL','@ECM_IP','DD_ECM','@ECM_USER','@ECM_PW') +GO +--INSERT INTO TBCONNECTION(BEZEICHNUNG,SQL_PROVIDER,SERVER,DATENBANK,USERNAME,PASSWORD) VALUES ('Zeiterfassung','SQLOLEDB','192.168.48.13','DD_ZEITERFASSUNG_AB_112011','sa','dd') +--GO +--INSERT INTO TBCONNECTION(BEZEICHNUNG,SQL_PROVIDER,SERVER,DATENBANK,USERNAME,PASSWORD) VALUES ('Oracle-Fuchs','OraOLEDB.Oracle','192.168.48.32','10FUCHS','IID_GH','dd') +--GO + + +CREATE TABLE TBDD_DOKUMENTART +( + GUID INT IDENTITY(1,1), + BEZEICHNUNG VARCHAR(50) NOT NULL, + OBJEKTTYP VARCHAR(50) NOT NULL, + EINGANGSART_ID TINYINT NOT NULL, -- Typ der die Entstehung der dokumnetart beschreibt + KURZNAME VARCHAR(50) NOT NULL, + ZIEL_PFAD VARCHAR(250) NOT NULL, + BESCHREIBUNG VARCHAR(250), + WINDREAM_DIRECT BIT DEFAULT 0 NOT NULL, + FOLDER_FOR_INDEX VARCHAR(500) DEFAULT '' NOT NULL, + DUPLICATE_HANDLING VARCHAR(30) NOT NULL DEFAULT 'Default', + AKTIV BIT DEFAULT 0 NOT NULL, -- 1 - Dokumentart aktiv und kann benutzt werden, 0 - inaktiv + [LANGUAGE] VARCHAR(5) NOT NULL DEFAULT 'de-DE', + SEQUENCE INT NOT NULL DEFAULT 1, + IDB_OBJECT_STORE_ID INT DEFAULT 0 NOT NULL, + NAMENKONVENTION VARCHAR(500) NOT NULL DEFAULT '', + ERSTELLTWER VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ERSTELLTWANN DATETIME DEFAULT GETDATE(), + GEANDERTWER VARCHAR(50), + GEAENDERTWANN DATETIME, + CONSTRAINT PK_TBDD_DOKUMENTART PRIMARY KEY(GUID), + CONSTRAINT FK_TBDD_DOKUMENTART_EINGID FOREIGN KEY(EINGANGSART_ID) REFERENCES TBDD_EINGANGSARTEN(GUID), + CONSTRAINT UNIQUE_TBDD_DOKUMENTART UNIQUE(BEZEICHNUNG) +) +GO +------------------------------------------------------------------------------ + +CREATE TRIGGER TBDD_DOKUMENTART_AFT_UPD ON TBDD_DOKUMENTART +FOR UPDATE +AS +BEGIN TRY + DECLARE + @DA_TITLE VARCHAR(50), + @LANGUAGE VARCHAR(5), + @CHANGED_WHO VARCHAR(50), + @GUID INTEGER, + @SCREEN_ID INTEGER, + @PMO_OBJECT_NAME VARCHAR(100) + SELECT + @GUID = GUID, + @DA_TITLE = BEZEICHNUNG, + @SCREEN_ID = 1, + @CHANGED_WHO = GEANDERTWER + FROM INSERTED + SELECT @LANGUAGE = [LANGUAGE] FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER(@CHANGED_WHO) + SET @PMO_OBJECT_NAME = 'DOCTYPE_TITLE' + CONVERT(VARCHAR(5),@GUID) + + UPDATE TBDD_DOKUMENTART SET GEAENDERTWANN = GETDATE() FROM INSERTED + WHERE TBDD_DOKUMENTART.GUID = INSERTED.GUID + IF UPDATE (BEZEICHNUNG) + BEGIN + IF OBJECT_ID(N'dbo.TBPMO_WD_OBJECTTYPE', N'U') IS NOT NULL + BEGIN + If exists(SELECT * FROM TBPMO_LANGUAGE_OBJECT WHERE PMO_OBJECT_NAME = @PMO_OBJECT_NAME AND + LANGUAGE_TYPE = @LANGUAGE AND SCREEN_ID = @SCREEN_ID) + UPDATE TBPMO_LANGUAGE_OBJECT SET CAPTION = @DA_TITLE,CHANGED_WHO = @CHANGED_WHO WHERE + PMO_OBJECT_NAME = @PMO_OBJECT_NAME AND + LANGUAGE_TYPE = @LANGUAGE AND SCREEN_ID = @SCREEN_ID + ELSE + INSERT INTO TBPMO_LANGUAGE_OBJECT (LANGUAGE_TYPE,SCREEN_ID,PMO_OBJECT_NAME,CAPTION) VALUES + (@LANGUAGE,@SCREEN_ID,@PMO_OBJECT_NAME,@DA_TITLE) + END + 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 TRIGGER [dbo].[TBDD_DOKUMENTART_AFT_INS] ON [dbo].[TBDD_DOKUMENTART] +WITH EXECUTE AS CALLER +FOR INSERT +AS +BEGIN TRY + DECLARE + @DA_TITLE VARCHAR(50), + @LANGUAGE VARCHAR(5), + @ADDED_WHO VARCHAR(50), + @GUID INTEGER, + @SCREEN_ID INTEGER, + @PMO_OBJECT_NAME VARCHAR(100) + SELECT + @GUID = GUID, + @DA_TITLE = BEZEICHNUNG, + @LANGUAGE = [LANGUAGE], + @SCREEN_ID = 1, + @ADDED_WHO = ERSTELLTWER + FROM INSERTED + + SET @PMO_OBJECT_NAME = 'DOCTYPE_TITLE' + CONVERT(VARCHAR(5),@GUID) + IF OBJECT_ID(N'dbo.TBPMO_WD_OBJECTTYPE', N'U') IS NOT NULL + INSERT INTO TBPMO_LANGUAGE_OBJECT (LANGUAGE_TYPE,SCREEN_ID,PMO_OBJECT_NAME,CAPTION,ADDED_WHO) VALUES + (@LANGUAGE,@SCREEN_ID,@PMO_OBJECT_NAME,@DA_TITLE,@ADDED_WHO) +END TRY +BEGIN CATCH + PRINT 'ERROR IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + + ' - ERROR-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO + +CREATE TRIGGER TBDD_DOKUMENTART_AFT_INS2 ON TBDD_DOKUMENTART +WITH EXECUTE AS CALLER +FOR INSERT +AS +BEGIN TRY + DECLARE + @ADDED_WHO VARCHAR(50), + @OBJEKTTYP VARCHAR(50), + @GUID INTEGER + SELECT + @GUID = GUID, + @ADDED_WHO = ERSTELLTWER, + @OBJEKTTYP = OBJEKTTYP + FROM INSERTED + IF OBJECT_ID(N'dbo.TBPMO_CLIENT_DOCTYPE', N'U') IS NOT NULL + INSERT INTO TBPMO_CLIENT_DOCTYPE (CLIENT_ID,DOCTYPE_ID) + SELECT T.CLIENT_ID,@GUID FROM TBDD_CLIENT_USER T, TBDD_USER T1 WHERE T.USER_ID = T1.GUID AND UPPER(T1.USERNAME) = UPPER(@ADDED_WHO) + + IF OBJECT_ID(N'dbo.TBPMO_WD_OBJECTTYPE', N'U') IS NOT NULL + IF @OBJEKTTYP IS NOT NULL + IF @OBJEKTTYP <> '' + BEGIN + DECLARE @IDX_DOC VARCHAR(50),@IDX_REC VARCHAR(50) + SELECT @IDX_DOC = IDXNAME_DOCTYPE, + @IDX_REC = IDXNAME_RECORDID FROM TBPMO_WD_OBJECTTYPE WHERE OBJECT_TYPE = @OBJEKTTYP + IF @IDX_REC IS NOT NULL + INSERT INTO TBDD_INDEX_AUTOM (DOCTYPE_ID,INDEXNAME,VALUE,ACTIVE,ADDED_WHO) VALUES + (@GUID,@IDX_REC,'@Record-ID',1,@ADDED_WHO) + IF @IDX_DOC IS NOT NULL + INSERT INTO TBDD_INDEX_AUTOM (DOCTYPE_ID,INDEXNAME,VALUE,ACTIVE,ADDED_WHO) VALUES + (@GUID,@IDX_DOC,'@Dokart',1,@ADDED_WHO) + 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 TBDD_DOKUMENTART_MODULE +( + GUID INT IDENTITY(1,1), + DOKART_ID INT NOT NULL, + MODULE_ID INT NOT NULL, + ADDED_WHO VARCHAR(50) DEFAULT 'Digital Data' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHEN DATETIME, + CONSTRAINT PKTBDD_DOKART_MODULE PRIMARY KEY(GUID), + CONSTRAINT FK_TBDD_DOKART_MODULE_DOKART_ID FOREIGN KEY(DOKART_ID) REFERENCES TBDD_DOKUMENTART(GUID), + CONSTRAINT FK_TBDD_DOKART_MODULE_MODULE_ID FOREIGN KEY(MODULE_ID) REFERENCES TBDD_MODULES(GUID), +) +GO +------------------------------------------------------------------------------ + +CREATE TRIGGER TBDD_DOKUMENTART_MODULE_AFT_UPD ON TBDD_DOKUMENTART_MODULE +FOR UPDATE +AS +BEGIN + UPDATE TBDD_DOKUMENTART_MODULE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_DOKUMENTART_MODULE.GUID = INSERTED.GUID +END +GO +------------------------------------------------------------------------------ +CREATE TABLE TBDD_USER_DOKTYPE +( + GUID INT IDENTITY(10000,1), + DOCTYPE_ID INT NOT NULL, + USER_ID INT NOT NULL, + ADDED_WHO VARCHAR(50) DEFAULT 'Digital Data' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHEN DATETIME, + CONSTRAINT PKTBDD_USER_DOKTYPE PRIMARY KEY(GUID), + CONSTRAINT FK_TBDD_USER_DOKTYPE_DTID FOREIGN KEY(DOCTYPE_ID) REFERENCES TBDD_DOKUMENTART(GUID), + CONSTRAINT FK_TBDD_USER_DOKTYPE_USRID FOREIGN KEY(USER_ID) REFERENCES TBDD_USER(GUID), +) +GO +CREATE TRIGGER TBDD_USER_DOKTYPE_AFT_UPD ON TBDD_USER_DOKTYPE +FOR UPDATE +AS +BEGIN + UPDATE TBDD_USER_DOKTYPE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_USER_DOKTYPE.GUID = INSERTED.GUID +END +GO +CREATE TABLE TBDD_INDEX_MAN +( + GUID INT IDENTITY(1,1), + DOK_ID INT NOT NULL, + NAME VARCHAR(50) NOT NULL, + WD_INDEX VARCHAR(50), + --SAVE_VALUE BIT NOT NULL DEFAULT 0, + COMMENT VARCHAR(150), + DATATYPE VARCHAR(50), + SUGGESTION BIT DEFAULT 0 NOT NULL, -- 1 - Es wird Eingabe vorgeschlagen, bei 0 - manuelle Eingabe. + DEFAULT_VALUE VARCHAR(50) NOT NULL DEFAULT '', + CONNECTION_ID SMALLINT DEFAULT 0, + SEQUENCE INTEGER NOT NULL DEFAULT 1, + SQL_RESULT VARCHAR(2000) NOT NULL DEFAULT '', + SQL_CHECK VARCHAR(2000) NOT NULL DEFAULT '', + OPTIONAL BIT DEFAULT 0 NOT NULL, + SAVE_VALUE BIT DEFAULT 0 NOT NULL, + VKT_ADD_ITEM BIT NOT NULL DEFAULT 0, + VKT_PREVENT_MULTIPLE_VALUES BIT NOT NULL DEFAULT 1, + MULTISELECT BIT NOT NULL DEFAULT 0, + ACTIVE BIT DEFAULT 1 NOT NULL, -- 1 - Index aktiv, bei 0 - inaktiv. + ADDED_WHO VARCHAR(50) DEFAULT 'DD_ECM DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE() , + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_INDEX_MAN PRIMARY KEY(GUID), + CONSTRAINT FK_TBDD_INDEX_MAN_DAID FOREIGN KEY(DOK_ID) REFERENCES TBDD_DOKUMENTART(GUID), + CONSTRAINT FK_TBDD_INDEX_MAN_CID FOREIGN KEY(CONNECTION_ID) REFERENCES TBDD_CONNECTION(GUID) +) +GO +------------------------------------------------------------------------------ +CREATE TRIGGER TBINDEX_MAN_AFT_UPD ON TBDD_INDEX_MAN +FOR UPDATE +AS +BEGIN + UPDATE TBDD_INDEX_MAN SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_INDEX_MAN.GUID = INSERTED.GUID +END +GO + +CREATE TABLE TBDD_INDEX_AUTOM +( + GUID INT IDENTITY(1,1), + DOCTYPE_ID INT NOT NULL, + [ENTITY_ID] INTEGER DEFAULT 0 NOT NULL, + INDEXNAME VARCHAR(50) NOT NULL, + VALUE VARCHAR(2000), + CONNECTION_ID SMALLINT NOT NULL DEFAULT 0, + [SQL_RESULT] VARCHAR(2000) DEFAULT '' NOT NULL, + SQL_ACTIVE BIT DEFAULT 0 NOT NULL, + COMMENT VARCHAR(400), + ACTIVE BIT DEFAULT 1 NOT NULL, -- 1 - Index aktiv, bei 0 - inaktiv. + SEQUENCE INT DEFAULT 1 NOT NULL, + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE() , + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_INDEX_AUTOM PRIMARY KEY(GUID), + CONSTRAINT FK_TBDD_INDEX_AUTOM_DOCID FOREIGN KEY(DOCTYPE_ID) REFERENCES TBDD_DOKUMENTART(GUID) +) +GO +------------------------------------------------------------------------------ + +CREATE TRIGGER TBDD_INDEX_AUTOM_AFT_UPD ON TBDD_INDEX_AUTOM +FOR UPDATE +AS +BEGIN + UPDATE TBDD_INDEX_AUTOM SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_INDEX_AUTOM.GUID = INSERTED.GUID +END +GO + + +CREATE TABLE TBDD_INDEX_MAN_POSTPROCESSING +( + GUID INT IDENTITY(1,1), + IDXMAN_ID INT NOT NULL, + VARIANT VARCHAR(20) NOT NULL DEFAULT 'FILE AND INDEX', + COMMENT VARCHAR(250), + [TYPE] VARCHAR(50), -- Beschreibt intern welche Funktion genutzt wird:SPLIT,REPLACE + FUNCTION1 VARCHAR(250), -- Funktionen wie RegexExpressions + FUNCTION2 VARCHAR(250), -- Funktionen wie RegexExpressions + TEXT1 VARCHAR(100), -- Option1 zB: Replace1 + TEXT2 VARCHAR(100), -- Option2 zB: Replace_with + TEXT3 VARCHAR(100), -- Option2 + SEQUENCE INT NOT NULL DEFAULT 1, + ADDED_WHO VARCHAR(50) DEFAULT 'Digital Data' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PKTBDD_INDEX_MAN_POSTPROCESSING PRIMARY KEY(GUID), + CONSTRAINT FKTBDD_INDEX_MAN_POSTPROCESSING_IDXID FOREIGN KEY(IDXMAN_ID) REFERENCES TBDD_INDEX_MAN(GUID) +) +GO +------------------------------------------------------------------------------ + +CREATE TRIGGER TBDD_INDEX_MAN_POSTPROCESSING_AFT_UPD ON TBDD_INDEX_MAN_POSTPROCESSING +FOR UPDATE +AS + UPDATE TBDD_INDEX_MAN_POSTPROCESSING SET CHANGED_WHEN = GETDATE() + FROM INSERTED WHERE TBDD_INDEX_MAN_POSTPROCESSING.GUID = INSERTED.GUID +GO +CREATE TABLE TBDD_EMAIL_ACCOUNT +( + GUID INTEGER IDENTITY(1,1), + NAME VARCHAR(50), + EMAIL_NAME VARCHAR(100) DEFAULT '', + EMAIL_FROM VARCHAR(100) NOT NULL, + EMAIL_FROM_NAME VARCHAR(100) DEFAULT '', + EMAIL_SMTP VARCHAR(100) NOT NULL, + EMAIL_USER VARCHAR(100) NOT NULL, + EMAIL_PW VARCHAR(250) NOT NULL DEFAULT '', + AUTH_TYPE VARCHAR(20) NOT NULL DEFAULT 'SSL', + SSL_AUTH BIT NOT NULL DEFAULT 0, + PORT INTEGER NOT NULL DEFAULT '25', + PORT_IN INT NOT NULL DEFAULT 25, + ACTIVE BIT NOT NULL DEFAULT 1, + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_EMAIL_ACCOUNT PRIMARY KEY (GUID) +) +GO + +CREATE TRIGGER TBDD_EMAIL_ACCOUNT_AFT_UPD ON TBDD_EMAIL_ACCOUNT +FOR UPDATE +AS +BEGIN + UPDATE TBDD_EMAIL_ACCOUNT SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_EMAIL_ACCOUNT.GUID = INSERTED.GUID +END +GO + +CREATE TABLE TBDD_USER_LOGIN_OUT( + GUID INT IDENTITY(1,1) NOT NULL, + CONNECTION_STRING VARCHAR(500) NOT NULL DEFAULT '', + CLIENT_ID INT NOT NULL, + MACHINE_NAME VARCHAR(250) NOT NULL DEFAULT '', + MODULE VARCHAR(30) NOT NULL, + [USER_ID] INT NOT NULL, + VERSION_CLIENT VARCHAR(30), + [LOGIN] DATETIME DEFAULT (GETDATE()), + [LOGOUT] DATETIME, +CONSTRAINT [PK_TBDD_USER_LOGIN_OUT] PRIMARY KEY(GUID), +CONSTRAINT FK_TBDD_USER_LOGIN_OUT_USER_ID FOREIGN KEY ([USER_ID]) REFERENCES TBDD_USER (GUID)) +GO +CREATE TABLE TBDD_USRGRP_DOKTYPE +( + GUID INT IDENTITY(100,1), + DOCTYPE_ID INT NOT NULL, + GROUP_ID INT NOT NULL, + ADDED_WHO VARCHAR(50) DEFAULT 'Digital Data' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHEN DATETIME, + CONSTRAINT PKTBDD_USRGRP_DOKTYPE PRIMARY KEY(GUID), + CONSTRAINT FK_TBDD_USRGRP_DOKTYPE_DOCTYPE_ID FOREIGN KEY(DOCTYPE_ID) REFERENCES TBDD_DOKUMENTART(GUID), + CONSTRAINT FK_TBDD_USRGRP_DOKTYPE_GROUP_ID FOREIGN KEY(GROUP_ID) REFERENCES TBDD_GROUPS(GUID), +) +GO +------------------------------------------------------------------------------ + +CREATE TRIGGER TBDD_USRGRP_DOKTYPE_AFT_UPD ON TBDD_USRGRP_DOKTYPE +FOR UPDATE +AS +BEGIN + UPDATE TBDD_USRGRP_DOKTYPE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_USRGRP_DOKTYPE.GUID = INSERTED.GUID +END +GO + +CREATE TABLE TBDD_LICENSE_ADD_ON( + [GUID] INT IDENTITY(1,1) NOT NULL, + [CLIENT_ID] INT NOT NULL, + [MODULE] VARCHAR(100) NOT NULL, + [NAME] VARCHAR(100) NOT NULL, + [VALID_DATE] VARCHAR(2000) NOT NULL, + [ADDED_WHO] VARCHAR(50) NOT NULL DEFAULT ('DEFAULT'), + [ADDED_WHEN] DATETIME DEFAULT (getdate()), + [CHANGED_WHO] VARCHAR(50), + [CHANGED_WHEN] DATETIME +CONSTRAINT [PK_TBDD_LICENSE_ADD_ON] PRIMARY KEY(GUID), +CONSTRAINT FK_TBDD_LICENSE_ADD_ON_CLIENT_ID FOREIGN KEY ([CLIENT_ID]) REFERENCES TBDD_CLIENT (GUID)) +GO +--INSERT INTO TBDD_LICENSE_ADD_ON (CLIENT_ID, MODULE, NAME, VALID_DATE) VALUES (0,'Record-Organizer', 'Proxy-Server', '+bk8oAbbQP1AzoHtvZUbd+Mbok2f8Fl4miEx1qssJ5yEaEWoQJ9prg4L14fURpPncZwT1S0JUXDWEzuCTBqgpd20QM74AAN6') +--GO +--INSERT INTO TBDD_LICENSE_ADD_ON (CLIENT_ID, MODULE, NAME, VALID_DATE) VALUES (1,'Record-Organizer', 'Site-AddOn', '+bk8oAbbQP1AzoHtvZUbd+Mbok2f8Fl4miEx1qssJ5yEaEWoQJ9prg4L14fURpPncZwT1S0JUXDWEzuCTBqgpd20QM74AAN6') +--GO + +-- END CREATE TABLES +CREATE TABLE TBDD_EMAIL_TEMPLATE +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + TITLE VARCHAR(100) NOT NULL, + EMAIL_SUBJECT VARCHAR(900) NOT NULL, + EMAIL_BODY1 VARCHAR(MAX) NOT NULL, + EMAIL_BODY2 VARCHAR(MAX) NOT NULL DEFAULT '', + EMAIL_BODY3 VARCHAR(MAX) NOT NULL DEFAULT '', + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBCUST_EMAIL_TEMPLATE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBCUST_EMAIL_TEMPLATE_TITLE UNIQUE (TITLE) +) +GO +CREATE TRIGGER TBCUST_EMAIL_TEMPLATE_AFT_UPD ON [dbo].[TBDD_EMAIL_TEMPLATE] +FOR UPDATE +AS +BEGIN + UPDATE TBDD_EMAIL_TEMPLATE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_EMAIL_TEMPLATE.GUID = INSERTED.GUID +END +GO +CREATE TABLE TBDD_SQL_COMMANDS +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + TITLE VARCHAR(100) NOT NULL, + SQL_COMMAND VARCHAR(MAX) NOT NULL, + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_SQL_COMMANDS PRIMARY KEY (GUID), + CONSTRAINT UQ_TBDD_SQL_COMMANDS UNIQUE (TITLE) +) +GO +CREATE TRIGGER TBDD_SQL_COMMANDS_AFT_UPD ON [dbo].TBDD_SQL_COMMANDS +FOR UPDATE +AS +BEGIN + UPDATE TBDD_SQL_COMMANDS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_SQL_COMMANDS.GUID = INSERTED.GUID +END +GO +INSERT INTO TBDD_SQL_COMMANDS (TITLE,SQL_COMMAND) VALUES ('PM_IDB_DOC_DATA', +'select * from IDB.dbo.VWIDB_DOC_DATA T, TBPM_PROFILE_FILES T1 WHERE T.IDB_OBJ_ID = T1.DOC_ID AND T1.GUID = @DOC_GUID') +GO +INSERT INTO TBDD_SQL_COMMANDS (TITLE,SQL_COMMAND) VALUES ('GHOST_SELECT',' +SELECT T.USERNAME,T.NAME, T.[PRENAME],T.EMAIL FROM TBDD_USER T ORDER BY USERNAME') +GO +CREATE TABLE TBDD_GUI_LANGUAGE_PHRASE +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + MODULE VARCHAR(50) NOT NULL, + INTERNAL BIT NOT NULL DEFAULT 0, + OBJ_NAME VARCHAR(100) NOT NULL, + TITLE VARCHAR(100) NOT NULL, + [LANGUAGE] VARCHAR(5) NOT NULL, + CAPT_TYPE VARCHAR(50) NOT NULL, + STRING1 VARCHAR(900) NOT NULL, + STRING2 VARCHAR(900) NOT NULL, + STRING3 VARCHAR(900) , + STRING4 VARCHAR(900), + STRING5 VARCHAR(900), + STRING6 VARCHAR(900), + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHEN DATETIME DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBDD_GUI_LANGUAGE_PHRASE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBDD_GUI_LANGUAGE_PHRASE UNIQUE (MODULE,OBJ_NAME,TITLE,[LANGUAGE]) +) +GO + +CREATE TRIGGER TBDD_GUI_LANGUAGE_PHRASE_AFT_UPD ON [dbo].[TBDD_GUI_LANGUAGE_PHRASE] +FOR UPDATE +AS +BEGIN + UPDATE TBDD_GUI_LANGUAGE_PHRASE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_GUI_LANGUAGE_PHRASE.GUID = INSERTED.GUID +END +GO + +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + (OBJ_NAME,[MODULE],[TITLE],[LANGUAGE],[CAPT_TYPE],[STRING1],STRING2) + VALUES('frmValidator','PM','frmValidator.MissingInput','de-DE','Information','Bitte validieren Sie die rot markierten Felder!','') +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + (OBJ_NAME,[MODULE],[TITLE],[LANGUAGE],[CAPT_TYPE],[STRING1],STRING2) + VALUES('frmValidator','PM','frmValidator.MissingInput','en-US','Information','Please validate red marked fields!','') +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + (OBJ_NAME,[MODULE],[TITLE],[LANGUAGE],[CAPT_TYPE],[STRING1],STRING2) + VALUES('frmValidator','PM','frmValidator.ValidationButton','de-DE','Button','Validierung speichern - Nächstes Dokument (F2)','') +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + (OBJ_NAME,[MODULE],[TITLE],[LANGUAGE],[CAPT_TYPE],[STRING1],STRING2) + VALUES('frmValidator','PM','frmValidator.ValidationButton','en-US','Button','Save validation - Next document (F2)','') + +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + (OBJ_NAME,[MODULE],[TITLE],[LANGUAGE],[CAPT_TYPE],[STRING1],STRING2) + VALUES('frmValidator','PM','frmValidator.NoMoreDocument','de-DE','MsgBox','No more document! End of profile!','') +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + (OBJ_NAME,[MODULE],[TITLE],[LANGUAGE],[CAPT_TYPE],[STRING1],STRING2) + VALUES('frmValidator','PM','frmValidator.NoMoreDocument','en-US','MsgBox','Kein weiteres Dokuemnt gefunden - Ende des Profils!','Hinweis') +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + (OBJ_NAME,[MODULE],[TITLE],[LANGUAGE],[CAPT_TYPE],[STRING1],STRING2) + VALUES('frmValidator','PM','frmValidator.WrongInputControl','de-DE','Information','Falsche Eingabe','') +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + (OBJ_NAME,[MODULE],[TITLE],[LANGUAGE],[CAPT_TYPE],[STRING1],STRING2) + VALUES('frmValidator','PM','frmValidator.WrongInputControl','en-US','Information','Wrong input','') +GO +CREATE TABLE TBDD_GUI_LANGUAGE +( + GUID INTEGER NOT NULL IDENTITY(1,1), + LANG_CODE VARCHAR(5) NOT NULL, + IS_DEFAULT BIT NOT NULL DEFAULT 0, + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME + CONSTRAINT PK_TBDD_GUI_LANGUAGE PRIMARY KEY (GUID) +) +GO +INSERT INTO TBDD_GUI_LANGUAGE (LANG_CODE,IS_DEFAULT) VALUES ('de-DE',1); +INSERT INTO TBDD_GUI_LANGUAGE (LANG_CODE) VALUES ('en-US'); +INSERT INTO TBDD_GUI_LANGUAGE (LANG_CODE) VALUES ('fr-FR'); +GO + +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + ([MODULE] + ,[TITLE] + ,[LANGUAGE] + ,[CAPT_TYPE] + ,[STRING1] + ,[STRING2] + ,[ADDED_WHO] + ,[OBJ_NAME] + ,[INTERNAL]) + VALUES + ('All Modules' + ,'No Userconfig' + ,'de-DE' + ,'Information' + ,'Achtung: Sie sind nicht in der Userverwaltung hinterlegt!' + ,'Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!' + ,'SYSTEM' + ,'General' + ,1) +GO +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + ([MODULE] + ,[TITLE] + ,[LANGUAGE] + ,[CAPT_TYPE] + ,[STRING1] + ,[STRING2] + ,[ADDED_WHO] + ,[OBJ_NAME] + ,[INTERNAL]) + VALUES + ('All Modules' + ,'No Userconfig' + ,'en-US' + ,'Information' + ,'Achtung: Sie sind nicht in der Userverwaltung hinterlegt!' + ,'Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!' + ,'SYSTEM' + ,'General' + ,1) +GO +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + ([MODULE] + ,[TITLE] + ,[LANGUAGE] + ,[CAPT_TYPE] + ,[STRING1] + ,[STRING2] + ,[ADDED_WHO] + ,[OBJ_NAME] + ,[INTERNAL]) + VALUES + ('All Modules' + ,'No Client relation' + ,'de-DE' + ,'Information' + ,'You are not related to a client!' + ,'Please contact the system administrator!!' + ,'SYSTEM' + ,'General' + ,1) +GO +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + ([MODULE] + ,[TITLE] + ,[LANGUAGE] + ,[CAPT_TYPE] + ,[STRING1] + ,[STRING2] + ,[ADDED_WHO] + ,[OBJ_NAME] + ,[INTERNAL]) + VALUES + ('All Modules' + ,'No Client relation' + ,'en-US' + ,'Information' + ,'You are not related to a client!' + ,'Please contact the system administrator!!' + ,'SYSTEM' + ,'General' + ,1) +GO +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + ([MODULE] + ,[TITLE] + ,[LANGUAGE] + ,[CAPT_TYPE] + ,[STRING1] + ,[STRING2] + ,[ADDED_WHO] + ,[OBJ_NAME] + ,[INTERNAL]) + VALUES + ('All Modules' + ,'No Module Configuration' + ,'de-DE' + ,'Information' + ,'Achtung: Sie sind nicht für die Nutzung von ProcessManager freigegeben!' + ,'Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!!' + ,'SYSTEM' + ,'General' + ,1) +GO +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + ([MODULE] + ,[TITLE] + ,[LANGUAGE] + ,[CAPT_TYPE] + ,[STRING1] + ,[STRING2] + ,[ADDED_WHO] + ,[OBJ_NAME] + ,[INTERNAL]) + VALUES + ('All Modules' + ,'No Module Configuration' + ,'en-US' + ,'Information' + ,'Achtung: Sie sind nicht für die Nutzung von ProcessManager freigegeben!' + ,'Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!!' + ,'SYSTEM' + ,'General' + ,1) +GO + +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + (OBJ_NAME,[MODULE],[TITLE],[LANGUAGE],[CAPT_TYPE],[STRING1],STRING2,INTERNAL) + VALUES('Application','PM','App.ReminderPipeline','de-DE','Information','Es befinden sich noch unerledigte Aufgaben in Ihrem Verantwortungsbereich','',1); +INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE] + (OBJ_NAME,[MODULE],[TITLE],[LANGUAGE],[CAPT_TYPE],[STRING1],STRING2,INTERNAL) + VALUES('Application','PM','App.ReminderPipeline','en-US','Information','There are some tasks in your responsibility!','',1); +GO +Insert Into TBDD_GUI_LANGUAGE_PHRASE (MODULE,TITLE,LANGUAGE,CAPT_TYPE,STRING1,STRING2,OBJ_NAME) VALUES ('PM','frmValidator.Conversation_Delete','de-DE','MsgboxResult','Wollen Sie die Konversation beenden?','Nachfrage','frmValidator'); +Insert Into TBDD_GUI_LANGUAGE_PHRASE (MODULE,TITLE,LANGUAGE,CAPT_TYPE,STRING1,STRING2,OBJ_NAME) VALUES ('PM','frmValidator.Conversation_Delete','en-US','MsgboxResult','Would You like to end this conversation?','Question','frmValidator'); +GO +CREATE TABLE [dbo].[TBDD_MONITORING_RESULT]( + [USR_ID] INTEGER NULL, + [GUID] INTEGER NULL, + [PARENT_ID] INTEGER NULL, + [STATE] VARCHAR(100) DEFAULT 'DEFAULT', + [ICON] VARCHAR(100) NULL, + [COLUMN1] VARCHAR(500) NULL, + [COLUMN2] VARCHAR(500) NULL, + [COLUMN3] VARCHAR(500) NULL, + [ADDED_WHEN] DATETIME NULL, + [SELECT1] NVARCHAR(max) NULL, + [SELECT2] NVARCHAR(max) NULL, + [SELECT3] NVARCHAR(max) NULL, + [SELECT4] NVARCHAR(max) NULL, + [DOCVIEW1] NVARCHAR(512) NULL, + [DOCVIEW2] NVARCHAR(512) NULL, + [HTML1] NVARCHAR(max) NULL, + [HTML2] NVARCHAR(max) NULL +) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] + +GO +CREATE PROCEDURE [dbo].[PRDD_MONITORING_GET_TREEVIEW_RESULT] @TYPE VARCHAR(100),@PARAM1 NVARCHAR(500),@PARAM2 NVARCHAR(500),@PARAM3 NVARCHAR(500),@USR_ID INTEGER +AS +BEGIN + DECLARE @TBResult TABLE ( + GUID INTEGER, + PARENT_ID INTEGER, + -- + -- STATE + -- Options: SUCCESS, FAILURE, WARNING, WAITING, DEFAULT + -- + STATE VARCHAR(100) DEFAULT 'DEFAULT', + -- + -- ICON + -- Options: MAIL, PDF, HTML + -- + ICON VARCHAR(100), + COLUMN1 VARCHAR(500), + COLUMN2 VARCHAR(500), + COLUMN3 VARCHAR(500), + ADDED_WHEN DATETIME, + SELECT1 NVARCHAR(MAX), + SELECT2 NVARCHAR(MAX), + SELECT3 NVARCHAR(MAX), + SELECT4 NVARCHAR(MAX), + DOCVIEW1 NVARCHAR(512), + DOCVIEW2 NVARCHAR(512), + HTML1 NVARCHAR(MAX), + HTML2 NVARCHAR(MAX) + ) + + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (1,0,GETDATE()-10,'EMAIL-EINGANG','SUCCESS') + INSERT INTO @TBResult (GUID,PARENT_ID,COLUMN1,COLUMN2) VALUES (2,1,'Datum/Uhrzeit','2021-05-11 07:28:25') + INSERT INTO @TBResult (GUID,PARENT_ID,COLUMN1,COLUMN2) VALUES (3,1,'Email-Versender','m.schreiber@digitaldata.works') + INSERT INTO @TBResult (GUID,PARENT_ID,COLUMN1,COLUMN2) VALUES (4,1,'Betreff','Das Subject aus der Mail') + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (5,0,GETDATE()-8,'ZUGFeRD-Parser gestartet','SUCCESS') + INSERT INTO @TBResult (GUID,PARENT_ID,ICON,COLUMN1,SELECT1) VALUES (6,5,'SQL','Click for Result','SELECT * FROM TBEDMI_ITEM_VALUE WHERE REFERENCE_GUID = ''350614162.18783.1593150528181@W2K8SRV0036030008840''|EDMI_ITEM_VALUE') + INSERT INTO @TBResult (GUID,PARENT_ID,ICON,COLUMN1,DOCVIEW1) VALUES (7,5,'MAIL','OriginalMail','\\Windream\Objects\SWE_157906_Neggers~4-21_01_28.msg|Original Email') + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (8,5,GETDATE()-6,'Beleg Abgelehnt','WARNING') + INSERT INTO @TBResult (GUID,PARENT_ID,ICON,COLUMN1,HTML1) VALUES (9,8,'MAIL','Ablehnungsmail','Sehr geehrte Damen und Herren,
das WISAG-Portal zur Verarbeitung der Eingangsrechnungen + im ZUGFeRD-Format konnte die von Ihnen gesandte Rechnung 5403008595 leider nicht verarbeiten!
Letzter Bearbeiter in unserem Hause: Melanie Leilich - Melanie.Leilich@wisag.de

+ Ablehnung, da die Rechnung mit der Gutschrift 5403008596 verrechnet wird.
Letzter Bearbeiter in unserem Hause: Melanie Leilich

Bitte prüfen Sie die Datei und nehmen Sie bei Bedarf mit uns Kontakt auf.

+ Vielen Dank für Ihr Verständnis.
Mit freundlichen Grüßen
Ihre IT-Abteilung|Ablehnungsmail') + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (10,0,GETDATE()-5,'Finale Freigabe','SUCCESS') + INSERT INTO @TBResult (GUID,PARENT_ID,COLUMN1,COLUMN2) VALUES (11,10,'Finaler Freigaber','d.schipper') + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (12,0,GETDATE()-5,'Ergebnisbericht erzeugt','SUCCESS') + INSERT INTO @TBResult (GUID,PARENT_ID,ICON,COLUMN1,DOCVIEW1) VALUES (13,12,'FILE','Ergebnisbericht','\\Windream\Objects\Globix-Test\4-20_06_08~8.pdf|Ergebnisbericht') + INSERT INTO @TBResult (GUID,PARENT_ID,ADDED_WHEN,COLUMN1,STATE) VALUES (14,0,GETDATE()-4,'An SAP übergeben','WAITING') + + SELECT * FROM @TBResult +END +GO + +CREATE TABLE TBDD_MONITORING_PROFILE( + GUID INTEGER NOT NULL IDENTITY(1,1), + TITLE VARCHAR(30) NOT NULL, + DESCRIPTION VARCHAR(100), + ACTIVE BIT NOT NULL DEFAULT 1, + SEQUENCE TINYINT NOT NULL DEFAULT 1, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHEN DATETIME, +CONSTRAINT [PK_TBDD_MONITORING_PROFILE] PRIMARY KEY(GUID)) +GO + +CREATE TRIGGER [dbo].[TBDD_MONITORING_PROFILE_AFT_UPD] ON [dbo].[TBDD_MONITORING_PROFILE] +FOR UPDATE +AS +BEGIN + UPDATE TBDD_MONITORING_PROFILE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_MONITORING_PROFILE.GUID = INSERTED.GUID +END +GO +CREATE TABLE TBDD_MONITORING_PROFILE_ATTRIBUTES( + GUID INTEGER NOT NULL IDENTITY(1,1), + MONITOR_PROFILE_ID INTEGER NOT NULL, + [CAPTION] VARCHAR(100) NOT NULL, + DESCRIPTION VARCHAR(100), + ACTIVE BIT NOT NULL DEFAULT 1, + SEQUENCE TINYINT NOT NULL DEFAULT 1, + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHEN DATETIME, +CONSTRAINT [PK_TBDD_MONITORING_PROFILE_ATTRIBUTES] PRIMARY KEY(GUID), +CONSTRAINT FK_TBDD_MONITORING_PROF_ATTR_MPID FOREIGN KEY (MONITOR_PROFILE_ID) REFERENCES TBDD_MONITORING_PROFILE (GUID)) +GO + +CREATE TRIGGER [dbo].[TBDD_MONITORING_PROFILE_ATTRIBUTES_AFT_UPD] ON [dbo].TBDD_MONITORING_PROFILE_ATTRIBUTES +FOR UPDATE +AS +BEGIN + UPDATE TBDD_MONITORING_PROFILE_ATTRIBUTES SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_MONITORING_PROFILE_ATTRIBUTES.GUID = INSERTED.GUID +END +GO +--############################################ +--##########PROCEDURES######################## +--############################################ + +CREATE PROCEDURE [dbo].[PRDD_DELETE_USER](@pUSER_ID INT) +AS +BEGIN TRY + -- COMMON + IF OBJECT_ID(N'dbo.TBDD_USER_MODULES', N'U') IS NOT NULL + DELETE FROM TBDD_USER_MODULES WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBDD_CLIENT_USER', N'U') IS NOT NULL + DELETE FROM TBDD_CLIENT_USER WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBDD_GROUPS_USER', N'U') IS NOT NULL + DELETE FROM TBDD_GROUPS_USER WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBDD_VERSION_USER_UPDATE', N'U') IS NOT NULL + DELETE FROM TBDD_VERSION_USER_UPDATE WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBDD_VERSION_USER_UPDATE_PATH', N'U') IS NOT NULL + DELETE FROM TBDD_VERSION_USER_UPDATE_PATH WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBDD_USER_LOGIN_OUT', N'U') IS NOT NULL + DELETE FROM TBDD_USER_LOGIN_OUT WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBDD_USER_MODULE_LOG_IN', N'U') IS NOT NULL + DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = @pUSER_ID + + -- PROCESS MANAGER + IF OBJECT_ID(N'dbo.TBPM_PROFILE_USER', N'U') IS NOT NULL + DELETE FROM TBPM_PROFILE_USER WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBPMO_FOLDERWATCH_USER', N'U') IS NOT NULL + DELETE FROM TBPMO_FOLDERWATCH_USER WHERE USER_ID = @pUSER_ID + + -- GLOBAL INDEXER + IF OBJECT_ID(N'dbo.TBGI_FOLDERWATCH_USER', N'U') IS NOT NULL + DELETE FROM TBGI_FOLDERWATCH_USER WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBHOTKEY_USER_PROFILE', N'U') IS NOT NULL + DELETE FROM TBHOTKEY_USER_PROFILE WHERE USER_ID = @pUSER_ID + -- CLIPBOARD WATCHER + IF OBJECT_ID(N'dbo.TBCW_USER_PROFILE', N'U') IS NOT NULL + DELETE FROM TBCW_USER_PROFILE WHERE USER_ID = @pUSER_ID + + --_ADDI + IF OBJECT_ID(N'dbo.TBPMO_CONSTRUCTOR_USER', N'U') IS NOT NULL + DELETE FROM TBPMO_CONSTRUCTOR_USER WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBPMO_USER_CONSTR_VIEW_TYPE', N'U') IS NOT NULL + DELETE FROM TBPMO_USER_CONSTR_VIEW_TYPE WHERE USER_ID = @pUSER_ID + + -- FINALLY + DELETE FROM TBDD_USER WHERE GUID = @pUSER_ID + + RETURN 0 +END TRY +BEGIN CATCH + PRINT 'FEHLER IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + ' - ZEILE: ' + CONVERT(VARCHAR(10),ERROR_LINE()) + + ' - FEHLER-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) + RETURN -1 +END CATCH +GO + +CREATE PROCEDURE [dbo].[PRDD_USER_REFRESH_WM_ID] +AS +DECLARE + @GUID INTEGER, + @USERNAME VARCHAR(500) + +DECLARE c_REDO CURSOR FOR + select GUID,USERNAME from TBDD_USER + OPEN c_REDO + FETCH NEXT FROM c_REDO INTO @GUID,@USERNAME + WHILE @@FETCH_STATUS = 0 + BEGIN + DECLARE @ECM_USR_ID INTEGER + + SELECT @ECM_USR_ID = [dwUserID] FROM @WINDREAM_DB.[dbo].[UserInfo] where UPPER(szUserName) = UPPER(@USERNAME) + IF @ECM_USR_ID IS NOT NULL + UPDATE TBDD_USER SET USERID_FK_INT_ECM = @ECM_USR_ID WHERE GUID = @GUID + + FETCH NEXT FROM c_REDO INTO @GUID,@USERNAME + END +CLOSE c_REDO +DEALLOCATE c_REDO +GO +CREATE TABLE TBDD_EXTATTRIBUTES_MATCHING +( + GUID INTEGER IDENTITY(1,1), + EXT_ATTRIBUTE VARCHAR(250), + TBDD_USER_COLUMN VARCHAR(150), + FB_SYS_KEY VARCHAR(150) DEFAULT '' + CONSTRAINT PK_TBAD_EXTATTRIBUTES_MATCHING_GUID PRIMARY KEY(GUID) +) +GO + +--###### VIEWS ##### +CREATE VIEW VWDD_LOGIN_USER_HISTORY AS +SELECT TOP (5000) + T.GUID, + T.MODULE, + T1.USERNAME, + T1.NAME, + T1.PRENAME, + T1.GUID as USER_ID, + T.CLIENT_ID, + T2.CLIENT_NAME, + T.LOGIN, + T.LOGOUT, + T.VERSION_CLIENT, + T.MACHINE_NAME +FROM + TBDD_USER_LOGIN_OUT T, + TBDD_USER T1, + TBDD_CLIENT T2 +WHERE + T.USER_ID = T1.GUID + AND T.CLIENT_ID = T2.GUID +ORDER BY GUID DESC +GO +CREATE VIEW VWDD_USER2GROUP AS +SELECT TOP 100 PERCENT T.GUID, T.USERNAME, T2.GUID as GROUP_ID, T2.NAME, T2.COMMENT +FROM TBDD_USER T, TBDD_GROUPS_USER T1, TBDD_GROUPS T2 +WHERE + T.GUID = T1.USER_ID AND + T1.GROUP_ID = T2.GUID +ORDER BY T.USERNAME +GO +CREATE VIEW VWDDINDEX_MAN +AS +SELECT TOP 2000 + T.GUID, + T.NAME INDEXNAME, + T.WD_INDEX, + T.COMMENT, + T.DATATYPE, + T.DOK_ID, + T1.BEZEICHNUNG DOKUMENTART, + T1.KURZNAME, + T.SUGGESTION, + T.CONNECTION_ID, + T2.BEZEICHNUNG CONNECTION, + T2.SQL_PROVIDER, + T2.SERVER, + T2.DATENBANK, + T2.USERNAME, + T2.PASSWORD, + T.SQL_RESULT, + T.SQL_CHECK, + T.OPTIONAL, + T.SAVE_VALUE, + T.DEFAULT_VALUE, + T.MULTISELECT, + T.SEQUENCE + +FROM + TBDD_INDEX_MAN T + INNER JOIN TBDD_DOKUMENTART T1 ON T.DOK_ID = T1.GUID AND T1.AKTIV = 1 + LEFT JOIN TBDD_CONNECTION T2 ON T.CONNECTION_ID = T2.GUID AND T2.AKTIV = 1 +WHERE + T.ACTIVE = 1 +ORDER BY + T.DOK_ID, + T.GUID +GO + +CREATE VIEW [dbo].[VWDDINDEX_AUTOM] +AS +SELECT TOP 100 PERCENT + T.GUID, + T.INDEXNAME, + T.COMMENT, + T.DOCTYPE_ID, + T1.BEZEICHNUNG DOKUMENTART, + T1.KURZNAME, + T.CONNECTION_ID, + T2.BEZEICHNUNG CONNECTION, + T2.SQL_PROVIDER, + T2.SERVER, + T2.DATENBANK, + T2.USERNAME, + T2.PASSWORD, + T.SQL_RESULT, + T.SQL_ACTIVE, + T.VALUE, + T.[SEQUENCE] +FROM + TBDD_INDEX_AUTOM T + INNER JOIN TBDD_DOKUMENTART T1 ON T.DOCTYPE_ID = T1.GUID AND T1.AKTIV = 1 + LEFT JOIN TBDD_CONNECTION T2 ON T.CONNECTION_ID = T2.GUID AND T2.AKTIV = 1 +WHERE + T.ACTIVE = 1 +ORDER BY + T.DOCTYPE_ID, + T.GUID + +GO + +CREATE VIEW VWDDINDICES_MAN_AUTO_ACTIVE AS +SELECT TOP 100 PERCENT + DOK_ID AS DOCTYPE_ID, + 'm' + NAME AS NAME +FROM TBDD_INDEX_MAN WHERE ACTIVE = 1 +UNION +SELECT TOP 100 PERCENT + DOCTYPE_ID AS DOCTYPE_ID, + 'a' + INDEXNAME AS NAME +FROM TBDD_INDEX_AUTOM WHERE ACTIVE = 1 +ORDER BY +DOCTYPE_ID +GO +CREATE VIEW VWDD_USER_CLIENT +AS + SELECT + T1.GUID AS CLIENT_ID + ,T1.CLIENT_NAME + ,T.USER_ID + ,T2.USERNAME + FROM + TBDD_CLIENT_USER T + ,TBDD_CLIENT T1 + ,TBDD_USER T2 + WHERE + T1.ACTIVE = 1 + AND T.CLIENT_ID = T1.GUID + AND T.USER_ID = T2.GUID + +GO + +CREATE OR ALTER FUNCTION [dbo].[FNDD_CHECK_USER_MODULE] (@pUSERNAME VARCHAR(100), @pMODULE_SHORT_NAME VARCHAR(10),@pCLIENTID INTEGER) +RETURNS @Table TABLE + (SequentialOrder INT IDENTITY(1, 1), + USER_ID INTEGER, + USER_PRENAME VARCHAR(50), + USER_SURNAME VARCHAR(50), + USER_SHORTNAME VARCHAR(50), + USER_EMAIL VARCHAR(100), + USER_LANGUAGE VARCHAR(10), + USER_DATE_FORMAT VARCHAR(10), + USER_RIGHT_FILE_DEL BIT, + MODULE_ACCESS BIT, + IS_ADMIN BIT, + USERCOUNT_LOGGED_IN INTEGER, + COMMENT VARCHAR(500)) +AS +BEGIN +/* +This function checks all user-relevant relations an +*/ + DECLARE + @RESULT VARCHAR(500), + @USER_ID INTEGER, + @USER_PRENAME VARCHAR(50), + @USER_SURNAME VARCHAR(50), + @USER_SHORTNAME VARCHAR(50), + @USER_EMAIL VARCHAR(50), + @USER_LANGUAGE VARCHAR(10), + @USER_DATE_FORMAT VARCHAR(10), + @IS_IN_MODULE BIT, + @IS_ADMIN BIT, + @USER_RIGHT_FILE_DEL BIT, + @USERCOUNT_LOGGED_IN INTEGER, + @MODULE_NAME VARCHAR(100), + @MODULE_GUID INTEGER, + @USER_GROUPNAME VARCHAR(100), + @ADMIN_GROUPNAME VARCHAR(100) + + SET @USER_ID = 0 + SET @IS_ADMIN = 0 + SET @IS_IN_MODULE = 0 + SET @USERCOUNT_LOGGED_IN = 0 + SET @RESULT = '' + IF @pMODULE_SHORT_NAME = 'PM' + BEGIN + SET @USER_GROUPNAME = 'PM_USER' + SET @ADMIN_GROUPNAME = 'PM_ADMINS' + SEt @USER_RIGHT_FILE_DEL = 0 + END + ELSE IF @pMODULE_SHORT_NAME = 'CW' + BEGIN + SET @USER_GROUPNAME = 'CW_USER' + SET @ADMIN_GROUPNAME = 'CW_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'ADDI' + BEGIN + SET @USER_GROUPNAME = 'ADDI_USER' + SET @ADMIN_GROUPNAME = 'ADDI_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'GLOBIX' + BEGIN + SET @USER_GROUPNAME = 'GLOBIX_USER' + SET @ADMIN_GROUPNAME = 'GLOBIX_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'UM' + BEGIN + SET @USER_GROUPNAME = 'XXXX' + SET @ADMIN_GROUPNAME = 'UM_ADMINS' + END + + SELECT @MODULE_GUID = GUID, @MODULE_NAME = NAME FROM TBDD_MODULES WHERE SHORT_NAME = @pMODULE_SHORT_NAME + + IF NOT EXISTS(SELECT GUID FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER(@pUSERNAME)) + BEGIN + SET @RESULT = 'USER NOT CONFIGURED OR LISTED' + END + ELSE + BEGIN + SELECT @USER_ID = GUID,@USER_PRENAME = PRENAME, + @USER_SURNAME = NAME, @USER_SHORTNAME = SHORTNAME,@USER_EMAIL = EMAIL,@USER_LANGUAGE = LANGUAGE,@USER_DATE_FORMAT = DATE_FORMAT FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER(@pUSERNAME) + SELECT @USERCOUNT_LOGGED_IN = COUNT(*) FROM TBDD_USER_MODULE_LOG_IN WHERE UPPER(MODULE) = UPPER(@MODULE_NAME) AND CLIENT_ID = @pCLIENTID + --CHECK USER ÍS IN MODULE_USER_GROUP + IF EXISTS(select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = @USER_ID AND UPPER(T.NAME) = @USER_GROUPNAME) + BEGIN + SET @IS_IN_MODULE = 1 + SET @RESULT = 'User is part of Group (' + @USER_GROUPNAME + ')' + IF EXISTS(select T.* from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID) + BEGIN + SET @RESULT = @RESULT + '| User is also configured in User-Modules' + select @IS_ADMIN = T.IS_ADMIN,@USER_RIGHT_FILE_DEL = T.RIGHT1 from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID + END + END + ELSE + BEGIN + SET @RESULT = 'User not part of group (' + @USER_GROUPNAME + ')' + IF EXISTS(select T.* from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID) + BEGIN + SET @RESULT = @RESULT + '| BUT User configured in User-Modules' + select @IS_ADMIN = T.IS_ADMIN,@USER_RIGHT_FILE_DEL = T.RIGHT1 from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID + END + END + + IF EXISTS(select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = @USER_ID AND UPPER(T.NAME) = @ADMIN_GROUPNAME) + BEGIN + SET @RESULT = @RESULT + '| User is part of group (' + @ADMIN_GROUPNAME + ')' + SET @IS_ADMIN = 1 + SET @IS_IN_MODULE = 1 + END + + END + +INSERT INTO @Table (USER_ID,USER_PRENAME, USER_SURNAME,USER_SHORTNAME,USER_EMAIL,USER_LANGUAGE,USER_DATE_FORMAT, USER_RIGHT_FILE_DEL, MODULE_ACCESS,IS_ADMIN,USERCOUNT_LOGGED_IN, COMMENT) + VALUES (@USER_ID,@USER_PRENAME,@USER_SURNAME,@USER_SHORTNAME,@USER_EMAIL,@USER_LANGUAGE,@USER_DATE_FORMAT,@USER_RIGHT_FILE_DEL,@IS_IN_MODULE,@IS_ADMIN,@USERCOUNT_LOGGED_IN,@RESULT) + +RETURN +END +GO + +CREATE VIEW VWDD_USER_GROUP_MODULE +AS +select + T1.NAME AS GROUP_NAME, + TU.* +FROM + TBDD_GROUPS_USER T, + TBDD_GROUPS T1, + TBDD_USER TU +WHERE + TU.NAME IS NOT NULL + AND TU.PRENAME IS NOT NULL + AND T1.INTERNAL = 1 + AND T.GROUP_ID = T1.GUID + AND T.USER_ID = TU.GUID + --AND T1.NAME IN ('CW_USER','CW_ADMINS') + +UNION + +SELECT + T2.NAME AS GROUP_MODULE, + TU.* + +FROM + TBDD_USER TU, + TBDD_USER_MODULES T1, + TBDD_MODULES T2 +WHERE + TU.NAME IS NOT NULL + AND TU.PRENAME IS NOT NULL + AND TU.GUID = T1.USER_ID + AND T1.MODULE_ID = T2.GUID +GO +CREATE VIEW VWDD_USER_MODULE_CW +AS +SELECT + DISTINCT GUID , + USERNAME, + NAME, + PRENAME, + EMAIL +FROM + VWDD_USER_GROUP_MODULE +WHERE + GROUP_NAME IN ('Clipboard-Watcher','CW_USER','CW_ADMINS') +GO +CREATE FUNCTION [dbo].[FNDD_GET_USER_FOR_GROUP] (@pGROUP_ID INTEGER,@pONLY_FREE BIT) +RETURNS @Table TABLE + (USER_ID INTEGER, + USER_PRENAME VARCHAR(50), + USER_SURNAME VARCHAR(50), + USER_SHORTNAME VARCHAR(50), + USER_EMAIL VARCHAR(100), + USER_LANGUAGE VARCHAR(10), + COMMENT VARCHAR(500)) +AS +BEGIN + IF @pONLY_FREE = 1 + INSERT INTO @Table (USER_ID,USER_PRENAME,USER_SURNAME,USER_SHORTNAME,USER_EMAIL,USER_LANGUAGE,COMMENT) + select T.GUID, T.PRENAME, T.NAME, T.SHORTNAME, T.EMAIL,T.LANGUAGE, T.COMMENT FROM TBDD_USER T, TBDD_GROUPS_USER T1 WHERE T1.USER_ID = T.GUID AND + T.GUID NOT IN (SELECT USER_ID FROM TBDD_GROUPS_USER WHERE GROUP_ID = @pGROUP_ID) + ELSE + INSERT INTO @Table (USER_ID,USER_PRENAME,USER_SURNAME,USER_SHORTNAME,USER_EMAIL,USER_LANGUAGE,COMMENT) + select T.GUID, T.PRENAME, T.NAME, T.SHORTNAME, T.EMAIL,T.LANGUAGE, T.COMMENT FROM TBDD_USER T, TBDD_GROUPS_USER T1 WHERE T1.USER_ID = T.GUID AND T1.GROUP_ID = @pGROUP_ID + +RETURN +END +GO +CREATE FUNCTION [dbo].[FNDD_GET_USER_FOR_MODULE] (@pMODULE_SHORT_NAME VARCHAR(10),@pCLIENTID INTEGER) +--DECLARE @pMODULE_SHORT_NAME VARCHAR(10),@pCLIENTID INTEGER +--SET @pMODULE_SHORT_NAME = 'PM' +--SET @pCLIENTID = 1 +RETURNS +--DECLARE +@Table TABLE + (SequentialOrder INT IDENTITY(1, 1), + USER_ID INTEGER, + USER_NAME VARCHAR(50), + USER_PRENAME VARCHAR(50), + USER_SURNAME VARCHAR(50), + USER_SHORTNAME VARCHAR(50), + USER_EMAIL VARCHAR(100), + USER_LANGUAGE VARCHAR(10), + USER_RIGHT_FILE_DEL BIT, + MODULE_ACCESS BIT, + IS_ADMIN BIT, + USER_COMMENT VARCHAR(500), + COMMENT VARCHAR(500)) +AS +BEGIN +/* +This function checks all user-relevant relations an +*/ + DECLARE + @RESULT VARCHAR(500), + @USER_ID INTEGER, + @USER_NAME VARCHAR(50), + @USER_PRENAME VARCHAR(50), + @USER_SURNAME VARCHAR(50), + @USER_SHORTNAME VARCHAR(50), + @USER_EMAIL VARCHAR(50), + @USER_LANGUAGE VARCHAR(10), + @IS_IN_MODULE BIT, + @IS_ADMIN BIT, + @USER_RIGHT_FILE_DEL BIT, + @MODULE_NAME VARCHAR(100), + @MODULE_GUID INTEGER, + @USER_GROUPNAME VARCHAR(100), + @ADMIN_GROUPNAME VARCHAR(100), + @USER_COMMENT VARCHAR(500) + + IF @pMODULE_SHORT_NAME = 'PM' + BEGIN + SET @USER_GROUPNAME = 'PM_USER' + SET @ADMIN_GROUPNAME = 'PM_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'CW' + BEGIN + SET @USER_GROUPNAME = 'CW_USER' + SET @ADMIN_GROUPNAME = 'CW_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'ADDI' + BEGIN + SET @USER_GROUPNAME = 'ADDI_USER' + SET @ADMIN_GROUPNAME = 'ADDI_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'GLOBIX' + BEGIN + SET @USER_GROUPNAME = 'GLOBIX_USER' + SET @ADMIN_GROUPNAME = 'GLOBIX_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'UM' + BEGIN + SET @USER_GROUPNAME = 'XXXX' + SET @ADMIN_GROUPNAME = 'UM_ADMINS' + END + SELECT @MODULE_GUID = GUID, @MODULE_NAME = NAME FROM TBDD_MODULES WHERE SHORT_NAME = @pMODULE_SHORT_NAME + + DECLARE cursor_user CURSOR FOR + select GUID, ISNULL(PRENAME,'no prename'), ISNULL(NAME,'no name'), ISNULL(SHORTNAME,'no shortname'), ISNULL(EMAIL,'no email'), LANGUAGE,USERNAME,COMMENT from TBDD_USER + OPEN cursor_user + FETCH NEXT FROM cursor_user INTO @USER_ID,@USER_PRENAME,@USER_SURNAME,@USER_SHORTNAME,@USER_EMAIL,@USER_LANGUAGE,@USER_NAME,@USER_COMMENT + WHILE @@FETCH_STATUS = 0 + BEGIN + SET @IS_ADMIN = 0 + SET @IS_IN_MODULE = 0 + SET @RESULT = '' + --CHECK USER IS IN MODULE_USER_GROUP + IF EXISTS(select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = @USER_ID AND UPPER(T.NAME) = @USER_GROUPNAME) + BEGIN + SET @IS_IN_MODULE = 1 + SET @RESULT = 'User is part of Group (' + @USER_GROUPNAME + ')' + IF EXISTS(select T.* from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID) + BEGIN + SET @RESULT = @RESULT + '| User is also configured in User-Modules (Unnecessary)' + select @IS_ADMIN = T.IS_ADMIN,@USER_RIGHT_FILE_DEL = T.RIGHT1 from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID + + END + END + ELSE + BEGIN + SET @RESULT = 'User <' + CONVERT(VARCHAR(10),@USER_ID) + ' - ' + @USER_NAME + '> not part of group (' + @USER_GROUPNAME + ')' + IF EXISTS(select T.* from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID) + BEGIN + SET @RESULT = @RESULT + '| BUT User configured in User-Modules' + select @IS_ADMIN = T.IS_ADMIN,@USER_RIGHT_FILE_DEL = T.RIGHT1 from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID + SET @IS_IN_MODULE = 1 + END + END + + IF EXISTS(select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = @USER_ID AND UPPER(T.NAME) = @ADMIN_GROUPNAME) + BEGIN + SET @RESULT = @RESULT + '| User is part of group (' + @ADMIN_GROUPNAME + ')' + SET @IS_ADMIN = 1 + SET @IS_IN_MODULE = 1 + END + --PRINT @RESULT + IF @IS_IN_MODULE = 1 + INSERT INTO @Table (USER_ID,USER_NAME, USER_PRENAME, USER_SURNAME,USER_SHORTNAME,USER_EMAIL,USER_LANGUAGE, USER_RIGHT_FILE_DEL, MODULE_ACCESS,IS_ADMIN,USER_COMMENT,COMMENT) + VALUES (@USER_ID,@USER_NAME,@USER_PRENAME,@USER_SURNAME,@USER_SHORTNAME,@USER_EMAIL,@USER_LANGUAGE,@USER_RIGHT_FILE_DEL,@IS_IN_MODULE,@IS_ADMIN,@USER_COMMENT,@RESULT) + FETCH NEXT FROM cursor_user INTO @USER_ID,@USER_PRENAME,@USER_SURNAME,@USER_SHORTNAME,@USER_EMAIL,@USER_LANGUAGE,@USER_NAME,@USER_COMMENT + END + CLOSE cursor_user + DEALLOCATE cursor_user +RETURN +END +GO + +UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.0' +GO +CREATE VIEW [dbo].[VWDD_WM_ACCESS_RIGHTS_USER] AS +SELECT AR.dwObjectID, + AR.dwUserOrGROUPID, + AR.dwAccessRight, + AR.dwObjectDBID +FROM @WINDREAM_DB.dbo.AccessRight AR LEFT JOIN @WINDREAM_DB.dbo.UserGroup UG ON AR.dwUserOrGroupID = UG.dwGroupID + INNER JOIN TBDD_USER TU ON AR.dwUserOrGroupID = TU.USERID_FK_INT_ECM +WHERE UG.dwUserOrGroupID IS NULL +GO + +CREATE VIEW [dbo].[VWDD_WM_ACCESS_RIGHTS_GROUP] AS +SELECT AR.dwObjectID, + UG.dwUserOrGROUPID, + AR.dwAccessRight, + AR.dwObjectDBID +FROM @WINDREAM_DB.dbo.AccessRight AR LEFT JOIN @WINDREAM_DB.dbo.UserGroup UG ON AR.dwUserOrGroupID = UG.dwGroupID + INNER JOIN TBDD_USER TU ON UG.dwUserOrGroupID = TU.USERID_FK_INT_ECM +WHERE UG.dwUserOrGroupID IS NOT NULL +GO + +CREATE VIEW [dbo].[VWDD_WM_ACCESS_RIGHTS] AS +SELECT ARU.dwObjectID, + ARU.dwUserOrGROUPID, + ARU.dwAccessRight, + ARU.dwObjectDBID +FROM VWDD_WM_ACCESS_RIGHTS_USER ARU UNION +SELECT ARG.dwObjectID, + ARG.dwUserOrGROUPID, + ARG.dwAccessRight, + ARG.dwObjectDBID +FROM VWDD_WM_ACCESS_RIGHTS_GROUP ARG +GO + +CREATE VIEW [dbo].[VWDD_CUST_USER_LAST30Days] as + SELECT DISTINCT USER_ID + --Count(USER_ID), MONTH() + FROM TBDD_USER_LOGIN_OUT WHERE UPPER(MODULE) = UPPER('Process-Manager') and DATEDIFF(DAY,LOGIN,GETDATE()) <= 90 +GO +--############################################################################################################################################################ +--PROCESS MANAGER AKA TASK-FLOW +--############################################################################################################################################################ + +UPDATE TBDD_MODULES SET DB_VERSION = '2.2.1.1' where NAME = 'Process-Manager' +GO +INSERT INTO TBDD_USER_MODULES (USER_ID,MODULE_ID,IS_ADMIN) SELECT GUID,(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'PM'),1 FROM TBDD_USER where USERNAME IN (SELECT USR_NAME FROM TBIMPORT_USER); +INSERT INTO TBDD_CLIENT_USER (USER_ID,CLIENT_ID) SELECT GUID,1 FROM TBDD_USER WHERE GUID NOT IN (SELECT USER_ID FROM TBDD_CLIENT_USER WHERE CLIENT_ID = 1); +INSERT INTO TBDD_GROUPS_USER (USER_ID,GROUP_ID) + SELECT GUID,(SELECT GUID FROM TBDD_GROUPS WHERE NAME = 'PM_ADMINS') FROM TBDD_USER WHERE USERNAME IN (SELECT USR_NAME FROM TBIMPORT_USER) +GO +CREATE TABLE TBPM_KONFIGURATION +( + GUID TINYINT, + LIZENZEN VARCHAR(2000), + INTERVALL_CKECK_NO_OF_FILES smallint NOT NULL DEFAULT 2, + VEKTOR_DELIMITER VARCHAR(1) NOT NULL DEFAULT '~', + EMAIL_ACTIVE BIT NOT NULL DEFAULT 0, + EMAIL_FROM VARCHAR(50), + EMAIL_SMTP VARCHAR(50), + EMAIL_USER VARCHAR(50), + EMAIL_PW VARCHAR(50), + EMAIL_REMINDER_HEADER VARCHAR(250), + EMAIL_REMINDER_FOOTER VARCHAR(250), + ADMIN_PW VARCHAR(100) NOT NULL DEFAULT 'ZGQ=', + ADMIN_SECURITY BIT NOT NULL DEFAULT 0, + SQL_PROFILE_MAIN_VIEW VARCHAR(MAX)NOT NULL DEFAULT '', + [SERVICE_SCHEDULE] VARCHAR(100) NOT NULL DEFAULT '07-18;1111100', + [SERVICE_IDXNAME_DOCID] VARCHAR(50) NOT NULL DEFAULT 'Dokument-ID', + [SERVICE_WMDRIVE_LETTER] VARCHAR(1) NOT NULL DEFAULT 'W', + [SERVICE_IDXNAME_CREATED] VARCHAR(50) NOT NULL DEFAULT 'DMS erstellt', + [SERVICE_LOG_ERRORS_ONLY] BIT NOT NULL DEFAULT 1, + WM_REL_PATH VARCHAR(100) NOT NULL DEFAULT '\\windream\objects', + ERFASSTWER VARCHAR(50) DEFAULT 'PER DMSLite' NOT NULL, + ERSTELLTWER VARCHAR(50) DEFAULT 'DMSLite-Admin' NOT NULL, + ERSTELLTWANN DATETIME DEFAULT GETDATE() NOT NULL, + GEAENDERTWER VARCHAR(50), + GEAENDERTWANN DATETIME, + CONSTRAINT PK_TBPM_KONFIGURATION_GUID PRIMARY KEY(GUID), + CONSTRAINT CH_TBPM_KONFIGURATION_GUID CHECK(GUID = 1) +) +GO +------------------------------------------------------------------------------ +CREATE TRIGGER TBPM_KONFIGURATION_AFT_UPD ON TBPM_KONFIGURATION +FOR UPDATE +AS + UPDATE TBPM_KONFIGURATION SET GEAENDERTWANN = GETDATE() FROM INSERTED WHERE TBPM_KONFIGURATION.GUID = INSERTED.GUID +GO + +INSERT INTO TBPM_KONFIGURATION(GUID,LIZENZEN,EMAIL_REMINDER_HEADER,EMAIL_REMINDER_FOOTER) +VALUES +(1,'Y/R9cI8qEID774g/fqXzkrCdW5bhcB62jsBmRgJx2rI=','Der Process-Manager informiert Sie hiermit über nicht erledigte Dokumentenprozesse:

','

Bitte starten Sie Ihren Process-Manager und bearbeiten die entsprechenden Prozesse.
Vielen Dank.') +GO +-------------------------------------------------------------------------------- +CREATE TABLE TBPM_TYPE +( +GUID SMALLINT NOT NULL IDENTITY (1, 1), +BEZEICHNUNG VARCHAR(100) NOT NULL UNIQUE, +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, + +CONSTRAINT PK_TBPM_TYPE_GUID PRIMARY KEY (GUID) +) +GO +INSERT INTO TBPM_TYPE(BEZEICHNUNG) VALUES ('Metadata based') +GO +INSERT INTO TBPM_TYPE(BEZEICHNUNG) VALUES ('Serially') +GO +CREATE TRIGGER TBPM_TYPE_AFT_UPD ON TBPM_TYPE +FOR UPDATE +AS + UPDATE TBPM_TYPE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_TYPE.GUID = INSERTED.GUID +GO +CREATE TABLE TBPM_PROFILE +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +NAME VARCHAR(100) NOT NULL UNIQUE, +TITLE VARCHAR(150) NOT NULL DEFAULT 'DEFAULT-TITLE', +WD_OBJECTTYPE VARCHAR(200) NOT NULL, +PRIORITY INTEGER NOT NULL DEFAULT 1, +DESCRIPTION VARCHAR(250) , +TYPE SMALLINT NOT NULL, +DISPLAY_MODE VARCHAR(20) NOT NULL DEFAULT 'Overview and Detail', +LOG_INDEX VARCHAR(50) NOT NULL DEFAULT '', +IN_WORK BIT NOT NULL DEFAULT 0, +ACTIVE BIT NOT NULL DEFAULT 0, +WD_SEARCH NVARCHAR(MAX) NOT NULL, +PM_VEKTOR_INDEX VARCHAR(50) NOT NULL DEFAULT '', +NO_OF_DOCUMENTS INTEGER NOT NULL DEFAULT 0, +FINAL_PROFILE BIT NOT NULL DEFAULT 0, +FINAL_TEXT VARCHAR(250), +MOVE2FOLDER NVARCHAR(1000), +SORT_BY_LATEST BIT NOT NULL DEFAULT 0, +WORK_HISTORY_ENTRY VARCHAR(500), +ANNOTATE_ALL_WORK_HISTORY_ENTRIES BIT NOT NULL DEFAULT 0, +ANNOTATE_WORK_HISTORY_ENTRY BIT NOT NULL DEFAULT 0, +SQL_VIEW NVARCHAR(MAX) NOT NULL DEFAULT '', +SQL_PROFILE_MAIN_VIEW NVARCHAR(MAX) NOT NULL DEFAULT '', +SQL_GROUP_COLOR NVARCHAR(MAX) NOT NULL DEFAULT '', +SQL_GROUP_TEXT NVARCHAR(MAX) NOT NULL DEFAULT '', +SQL_BTN_FINISH NVARCHAR(MAX) NOT NULL DEFAULT '', +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBPM_PROFILE_GUID PRIMARY KEY (GUID), +CONSTRAINT FK_TBPM_PROFILE_TYPE FOREIGN KEY (TYPE) REFERENCES TBPM_TYPE (GUID) +) +GO +--ALTER TABLE dbo.TBPM_PROFILE WITH NOCHECK +--ADD CONSTRAINT FK_TBPM_PROFILE_TYPE FOREIGN KEY (TYPE) REFERENCES TBPM_TYPE (GUID) ; + +CREATE TRIGGER TBPM_PROFILE_AFT_UPD ON TBPM_PROFILE +FOR UPDATE +AS + UPDATE TBPM_PROFILE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE.GUID = INSERTED.GUID +GO +------------------------------------------------------------------------------ +CREATE TABLE TBPM_PROFILE_FILES +( + GUID INTEGER IDENTITY(1,1), + DOC_ID BIGINT NOT NULL DEFAULT 0, + PROFIL_ID INTEGER NOT NULL, + FILE_PATH VARCHAR(1000), + EDIT BIT NOT NULL DEFAULT 0, + DMS_ERSTELLT_DATE DATE, + IN_WORK BIT NOT NULL DEFAULT 0, + IN_WORK_WHEN DATETIME, + WORK_USER VARCHAR(100), + ACTIVE BIT NOT NULL DEFAULT 0, + REFRESHED BIT NOT NULL DEFAULT 1, + REFRESHED_WHEN DATETIME, + ERSTELLTWER VARCHAR(50) DEFAULT 'PM_REFRESH_MANAGER' NOT NULL, + ERSTELLTWANN DATETIME DEFAULT GETDATE() NOT NULL, + CONSTRAINT PK_TBPM_PROFILE_FILES_GUID PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_PROFILE_FILES_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TABLE TBPM_PROFILE_FILES_TEMP +( + GUID INTEGER IDENTITY(1,1), + DocID BIGINT NOT NULL DEFAULT 0, + PROFIL_ID INTEGER NOT NULL, + FILE_PATH VARCHAR(1000), + ADDED_WHEN DATETIME DEFAULT GETDATE() NOT NULL +) +GO +------------------------------------------------------------------------------ + +CREATE TABLE TBPM_SERIELL_DOC +( + GUID BIGINT IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + OBJ_ID BIGINT NOT NULL, + WF_FINISHED DATETIME, + ADDED_WHO VARCHAR(100) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBPM_SERIELL_DOC PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_SERIELL_DOC_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TRIGGER TBPM_SERIELL_DOC_AFT_UPD ON TBPM_SERIELL_DOC +FOR UPDATE +AS + UPDATE TBPM_SERIELL_DOC SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_SERIELL_DOC.GUID = INSERTED.GUID +GO + +CREATE TABLE TBPM_PROFILE_SERIELL_PARTIES +( + GUID BIGINT IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + ENTITY_TYPE VARCHAR(50) NOT NULL, + USER_OR_GROUP_ID INTEGER NOT NULL, + CRITERIA_NEXT_STEP VARCHAR(500), + SEQUENCE TINYINT NOT NULL DEFAULT 0, + ADDED_WHO VARCHAR(50) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBPM_PROFILE_SERIELL_PARTIES PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_PROFILE_SERIELL_PARTIES_PROFIL_ID FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TRIGGER TBPM_PROFILE_SERIELL_PARTIES_AFT_UPD ON TBPM_PROFILE_SERIELL_PARTIES +FOR UPDATE +AS + UPDATE TBPM_PROFILE_SERIELL_PARTIES SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE_SERIELL_PARTIES.GUID = INSERTED.GUID +GO + +CREATE TABLE TBPM_SERIELL_PARTIES_STATE +( + GUID BIGINT IDENTITY(1,1), + SPID_ID BIGINT NOT NULL, + ENTITY_TYPE VARCHAR(50) NOT NULL, + USER_OR_GROUP_ID INTEGER NOT NULL, + STATE_DESC VARCHAR(500) NOT NULL, + COMMENT VARCHAR(500), + ADDED_WHO VARCHAR(50) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME , + CONSTRAINT PK_TBPM_SP_STATE PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_SP_STATE_SPID_ID FOREIGN KEY (SPID_ID) REFERENCES TBPM_PROFILE_SERIELL_PARTIES (GUID) +) +GO +CREATE TRIGGER TBPM_SERIELL_PARTIES_STATE_AFT_UPD ON TBPM_SERIELL_PARTIES_STATE +FOR UPDATE +AS + UPDATE TBPM_SERIELL_PARTIES_STATE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_SERIELL_PARTIES_STATE.GUID = INSERTED.GUID +GO +CREATE TABLE TBPM_FILES_USER_NOT_INDEXED +( + USR_NAME VARCHAR(50), + PROFIL_ID INTEGER, + DocGUID BigInt NOT NULL DEFAULT 0, + FILE_PATH VARCHAR(500), + UNIQUE (USR_NAME,PROFIL_ID,FILE_PATH) +) +GO +------------------------------------------------------------------------------ +CREATE TABLE TBPM_FILES_WORK_HISTORY +( + GUID INTEGER IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + DOC_ID INTEGER NOT NULL DEFAULT 0, + WORKED_BY VARCHAR(100) NOT NULL, + WORKED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + WORKED_WHERE VARCHAR(100) NOT NULL, + STATUS_COMMENT VARCHAR(500), + COMMENT VARCHAR(MAX), + CONSTRAINT [PK_TBPM_FILES_WORK_HISTORY] PRIMARY KEY (GUID) +) +GO +------------------------------------------------------------------------------ +--CREATE TABLE TBPM_ERROR_LOG +--( +-- GUID INT NOT NULL IDENTITY (1, 1), +-- PROFIL_ID INTEGER NOT NULL, +-- ERROR_MSG VARCHAR(1000) NOT NULL, +-- ADDED_WHO VARCHAR(50) NOT NULL, +-- ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), +-- MACHINE_NAME VARCHAR(50), +-- CONSTRAINT PK_TBPM_ERROR_LOG_GUID PRIMARY KEY(GUID), +-- CONSTRAINT FK_TBPM_ERROR_LOG_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +--) +--GO +CREATE TABLE TBPM_PROFILE_CONTROLS +( + GUID INTEGER NOT NULL IDENTITY (1, 1), + PROFIL_ID INTEGER NOT NULL, + NAME VARCHAR(100) NOT NULL, + CTRL_TYPE VARCHAR(10) NOT NULL, --TXT,LBL,COMBO,DTP + CTRL_TEXT VARCHAR(100) NOT NULL DEFAULT 'CTRL TEXT', + X_LOC FLOAT NOT NULL, + Y_LOC FLOAT NOT NULL, + HEIGHT SMALLINT NOT NULL DEFAULT 25, + WIDTH SMALLINT NOT NULL DEFAULT 200, + INDEX_NAME VARCHAR(100), + TYP VARCHAR(50), + [VALIDATION] BIT NOT NULL DEFAULT 0, + CHOICE_LIST VARCHAR(50), + CONNECTION_ID SMALLINT, + DEFAULT_VALUE VARCHAR(100), + MULTISELECT BIT DEFAULT 0 NOT NULL, + VKT_ADD_ITEM BIT DEFAULT 0 NOT NULL, + VKT_PREVENT_MULTIPLE_VALUES BIT DEFAULT 0 NOT NULL, + IMAGE_CONTROL VARBINARY(MAX), + BACKGROUND_COLOR VARCHAR(50), + SQL_UEBERPRUEFUNG NVARCHAR(MAX) DEFAULT '', + SQL2 NVARCHAR(MAX), + SQL_ENABLE NVARCHAR(MAX), + SQL_ENABLE_ON_LOAD NVARCHAR(MAX), + SQL_ENABLE_ON_LOAD_CONID TINYINT, + OVERWRITE_DATA BIT NOT NULL DEFAULT 0, + SET_CONTROL_DATA NVARCHAR(MAX), + REGEX_MATCH NVARCHAR(1000), + REGEX_MESSAGE_DE VARCHAR(1000) NOT NULL DEFAULT '', + REGEX_MESSAGE_EN VARCHAR(1000) NOT NULL DEFAULT '', + [READ_ONLY] BIT NOT NULL DEFAULT 0, + LOAD_IDX_VALUE BIT NOT NULL DEFAULT 1, + CONTROL_ACTIVE BIT NOT NULL DEFAULT 1, + FONT_STYLE smallint, + FONT_SIZE smallint, + FONT_FAMILY varchar(50), + FONT_COLOR bigint, + [TABLE_ORDER_COLUMN] VARCHAR(250) NOT NULL DEFAULT (''), + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBPM_PROFILE_CONTROLS_GUID PRIMARY KEY (GUID), + CONSTRAINT FK_TBPM_PROFILE_CONTROLS_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID), + CONSTRAINT UQ_TBPM_PROFILE_CONTROLS UNIQUE(PROFIL_ID,NAME) +) +GO +CREATE TRIGGER TBPM_PROFILE_CONTROLS_AFT_UPD ON TBPM_PROFILE_CONTROLS +FOR UPDATE +AS + BEGIN + DECLARE @NAME VARCHAR(50),@WHO VARCHAR(100), @CTRL_TYPE VARCHAR(10),@CTRL_TEXT VARCHAR(100),@CTRL_CONFIG_TITLE VARCHAR(100),@OLD_CTRL_NAME VARCHAR(100) + SELECT @NAME = [NAME], @WHO = CHANGED_WHO, @CTRL_TYPE = CTRL_TYPE, @CTRL_TEXT = CTRL_TEXT FROM inserted + SELECT @OLD_CTRL_NAME = [NAME] FROM DELETED + IF (UPDATE (NAME) OR UPDATE (CTRL_TEXT)) + IF @CTRL_TYPE in ('LBL','CHK','BUTTON') + BEGIN + SET @CTRL_CONFIG_TITLE = @CTRL_TYPE + '.' + @NAME + + --IF NOT @OLD_CTRL_NAME <> @NAME + BEGIN + PRINT '@CTRL_CONFIG_TITLE:' + @CTRL_CONFIG_TITLE + IF NOT LEN(@WHO) > 0 + SET @WHO = 'DD Automatic' + DECLARE @LANG_CODECONF VARCHAR(5) + DECLARE cursorLanguage CURSOR FOR + select LANG_CODE from TBDD_GUI_LANGUAGE + OPEN cursorLanguage + FETCH NEXT FROM cursorLanguage INTO @LANG_CODECONF + WHILE @@FETCH_STATUS = 0 + BEGIN + PRINT 'Checking language: ' + @LANG_CODECONF + IF NOT EXISTS(SELECT GUID FROM TBDD_GUI_LANGUAGE_PHRASE WHERE MODULE = 'PM' AND CAPT_TYPE = 'Caption Validator Control' + AND UPPER(TITLE) = UPPER(@CTRL_CONFIG_TITLE) AND LANGUAGE = @LANG_CODECONF AND OBJ_NAME = 'frmValidator') + INSERT INTO TBDD_GUI_LANGUAGE_PHRASE (MODULE,TITLE, LANGUAGE, CAPT_TYPE,STRING1,STRING2,ADDED_WHO, OBJ_NAME) + VALUES ('PM',@CTRL_CONFIG_TITLE ,@LANG_CODECONF,'Caption Validator Control',@CTRL_TEXT,'',@WHO,'frmValidator') + ELSE + PRINT 'SEEMS 2 EXIST: ' + @CTRL_CONFIG_TITLE + FETCH NEXT FROM cursorLanguage INTO @LANG_CODECONF + END + CLOSE cursorLanguage + DEALLOCATE cursorLanguage + END + + + + + + + END + + + UPDATE TBPM_PROFILE_CONTROLS SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE_CONTROLS.GUID = INSERTED.GUID + END +GO +CREATE TABLE TBPM_CONTROL_TABLE +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +CONTROL_ID INTEGER NOT NULL, +SPALTENNAME VARCHAR(100) NOT NULL, +SPALTEN_HEADER VARCHAR(100) NOT NULL, +SPALTENBREITE INTEGER NOT NULL, +[VALIDATION] BIT NOT NULL DEFAULT 0, +CHOICE_LIST VARCHAR(50), +CONNECTION_ID SMALLINT, +SQL_COMMAND NVARCHAR(MAX), +REGEX_MESSAGE_DE VARCHAR(1000) NOT NULL DEFAULT '', +REGEX_MESSAGE_EN VARCHAR(1000) NOT NULL DEFAULT '', +REGEX_MATCH VARCHAR(1000) NOT NULL DEFAULT '', +[READ_ONLY] BIT NOT NULL DEFAULT 0, +LOAD_IDX_VALUE BIT NOT NULL DEFAULT 1, +LOAD_AFT_LOAD_CONTROL BIT NOT NULL DEFAULT 0, +[SEQUENCE] INTEGER NOT NULL DEFAULT 0, +FORMATTYPE VARCHAR(100) NOT NULL DEFAULT '', +FORMATSTRING VARCHAR(10) NOT NULL DEFAULT '', +DEFAULT_VALUE VARCHAR (MAX) NOT NULL DEFAULT '', +ADVANCED_LOOKUP BIT NOT NULL DEFAULT 0, +[SUMMARY_FUNCTION] VARCHAR(20) NOT NULL DEFAULT ('NONE'), +[TYPE_COLUMN] VARCHAR(20) NOT NULL DEFAULT ('TEXT'), +LU_CAPTION VARCHAR(150) NOT NULL DEFAULT 'NONE', +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBPM_CONTROL_TABLE_GUID PRIMARY KEY (GUID), +CONSTRAINT FK_TBPM_CONTROL_TABLE_CONTROL FOREIGN KEY (CONTROL_ID) REFERENCES TBPM_PROFILE_CONTROLS (GUID) +) +GO +CREATE TRIGGER TBPM_CONTROL_TABLE_AFT_UPD ON TBPM_CONTROL_TABLE +FOR UPDATE +AS + UPDATE TBPM_CONTROL_TABLE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_CONTROL_TABLE.GUID = INSERTED.GUID +GO +---------------- +CREATE TABLE TBPM_PROFILE_USER +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +PROFIL_ID INTEGER NOT NULL, +USER_ID INTEGER NOT NULL, +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBPM_PROFILE_USER_GUID PRIMARY KEY (GUID), +UNIQUE (PROFIL_ID,USER_ID), +CONSTRAINT FK_TBPM_PROFILE_USER_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID), +CONSTRAINT FK_TBPM_PROFILE_USER_USER FOREIGN KEY (USER_ID) REFERENCES TBDD_USER (GUID), +CONSTRAINT UQ_TBPM_PROFILE_USER UNIQUE (PROFIL_ID,USER_ID) +) +GO +CREATE TRIGGER TBPM_PROFILE_USER_AFT_UPD ON TBPM_PROFILE_USER +FOR UPDATE +AS + UPDATE TBPM_PROFILE_USER SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE_USER.GUID = INSERTED.GUID +GO +CREATE TABLE TBPM_PROFILE_GROUP +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +PROFIL_ID INTEGER NOT NULL, +GROUP_ID INTEGER NOT NULL, +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBPM_PROFILE_GROUP_GUID PRIMARY KEY (GUID), +UNIQUE (PROFIL_ID,GROUP_ID), +CONSTRAINT FK_TBPM_PROFILE_GROUP_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID), +CONSTRAINT FK_TBPM_PROFILE_GROUP_GROUP FOREIGN KEY (GROUP_ID) REFERENCES TBDD_GROUPS (GUID), +CONSTRAINT UQ_TBPM_PROFILE_GROUP UNIQUE (PROFIL_ID,GROUP_ID) +) +GO +CREATE TRIGGER TBPM_PROFILE_GROUP_AFT_UPD ON TBPM_PROFILE_GROUP +FOR UPDATE +AS + UPDATE TBPM_PROFILE_GROUP SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE_GROUP.GUID = INSERTED.GUID +GO +CREATE TABLE TBPM_PROFILE_FINAL_INDEXING +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +PROFIL_ID INTEGER NOT NULL, +CONNECTION_ID SMALLINT NOT NULL DEFAULT 0, +SQL_COMMAND VARCHAR(MAX) NOT NULL DEFAULT '', +INDEXNAME VARCHAR(100) NOT NULL, +VALUE VARCHAR(100) NOT NULL, +ACTIVE BIT NOT NULL DEFAULT 1, +[DESCRIPTION] VARCHAR(MAX) NOT NULL DEFAULT '', +PREVENT_DUPLICATES BIT NOT NULL DEFAULT (0), +ALLOW_NEW_VALUES BIT NOT NULL DEFAULT (0), +IF_VEKTOR_BEHAVIOUR VARCHAR(25) NOT NULL DEFAULT '', +[SEQUENCE] TINYINT NOT NULL DEFAULT 0, +[CONTINUE_INDETERMINED] BIT NOT NULL DEFAULT 0, +ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', +ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBPM_PROFILE_FINAL_INDEXING_GUID PRIMARY KEY (GUID), +CONSTRAINT FK_TBPM_PROFILE_FINAL_INDEXING_PROFILE FOREIGN KEY (PROFIL_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TRIGGER TBPM_PROFILE_FINAL_INDEXING_AFT_UPD ON TBPM_PROFILE_FINAL_INDEXING +FOR UPDATE +AS + UPDATE TBPM_PROFILE_FINAL_INDEXING SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBPM_PROFILE_FINAL_INDEXING.GUID = INSERTED.GUID +GO +CREATE TABLE TBPM_PROFILE_SEARCH +( + GUID INTEGER IDENTITY(1,1), + PROFILE_ID INTEGER NOT NULL, + TYPE VARCHAR(50) NOT NULL DEFAULT 'SQL', + CONN_ID INTEGER NOT NULL DEFAULT '0', + TAB_TITLE VARCHAR(50) NOT NULL DEFAULT 'UndefinedTitle', + LOAD_ON_START bit NOT NULL DEFAULT 1, + TAB_INDEX TINYINT DEFAULT 0 NOT NULL, + SQL_COMMAND VARCHAR(3000) NOT NULL, + RUN_MANUAL BIT DEFAULT 1 NOT NULL, + ACTIVE BIT DEFAULT 0 NOT NULL, + CREATED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + CREATED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBPM_PROFILE_SEARCH PRIMARY KEY(GUID), + CONSTRAINT FK_TBPM_PROFILE_SEARCH_PROFILE_ID FOREIGN KEY (PROFILE_ID) REFERENCES TBPM_PROFILE (GUID) +) +GO +CREATE TABLE TBPM_MAIN_VIEW_GROUPS +( + GUID INTEGER IDENTITY(1,1), + GROUPNAME VARCHAR(100) NOT NULL, + ACTIVE BIT DEFAULT 1 NOT NULL, + CREATED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + CREATED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + CHANGED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBPM_MAIN_VIEW_GROUPS PRIMARY KEY(GUID) +) +GO +CREATE TRIGGER [dbo].[TBPM_MAIN_VIEW_GROUPS_AFT_UPD] ON [dbo].[TBPM_MAIN_VIEW_GROUPS] +FOR UPDATE +AS +BEGIN + UPDATE TBPM_MAIN_VIEW_GROUPS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPM_MAIN_VIEW_GROUPS.GUID = INSERTED.GUID +END +GO +INSERT INTO TBPM_MAIN_VIEW_GROUPS (GROUPNAME) VALUES ('GROUP_TEXT') +GO +CREATE TABLE [dbo].[TBPM_CHART]( + GUID INTEGER IDENTITY(1,1) NOT NULL, + SQL_COMMAND VARCHAR(MAX) NOT NULL, + TYPE_CHART VARCHAR(50) NOT NULL, + ARGUMENT VARCHAR(50) NOT NULL, + [VALUE] VARCHAR(50) NOT NULL, + TITLE VARCHAR(50) NOT NULL DEFAULT '', + ADDED_WHO VARCHAR(50) DEFAULT '', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + GROUP_ID VARCHAR(50) DEFAULT '', +CONSTRAINT PK_TBPM_CHART_GUID PRIMARY KEY (GUID) + +) +GO + +CREATE TABLE TBPM_LOG_DEBUG +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + USERID INTEGER NOT NULL, + LOGMSG VARCHAR(MAX) NOT NULL, + DATE_STR VARCHAR(20) NOT NULL, + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CONSTRAINT PK_TBPM_LOG_DEBUG PRIMARY KEY (GUID) +) +GO +CREATE TABLE TBPM_MONITOR_KONFIG +( + GUID INTEGER NOT NULL, + GRID_TITLE VARCHAR(100) NOT NULL, + GRID_SQL VARCHAR(MAX) NOT NULL, + DEPENDING_GRID INTEGER NOT NULL DEFAULT 0, + COMMENT VARCHAR(500), + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBPM_MONITOR_KONFIG PRIMARY KEY (GUID), + CONSTRAINT UQ_TBPM_MONITOR_KONFIG_TITLE UNIQUE (GRID_TITLE) +) +GO +CREATE TRIGGER TBPM_MONITOR_KONFIG_AFT_UPD ON [dbo].[TBPM_MONITOR_KONFIG] +FOR UPDATE +AS +BEGIN + UPDATE TBPM_MONITOR_KONFIG SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPM_MONITOR_KONFIG.GUID = INSERTED.GUID +END +GO + +CREATE TABLE [dbo].[TBPM_CUST_USER_DOC_JOB]( + [GUID] [int] IDENTITY(1,1) NOT NULL, + [DocID] [bigint] NULL, + [UserID] [int] NULL, + [InWork] [bit] NOT NULL, + [ADDED_WHEN] [datetime] NOT NULL, + [CHANGED_WHEN] [datetime] NULL, + [ProfileID] [int] NOT NULL, + CONSTRAINT [PK_TBPM_CUST_USER_DOC_JOB] 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_TBPM_CUST_USER_DOC_JOB] UNIQUE NONCLUSTERED +( + [DocID] ASC, + [UserID] 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].[TBPM_CUST_USER_DOC_JOB] ADD DEFAULT ((0)) FOR [InWork] +GO + +ALTER TABLE [dbo].[TBPM_CUST_USER_DOC_JOB] ADD DEFAULT (getdate()) FOR [ADDED_WHEN] +GO + +ALTER TABLE [dbo].[TBPM_CUST_USER_DOC_JOB] ADD CONSTRAINT [DF_TBPM_CUST_USER_DOC_JOB_ProfileID] DEFAULT ((0)) FOR [ProfileID] +GO + +CREATE TABLE TBPM_FURTHER_KONFIG_VIEW +( + GUID INTEGER NOT NULL, + GRID_TITLE VARCHAR(100) NOT NULL, + GRID_SQL VARCHAR(MAX) NOT NULL, + DEPENDING_GRID INTEGER NOT NULL DEFAULT 0, + COMMENT VARCHAR(500), + ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', + ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), + CHANGED_WHO VARCHAR(30), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBPM_FURTHER_KONFIG_VIEW PRIMARY KEY (GUID), + CONSTRAINT UQ_TBPM_FURTHER_KONFIG_VIEW_TITLE UNIQUE (GRID_TITLE) +) +GO +CREATE TRIGGER TBPM_FURTHER_KONFIG_VIEW_AFT_UPD ON [dbo].[TBPM_FURTHER_KONFIG_VIEW] +FOR UPDATE +AS +BEGIN + UPDATE TBPM_FURTHER_KONFIG_VIEW SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPM_FURTHER_KONFIG_VIEW.GUID = INSERTED.GUID +END +GO +CREATE TABLE [dbo].[TBPM_DOCWALKOVER]( + [DocID] [bigint] NOT NULL, + [UserID] [int] NOT NULL, + [ADDED_WHEN] [datetime] NOT NULL +) ON [PRIMARY] + +GO +ALTER TABLE [dbo].[TBPM_DOCWALKOVER] ADD CONSTRAINT [DF_TBPM_CUST_DocWalkOver_ADDED_WHEN] DEFAULT (getdate()) FOR [ADDED_WHEN] +GO +CREATE TABLE TBPM_VALIDATION_PROFILE_GROUP_USER +( + GUID BIGINT IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + DocID BIGINT NOT NULL, + UserID INTEGER NOT NULL, + ADDED_WHO VARCHAR(100) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBPM_VALIDATION_PROFILE_GROUP_USER PRIMARY KEY(GUID), + CONSTRAINT UQ_TBPM_VALIDATION_PROFILE_GROUP_USER UNIQUE (PROFIL_ID,DocID,UserID) +) +GO +--############################################ +--##########PROCEDURES######################## +--############################################ +-- ============================================= +-- Author: Digital Data MS +-- Created: 11.06.2021 +-- Description: Gets the next DocumentID +-- Changed: 05.05.2022 Insert only when <> 0 +-- ============================================= +CREATE PROCEDURE [dbo].[PRPM_GET_NEXT_DOC_INFO] +( + @PROFIL_ID Integer, + @DocID BigInt, + @UserID Integer +) +AS +BEGIN + IF @DocID <> 0 + BEGIN + INSERT INTO TBPM_DOCWALKOVER (DocID,UserID) VALUES (@DocID,@UserID); + END + + SELECT GUID as DocGUID, DOC_ID as DocID + ,(SELECT COUNT(GUID) FROM TBPM_VALIDATION_PROFILE_GROUP_USER WHERE UserID = @UserID) - (SELECT COUNT(DocID) + 1 FROM TBPM_DOCWALKOVER WHERE UserID = @UserID) REMAINING + FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = @PROFIL_ID AND DOC_ID = ( + SELECT MIN(DocID) FROM TBPM_VALIDATION_PROFILE_GROUP_USER WHERE UserID = @UserID AND DocID not in (SELECT DISTINCT DocID FROM TBPM_DOCWALKOVER WHERE UserID = @UserID)) + + RETURN +END +GO +CREATE PROCEDURE [dbo].[PRPM_COPY_PROFILE] (@pProfileID as Integer,@pAddedWho Varchar(100)) +AS + DECLARE @NEWPROFILE_ID INTEGER + INSERT INTO [dbo].[TBPM_PROFILE] + ([NAME] + ,[TITLE] + ,[WD_OBJECTTYPE] + ,[PRIORITY] + ,[DESCRIPTION] + ,[TYPE] + ,[LOG_INDEX] + ,[IN_WORK] + ,[ACTIVE] + ,[WD_SEARCH] + ,[PM_VEKTOR_INDEX] + ,[NO_OF_DOCUMENTS] + ,[FINAL_PROFILE] + ,[FINAL_TEXT] + ,[MOVE2FOLDER] + ,[SORT_BY_LATEST] + ,[WORK_HISTORY_ENTRY] + ,[ANNOTATE_ALL_WORK_HISTORY_ENTRIES] + ,[ANNOTATE_WORK_HISTORY_ENTRY] + ,[SQL_VIEW] + ,[ADDED_WHO] + ,[DISPLAY_MODE] + ,[SQL_BTN_FINISH]) + SELECT [NAME] + ' - COPY' + ,[TITLE] + ' - COPY' + ,[WD_OBJECTTYPE] + ,[PRIORITY] + ,[DESCRIPTION] + ,[TYPE] + ,[LOG_INDEX] + ,[IN_WORK] + ,0 + ,[WD_SEARCH] + ,[PM_VEKTOR_INDEX] + ,[NO_OF_DOCUMENTS] + ,[FINAL_PROFILE] + ,[FINAL_TEXT] + ,[MOVE2FOLDER] + ,[SORT_BY_LATEST] + ,[WORK_HISTORY_ENTRY] + ,[ANNOTATE_ALL_WORK_HISTORY_ENTRIES] + ,[ANNOTATE_WORK_HISTORY_ENTRY] + ,[SQL_VIEW] + ,@pAddedWho + ,[DISPLAY_MODE] + ,[SQL_BTN_FINISH] FROM TBPM_PROFILE WHERE GUID = @pProfileID; + + SELECT @NEWPROFILE_ID = MAX(GUID) FROM TBPM_PROFILE WHERE ADDED_WHO = @pAddedWho; + + INSERT INTO [dbo].[TBPM_PROFILE_FINAL_INDEXING] + ([PROFIL_ID] + ,[CONNECTION_ID] + ,[SQL_COMMAND] + ,[INDEXNAME] + ,[VALUE] + ,[ACTIVE] + ,[DESCRIPTION] + ,[ADDED_WHO] + ,[PREVENT_DUPLICATES] + ,[ALLOW_NEW_VALUES] + ,[IF_VEKTOR_BEHAVIOUR] + ,[SEQUENCE]) + SELECT + @NEWPROFILE_ID + ,[CONNECTION_ID] + ,[SQL_COMMAND] + ,[INDEXNAME] + ,[VALUE] + ,[ACTIVE] + ,[DESCRIPTION] + ,[ADDED_WHO] + ,[PREVENT_DUPLICATES] + ,[ALLOW_NEW_VALUES] + ,[IF_VEKTOR_BEHAVIOUR] + ,[SEQUENCE] + FROM [TBPM_PROFILE_FINAL_INDEXING] WHERE PROFIL_ID = @pProfileID + + + + + + INSERT INTO [dbo].[TBPM_PROFILE_CONTROLS] + ([PROFIL_ID] + ,[NAME] + ,[CTRL_TYPE] + ,[CTRL_TEXT] + ,[X_LOC] + ,[Y_LOC] + ,[HEIGHT] + ,[WIDTH] + ,[INDEX_NAME] + ,[TYP] + ,[VALIDATION] + ,[CHOICE_LIST] + ,[CONNECTION_ID] + ,[DEFAULT_VALUE] + ,[SQL_UEBERPRUEFUNG] + ,[READ_ONLY] + ,[LOAD_IDX_VALUE] + ,[FONT_STYLE] + ,[FONT_SIZE] + ,[FONT_FAMILY] + ,[FONT_COLOR] + ,[ADDED_WHO] + ,[MULTISELECT] + ,[VKT_ADD_ITEM] + ,[VKT_PREVENT_MULTIPLE_VALUES] + ,[REGEX_MATCH] + ,[REGEX_MESSAGE_DE] + ,[REGEX_MESSAGE_EN] + ,[IMAGE_CONTROL] + ,[SQL2] + ,[SQL_ENABLE] + ,[BACKGROUND_COLOR] + ,[OVERWRITE_DATA] + ,[SET_CONTROL_DATA]) + SELECT @NEWPROFILE_ID + ,[NAME] + ,[CTRL_TYPE] + ,[CTRL_TEXT] + ,[X_LOC] + ,[Y_LOC] + ,[HEIGHT] + ,[WIDTH] + ,[INDEX_NAME] + ,[TYP] + ,[VALIDATION] + ,[CHOICE_LIST] + ,[CONNECTION_ID] + ,[DEFAULT_VALUE] + ,[SQL_UEBERPRUEFUNG] + ,[READ_ONLY] + ,[LOAD_IDX_VALUE] + ,[FONT_STYLE] + ,[FONT_SIZE] + ,[FONT_FAMILY] + ,[FONT_COLOR] + ,@pAddedWho + ,[MULTISELECT] + ,[VKT_ADD_ITEM] + ,[VKT_PREVENT_MULTIPLE_VALUES] + ,[REGEX_MATCH] + ,[REGEX_MESSAGE_DE] + ,[REGEX_MESSAGE_EN] + ,[IMAGE_CONTROL] + ,[SQL2] + ,[SQL_ENABLE] + ,[BACKGROUND_COLOR] + ,[OVERWRITE_DATA] + ,[SET_CONTROL_DATA] FROM [TBPM_PROFILE_CONTROLS] WHERE PROFIL_ID = @pProfileID; + + DECLARE + @OLD_ID INTEGER, + @NEW_ID INTEGER + + DECLARE cursor1 CURSOR FOR + select T.GUID, T1.GUID from TBPM_PROFILE_CONTROLS T,TBPM_PROFILE_CONTROLS T1 WHERE + T.CTRL_TYPE = 'TABLE' and T1.CTRL_TYPE = 'TABLE' AND T.PROFIL_ID = @pProfileID AND T1.PROFIL_ID = @NEWPROFILE_ID AND T.NAME = T1.NAME + OPEN cursor1 + FETCH NEXT FROM cursor1 INTO @OLD_ID,@NEW_ID + WHILE @@FETCH_STATUS = 0 + BEGIN + INSERT INTO [dbo].[TBPM_CONTROL_TABLE] + ([CONTROL_ID] + ,[SPALTENNAME] + ,[SPALTEN_HEADER] + ,[SPALTENBREITE] + ,[VALIDATION] + ,[CHOICE_LIST] + ,[CONNECTION_ID] + ,[SQL_COMMAND] + ,[READ_ONLY] + ,[LOAD_IDX_VALUE] + ,[ADDED_WHO] + ,[REGEX_MESSAGE_DE] + ,[REGEX_MESSAGE_EN] + ,[REGEX_MATCH] + ,[LOAD_AFT_LOAD_CONTROL] + ,[SEQUENCE]) + SELECT @NEW_ID + ,[SPALTENNAME] + ,[SPALTEN_HEADER] + ,[SPALTENBREITE] + ,[VALIDATION] + ,[CHOICE_LIST] + ,[CONNECTION_ID] + ,[SQL_COMMAND] + ,[READ_ONLY] + ,[LOAD_IDX_VALUE] + ,@pAddedWho + ,[REGEX_MESSAGE_DE] + ,[REGEX_MESSAGE_EN] + ,[REGEX_MATCH] + ,[LOAD_AFT_LOAD_CONTROL] + ,[SEQUENCE] FROM [TBPM_CONTROL_TABLE] WHERE CONTROL_ID = @OLD_ID ORDER BY SEQUENCE + + + FETCH NEXT FROM cursor1 INTO @OLD_ID,@NEW_ID + END + CLOSE cursor1 + DEALLOCATE cursor1 + +GO +CREATE PROCEDURE [dbo].[PRPM_CUST_DocHANDLE] @pDocID BIGINT +AS +BEGIN + /*INDIVIDUAL HANDLING FOR DOC IN PM GOES HERE*/ + PRINT 'Starting INDIVIDUAL HANDLING FOR DOC IN PM' +END +GO +CREATE PROCEDURE [dbo].[PRPM_DELETE_USER](@pUSER_ID INT) +AS +BEGIN TRY + IF OBJECT_ID(N'dbo.TBPM_PROFILE_USER', N'U') IS NOT NULL + DELETE FROM TBPM_PROFILE_USER WHERE USER_ID = @pUSER_ID + IF OBJECT_ID(N'dbo.TBPM_PROFILE_USER', N'U') IS NOT NULL + DELETE FROM TBPM_PROFILE_USER WHERE USER_ID = @pUSER_ID + DELETE FROM TBDD_USER_MODULES WHERE USER_ID = @pUSER_ID AND MODULE_ID = (SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'PM') +END TRY +BEGIN CATCH + PRINT 'FEHLER IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + ' - ZEILE: ' + CONVERT(VARCHAR(10),ERROR_LINE()) + + ' - FEHLER-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +CREATE PROCEDURE [dbo].[PRPM_REMOVE_NE_FILES] +AS +DECLARE + @DOC_ID INTEGER, + @DocRelativePath VARCHAR(500) + +DECLARE c_PRPM_REMOVE_NE_FILES CURSOR FOR + select DOC_ID,FILE_PATH from TBPM_PROFILE_FILES + OPEN c_PRPM_REMOVE_NE_FILES + FETCH NEXT FROM c_PRPM_REMOVE_NE_FILES INTO @DOC_ID,@DocRelativePath + WHILE @@FETCH_STATUS = 0 + BEGIN + IF NOT EXISTS(SELECT [dwDocID] FROM @WINDREAM_DB.[dbo].[BaseAttributes] where dwDocID = @DOC_ID) + IF NOT EXISTS(SELECT IDB_OBJ_ID FROM IDB.dbo.TBIDB_DOC_INFO WHERE IDB_OBJ_ID = @DOC_ID and UPPER(RELATIVE_PATH) = UPPER(@DocRelativePath)) + DELETE FROM TBPM_PROFILE_FILES WHERE DOC_ID = @DOC_ID + FETCH NEXT FROM c_PRPM_REMOVE_NE_FILES INTO @DOC_ID,@DocRelativePath + END +CLOSE c_PRPM_REMOVE_NE_FILES +DEALLOCATE c_PRPM_REMOVE_NE_FILES +GO +-- ============================================= +-- Author: Digital Data, MS +-- Create date: 05.07.2019 +-- Description: +-- ============================================= +CREATE PROCEDURE PRPM_FILES_NOT_INDEXED + -- Add the parameters for the stored procedure here + @USER_NAME VARCHAR(50), + @PROFIL_ID INTEGER, + @FILEPATH VARCHAR(500), + @DocGUID BIGINT +AS +BEGIN + IF NOT EXISTS(SELECT * FROM TBPM_FILES_USER_NOT_INDEXED WHERE + UPPER(USR_NAME) = UPPER(@USER_NAME) + AND PROFIL_ID = @PROFIL_ID AND DocGUID = @DocGUID) + INSERT INTO TBPM_FILES_USER_NOT_INDEXED (USR_NAME,PROFIL_ID,FILE_PATH,DocGUID) VALUES (@USER_NAME, @PROFIL_ID, @FILEPATH,@DocGUID) +END +GO +CREATE PROCEDURE PRPM_CHECK_NEXT_WF @pGUID BIGINT +AS +BEGIN + DECLARE @DocID BIGINT + SELECT @DocID = DOC_ID FROM TBPM_PROFILE_FILES WHERE GUID = @pGUID + DELETE FROM TBPM_PROFILE_FILES WHERE GUID = @pGUID + /*TO DO HERE*/ + EXEC PRPM_CUST_DocHANDLE @DocID +END +GO +CREATE PROCEDURE [dbo].[PRPM_CHANGE_CONTROL_CAPTION] (@pCTRL_ID INT,@NEW_CAPTION VARCHAR(100), @WHO VARCHAR(100),@LANG_CODE VARCHAR(5)) +AS + DECLARE @RESULT VARCHAR(250), @CTRL_CONFIG_TITLE VARCHAR(100) + SELECT @CTRL_CONFIG_TITLE = CTRL_TYPE + '.' + NAME FROM TBPM_PROFILE_CONTROLS WHERE GUID = @pCTRL_ID + + UPDATE TBDD_GUI_LANGUAGE_PHRASE SET STRING1 = @NEW_CAPTION, CHANGED_WHO = @WHO + WHERE OBJ_NAME = 'frmValidator' AND MODULE = 'PM' AND TITLE = @CTRL_CONFIG_TITLE AND UPPER(LANGUAGE) = UPPER(@LANG_CODE) +GO +-- ============================================= +-- Author: Digital Data Gmbh +-- ============================================= +CREATE PROCEDURE [dbo].[PRPM_REFRESH_FILES_SQL] as +BEGIN + DECLARE @PROFIL_ID INTEGER, @NAME VARCHAR(100),@SEARCH NVARCHAR(2000) + --#### Der Cursor für alle Profile + DECLARE CursorProfile CURSOR LOCAL FOR + select GUID,NAME,WD_SEARCH FROM TBPM_PROFILE WHERE + ACTIVE = 1 and WD_SEARCH like '%select%' --AND GUID = 12 + ORDER BY PRIORITY + OPEN CursorProfile + FETCH NEXT FROM CursorProfile INTO @PROFIL_ID,@NAME,@SEARCH + WHILE @@FETCH_STATUS = 0 + BEGIN + PRINT '++++ REFRESH FILES WORKING ON ProfilID:' + CONVERT(VARCHAR(4),@PROFIL_ID) + ' ++++' + delete from TBPM_PROFILE_FILES_TEMP where PROFIL_ID = @PROFIL_ID; + DECLARE @SQL NVARCHAR(2000) + --Objekte zu Profil in Hilfstabelle inserten + SET @SQL = 'INSERT INTO DD_ECM.dbo.TBPM_PROFILE_FILES_TEMP (PROFIL_ID,DocId,FILE_PATH,ADDED_WHEN) ' + @SEARCH + --Print @SQL + exec(@SQL); + --Print 'INSERT INTO DD_ECM.dbo.TBPM_PROFILE_FILES_TEMP EXECUTED' + DECLARE @DocID BIGINT, @Path VARCHAR(500), @CREATED DATETIME, @COUNT_DOC INTEGER + SET @COUNT_DOC = 0 + --Der Cursor für NEUE Objekte + DECLARE cursorNewObjects CURSOR FOR + SELECT A.DocId,A.FILE_PATH,A.ADDED_WHEN + FROM TBPM_PROFILE_FILES_TEMP A WHERE A.PROFIL_ID = @PROFIL_ID AND(SELECT COUNT(DOC_ID) + FROM TBPM_PROFILE_FILES B WHERE B.DOC_ID = A.DocId AND B.PROFIL_ID = @PROFIL_ID) = 0; + OPEN cursorNewObjects + FETCH NEXT FROM cursorNewObjects INTO @DocID,@Path,@CREATED + WHILE @@FETCH_STATUS = 0 + BEGIN + SET @COUNT_DOC += 1 + --PRINT 'WORKING ON NEW OBJECT#:' + CONVERT(VARCHAR(4),@COUNT_DOC) + '#ProfilID:' + CONVERT(VARCHAR(4),@PROFIL_ID) + INSERT INTO TBPM_PROFILE_FILES (PROFIL_ID,FILE_PATH,ACTIVE,DMS_ERSTELLT_DATE,DOC_ID) VALUES + (@PROFIL_ID,@Path,1,@CREATED,@DocID) + FETCH NEXT FROM cursorNewObjects INTO @DocID,@Path,@CREATED + END + CLOSE cursorNewObjects + DEALLOCATE cursorNewObjects + + DECLARE @DocIDInvalid BIGINT + --Der Cursor für ungültige Objekte + DECLARE cursorInvalidObjects CURSOR FOR + SELECT A.DOC_ID FROM TBPM_PROFILE_FILES A where A.PROFIL_ID = @PROFIL_ID + AND A.DOC_ID NOT IN (select DocId from TBPM_PROFILE_FILES_TEMP where PROFIL_ID = @PROFIL_ID) + OPEN cursorInvalidObjects + FETCH NEXT FROM cursorInvalidObjects INTO @DocIDInvalid + WHILE @@FETCH_STATUS = 0 + BEGIN + SET @COUNT_DOC += 1 + --PRINT 'WORKING ON INVALID OBJECT#:' + CONVERT(VARCHAR(4),@COUNT_DOC) + '#ProfilID:' + CONVERT(VARCHAR(4),@PROFIL_ID) + DELETE FROM TBPM_PROFILE_FILES WHERE DOC_ID = @DocIDInvalid and PROFIL_ID = @PROFIL_ID + FETCH NEXT FROM cursorInvalidObjects INTO @DocIDInvalid + END + CLOSE cursorInvalidObjects + DEALLOCATE cursorInvalidObjects + FETCH NEXT FROM CursorProfile INTO @PROFIL_ID,@NAME,@SEARCH + END + CLOSE CursorProfile + DEALLOCATE CursorProfile + DELETE FROM TBPM_PROFILE_FILES WHERE EDIT = 1; + --EXEC PRPM_REMOVE_NE_FILES; + UPDATE TBPM_PROFILE_FILES SET IN_WORK = 0, WORK_USER = NULL, IN_WORK_WHEN = NULL where + datediff(MINUTE,IN_WORK_WHEN,Getdate()) >= 25; +END +GO +--############################## +--##########FUNCTIONS########### +--############################## +CREATE FUNCTION [dbo].[FNIDB_OBJECT_DYNAMIC_CONFIG] (@pIDB_OBJ_ID as INTEGER, @pUSERID as INTEGER) +RETURNS + @Table TABLE + (CONF_TITLE VARCHAR(900),CONF_VALUE VARCHAR(900)) +AS +BEGIN + INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('CONVERSATION_RIGHT','Admin'); + INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('CONVERSATION_RIGHT','Start'); + INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('CONVERSATION_RIGHT','Stop'); + INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('CONVERSATION_RIGHT','AddMessage'); + INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('CONVERSATION_RIGHT','AddUser'); + INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('NEW_CONVERSATION_USER_SELECT','SELECT GUID as UserID, NAME, USERNAME, EMAIL from TBDD_USER'); + INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('CONVERSATION_ADD_USER_SELECT','SELECT GUID as UserID, NAME, USERNAME, EMAIL from TBDD_USER WHERE GUID NOT IN (SELECT USER_OR_GROUP_ID FROM + IDB_TEST.dbo.TBIDB_CONVERSATION_USER WHERE CONV_ID = @CONVID AND IS_USER = 1)'); +RETURN +END +GO +CREATE FUNCTION [dbo].[FNPM_IDB_LAST_EDITED_DOC](@pPROFIL_ID INTEGER,@pDOC_ID INTEGER) +RETURNS DATETIME +AS +BEGIN + DECLARE @RESULT DATETIME + + IF EXISTS(SELECT CHANGED_WHEN FROM IDB.dbo.TBIDB_OBJECT_METADATA_CHANGE WHERE IDB_OBJ_ID = @pDOC_ID) + SELECT @RESULT = MAX(CHANGED_WHEN) FROM IDB.dbo.TBIDB_OBJECT_METADATA_CHANGE WHERE IDB_OBJ_ID = @pDOC_ID + ELSE + SELECT @RESULT = convert(date,T.DMS_ERSTELLT_DATE) FROM TBPM_PROFILE_FILES T + WHERE T.PROFIL_ID = @pPROFIL_ID AND T.DOC_ID = @pDOC_ID + RETURN @RESULT +END +GO +CREATE FUNCTION [dbo].[FNPM_GET_FILEPATH] (@pDOCGUID BIGINT,@STANDARD As INT = 0) +RETURNS VARCHAR(MAX) +AS +BEGIN + DECLARE @RELPATH VARCHAR(100),@FILEPATH VARCHAR(500),@NAVPATH as VARCHAR(MAX) + IF @STANDARD = 1 + SET @RELPATH = '\\windream\objects' + ELSE + SELECT @RELPATH = WM_REL_PATH FROM TBPM_KONFIGURATION WHERE GUID = 1 + SELECT @FILEPATH = REPLACE(FILE_PATH,'W:\','') FROM TBPM_PROFILE_FILES WHERE (GUID = @pDOCGUID) + SET @NAVPATH = @RELPATH + '\' + @FILEPATH + IF @NAVPATH IS NULL + SET @NAVPATH = '' + RETURN @NAVPATH +END +GO +-- ============================================= +-- Author: Digital Data MS +-- Create date: 05.07.2019 +-- Description: Gets the next DocumentID +-- ============================================= +CREATE FUNCTION [dbo].[FNPM_GET_NEXT_DOC_GUID] +( + -- Add the parameters for the function here + @PROFIL_ID Integer, + @OrderByNewest Bit, @DocGUID BigInt, @USERNAME VARCHAR(50) +) +RETURNS BIGINT +AS +BEGIN + DECLARE @NEXT_DOC_GUID BIGINT + IF @OrderByNewest = 0 + SELECT Top 1 @NEXT_DOC_GUID = GUID FROM TBPM_PROFILE_FILES WHERE + PROFIL_ID = @PROFIL_ID AND EDIT = 0 AND IN_WORK = 0 AND + GUID <> @DocGUID AND GUID NOT IN ( + SELECT DocGUID + FROM TBPM_FILES_USER_NOT_INDEXED + WHERE (PROFIL_ID = @PROFIL_ID) AND (UPPER(USR_NAME) = UPPER(@USERNAME)) + ) + ELSE + SELECT Top 1 @NEXT_DOC_GUID = GUID FROM TBPM_PROFILE_FILES WHERE + PROFIL_ID = @PROFIL_ID AND EDIT = 0 AND IN_WORK = 0 AND + GUID <> @DocGUID AND GUID NOT IN ( + SELECT DocGUID + FROM TBPM_FILES_USER_NOT_INDEXED + WHERE (PROFIL_ID = @PROFIL_ID) AND (UPPER(USR_NAME) = UPPER(@USERNAME))) + ORDER BY DMS_ERSTELLT_DATE DESC,GUID DESC + IF @NEXT_DOC_GUID IS NULL + SET @NEXT_DOC_GUID = 0 + RETURN @NEXT_DOC_GUID +END +GO +CREATE FUNCTION [dbo].[FNPM_PROFILE_GROUP_TEXT](@pPROFIL_ID AS INTEGER) +RETURNS VARCHAR(250) +AS +BEGIN + DECLARE @RESULT VARCHAR(250), @RESULT2 VARCHAR(250) + + SELECT @RESULT = TITLE,@RESULT2 = NAME FROM TBPM_PROFILE WHERE GUID = @pPROFIL_ID + --SET @RESULT2 = 'Additional and configurable text for profile ' + @RESULT2 + SET @RESULT = @RESULT --+ ' | ' + @RESULT2 + RETURN @RESULT +END +GO +CREATE FUNCTION [dbo].[FNPM_PROFILE_GROUP_FONT_COLOR](@pPROFIL_ID AS INTEGER) +RETURNS VARCHAR(20) +AS +BEGIN + DECLARE @RESULT VARCHAR(20) + SET @RESULT = 'Black' + IF @pPROFIL_ID = 11 --Abgelehnt + SET @RESULT = 'White' + + RETURN @RESULT +END +GO + +--GRANT EXECUTE ON [dbo].[FNPM_PROFILE_GROUP_TEXT] TO [dd_ecm] +--GO + +CREATE FUNCTION [dbo].[FNPM_LAST_WORKUSER_DOC](@pPROFIL_ID INTEGER,@pDOC_ID INTEGER) +RETURNS VARCHAR(250) +AS +BEGIN + DECLARE @RESULT VARCHAR(250) + SELECT @RESULT = WORKED_BY FROM TBPM_FILES_WORK_HISTORY WHERE GUID = + (SELECT MAX(GUID) FROM TBPM_FILES_WORK_HISTORY WHERE PROFIL_ID = @pPROFIL_ID AND DOC_ID = @pDOC_ID) + IF LEN(@RESULT) = 0 + SET @RESULT = '' + RETURN @RESULT +END +GO +--GRANT EXECUTE ON [dbo].[FNPM_LAST_WORKUSER_DOC] TO [dd_ecm] +--GO +CREATE FUNCTION [dbo].[FNPM_LAST_EDITED_DOC](@pPROFIL_ID INTEGER,@pDOC_ID INTEGER) +RETURNS DATETIME +AS +BEGIN + DECLARE @RESULT DATETIME + IF EXISTS(SELECT GUID FROM TBPM_FILES_WORK_HISTORY WHERE PROFIL_ID = @pPROFIL_ID AND DOC_ID = @pDOC_ID) + SELECT @RESULT = WORKED_WHEN FROM TBPM_FILES_WORK_HISTORY WHERE GUID = + (SELECT MAX(GUID) FROM TBPM_FILES_WORK_HISTORY WHERE PROFIL_ID = @pPROFIL_ID AND DOC_ID = @pDOC_ID) + ELSE + SELECT @RESULT = convert(date,T.DMS_ERSTELLT_DATE) FROM TBPM_PROFILE_FILES T + WHERE T.PROFIL_ID = @pPROFIL_ID AND T.DOC_ID = @pDOC_ID + RETURN @RESULT +END +GO + +--GRANT EXECUTE ON [dbo].[FNPM_LAST_EDITED_DOC] TO [dd_ecm] +--GO +CREATE FUNCTION [dbo].[FNPM_PROFILE_GROUP_COLOR](@pPROFIL_ID AS INTEGER) +RETURNS VARCHAR(20) +AS +BEGIN + DECLARE @RESULT VARCHAR(20) + SET @RESULT = 'Grey' + IF @pPROFIL_ID = 1 + SET @RESULT = 'Red' + ELSE + SET @RESULT = 'Yellow' + RETURN @RESULT +END +GO +--GRANT EXECUTE ON [dbo].[FNPM_PROFILE_GROUP_COLOR] TO [dd_ecm] +--GO +--GRANT EXECUTE ON [dbo].[FNPM_PROFILE_GROUP_TEXT] TO [dd_ecm] +--GO +CREATE FUNCTION [dbo].[FNPM_GET_FREE_USER_FOR_PROFILE] (@pPROFILE_ID INTEGER) +RETURNS +@Table TABLE + (SequentialOrder INT IDENTITY(1, 1), + USER_ID INTEGER, + USER_NAME VARCHAR(50), + USER_PRENAME VARCHAR(50), + USER_SURNAME VARCHAR(50), + USER_SHORTNAME VARCHAR(50), + USER_EMAIL VARCHAR(100), + USER_LANGUAGE VARCHAR(10), + USER_COMMENT VARCHAR(500)) +AS +BEGIN +/* This function returns all free users per profile */ + INSERT INTO @Table (USER_ID,USER_NAME, USER_PRENAME, USER_SURNAME,USER_SHORTNAME,USER_EMAIL,USER_LANGUAGE,USER_COMMENT) + SELECT + T.USER_ID + ,T.USER_NAME + ,T.USER_PRENAME + ,T.USER_SURNAME + ,T.USER_SHORTNAME + ,T.USER_EMAIL + ,T.USER_LANGUAGE + ,T.USER_COMMENT + FROM + [dbo].FNDD_GET_USER_FOR_MODULE ('PM',1) T WHERE T.USER_ID NOT IN (SELECT USER_ID FROM TBPM_PROFILE_USER WHERE PROFIL_ID = @pPROFILE_ID) +RETURN +END +GO +CREATE FUNCTION [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] (@USER_ID INTEGER) +RETURNS + @Table TABLE + (SCOPE VARCHAR(50),PROFILE_ID INTEGER, P_NAME VARCHAR(50),SequentialOrder INT IDENTITY(1, 1)) +AS +BEGIN + DECLARE + @P_ID INTEGER, + @P_NAME VARCHAR(50) + + DECLARE cursProfileUser CURSOR FOR + select T.PROFIL_ID, T1.NAME FROM TBPM_PROFILE_USER T, TBPM_PROFILE T1 WHERE T.PROFIL_ID = T1.GUID AND T.USER_ID = @USER_ID + OPEN cursProfileUser + FETCH NEXT FROM cursProfileUser INTO @P_ID,@P_NAME + WHILE @@FETCH_STATUS = 0 + BEGIN + INSERT INTO @Table (SCOPE,PROFILE_ID,P_NAME) VALUES ('PROFILE-USER',@P_ID,@P_NAME) + FETCH NEXT FROM cursProfileUser INTO @P_ID,@P_NAME + END + CLOSE cursProfileUser + DEALLOCATE cursProfileUser + + DECLARE cursProfileGROUP CURSOR FOR + SELECT T.PROFIL_ID, TP.NAME FROM TBPM_PROFILE_GROUP T,TBDD_GROUPS T1,TBPM_PROFILE TP,TBDD_GROUPS_USER T2 WHERE + T.GROUP_ID = T1.GUID AND T.PROFIL_ID = TP.GUID AND TP.TYPE = 1 AND T1.GUID = T2.GROUP_ID AND T2.USER_ID = @USER_ID + + OPEN cursProfileGROUP + FETCH NEXT FROM cursProfileGROUP INTO @P_ID,@P_NAME + WHILE @@FETCH_STATUS = 0 + BEGIN + IF NOT EXISTS(SELECT * FROM @Table WHERE PROFILE_ID = @P_ID) + INSERT INTO @Table (SCOPE,PROFILE_ID,P_NAME) VALUES ('PROFILE-GROUP',@P_ID,@P_NAME) + FETCH NEXT FROM cursProfileGROUP INTO @P_ID,@P_NAME + END + CLOSE cursProfileGROUP + DEALLOCATE cursProfileGROUP + + DECLARE cursSQLProfile CURSOR FOR + SELECT T.PROFIL_ID, TP.NAME FROM TBPM_PROFILE_GROUP T,TBDD_GROUPS T1,TBPM_PROFILE TP WHERE + T.GROUP_ID = T1.GUID AND T.PROFIL_ID = TP.GUID AND TP.TYPE = 1 AND T1.NAME = 'PM_SQL_BASED' and NO_OF_DOCUMENTS > 0 + + OPEN cursSQLProfile + FETCH NEXT FROM cursSQLProfile INTO @P_ID,@P_NAME + WHILE @@FETCH_STATUS = 0 + BEGIN + IF NOT EXISTS(SELECT * FROM @Table WHERE PROFILE_ID = @P_ID) + INSERT INTO @Table (SCOPE,PROFILE_ID,P_NAME) VALUES ('PROFILE-SQL',@P_ID,@P_NAME) + FETCH NEXT FROM cursSQLProfile INTO @P_ID,@P_NAME + END + CLOSE cursSQLProfile + DEALLOCATE cursSQLProfile + INSERT INTO @Table (SCOPE,PROFILE_ID,P_NAME) + select DISTINCT 'TBPM_CUST_USER_DOC_JOB',T.ProfileID,T1.NAME + from TBPM_CUST_USER_DOC_JOB T INNER JOIN TBPM_PROFILE T1 ON T.ProfileID = T1.GUID + INNER JOIN TBPM_PROFILE_FILES T2 ON T.ProfileID = T2.PROFIL_ID + where T.UserID = @USER_ID and T2.EDIT = 0 AND T2.ACTIVE = 1 AND T2.IN_WORK = 0 --@USER_ID +RETURN +END +GO +CREATE FUNCTION [dbo].[FNPM_BTN_OVERRIDE] (@ParamString as VARCHAR(3000)) +RETURNS + @Table TABLE + (ActionType Varchar(100),Question VARCHAR(500),Title VARCHAR(100), CaptionButton Varchar(100),Color Varchar(10),OverrideAll Bit) +AS +BEGIN + --INSERT INTO @Table (ActionType, Question,Title,CaptionButton,Color) VALUES ('Override_Direct','') + INSERT INTO @Table (ActionType, Question,Title,CaptionButton,Color,OverrideAll) VALUES ('Override_Question','Wollen Sie den Beleg wirklich an den Posteingang zurückgeben?','Bestätigen:','Rückgabe','Red',1) +RETURN +END +GO +-- ============================================= +-- Author: Digital Data MS +-- Create date: 27.11.2019 +-- Description: Gets the next DocumentID +-- ============================================= +CREATE FUNCTION [dbo].[FNPM_GET_NEXT_DOC_INFO] +( + -- Add the parameters for the function here + @PROFIL_ID Integer, + @OrderByNewest Bit, @DocGUID BigInt, @USERNAME VARCHAR(50) +) +RETURNS @Output TABLE (DocGUID BIGINT,DocID BIGINT) + +AS +BEGIN + IF @OrderByNewest = 0 + INSERT INTO @Output (DocGUID,DocID) + SELECT Top 1 GUID, DOC_ID FROM TBPM_PROFILE_FILES WHERE + PROFIL_ID = @PROFIL_ID AND EDIT = 0 AND IN_WORK = 0 AND + GUID <> @DocGUID AND GUID NOT IN ( + SELECT DocGUID + FROM TBPM_FILES_USER_NOT_INDEXED + WHERE (PROFIL_ID = @PROFIL_ID) AND (UPPER(USR_NAME) = UPPER(@USERNAME)) + ) + ELSE + INSERT INTO @Output (DocGUID,DocID) + SELECT Top 1 GUID, DOC_ID FROM TBPM_PROFILE_FILES WHERE + PROFIL_ID = @PROFIL_ID AND EDIT = 0 AND IN_WORK = 0 AND + GUID <> @DocGUID AND GUID NOT IN ( + SELECT DocGUID + FROM TBPM_FILES_USER_NOT_INDEXED + WHERE (PROFIL_ID = @PROFIL_ID) AND (UPPER(USR_NAME) = UPPER(@USERNAME))) + ORDER BY DMS_ERSTELLT_DATE DESC,GUID DESC + + RETURN +END +GO +CREATE FUNCTION [dbo].[FNPM_LANGUAGE_CONTROL_TEXT](@pCTRL_NAME VARCHAR(100),@pLANG_CODE VARCHAR(5), @pCTRL_TYPE VARCHAR(10),@pRETURN VARCHAR(500) = '') +RETURNS VARCHAR(500) +AS +BEGIN + DECLARE @RESULT VARCHAR(250), @CTRL_CONFIG_TITLE VARCHAR(100) + IF @pCTRL_TYPE not in ('LBL','CHK','BUTTON') + SET @RESULT = '' + ELSE + BEGIN + SET @CTRL_CONFIG_TITLE = @pCTRL_TYPE + '.' + @pCTRL_NAME + SELECT @RESULT = STRING1 FROM TBDD_GUI_LANGUAGE_PHRASE + WHERE MODULE = 'PM' AND CAPT_TYPE = 'Caption Validator Control' AND UPPER(TITLE) = UPPER(@CTRL_CONFIG_TITLE) + AND UPPER(LANGUAGE) = UPPER(@pLANG_CODE) AND OBJ_NAME = 'frmValidator' + IF LEN(@RESULT) > 0 + SET @RESULT = @RESULT + ELSE + SET @RESULT = @pRETURN + ' (NLConf)' --'NO LANGUAGE CONFIGURATION SO FAR - CONTROL-NAME [' + @CTRL_CONFIG_TITLE + '] - LANG-CODE [' + @pLANG_CODE + ']' + --IF @pRETURN = '' + -- SET @RESULT = 'NO LANGUAGE CONFIGURATION SO FAR - CONTROL-NAME [' + @pCTRL_NAME + '] - LANG-CODE [' + @pLANG_CODE + ']' + --ELSE + -- SET @RESULT = @pRETURN + END + RETURN @RESULT +END +GO +CREATE FUNCTION [dbo].[FNPM_IDB_CONVERSATION_YN] (@pIDB_OBJ_ID BIGINT, @USER_ID INTEGER) +RETURNS BIT +AS +BEGIN + DECLARE @CONV_YES BIT + SET @CONV_YES = 0 + IF EXISTS(select T.CONV_ID from IDB_TEST.dbo.VWIDB_CONVERSATION_USER T INNER JOIN IDB_TEST.dbo.VWIDB_CONVERSATION T1 ON T.CONV_ID = T1.CONVERSATION_ID + WHERE T.USER_ID = @USER_ID AND T1.CONVERSATION_STATE = 'Started' AND T1.IDB_OBJ_ID = @pIDB_OBJ_ID) + SET @CONV_YES = 1 + RETURN @CONV_YES +END +GO +--#################################### +--##############VIEWS################# +--#################################### +CREATE VIEW [dbo].[VWPM_CONTROL_INDEX] AS +SELECT TOP 100 PERCENT + T1.GUID, + T.GUID PROFIL_ID, + T.NAME PROFIL_NAME, + T.LOG_INDEX, + T1.NAME CTRL_NAME, + T1.CTRL_TYPE, + T1.CTRL_TEXT, + T1.X_LOC, + T1.Y_LOC, + T1.FONT_COLOR, + T1.FONT_FAMILY, + T1.FONT_SIZE, + T1.FONT_STYLE, + T1.WIDTH, + T1.HEIGHT, + COALESCE(T1.INDEX_NAME,'') INDEX_NAME, + 0 AS IDB_TYP, + T1.VALIDATION, + T1.CHOICE_LIST, + T1.TYP, + T1.CONNECTION_ID, + CASE WHEN T1.[SQL_UEBERPRUEFUNG] IS NULL THEN '' ELSE T1.[SQL_UEBERPRUEFUNG] END AS [SQL_UEBERPRUEFUNG], + T1.[READ_ONLY], + T1.LOAD_IDX_VALUE, + T1.DEFAULT_VALUE, + T1.REGEX_MATCH, + T1.REGEX_MESSAGE_DE, + T1.REGEX_MESSAGE_EN, + T1.OVERWRITE_DATA, + T1.SET_CONTROL_DATA +FROM + TBPM_PROFILE T, + TBPM_PROFILE_CONTROLS T1 +WHERE + T.GUID = T1.PROFIL_ID + AND T1.CONTROL_ACTIVE = 1 +ORDER BY + T.GUID, + T1.X_LOC, + T1.Y_LOC +GO +CREATE VIEW [dbo].[VWPM_PROFILE_USER_UNION] AS +SELECT + 'USER' SCOPE, + T.GUID PROFIL_ID, + T.NAME PROFIL_NAME, + T.TITLE, + T.DESCRIPTION, + T.WD_OBJECTTYPE, + T.PRIORITY, + T.WD_SEARCH, + COALESCE(T.MOVE2FOLDER,'') as MOVE2Folder, + T.ACTIVE, + T.IN_WORK, + T.NO_OF_DOCUMENTS, + T.FINAL_PROFILE, + T.FINAL_TEXT, + T.LOG_INDEX, + T.PM_VEKTOR_INDEX, + T.DISPLAY_MODE, + T2.GUID AS USER_ID, + T2.PRENAME, + T2.NAME, + T2.USERNAME, + T2.EMAIL, + --T2.PM_RIGHT_FILE_DELETE as RIGHT_FILE_DELETE, + [dbo].[FNPM_PROFILE_GROUP_COLOR] (T.GUID) AS 'PROFILE_GROUP_COLOR', + [dbo].[FNPM_PROFILE_GROUP_TEXT] (T.GUID) AS 'PROFILE_GROUP_TEXT' +FROM + TBPM_PROFILE T, + TBPM_PROFILE_USER T1, + TBDD_USER T2 +WHERE + T.TYPE = 1 AND + T.GUID = T1.PROFIL_ID AND + T1.USER_ID = T2.GUID +UNION +SELECT + 'GROUP' SCOPE, + T.GUID PROFIL_ID, + T.NAME PROFIL_NAME, + T.TITLE, + T.DESCRIPTION, + T.WD_OBJECTTYPE, + T.PRIORITY, + T.WD_SEARCH, + COALESCE(T.MOVE2FOLDER,'') as MOVE2Folder, + T.ACTIVE, + T.IN_WORK, + T.NO_OF_DOCUMENTS, + T.FINAL_PROFILE, + T.FINAL_TEXT, + T.LOG_INDEX, + T.PM_VEKTOR_INDEX, + T.DISPLAY_MODE, + T4.GUID AS USER_ID, + T4.PRENAME, + T4.NAME, + T4.USERNAME, + T4.EMAIL, + --T4.PM_RIGHT_FILE_DELETE as RIGHT_FILE_DELETE, + [dbo].[FNPM_PROFILE_GROUP_COLOR] (T.GUID) AS 'PROFILE_GROUP_COLOR', + [dbo].[FNPM_PROFILE_GROUP_TEXT] (T.GUID) AS 'PROFILE_GROUP_TEXT' +FROM + TBPM_PROFILE T, + TBPM_PROFILE_GROUP T1, + TBDD_GROUPS T2, + TBDD_GROUPS_USER T3, + TBDD_USER T4 +WHERE + T.TYPE = 1 AND + T.GUID = T1.PROFIL_ID AND + T1.GROUP_ID = T2.GUID AND + T2.GUID = T3.GROUP_ID AND + T3.USER_ID = T4.GUID +GO + +CREATE VIEW VWPM_PROFILE_USER AS +SELECT DISTINCT * FROM VWPM_PROFILE_USER_UNION +GO +CREATE VIEW [dbo].[VWPM_EMAIL_PROFIL] AS +SELECT + T.PROFIL_ID, + T2.TITLE AS PROFIL_TITLE, + T2.NAME AS PROFIL_NAME, + T.USER_ID, + T1.USERNAME, + T1.EMAIL, + '' AS LAST_HOUR, + '' as EMAIL_ONCE_DAY, + (SELECT COUNT(GUID) FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = T.PROFIL_ID) AS ANZ_FILES +FROM + TBPM_PROFILE_USER T, + TBDD_USER T1, + TBPM_PROFILE T2 +WHERE + T.USER_ID = T1.GUID AND + T.PROFIL_ID = T2.GUID AND + T1.EMAIL IS NOT NULL + +GO +CREATE VIEW VWPM_PROFILE_ACTIVE AS +SELECT + T1.[GUID] + ,T1.[NAME] + ,T1.[TITLE] + ,T1.[WD_OBJECTTYPE] + ,T1.[PRIORITY] + ,T1.[DESCRIPTION] + ,T1.[TYPE] + ,T1.[LOG_INDEX] + ,T1.[IN_WORK] + ,T1.[ACTIVE] + ,T1.[WD_SEARCH] + ,T1.[PM_VEKTOR_INDEX] + ,T1.[NO_OF_DOCUMENTS] + ,T1.[FINAL_PROFILE] + ,T1.[FINAL_TEXT] + ,T1.[MOVE2FOLDER] + ,T1.[SORT_BY_LATEST] + ,T1.[WORK_HISTORY_ENTRY] + ,T1.[ANNOTATE_ALL_WORK_HISTORY_ENTRIES] + ,T1.[ANNOTATE_WORK_HISTORY_ENTRY] + ,T1.[SQL_VIEW] + ,T1.[ADDED_WHO] + ,T1.[ADDED_WHEN] + ,T1.[CHANGED_WHO] + ,T1.[CHANGED_WHEN] + -- ,T1.[SQL_GROUP_COLOR] + -- ,T1.[SQL_GROUP_TEXT] + ,T1.[DISPLAY_MODE] + + + + ,(SELECT COUNT(GUID) FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = T1.GUID) AS FILE_COUNT, + [dbo].[FNPM_PROFILE_GROUP_COLOR] (T1.GUID) AS 'GROUP_COLOR', + dbo.FNPM_PROFILE_GROUP_FONT_COLOR (T1.GUID) AS 'GROUP_FONT_COLOR', + [dbo].[FNPM_PROFILE_GROUP_TEXT] (T1.GUID) AS 'GROUP_TEXT' +FROM + TBPM_PROFILE T1 +WHERE + T1.ACTIVE = 1 +GO +UPDATE TBPM_KONFIGURATION SET SQL_PROFILE_MAIN_VIEW = ' +/*## Following Columns need to be part of sql ## +TL_STATE Returns the TrafficLight-State for each doc (1=Red;2=Orange;3=Green) +PROFILE_ID TITLE Profile-Title used for default-grouping +DOC_ID +FULL_FILE_PATH +LAST USE +LAST EDITED */ +--DECLARE @USER_ID INTEGER +--SET @USER_ID = 1 + SELECT + T.GUID, + DATEDIFF(DAY, [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID),GETDATE()) AS [Days in], + Case DATEDIFF(DAY, [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID),GETDATE()) WHEN 0 THEN 3 WHEN 1 THEN 2 WHEN 2 THEN 1 ELSE 3 END AS TL_STATE, + T.PROFIL_ID AS PROFILE_ID, + T.DOC_ID, + T.FILE_PATH AS FULL_FILE_PATH, + TWM_BA.szLongName as Dateiname, + TWM_BA.szText36 AS Dokumentart, + --TWM_BA.szText35 AS [weitergeleitet an], + --TWM_BA.lfFloat14 AS [Rechnungs Summe], + --ISNULLTWM_BA.szText14 AS Buchungskreis, + --TWM_BA.szText08 AS Kreditor, + T.DMS_ERSTELLT_DATE AS [Erhalten wann], + [dbo].[FNPM_LAST_WORKUSER_DOC] (T.PROFIL_ID,T.DOC_ID) AS ''Last User'', + [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID) AS ''Last edited'', + [dbo].[FNPM_PROFILE_GROUP_COLOR] (T.PROFIL_ID) AS ''GROUP_COLOR'', + [dbo].[FNPM_PROFILE_GROUP_TEXT] (T.PROFIL_ID) AS ''GROUP_TEXT'' + FROM TBPM_PROFILE_FILES T, + TBPM_PROFILE T1, + TBDD_USER T2, + @WINDREAM_DB.dbo.BaseAttributes TWM_BA WHERE T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1 AND T.PROFIL_ID = T1.GUID AND T1.GUID in (SELECT PROFIL_ID FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] ({#USER#USER_ID})) AND T1.ACTIVE = 1 And T2.GUID = {#USER#USER_ID} + AND T.DOC_ID = TWM_BA.dwDocID ORDER By T1.PRIORITY' +WHERE GUID = 1 +GO +CREATE FUNCTION [dbo].[FNDD_GET_WINDREAM_FILE_PATH] (@pDOCID BIGINT) +RETURNS VARCHAR(MAX) +AS +BEGIN + DECLARE + @RESULT VARCHAR(MAX), + @DOCID BIGINT, + @a TINYINT = 1, + @i TINYINT = 0, + @PARENT_ID BIGINT, + @DATEINAME NVARCHAR(255), + @PARENTNAME NVARCHAR(255), + @FSFLAGS INT, + @WM_PREFIX VARCHAR(50) + + SELECT @WM_PREFIX = WM_REL_PATH from tbpm_KONFIGURATION WHERE GUID = 1 + + SELECT @FSFLAGS = dwFSFlags FROM @WINDREAM_DB.dbo.BaseAttributes WHERE dwDocID = @pDOCID + IF @FSFLAGS = 16 + BEGIN + SET @RESULT = 'THIS IS NOT A FILE!' + END + ELSE + BEGIN + SELECT @DATEINAME = szLongName,@PARENT_ID = dwParentID FROM @WINDREAM_DB.dbo.BaseAttributes WHERE dwDocID = @pDOCID + WHILE @a > 0 + BEGIN + IF @i = 0 + BEGIN + IF @PARENT_ID = 1 + BEGIN + SET @RESULT = '\' + BREAK + END + ELSE + BEGIN + SET @DOCID = @PARENT_ID + SET @RESULT = '\' + END + END + ELSE + BEGIN + IF @PARENT_ID = 1 + BEGIN + SET @RESULT = '\' + @PARENTNAME + @RESULT + BREAK + END + ELSE + BEGIN + SET @DOCID = @PARENT_ID + SET @RESULT = '\' + @PARENTNAME + @RESULT + END + END + SELECT @PARENTNAME = szLongName,@PARENT_ID = dwParentID FROM @WINDREAM_DB.dbo.BaseAttributes WHERE dwDocID = @DOCID + SET @i = @i + 1 + END + END + + SET @RESULT = @WM_PREFIX + @RESULT + @DATEINAME + RETURN @RESULT +END +GO + +CREATE view [dbo].[VWPM_CHART_TOP5] as +SELECT 'Kreditor1' as KRED_NAME +,'56' as ANZ_BELEG +,convert(decimal(19,2),125565478.8) as Netto +,convert(decimal(19,2),10000) as Skonto +UNION +SELECT 'Kreditor2' as KRED_NAME +,'49' as ANZ_BELEG +,convert(decimal(19,2),8575222.48) as Netto +,convert(decimal(19,2),8555.4) as Skonto +UNION +SELECT 'Kreditor3' as KRED_NAME +,'43' as ANZ_BELEG +,convert(decimal(19,2),2582222.8) as Netto +,convert(decimal(19,2),5647.2) as Skonto +UNION +SELECT 'Kreditor4' as KRED_NAME +,'3' as ANZ_BELEG +,convert(decimal(19,2),68589.89) as Netto +,convert(decimal(19,2),48.96) as Skonto +GO + +CREATE VIEW [dbo].[VWPM_CHART_INVOICE_MONITOR_SERIES] +AS +select 'Alle Rechnungen' as Title +,15 Anzahl +,500000 NettoSumme +,1 SEQ +--,convert(varchar,format(SUM(500000),'###,###,###.00','de-de')) NettoSumme +UNION +SELECT 'Posteingang' as Title +,10 Anzahl +,12000 NettoSumme +,2 SEQ +--,convert(varchar,format(SUM(12000),'###,###,###.00','de-de')) NettoSumme +UNION +SELECT 'Fachliche Freigabe' as Title +,5 Anzahl +,13658.5 NettoSumme +,3 SEQ +--,convert(varchar,format(13658.5,'###,###,###.00','de-de')) NettoSumme +UNION +SELECT 'Finale Freigabe' as Title +,53 Anzahl +,658555.65 NettoSumme +,4 SEQ +--,convert(varchar,format(658555.65,'###,###,###.00','de-de')) NettoSumme +UNION +SELECT 'Zeitkritisch' as Title +,0 Anzahl +,'0.000' NettoSumme +,5 SEQ +--ORDER BY SEQ + +GO + +CREATE OR ALTER FUNCTION [dbo].[FNDD_CHECK_USER_MODULE] (@pUSERNAME VARCHAR(100), @pMODULE_SHORT_NAME VARCHAR(10),@pCLIENTID INTEGER) +RETURNS @Table TABLE + (SequentialOrder INT IDENTITY(1, 1), + USER_ID INTEGER, + USER_PRENAME VARCHAR(50), + USER_SURNAME VARCHAR(50), + USER_SHORTNAME VARCHAR(50), + USER_EMAIL VARCHAR(100), + USER_LANGUAGE VARCHAR(10), + USER_DATE_FORMAT VARCHAR(10), + USER_RIGHT_FILE_DEL BIT, + MODULE_ACCESS BIT, + IS_ADMIN BIT, + USERCOUNT_LOGGED_IN INTEGER, + COMMENT VARCHAR(500), + USER_RIGHT2 BIT NOT NULL DEFAULT 1, + USER_RIGHT3 BIT NOT NULL DEFAULT 0, + USER_RIGHT4 BIT NOT NULL DEFAULT 0, + USER_RIGHT5 BIT NOT NULL DEFAULT 0, + WORKING_MODE VARCHAR(5000) NOT NULL DEFAULT '' + ,ADDITIONAL_TITLE VARCHAR(200)) +AS +BEGIN +/* +This function checks all user-relevant relations an +*/ + DECLARE + @RESULT VARCHAR(500), + @USER_ID INTEGER, + @USER_PRENAME VARCHAR(50), + @USER_SURNAME VARCHAR(50), + @USER_SHORTNAME VARCHAR(50), + @USER_EMAIL VARCHAR(50), + @USER_LANGUAGE VARCHAR(10), + @USER_DATE_FORMAT VARCHAR(10), + @IS_IN_MODULE BIT, + @IS_ADMIN BIT, + @USER_RIGHT_FILE_DEL BIT, + @USER_RIGHT2 BIT, + @USER_RIGHT3 BIT, + @USER_RIGHT4 BIT, + @USER_RIGHT5 BIT, + @USERCOUNT_LOGGED_IN INTEGER, + @MODULE_NAME VARCHAR(100), + @MODULE_GUID INTEGER, + @USER_GROUPNAME VARCHAR(100), + @ADMIN_GROUPNAME VARCHAR(100), + @WORKING_MODE VARCHAR(1000) + --'PM#NO_MASS_VALIDATOR;PM#FORCE_LAYOUT_OVERVIEW;PM#NO_CHARTS;PM#DEBUG_LOG' + + SET @USER_RIGHT2 = 1 --1 = DocumentPropertyView only View + SET @USER_RIGHT3 = 0 + SET @USER_RIGHT4 = 0 + SET @USER_RIGHT5 = 0 + DECLARE @CONN_ID_IDB INTEGER + SELECT @CONN_ID_IDB = GUID FROM TBDD_CONNECTION WHERE SYS_CONNECTION = 1 AND BEZEICHNUNG = 'IDB' + SET @WORKING_MODE = '' + IF @pMODULE_SHORT_NAME = 'PM' + SET @WORKING_MODE = 'PM.NO_MASS_VALIDATOR#PM.FORCE_LAYOUT_OVERVIEW#PM.NO_CHARTS#PM.DEBUG_LOG'--#PM.IDBWITHWMFS#PM.IDB_CONID!' + CONVERT(VARCHAR(2),@CONN_ID_IDB) + +'#PM.MONITORING#PM.COLORSCHEME=Purple' + + SET @USER_ID = 0 + SET @IS_ADMIN = 0 + SET @IS_IN_MODULE = 0 + SET @USERCOUNT_LOGGED_IN = 0 + SET @RESULT = '' + IF @pMODULE_SHORT_NAME = 'PM' + BEGIN + SET @USER_GROUPNAME = 'PM_USER' + SET @ADMIN_GROUPNAME = 'PM_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'CW' + BEGIN + SET @USER_GROUPNAME = 'CW_USER' + SET @ADMIN_GROUPNAME = 'CW_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'ADDI' + BEGIN + SET @USER_GROUPNAME = 'ADDI_USER' + SET @ADMIN_GROUPNAME = 'ADDI_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'GLOBIX' + BEGIN + SET @USER_GROUPNAME = 'GLOBIX_USER' + SET @ADMIN_GROUPNAME = 'GLOBIX_ADMINS' + END + ELSE IF @pMODULE_SHORT_NAME = 'UM' + BEGIN + SET @USER_GROUPNAME = 'XXXX' + SET @ADMIN_GROUPNAME = 'UM_ADMINS' + END + + SELECT @MODULE_GUID = GUID, @MODULE_NAME = NAME FROM TBDD_MODULES WHERE SHORT_NAME = @pMODULE_SHORT_NAME + + IF NOT EXISTS(SELECT GUID FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER(@pUSERNAME)) + BEGIN + SET @RESULT = 'USER NOT CONFIGURED OR LISTED' + END + ELSE + BEGIN + SELECT @USER_ID = GUID,@USER_PRENAME = PRENAME, + @USER_SURNAME = NAME, @USER_SHORTNAME = SHORTNAME,@USER_EMAIL = EMAIL,@USER_LANGUAGE = LANGUAGE,@USER_DATE_FORMAT = DATE_FORMAT FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER(@pUSERNAME) + + --##### LICENSE COUNT + --SELECT @USERCOUNT_LOGGED_IN = [dbo].[FNDD_GET_LICENSE_COUNT] (@pCLIENTID) + + SELECT @USERCOUNT_LOGGED_IN = COUNT(*) FROM TBDD_USER_MODULE_LOG_IN WHERE UPPER(MODULE) = UPPER(@MODULE_NAME) AND CLIENT_ID = @pCLIENTID + --CHECK USER ÍS IN MODULE_USER_GROUP + IF EXISTS(select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = @USER_ID AND UPPER(T.NAME) = @USER_GROUPNAME) + BEGIN + SET @IS_IN_MODULE = 1 + SET @RESULT = 'User is part of Group (' + @USER_GROUPNAME + ')' + IF EXISTS(select T.* from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID) + BEGIN + SET @RESULT = @RESULT + '| User is also configured in User-Modules' + select @IS_ADMIN = T.IS_ADMIN,@USER_RIGHT_FILE_DEL = T.RIGHT1 from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID + END + END + ELSE + BEGIN + SET @RESULT = 'User not part of group (' + @USER_GROUPNAME + ')' + IF EXISTS(select T.* from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID) + BEGIN + SET @RESULT = @RESULT + '| BUT User configured in User-Modules' + select @IS_ADMIN = T.IS_ADMIN,@USER_RIGHT_FILE_DEL = T.RIGHT1 + --,@USER_RIGHT2 = T.RIGHT2 + from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID + END + END + + IF EXISTS(select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = @USER_ID AND UPPER(T.NAME) = @ADMIN_GROUPNAME) + BEGIN + SET @RESULT = @RESULT + '| User is part of group (' + @ADMIN_GROUPNAME + ')' + SET @IS_ADMIN = 1 + SET @IS_IN_MODULE = 1 + END + + END + +INSERT INTO @Table (USER_ID,USER_PRENAME, USER_SURNAME,USER_SHORTNAME,USER_EMAIL,USER_LANGUAGE,USER_DATE_FORMAT, USER_RIGHT_FILE_DEL, +MODULE_ACCESS,IS_ADMIN,USERCOUNT_LOGGED_IN, COMMENT,WORKING_MODE,USER_RIGHT2,USER_RIGHT3,USER_RIGHT4,USER_RIGHT5 +,ADDITIONAL_TITLE) + VALUES (@USER_ID,@USER_PRENAME,@USER_SURNAME,@USER_SHORTNAME,@USER_EMAIL,@USER_LANGUAGE,@USER_DATE_FORMAT,@USER_RIGHT_FILE_DEL, + @IS_IN_MODULE,@IS_ADMIN,@USERCOUNT_LOGGED_IN,@RESULT,@WORKING_MODE,@USER_RIGHT2,@USER_RIGHT3,@USER_RIGHT4,@USER_RIGHT5 + ,'PROD') + +RETURN +END +GO +CREATE PROCEDURE [dbo].[PRPM_DELETE_PROFILE](@pPID INT) +AS + delete from TBPM_CONTROL_TABLE where CONTROL_ID in (SELECT GUID FROM TBPM_PROFILE_CONTROLS where PROFIL_ID = 5); + IF OBJECT_ID (N'TBPM_ERROR_LOG', N'U') IS NOT NULL + DELETE FROM TBPM_ERROR_LOG WHERE PROFIL_ID = @pPID; + DELETE FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = @pPID; + DELETE FROM TBPM_PROFILE_FINAL_INDEXING WHERE PROFIL_ID = @pPID; + delete from TBPM_CONTROL_TABLE where CONTROL_ID in (select GUID FROM TBPM_PROFILE_CONTROLS WHERE PROFIL_ID = @pPID); + DELETE FROM TBPM_PROFILE_CONTROLS WHERE PROFIL_ID = @pPID; + DELETE FROM TBPM_PROFILE_USER WHERE PROFIL_ID = @pPID; + DELETE FROM TBPM_PROFILE_GROUP WHERE PROFIL_ID = @pPID; + DELETE FROM TBPM_PROFILE WHERE GUID = @pPID; + +GO +CREATE FUNCTION [dbo].[FNPM_GET_WM_FILE_PATH] (@pDOCGUID BIGINT,@STANDARD As INT = 0) +RETURNS VARCHAR(MAX) +AS +BEGIN + DECLARE @RELPATH VARCHAR(100),@FILEPATH VARCHAR(500),@NAVPATH as VARCHAR(MAX) + IF @STANDARD = 1 + SET @RELPATH = '\\windream\objects' + ELSE + SELECT @RELPATH = WM_REL_PATH FROM TBPM_KONFIGURATION WHERE GUID = 1 + SELECT @FILEPATH = REPLACE(FILE_PATH,'W:\','') FROM TBPM_PROFILE_FILES WHERE (GUID = @pDOCGUID) + SET @NAVPATH = @RELPATH + '\' + @FILEPATH + IF @NAVPATH IS NULL + SET @NAVPATH = '' + RETURN @NAVPATH +END +GO + +-- ============================================= +-- Author: Digital Data MS +-- Create date: 08.01.2020 +-- Description: Checks whether Doc is in use or not +-- ============================================= +CREATE FUNCTION [dbo].[FNPM_CHECK_DocGUID_Valid](@DocGUID BigInt) +RETURNS BIT +AS +BEGIN + DECLARE @RESULT BIT + SET @RESULT = 1 + IF EXISTS(SELECT GUID FROM TBPM_PROFILE_FILES WHERE GUID = @DocGUID) + BEGIN + IF EXISTS(SELECT GUID FROM TBPM_PROFILE_FILES WHERE GUID = @DocGUID AND (IN_WORK = 1 OR EDIT = 1 OR ACTIVE = 0)) + SET @RESULT = 0 + END + ELSE + SET @RESULT = 0 + RETURN @RESULT +END +GO +USE [msdb] +GO + +/****** Object: Job [PRPM_REFRESH_FILES_SQL] Script Date: 17.01.2022 13:23:39 ******/ +BEGIN TRANSACTION +DECLARE @ReturnCode INT +SELECT @ReturnCode = 0 +/****** Object: JobCategory [[Uncategorized (Local)]] Script Date: 17.01.2022 13:23:39 ******/ +IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'[Uncategorized (Local)]' AND category_class=1) +BEGIN +EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'[Uncategorized (Local)]' +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback + +END + +DECLARE @jobId BINARY(16) +EXEC @ReturnCode = msdb.dbo.sp_add_job @job_name=N'PRPM_REFRESH_FILES_SQL', + @enabled=1, + @notify_level_eventlog=0, + @notify_level_email=0, + @notify_level_netsend=0, + @notify_level_page=0, + @delete_level=0, + @description=N'Es ist keine Beschreibung verfügbar.', + @category_name=N'[Uncategorized (Local)]', + @owner_login_name=N'sa', @job_id = @jobId OUTPUT +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +/****** Object: Step [PRPM_REFRESH_FILES_SQL] Script Date: 17.01.2022 13:23:39 ******/ +EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'PRPM_REFRESH_FILES_SQL', + @step_id=1, + @cmdexec_success_code=0, + @on_success_action=1, + @on_success_step_id=0, + @on_fail_action=2, + @on_fail_step_id=0, + @retry_attempts=0, + @retry_interval=0, + @os_run_priority=0, @subsystem=N'TSQL', + @command=N'EXEC PRPM_REFRESH_FILES_SQL; +GO', + @database_name=N'DD_ECM', + @flags=0 +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +EXEC @ReturnCode = msdb.dbo.sp_update_job @job_id = @jobId, @start_step_id = 1 +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +EXEC @ReturnCode = msdb.dbo.sp_add_jobschedule @job_id=@jobId, @name=N'MO_FR', + @enabled=1, + @freq_type=8, + @freq_interval=62, + @freq_subday_type=4, + @freq_subday_interval=5, + @freq_relative_interval=0, + @freq_recurrence_factor=1, + @active_start_date=20200115, + @active_end_date=99991231, + @active_start_time=80000, + @active_end_time=170000, + @schedule_uid=N'ac93c8f9-3890-4111-a3de-768a66f97266' +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +EXEC @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @jobId, @server_name = N'(local)' +IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback +COMMIT TRANSACTION +GOTO EndSave +QuitWithRollback: + IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION +EndSave: +GO +--############################################################################################################################################################ +--GLOBAL-INDEXER AKA FILE-FLOW +--############################################################################################################################################################ +UPDATE TBDD_MODULES SET PRODUCT_VERSION = '2.5.2.0' where NAME = 'Global-Indexer' +GO +UPDATE TBDD_MODULES SET STRING1 = '\\windream\objects' WHERE SHORT_NAME = 'GLOBIX' AND STRING1 = 'W'; +CREATE TABLE TBGI_CONFIGURATION +( + GUID TINYINT, + WD_UNICODE BIT NOT NULL DEFAULT 0, + LICENSEKEY VARCHAR(1000) NOT NULL DEFAULT '', + IDX_EMAIL_ID VARCHAR(50) NOT NULL DEFAULT '', + IDX_EMAIL_FROM VARCHAR(50) NOT NULL DEFAULT '', + IDX_EMAIL_TO VARCHAR(50) NOT NULL DEFAULT '', + IDX_EMAIL_SUBJECT VARCHAR(50) NOT NULL DEFAULT '', + IDX_EMAIL_DATE_IN VARCHAR(50) NOT NULL DEFAULT '', + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBGI_CONFIGURATION_GUID PRIMARY KEY(GUID), + CONSTRAINT CH_TBGI_CONFIGURATION_GUID CHECK(GUID = 1) +) +GO +CREATE TRIGGER TBGI_CONFIGURATION_AFT_UPD ON TBGI_CONFIGURATION +FOR UPDATE +AS + UPDATE TBGI_CONFIGURATION SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBGI_CONFIGURATION.GUID = INSERTED.GUID +GO + +INSERT INTO TBGI_CONFIGURATION(GUID,IDX_EMAIL_ID,LICENSEKEY) +VALUES + (1,'','lsHEktEpn3R1UiIxAnvtY7aM5dBRxgb7aYTlEzH52V0=') +GO +------------------------------------------------------------------------------ +CREATE TABLE TBGI_FILES_USER +( + GUID BIGINT IDENTITY(1,1), + DocID BIGINT NOT NULL DEFAULT 0, + FILENAME2WORK VARCHAR(500) NOT NULL, + FILENAME_ONLY VARCHAR(250) NOT NULL DEFAULT '', + FILE_HASH VARCHAR(100), + USER@WORK VARCHAR(50) NOT NULL, + WORKED BIT NOT NULL DEFAULT 0, + HANDLE_TYPE VARCHAR(50) NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE() NOT NULL, + CONSTRAINT PK_TBGI_FILES_USER PRIMARY KEY(GUID) +) +GO +------------------------------------------------------------------------------ +CREATE TABLE TBGI_FOLDERWATCH_USER +( + GUID INTEGER IDENTITY(0,1), + [USER_ID] INT NOT NULL, + FOLDER_PATH VARCHAR(800) NOT NULL, + FOLDER_TYPE VARCHAR(20) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBGI_FOLDERWATCH_USER PRIMARY KEY (GUID), + CONSTRAINT UQ_USER_FOLDERWATCHPATH UNIQUE([USER_ID],FOLDER_PATH), + CONSTRAINT FK_TBGI_FOLDERWATCH_USER_USER_ID FOREIGN KEY([USER_ID]) REFERENCES TBDD_USER(GUID), +) +GO +CREATE TRIGGER TBGI_FOLDERWATCH_USER_AFT_UPD ON TBGI_FOLDERWATCH_USER +FOR UPDATE +AS + UPDATE TBGI_FOLDERWATCH_USER SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBGI_FOLDERWATCH_USER.GUID = INSERTED.GUID +GO +------------------------------------------------------------------------------ +CREATE TABLE TBGI_FUNCTION_REGEX + +( + GUID INTEGER IDENTITY(1,1), + FUNCTION_NAME VARCHAR(100) NOT NULL, + REGEX VARCHAR(2000) NOT NULL, + STRING1 VARCHAR(100), + STRING2 VARCHAR(100), + ADDED_WHO VARCHAR(50) DEFAULT 'Digital Data', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBGI_FUNCTION_REGEX PRIMARY KEY (GUID) +) +GO +CREATE TRIGGER TBGI_FUNCTION_REGEX_AFT_UPD ON TBGI_FUNCTION_REGEX +FOR UPDATE +AS + UPDATE TBGI_FUNCTION_REGEX SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBGI_FUNCTION_REGEX.GUID = INSERTED.GUID +GO + + +INSERT INTO TBGI_FUNCTION_REGEX(FUNCTION_NAME,REGEX) VALUES +('FROM_EMAIL_HEADER','From:(?:\s*[\w\s\d.@&,|+%\)\(\-]*<|\s*=\?[\w\s\d.@&,|+%?=\)\(\-]+\?=\s*<|\s*""[\w\s\d.@&,|+%\)\(\-]+""\s*<|\s*)([A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,})>?') +GO +INSERT INTO TBGI_FUNCTION_REGEX(FUNCTION_NAME,REGEX) VALUES +('TO_EMAIL_HEADER','To:(?:\s*[\w\s\d.@&,|+%\)\(\-]+<|\s*=\?[\w\s\d.@&,|+%?=\)\(\-]+\?=\s*<|\s*""[\w\s\d.@&,|+%\)\(\-]+""\s*<|\s*)([A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,})>?') +GO +------------------------------------------------------------------------------ +CREATE TABLE TBGI_HISTORY +( + GUID INT IDENTITY(1,1), + FILENAME_ORIGINAL VARCHAR(512), + FILENAME_NEW VARCHAR(512), + INDEX1 VARCHAR(250), + INDEX2 VARCHAR(250), + INDEX3 VARCHAR(250), + INDEX4 VARCHAR(250), + INDEX5 VARCHAR(250), + INDEX6 VARCHAR(250), + INDEX7 VARCHAR(250), + INDEX8 VARCHAR(250), + INDEX9 VARCHAR(250), + INDEX10 VARCHAR(250), + MSG_ID VARCHAR(250), + ATTACHMENT BIT NOT NULL DEFAULT 0, + FILE_HASH VARCHAR(100), + ADDED_WHO VARCHAR(50), + ADDED_WHEN DATETIME DEFAULT GETDATE(), + ADDED_WHERE VARCHAR(100), + CONSTRAINT PK_TBGI_HISTORY PRIMARY KEY(GUID) +) +GO + +------------------------------------------------------------------------------ +CREATE TABLE TBGI_OBJECTTYPE_EMAIL_INDEX + +( + GUID INTEGER IDENTITY(1,1), + OBJECTTYPE VARCHAR(100) NOT NULL, + IDX_EMAIL_ID VARCHAR(50) NOT NULL DEFAULT '', + IDX_EMAIL_FROM VARCHAR(50) NOT NULL DEFAULT '', + IDX_EMAIL_TO VARCHAR(50) NOT NULL DEFAULT '', + IDX_EMAIL_SUBJECT VARCHAR(50) NOT NULL DEFAULT '', + IDX_EMAIL_DATE_IN VARCHAR(50) NOT NULL DEFAULT '', + IDX_CHECK_ATTACHMENT VARCHAR(50) NOT NULL DEFAULT '', + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'Digital Data', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBGI_OBJECTTYPE_EMAIL_INDEX PRIMARY KEY (GUID) +) +GO + +CREATE TRIGGER TBGI_OBJECTTYPE_EMAIL_INDEX_AFT_UPD ON TBGI_OBJECTTYPE_EMAIL_INDEX +FOR UPDATE +AS + UPDATE TBGI_OBJECTTYPE_EMAIL_INDEX SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBGI_OBJECTTYPE_EMAIL_INDEX.GUID = INSERTED.GUID +GO +------------------------------------------------------------------------------ +CREATE TABLE TBHOTKEY_PROFILE +( + GUID INTEGER IDENTITY(1,1), + NAME VARCHAR(50) NOT NULL, + OBJECTTYPE VARCHAR(100) NOT NULL, + WD_SEARCH VARCHAR(250) NOT NULL, + HOTKEY1 VARCHAR(10) NOT NULL, + HOTKEY2 VARCHAR(5) NOT NULL, + WINDOW_NAME VARCHAR(100) NOT NULL, + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBHOTKEY_PROFILE PRIMARY KEY (GUID) +) +GO + +CREATE TRIGGER TBHOTKEY_PROFILE_UPD ON TBHOTKEY_PROFILE +FOR UPDATE +AS +BEGIN + UPDATE TBHOTKEY_PROFILE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBHOTKEY_PROFILE.GUID = INSERTED.GUID +END +GO +------------------------------------------------------------------------------ + +CREATE TABLE TBHOTKEY_PATTERNS +( + GUID INT IDENTITY(1,1), + HKPROFILE_ID INT NOT NULL, + PATTERN_WDSEARCH VARCHAR(50) NOT NULL, + WINDOW_CONTROL VARCHAR(100) NOT NULL, + SEQUENCE_NUMBER INTEGER NOT NULL, + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PKTBHOTKEY_PATTERNS PRIMARY KEY(GUID), + CONSTRAINT FK_TBHOTKEY_PATTERNS_PROFILE_ID FOREIGN KEY(HKPROFILE_ID) REFERENCES TBHOTKEY_PROFILE(GUID) +) +GO +CREATE TRIGGER TBHOTKEY_PATTERNS_AFT_UPD ON TBHOTKEY_PATTERNS +FOR UPDATE +AS +BEGIN + UPDATE TBHOTKEY_PATTERNS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBHOTKEY_PATTERNS.GUID = INSERTED.GUID +END +GO +------------------------------------------------------------------------------ +CREATE TABLE TBHOTKEY_WINDOW_HOOK +( + GUID INT IDENTITY(1,1), + HKPROFILE_ID INT NOT NULL, + SEQUENCE_NUMBER INTEGER NOT NULL, + CONTROL_VALUE VARCHAR(100) NOT NULL, + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PKTBHOTKEY_WINDOW_HOOK PRIMARY KEY(GUID), + CONSTRAINT FK_TBHOTKEY_WINDOW_HOOK_PROFILE_ID FOREIGN KEY(HKPROFILE_ID) REFERENCES TBHOTKEY_PROFILE(GUID) +) +GO +CREATE TRIGGER TBHOTKEY_WINDOW_HOOK_AFT_UPD ON TBHOTKEY_WINDOW_HOOK +FOR UPDATE +AS +BEGIN + UPDATE TBHOTKEY_WINDOW_HOOK SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBHOTKEY_WINDOW_HOOK.GUID = INSERTED.GUID +END +GO +------------------------------------------------------------------------------ +CREATE TABLE TBHOTKEY_PATTERNS_REWORK +( + GUID INT IDENTITY(1,1), + HKPATTERN_ID INT NOT NULL, + TYPE VARCHAR(30) NOT NULL, + FUNCTION1 VARCHAR(250) DEFAULT '', + FUNCTION2 VARCHAR(250) DEFAULT '', + TEXT1 VARCHAR(100) DEFAULT '', + TEXT2 VARCHAR(100) DEFAULT '', + SEQUENCE INTEGER NOT NULL DEFAULT 1, + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBHOTKEY_PATTERNS_REWORK PRIMARY KEY(GUID), + CONSTRAINT FK_TBHOTKEY_PATTERNS_REWORK_HKPATTERN_ID FOREIGN KEY(HKPATTERN_ID) REFERENCES TBHOTKEY_PATTERNS(GUID) +) +GO +CREATE TRIGGER TTBHOTKEY_PATTERNS_REWORK_AFT_UPD ON TBHOTKEY_PATTERNS_REWORK +FOR UPDATE +AS +BEGIN + UPDATE TBHOTKEY_PATTERNS_REWORK SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBHOTKEY_PATTERNS_REWORK.GUID = INSERTED.GUID +END +GO +------------------------------------------------------------------------------ +CREATE TABLE TBHOTKEY_USER_PROFILE +( + GUID INT IDENTITY(1,1), + HKPROFILE_ID INT NOT NULL, + [USER_ID] INT NOT NULL, + WD_SEARCH VARCHAR(250) NOT NULL DEFAULT '', + HOTKEY1 VARCHAR(10) NOT NULL DEFAULT '', + HOTKEY2 VARCHAR(5) NOT NULL DEFAULT '', + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBHOTKEY_USER_PROFILE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBHOTKEY_USER_PROFILE UNIQUE (HKPROFILE_ID,[USER_ID]), + CONSTRAINT FK_TBHOTKEY_USER_PROFILE_PROFILE_ID FOREIGN KEY(HKPROFILE_ID) REFERENCES TBHOTKEY_PROFILE(GUID), + CONSTRAINT FK_TBHOTKEY_USER_PROFILE_USER_ID FOREIGN KEY([USER_ID]) REFERENCES TBDD_USER(GUID) +) +GO +CREATE TRIGGER TBHOTKEY_USER_PROFILE_AFT_UPD ON TBHOTKEY_USER_PROFILE +FOR UPDATE +AS +BEGIN + UPDATE TBHOTKEY_USER_PROFILE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBHOTKEY_USER_PROFILE.GUID = INSERTED.GUID +END +GO +------------------------------------------------------------------------------ +CREATE TABLE TBHOTKEYTEMP_USER_HOTKEYS +( + HOTKEY_ID INTEGER NOT NULL, + HOTKEY1 VARCHAR(10) NOT NULL, + HOTKEY2 VARCHAR(5) NOT NULL, + [USER_ID] INTEGER NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBHOTKEYTEMP_USER_HOTKEYS PRIMARY KEY (HOTKEY1,HOTKEY2,[USER_ID]) +) +GO +------------------------------------------------------------------------------ +--############# VIEWS ################# +------------------------------------------------------------------------------ +------------------------------------------------------------------------------ +CREATE VIEW [dbo].[VWGI_DOCTYPE_GROUP] AS +SELECT + T.GUID, + T.DOCTYPE_ID, + T2.BEZEICHNUNG AS DOCTYPE, + T.GROUP_ID, + T1.NAME AS [GROUP], + T.ADDED_WHO, + T.ADDED_WHEN, + T.CHANGED_WHEN +FROM + TBDD_USRGRP_DOKTYPE T, + TBDD_GROUPS T1, + TBDD_DOKUMENTART T2 +WHERE + T.DOCTYPE_ID = T2.GUID AND + T.GROUP_ID = T1.GUID AND + T1.ACTIVE = 1 AND + T2.AKTIV = 1 +GO +CREATE VIEW [dbo].[VWGI_DOCTYPE_USER] AS +SELECT DISTINCT + T.GUID AS [USER_ID], + T.USERNAME, + --T2.NAME AS GROUP_NAME, + T3.DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.ZIEL_PFAD, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, + --T5.OBJECT_TITLE as OBJECT_ST_NAME, + T4.SEQUENCE +FROM + DD_ECM.dbo.TBDD_USER T, + DD_ECM.dbo.TBDD_GROUPS_USER T1, + DD_ECM.dbo.TBDD_GROUPS T2, + DD_ECM.dbo.TBDD_USRGRP_DOKTYPE T3, + DD_ECM.dbo.TBDD_DOKUMENTART T4--, + --IDB.dbo.TBIDB_OBJECT_STORE T5 +WHERE + T4.AKTIV = 1 AND + T.GUID = T1.[USER_ID] AND + T1.GROUP_ID = T2.GUID AND + T2.GUID = T3.GROUP_ID AND + T3.DOCTYPE_ID = T4.GUID AND + --T4.IDB_OBJECT_STORE_ID = T5.GUID AND + + T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +UNION +SELECT DISTINCT + T.GUID AS [USER_ID], + T.USERNAME, + --'' AS GROUP_NAME, + T4.GUID as DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.ZIEL_PFAD, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, + --T5.OBJECT_TITLE as OBJECT_ST_NAME, + T4.SEQUENCE +FROM + DD_ECM.dbo.TBDD_USER T, + DD_ECM.dbo.TBDD_USER_DOKTYPE T3, + DD_ECM.dbo.TBDD_DOKUMENTART T4--, + --IDB.dbo.TBIDB_OBJECT_STORE T5 +WHERE + T4.AKTIV = 1 AND + T.GUID = T3.[USER_ID] AND + T3.DOCTYPE_ID = T4.GUID AND + --T4.IDB_OBJECT_STORE_ID = T5.GUID AND + T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +GO +------------------------------------------------------------------------------ + +CREATE VIEW [dbo].[VWGI_USER_GROUPS_RELATION] AS +SELECT DISTINCT + T.GUID AS [USER_ID], + T.USERNAME, + --T2.NAME AS GROUP_NAME, + T3.DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.ZIEL_PFAD, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, + T4.SEQUENCE +FROM + DD_ECM.dbo.TBDD_USER T, + DD_ECM.dbo.TBDD_GROUPS_USER T1, + DD_ECM.dbo.TBDD_GROUPS T2, + DD_ECM.dbo.TBDD_USRGRP_DOKTYPE T3, + DD_ECM.dbo.TBDD_DOKUMENTART T4 +WHERE + T4.AKTIV = 1 AND + T.GUID = T1.[USER_ID] AND + T1.GROUP_ID = T2.GUID AND + T2.GUID = T3.GROUP_ID AND + T3.DOCTYPE_ID = T4.GUID AND + + T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +UNION +SELECT DISTINCT + T.GUID AS [USER_ID], + T.USERNAME, + --'' AS GROUP_NAME, + T4.GUID as DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.ZIEL_PFAD, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, + T4.SEQUENCE +FROM + DD_ECM.dbo.TBDD_USER T, + DD_ECM.dbo.TBDD_USER_DOKTYPE T3, + DD_ECM.dbo.TBDD_DOKUMENTART T4 +WHERE + T4.AKTIV = 1 AND + T.GUID = T3.[USER_ID] AND + T3.DOCTYPE_ID = T4.GUID AND + T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +GO + +------------------------------------------------------------------------------ +--############# PROCEDURES ################# +------------------------------------------------------------------------------ +CREATE PROCEDURE [dbo].[PRDD_GLOBIX_DELETE_DOCTYPE](@pDOCID INT) +AS +BEGIN TRY + IF OBJECT_ID(N'dbo.TBPMO_CLIENT_DOCTYPE', N'U') IS NOT NULL + DELETE FROM TBPMO_CLIENT_DOCTYPE WHERE DOCTYPE_ID = @pDOCID + IF OBJECT_ID(N'dbo.TBPMO_TEMPLATE', N'U') IS NOT NULL + DELETE FROM TBPMO_TEMPLATE WHERE DOCTYPE_ID = @pDOCID + IF OBJECT_ID(N'dbo.TBPMO_WD_FORMVIEW_DOKTYPES', N'U') IS NOT NULL + DELETE FROM TBPMO_WD_FORMVIEW_DOKTYPES WHERE DOCTYPE_ID = @pDOCID + + DELETE FROM TBDD_INDEX_MAN_POSTPROCESSING WHERE IDXMAN_ID IN (SELECT GUID FROM TBDD_INDEX_MAN WHERE DOK_ID = @pDOCID) + DELETE FROM TBDD_INDEX_MAN WHERE DOK_ID = @pDOCID + DELETE FROM TBDD_INDEX_AUTOM WHERE DOCTYPE_ID = @pDOCID + DELETE FROM TBDD_USRGRP_DOKTYPE WHERE DOCTYPE_ID = @pDOCID + DELETE FROM TBGI_REGEX_DOCTYPE WHERE DOCTYPE_ID = @pDOCID + DELETE FROM TBDD_DOKUMENTART_MODULE WHERE DOKART_ID = @pDOCID + DELETE FROM TBDD_DOKUMENTART WHERE GUID = @pDOCID +END TRY +BEGIN CATCH + PRINT 'FEHLER IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + ' - ZEILE: ' + CONVERT(VARCHAR(10),ERROR_LINE()) + + ' - FEHLER-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +CREATE PROCEDURE [dbo].[PRDD_COPY_DOKPROFILE](@pDOCTYPE_ID INT,@pMODULE_ID INT) +AS +DECLARE @NEWDOCTYPE_ID INT + +BEGIN + INSERT INTO TBDD_DOKUMENTART ( + BEZEICHNUNG,EINGANGSART_ID,WINDREAM_DIRECT,KURZNAME,ZIEL_PFAD,BESCHREIBUNG,AKTIV,NAMENKONVENTION,OBJEKTTYP,FOLDER_FOR_INDEX,ERSTELLTWER,DUPLICATE_HANDLING + ) + SELECT + 'COPY_' + BEZEICHNUNG ,EINGANGSART_ID,WINDREAM_DIRECT,KURZNAME,ZIEL_PFAD,BESCHREIBUNG,0,NAMENKONVENTION,OBJEKTTYP,FOLDER_FOR_INDEX,'COPY-PROCEDURE',DUPLICATE_HANDLING FROM TBDD_DOKUMENTART WHERE GUID = @pDOCTYPE_ID + + SELECT @NEWDOCTYPE_ID = MAX(GUID) FROM TBDD_DOKUMENTART + INSERT INTO TBDD_DOKUMENTART_MODULE (DOKART_ID,MODULE_ID,ADDED_WHO) VALUES (@NEWDOCTYPE_ID,@pMODULE_ID,'COPY-PROCEDURE') + + INSERT INTO TBDD_INDEX_AUTOM ( + DOCTYPE_ID,INDEXNAME,VALUE, SQL_ACTIVE,CONNECTION_ID,SQL_RESULT,COMMENT,ACTIVE,ADDED_WHO) + SELECT @NEWDOCTYPE_ID,INDEXNAME,VALUE, SQL_ACTIVE,CONNECTION_ID,SQL_RESULT,COMMENT,ACTIVE,'COPY-PROCEDURE' FROM TBDD_INDEX_AUTOM WHERE DOCTYPE_ID = @pDOCTYPE_ID + + DECLARE + @MANINDEX_ID INTEGER, + @NEW_ID INTEGER + DECLARE c_INDEX CURSOR FOR + SELECT GUID FROM TBDD_INDEX_MAN WHERE DOK_ID = @pDOCTYPE_ID ORDER BY SEQUENCE + OPEN c_INDEX + FETCH NEXT FROM c_INDEX INTO @MANINDEX_ID + WHILE @@FETCH_STATUS = 0 + BEGIN + INSERT INTO TBDD_INDEX_MAN ( + DOK_ID, NAME, WD_INDEX, COMMENT, DATATYPE, SUGGESTION, DEFAULT_VALUE, CONNECTION_ID, SEQUENCE, ACTIVE , ADDED_WHO ,SQL_RESULT, SQL_CHECK, OPTIONAL, MULTISELECT, VKT_ADD_ITEM, VKT_PREVENT_MULTIPLE_VALUES) + SELECT @NEWDOCTYPE_ID, NAME, WD_INDEX, COMMENT, DATATYPE, SUGGESTION, DEFAULT_VALUE, CONNECTION_ID, SEQUENCE, ACTIVE ,'COPY-PROCEDURE',SQL_RESULT, SQL_CHECK, OPTIONAL, MULTISELECT, VKT_ADD_ITEM, VKT_PREVENT_MULTIPLE_VALUES FROM TBDD_INDEX_MAN WHERE GUID = @MANINDEX_ID + + SELECT @NEW_ID = MAX(GUID) FROM TBDD_INDEX_MAN WHERE DOK_ID = @NEWDOCTYPE_ID + + --Nachbearbeitungsfunktionen hinzufügen + IF EXISTS(SELECT * FROM TBDD_INDEX_MAN_POSTPROCESSING WHERE IDXMAN_ID = @MANINDEX_ID) + BEGIN + DECLARE + @NB_ID INTEGER + DECLARE c_NBFUNCTION CURSOR FOR + SELECT GUID FROM TBDD_INDEX_MAN_POSTPROCESSING WHERE IDXMAN_ID = @MANINDEX_ID ORDER BY SEQUENCE ASC + OPEN c_NBFUNCTION + FETCH NEXT FROM c_NBFUNCTION INTO @NB_ID + WHILE @@FETCH_STATUS = 0 + BEGIN + PRINT '@NB_ID: ' + CONVERT(VARCHAR(5),@NB_ID) + INSERT INTO TBDD_INDEX_MAN_POSTPROCESSING ( + IDXMAN_ID, TYPE, FUNCTION1, FUNCTION2, TEXT1, TEXT2, TEXT3, SEQUENCE, ADDED_WHO, VARIANT) + SELECT @NEW_ID, TYPE, FUNCTION1, FUNCTION2, TEXT1, TEXT2, TEXT3, SEQUENCE, 'COPY-ROUTINE',VARIANT + FROM TBDD_INDEX_MAN_POSTPROCESSING WHERE GUID = @NB_ID + FETCH NEXT FROM c_NBFUNCTION INTO @NB_ID + END + CLOSE c_NBFUNCTION + DEALLOCATE c_NBFUNCTION + END + + FETCH NEXT FROM c_INDEX INTO @MANINDEX_ID + END + CLOSE c_INDEX + DEALLOCATE c_INDEX +END +GO + + +CREATE OR ALTER VIEW [dbo].[VWGI_DOCTYPE_IDB] AS +SELECT + T4.GUID as DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.FOLDER_FOR_INDEX DYNAMIC_FOLDER, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + --T6.OBJECT_TITLE AS OBJECT_STORE, + T4.IDB_OBJECT_STORE_ID OBJECT_ST_ID, + --T7.CAT_TITLE AS OBJECT_ST_PATH, + T4.ERSTELLTWANN, + T4.GEAENDERTWANN, + T4.SEQUENCE--, + --T4.IDB_DOCTYPE_ID +FROM + DD_ECM.dbo.TBDD_DOKUMENTART T4 --LEFT JOIN IDB.dbo.TBIDB_OBJECT_STORE T6 ON T4.IDB_OBJECT_STORE_ID = T6.GUID + --LEFT JOIN IDB.dbo.TBIDB_CATALOG T7 On T6.CAT_ID = T7.GUID +WHERE + T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +GO +CREATE VIEW [dbo].[VWGI_DOCTYPE] AS +SELECT DISTINCT + T.GUID AS [USER_ID], + T.USERNAME, + --T2.NAME AS GROUP_NAME, + T3.DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.ZIEL_PFAD, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + --T4.IDB_FILESTORE_ID, + T4.SEQUENCE +FROM + TBDD_USER T, + TBDD_GROUPS_USER T1, + TBDD_GROUPS T2, + TBDD_USRGRP_DOKTYPE T3, + TBDD_DOKUMENTART T4 +WHERE + T4.AKTIV = 1 AND + T.GUID = T1.[USER_ID] AND + T1.GROUP_ID = T2.GUID AND + T2.GUID = T3.GROUP_ID AND + T3.DOCTYPE_ID = T4.GUID AND + T4.GUID in (SELECT DOKART_ID FROM TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +UNION +SELECT DISTINCT + T.GUID AS [USER_ID], + T.USERNAME, + --'' AS GROUP_NAME, + T4.GUID as DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.ZIEL_PFAD, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + --T4.IDB_FILESTORE_ID, + T4.SEQUENCE +FROM + TBDD_USER T, + TBDD_USER_DOKTYPE T3, + TBDD_DOKUMENTART T4 +WHERE + T4.AKTIV = 1 AND + T.GUID = T3.[USER_ID] AND + T3.DOCTYPE_ID = T4.GUID AND + T4.GUID in (SELECT DOKART_ID FROM TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +GO + + +CREATE TABLE TBGI_REGEX_DOCTYPE( + GUID INTEGER NOT NULL IDENTITY(1,1), + REGEX VARCHAR(500) NOT NULL, + DOCTYPE_ID INTEGER, + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBGI_REGEX_DOCTYPE PRIMARY KEY (GUID), + CONSTRAINT FK_TBGI_REGEX_DOCTYPE_DTID FOREIGN KEY (DOCTYPE_ID) REFERENCES TBDD_DOKUMENTART (GUID) +) +GO +CREATE TRIGGER TBGI_REGEX_DOCTYPE_AFT_UPD ON TBGI_REGEX_DOCTYPE +FOR UPDATE +AS + UPDATE TBGI_REGEX_DOCTYPE SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBGI_REGEX_DOCTYPE.GUID = INSERTED.GUID +GO +IF EXISTS (SELECT name from sys.indexes + WHERE name = N'UQ_TBGI_REGEX_DOCTYPE_DOCTYPE_ID') + DROP INDEX UQ_TBGI_REGEX_DOCTYPE_DOCTYPE_ID ON TBGI_REGEX_DOCTYPE; +GO +CREATE UNIQUE INDEX UQ_TBGI_REGEX_DOCTYPE_DOCTYPE_ID + ON TBGI_REGEX_DOCTYPE (DOCTYPE_ID); +GO +CREATE PROCEDURE [dbo].[PRDD_CHECK_REL_DOCTYPE_MODULE] (@MODULE_SHORT VARCHAR(20),@DOCTYPE_ID INTEGER) +AS +DECLARE @MODULEID INTEGER +SELECT @MODULEID = GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'GLOBIX' + +If not exists(select guid from TBDD_DOKUMENTART_MODULE where DOKART_ID = @DOCTYPE_ID and MODULE_ID = @MODULEID) + INSERT INTO TBDD_DOKUMENTART_MODULE (DOKART_ID,MODULE_ID, ADDED_WHO) VALUES (@DOCTYPE_ID,@MODULEID, 'PRDD_CHECK_REL_DOCTYPE_MODULE') +GO +--############################################################################################################################################################ +--CLIPBOARD-WATCHER +--############################################################################################################################################################ +IF not EXISTS(SELECT GUID FROM TBDD_MODULES WHERE NAME = 'Clipboard-Watcher' ) + INSERT INTO TBDD_MODULES (NAME, SHORT_NAME, LICENSE,ACTIVE) VALUES ('Clipboard-Watcher','CW','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=',1) +GO +UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.1' where UPPER(NAME) = UPPER('Clipboard-Watcher') +GO +--ADDs THE USER WITH ADMIN-RIGHTS TO USER-MODULE RELATION +INSERT INTO TBDD_USER_MODULES(USER_ID,MODULE_ID) +SELECT DISTINCT USER_ID,(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'CW') +FROM TBDD_USER_MODULES where IS_ADMIN = 1 +GO +INSERT INTO TBDD_CLIENT_USER (USER_ID,CLIENT_ID) SELECT GUID,1 FROM TBDD_USER WHERE GUID NOT IN (SELECT USER_ID FROM TBDD_CLIENT_USER WHERE CLIENT_ID = 1) +GO +CREATE TABLE TBCW_CONFIGURATION +( + GUID TINYINT, + WD_UNICODE BIT NOT NULL DEFAULT 1, + GDPICTURE_LICENSE VARCHAR(500) NOT NULL DEFAULT '', + ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBCW_CONFIGURATION_GUID PRIMARY KEY(GUID), + CONSTRAINT CH_TBCW_CONFIGURATION_GUID CHECK(GUID = 1) +) +GO +CREATE TRIGGER TBCW_CONFIGURATION_AFT_UPD ON TBCW_CONFIGURATION +FOR UPDATE +AS + UPDATE TBCW_CONFIGURATION SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBCW_CONFIGURATION.GUID = INSERTED.GUID +GO +INSERT INTO TBCW_CONFIGURATION (GUID) VALUES (1) +GO +--ALTER TABLE TBDD_CLIENT +--ADD LICENSE_DDCBSEARCHER VARCHAR(5000) NOT NULL DEFAULT '' +--GO +CREATE TABLE TBCW_PROFILES +( + GUID INTEGER NOT NULL IDENTITY(1,1), + NAME VARCHAR(100) NOT NULL, + PROFILE_TYPE SMALLINT NOT NULL DEFAULT 0, + REGEX_EXPRESSION VARCHAR(100) NOT NULL, + ACTIVE BIT NOT NULL DEFAULT 0, + COMMENT VARCHAR(500), + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBCW_PROFILES PRIMARY KEY (GUID), + CONSTRAINT UQ_TBCW_PROFILES_NAME UNIQUE(NAME) +) +GO +CREATE TRIGGER TBCW_PROFILES_AFT_UPD ON TBCW_PROFILES +FOR UPDATE +AS + UPDATE TBCW_PROFILES SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBCW_PROFILES.GUID = INSERTED.GUID +GO +CREATE TABLE TBCW_USER_PROFILE +( + GUID INT IDENTITY(1,1), + PROFILE_ID INT NOT NULL, + [USER_ID] INT NOT NULL, + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBCW_USER_PROFILE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBCW_USER_PROFILE_PID_UID UNIQUE (PROFILE_ID,[USER_ID]) +) +GO +CREATE TABLE TBCW_PROFILE_PROCESS +( + GUID INT IDENTITY(1,1), + PROFILE_ID INT NOT NULL, + PROC_NAME VARCHAR(100) NOT NULL, + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBCW_PROFILE_PROCESS PRIMARY KEY (GUID), + CONSTRAINT UQ_TBCW_PROFILE_PROCESS UNIQUE (PROFILE_ID,PROC_NAME) +) +GO +CREATE TABLE TBCW_PROF_DOC_SEARCH( + GUID INTEGER NOT NULL IDENTITY(1,1), + PROFILE_ID INTEGER NOT NULL, + CONN_ID TinyINT NOT NULL DEFAULT 0, + SQL_COMMAND VARCHAR(MAX) NOT NULL, + COUNT_COMMAND VARCHAR(MAX) NOT NULL, + TAB_INDEX TINYINT NOT NULL DEFAULT 0, + ACTIVE BIT NOT NULL DEFAULT 0, + TAB_TITLE VARCHAR(100) NOT NULL DEFAULT 'NOT DEFINED', + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBCW_PROF_DOC_SEARCH PRIMARY KEY (GUID), + CONSTRAINT FK_TBCW_PROF_DOC_SEARCH_PROF_IF FOREIGN KEY (PROFILE_ID) REFERENCES TBCW_PROFILES (GUID) +) +GO +CREATE TRIGGER TBCW_PROF_DOC_SEARCH_AFT_UPD ON TBCW_PROF_DOC_SEARCH +FOR UPDATE +AS + UPDATE TBCW_PROF_DOC_SEARCH SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBCW_PROF_DOC_SEARCH.GUID = INSERTED.GUID +GO +CREATE TRIGGER [dbo].[TBCW_PROF_DOC_SEARCH_AFT_INS] ON [dbo].[TBCW_PROF_DOC_SEARCH] +WITH EXECUTE AS CALLER +FOR INSERT +AS +BEGIN TRY + DECLARE @TABINDEX TINYINT + ,@MAX_INDEX TINYINT + ,@PROFILE_ID INT + ,@GUID INTEGER + SELECT @TABINDEX = TAB_INDEX + ,@PROFILE_ID = PROFILE_ID + ,@GUID = GUID FROM inserted + + SELECT @MAX_INDEX = ISNULL(MAX(TAB_INDEX),0) FROM TBCW_PROF_DOC_SEARCH WHERE PROFILE_ID = @PROFILE_ID AND GUID <> @GUID + UPDATE TBCW_PROF_DOC_SEARCH SET TAB_INDEX = @MAX_INDEX + FROM INSERTED + WHERE TBCW_PROF_DOC_SEARCH.GUID = INSERTED.GUID + + UPDATE TBCW_PROF_DOC_SEARCH SET ADDED_WHEN = GETDATE() FROM INSERTED WHERE TBCW_PROF_DOC_SEARCH.GUID = INSERTED.GUID + + +END TRY +BEGIN CATCH + PRINT 'ERROR IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + + ' - ERROR-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +--DROP TABLE TBCW_PROF_DATA_SEARCH +--GO +CREATE TABLE TBCW_PROF_DATA_SEARCH( + GUID INTEGER NOT NULL IDENTITY(1,1), + PROFILE_ID INTEGER NOT NULL, + CONN_ID TinyINT NOT NULL DEFAULT 0, + SQL_COMMAND VARCHAR(MAX) NOT NULL, + COUNT_COMMAND VARCHAR(MAX) NOT NULL, + TAB_INDEX TINYINT NOT NULL DEFAULT 0, + ACTIVE BIT NOT NULL DEFAULT 0, + TAB_TITLE VARCHAR(100) NOT NULL DEFAULT 'NOT DEFINED', + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBCW_PROF_DATA_SEARCH PRIMARY KEY (GUID), + CONSTRAINT FK_TBCW_PROF_DATA_SEARCH_PROF_IF FOREIGN KEY (PROFILE_ID) REFERENCES TBCW_PROFILES (GUID) +) +GO +CREATE TRIGGER TBCW_PROF_DATA_SEARCH_AFT_UPD ON TBCW_PROF_DATA_SEARCH +FOR UPDATE +AS + UPDATE TBCW_PROF_DATA_SEARCH SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBCW_PROF_DATA_SEARCH.GUID = INSERTED.GUID +GO +CREATE TRIGGER [dbo].[TBCW_PROF_DATA_SEARCH_AFT_INS] ON [dbo].[TBCW_PROF_DATA_SEARCH] +WITH EXECUTE AS CALLER +FOR INSERT +AS +BEGIN TRY + DECLARE @TABINDEX TINYINT + ,@MAX_INDEX TINYINT + ,@PROFILE_ID INT + ,@GUID INTEGER + SELECT @TABINDEX = TAB_INDEX + ,@PROFILE_ID = PROFILE_ID + ,@GUID = GUID FROM inserted + + SELECT @MAX_INDEX = ISNULL(MAX(TAB_INDEX),0) FROM TBCW_PROF_DATA_SEARCH WHERE PROFILE_ID = @PROFILE_ID AND GUID <> @GUID + UPDATE TBCW_PROF_DATA_SEARCH SET TAB_INDEX = @MAX_INDEX + FROM INSERTED + WHERE TBCW_PROF_DATA_SEARCH.GUID = INSERTED.GUID + UPDATE TBCW_PROF_DATA_SEARCH SET ADDED_WHEN = GETDATE() FROM INSERTED WHERE TBCW_PROF_DATA_SEARCH.GUID = INSERTED.GUID + + +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].[TBCW_GROUP_PROFILE]( + GUID INTEGER IDENTITY(1,1) NOT NULL, + PROFILE_ID INTEGER NOT NULL, + GROUP_ID INTEGER NOT NULL, + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME NULL DEFAULT GETDATE(), + CONSTRAINT PK_TBCW_GROUP_PROFILE PRIMARY KEY (GUID), + CONSTRAINT UQ_TBCW_GROUP_PROFILE_PID_UID UNIQUE (PROFILE_ID,GROUP_ID) + ) + +GO + +CREATE TABLE TBCW_PROF_REL_WINDOW( + GUID INTEGER NOT NULL IDENTITY(1,1), + PROCESS_ID INTEGER NOT NULL, + DESCRIPTION VARCHAR(250) NOT NULL DEFAULT '', + REGEX VARCHAR(500) NOT NULL, + SEQUENCE TINYINT NOT NULL DEFAULT 0, + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBCW_PROF_REL_WINDOW PRIMARY KEY (GUID), + CONSTRAINT FK_TBCW_PROF_REL_WINDOW_PROCESS_ID FOREIGN KEY (PROCESS_ID) REFERENCES TBCW_PROFILE_PROCESS (GUID) +) +GO +CREATE TRIGGER TBCW_PROF_REL_WINDOW_AFT_UPD ON TBCW_PROF_REL_WINDOW +FOR UPDATE +AS + UPDATE TBCW_PROF_REL_WINDOW SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBCW_PROF_REL_WINDOW.GUID = INSERTED.GUID +GO +CREATE TRIGGER [dbo].[TBCW_PROF_REL_WINDOW_AFT_INS] ON [dbo].TBCW_PROF_REL_WINDOW +WITH EXECUTE AS CALLER +FOR INSERT +AS +BEGIN TRY + DECLARE @SEQUENCE TINYINT + ,@MAX_SEQUENCE TINYINT + ,@PROCESS_ID INT + ,@GUID INTEGER + SELECT @SEQUENCE = SEQUENCE + ,@PROCESS_ID = PROCESS_ID + ,@GUID = GUID FROM inserted + + SELECT @MAX_SEQUENCE = ISNULL(MAX(SEQUENCE),0) FROM TBCW_PROF_REL_WINDOW WHERE PROCESS_ID = @PROCESS_ID AND GUID <> @GUID + UPDATE TBCW_PROF_REL_WINDOW SET SEQUENCE = @MAX_SEQUENCE + FROM INSERTED + WHERE TBCW_PROF_REL_WINDOW.GUID = INSERTED.GUID +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 TBCW_PROF_REL_CONTROL( + GUID INTEGER NOT NULL IDENTITY(1,1), + DESCRIPTION VARCHAR(250) NOT NULL, + WINDOW_ID INTEGER NOT NULL, + CONTROL_NAME VARCHAR(500) NOT NULL DEFAULT '', + [TOPLEFT_TOP] INTEGER NOT NULL DEFAULT 0, + [TOPLEFT_LEFT] INTEGER NOT NULL DEFAULT 0, + [TOPLEFT_RIGHT] INTEGER NOT NULL DEFAULT 0, + [TOPLEFT_BOTTOM] INTEGER NOT NULL DEFAULT 0, + [TOPRIGHT_TOP] INTEGER NOT NULL DEFAULT 0, + [TOPRIGHT_LEFT] INTEGER NOT NULL DEFAULT 0, + [TOPRIGHT_RIGHT] INTEGER NOT NULL DEFAULT 0, + [TOPRIGHT_BOTTOM] INTEGER NOT NULL DEFAULT 0, + [BOTTOMLEFT_TOP] INTEGER NOT NULL DEFAULT 0, + [BOTTOMLEFT_LEFT] INTEGER NOT NULL DEFAULT 0, + [BOTTOMLEFT_RIGHT] INTEGER NOT NULL DEFAULT 0, + [BOTTOMLEFT_BOTTOM] INTEGER NOT NULL DEFAULT 0, + [BOTTOMRIGHT_TOP] INTEGER NOT NULL DEFAULT 0, + [BOTTOMRIGHT_LEFT] INTEGER NOT NULL DEFAULT 0, + [BOTTOMRIGHT_RIGHT] INTEGER NOT NULL DEFAULT 0, + [BOTTOMRIGHT_BOTTOM] INTEGER NOT NULL DEFAULT 0, + SEQUENCE TINYINT NOT NULL DEFAULT 0, + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBCW_PROF_REL_CONTROL PRIMARY KEY (GUID), + CONSTRAINT FK_TBCW_PROF_REL_CONTROL_WINDOW_ID FOREIGN KEY (WINDOW_ID) REFERENCES TBCW_PROF_REL_WINDOW (GUID) +) +GO +CREATE TRIGGER TBCW_PROF_REL_CONTROL_AFT_UPD ON TBCW_PROF_REL_CONTROL +FOR UPDATE +AS + UPDATE TBCW_PROF_REL_CONTROL SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBCW_PROF_REL_CONTROL.GUID = INSERTED.GUID +GO + +CREATE TRIGGER TBCW_PROF_REL_CONTROL_AFT_INS ON TBCW_PROF_REL_CONTROL +WITH EXECUTE AS CALLER +FOR INSERT +AS +BEGIN TRY + DECLARE @SEQUENCE TINYINT + ,@MAX_SEQUENCE TINYINT + ,@WINDOW_ID INT + ,@GUID INTEGER + SELECT @SEQUENCE = SEQUENCE + ,@WINDOW_ID = WINDOW_ID + ,@GUID = GUID FROM inserted + + SELECT @MAX_SEQUENCE = ISNULL(MAX(SEQUENCE),0) FROM TBCW_PROF_REL_CONTROL WHERE WINDOW_ID = @WINDOW_ID AND GUID <> @GUID + UPDATE TBCW_PROF_REL_CONTROL SET SEQUENCE = @MAX_SEQUENCE + FROM INSERTED + WHERE TBCW_PROF_REL_CONTROL.GUID = INSERTED.GUID +END TRY +BEGIN CATCH + PRINT 'ERROR IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + + ' - ERROR-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +CREATE TRIGGER [dbo].[TBCW_PROF_REL_CONTROLAFT_INS] ON [dbo].TBCW_PROF_REL_CONTROL +WITH EXECUTE AS CALLER +FOR INSERT +AS +BEGIN TRY + DECLARE @SEQUENCE TINYINT + ,@MAX_SEQUENCE TINYINT + ,@WINDOW_ID INT + ,@GUID INTEGER + SELECT @SEQUENCE = SEQUENCE + ,@WINDOW_ID = @WINDOW_ID + ,@GUID = GUID FROM inserted + + SELECT @MAX_SEQUENCE = ISNULL(MAX(SEQUENCE),0) FROM TBCW_PROF_REL_CONTROL WHERE @WINDOW_ID = @WINDOW_ID AND GUID <> @GUID + UPDATE TBCW_PROF_REL_CONTROL SET SEQUENCE = @MAX_SEQUENCE + FROM INSERTED + WHERE TBCW_PROF_REL_CONTROL.GUID = INSERTED.GUID +END TRY +BEGIN CATCH + PRINT 'ERROR IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + + ' - ERROR-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +/*##### PROCEDURES ####*/ +CREATE PROCEDURE [dbo].[PRCW_DELETE_PROFILE](@pPROFILE_ID INT) +AS +BEGIN TRY + delete from TBCW_PROF_DATA_SEARCH where PROFILE_ID = @pPROFILE_ID + delete from TBCW_PROF_DOC_SEARCH where PROFILE_ID = @pPROFILE_ID + + delete from TBCW_PROF_REL_CONTROL where WINDOW_ID IN (SELECT GUID FROM TBCW_PROF_REL_WINDOW WHERE PROCESS_ID IN (SELECT GUID FROM TBCW_PROFILE_PROCESS WHERE PROFILE_ID = @pPROFILE_ID)) + delete from TBCW_PROF_REL_WINDOW where PROCESS_ID IN (SELECT GUID FROM TBCW_PROFILE_PROCESS WHERE PROFILE_ID = @pPROFILE_ID) + delete from TBCW_PROFILE_PROCESS where PROFILE_ID = @pPROFILE_ID + + delete from TBCW_USER_PROFILE where PROFILE_ID = @pPROFILE_ID + delete from TBCW_PROFILES where GUID = @pPROFILE_ID +END TRY +BEGIN CATCH + PRINT 'FEHLER IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + ' - ZEILE: ' + CONVERT(VARCHAR(10),ERROR_LINE()) + + ' - FEHLER-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +CREATE PROCEDURE [dbo].[PRCW_DELETE_PROCESS](@pPROCESS_ID INT) +AS +BEGIN TRY + delete from TBCW_PROF_REL_CONTROL where WINDOW_ID IN (SELECT GUID FROM TBCW_PROF_REL_WINDOW WHERE PROCESS_ID = @pPROCESS_ID) + delete from TBCW_PROF_REL_WINDOW where PROCESS_ID = @pPROCESS_ID + delete from TBCW_PROFILE_PROCESS where GUID = @pPROCESS_ID +END TRY +BEGIN CATCH + PRINT 'FEHLER IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + ' - ZEILE: ' + CONVERT(VARCHAR(10),ERROR_LINE()) + + ' - FEHLER-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +CREATE PROCEDURE [dbo].[PRCW_DELETE_WINDOW](@pWINDOW_ID INT) +AS +BEGIN TRY + delete from TBCW_PROF_REL_CONTROL where WINDOW_ID = @pWINDOW_ID + delete from TBCW_PROF_REL_WINDOW where GUID = @pWINDOW_ID +END TRY +BEGIN CATCH + PRINT 'FEHLER IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + ' - ZEILE: ' + CONVERT(VARCHAR(10),ERROR_LINE()) + + ' - FEHLER-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +/*##### FUNCTIONS ####*/ + +CREATE FUNCTION [dbo].[FNCW_WM_SEARCH] (@pSearchValue Varchar(512),@pUSER_ID INTEGER, @pLike BIT) +RETURNS @TBResult TABLE + (DocID INTEGER, + INDEX_NAME VARCHAR(50), + COMMENT VARCHAR(500)) +AS +BEGIN + DECLARE @USER_ECM_FKID INTEGER + SELECT @USER_ECM_FKID = USERID_FK_INT_ECM FROM TBDD_USER WHERE GUID = @pUSER_ID + + IF @pLike = 1 + BEGIN + INSERT INTO @TBResult (DocID, INDEX_NAME) + SELECT DISTINCT T.[dwDocID] + ,T.[Idx] + FROM VWCW_SEARCH1 T INNER JOIN VWDD_WM_ACCESS_RIGHTS T1 ON T.dwDocID = T1.dwObjectID AND T1.dwUserOrGROUPID = @USER_ECM_FKID + WHERE UPPER(T.Search_Term) LIKE UPPER('%' + @pSearchValue + '%') + + INSERT INTO @TBResult (DocID, INDEX_NAME) + SELECT DISTINCT WMV.dwDocID, WMA.szAttrName + FROM sDD_VMP01_APS01_windream60.dbo.Attribute WMA INNER JOIN sDD_VMP01_APS01_windream60.dbo.Vector WMV ON WMA.dwAttrID = WMV.dwAttrID + INNER JOIN VWDD_WM_ACCESS_RIGHTS T1 ON WMV.dwDocID = T1.dwObjectID AND T1.dwUserOrGROUPID = @USER_ECM_FKID + WHERE WMA.szAttrName in ('Vektor String 00','Vektor String 01','Vektor String 03','Vektor String 04','Vektor String 06','Vektor String 25','Vektor String 26','Vektor String 50','Vektor String 51') + AND UPPER(WMV.szValue) LIKE UPPER('%' + @pSearchValue + '%') + END + ELSE + BEGIN + INSERT INTO @TBResult (DocID, INDEX_NAME) -- VALUES (1,'1234') + SELECT T.[dwDocID] + ,T.[Idx]--,T.Search_Term + FROM VWCW_SEARCH1 T INNER JOIN VWDD_WM_ACCESS_RIGHTS T1 ON T.dwDocID = T1.dwObjectID AND T1.dwUserOrGROUPID = 1000004 + WHERE UPPER(T.Search_Term) = UPPER(@pSearchValue) + INSERT INTO @TBResult (DocID, INDEX_NAME) + SELECT DISTINCT WMV.dwDocID, WMA.szAttrName + FROM sDD_VMP01_APS01_windream60.dbo.Attribute WMA INNER JOIN sDD_VMP01_APS01_windream60.dbo.Vector WMV ON WMA.dwAttrID = WMV.dwAttrID + INNER JOIN VWDD_WM_ACCESS_RIGHTS T1 ON WMV.dwDocID = T1.dwObjectID AND T1.dwUserOrGROUPID = @USER_ECM_FKID + WHERE WMA.szAttrName in ('Vektor String 00','Vektor String 01','Vektor String 03','Vektor String 04','Vektor String 06','Vektor String 25','Vektor String 26','Vektor String 50','Vektor String 51') + AND UPPER(WMV.szValue) = UPPER(@pSearchValue) + END + +RETURN +END +GO +CREATE FUNCTION FNCW_GET_SEARCH_COUNT_FOR_CONNECTION(@CONNECTION_ID int) +RETURNS int +AS +BEGIN + DECLARE @RESULT int + + SELECT @RESULT = SUM(t.CNT) FROM ( + SELECT COUNT(*) AS CNT FROM TBCW_PROF_DATA_SEARCH WHERE CONN_ID = @CONNECTION_ID + UNION ALL + SELECT COUNT(*) AS CNT FROM TBCW_PROF_DOC_SEARCH WHERE CONN_ID = @CONNECTION_ID + ) t + + RETURN @RESULT +END +GO +/*##### VIEWS ####*/ +CREATE VIEW [dbo].[VWCW_USER_PROFILE] AS +SELECT DISTINCT + T.GUID, + T.NAME, + T.REGEX_EXPRESSION, + T.COMMENT, + T.ACTIVE, + T.PROFILE_TYPE, + T2.PROC_NAME, + T1.USER_ID, + T3.GROUP_ID +FROM TBCW_PROFILES T + LEFT JOIN TBCW_USER_PROFILE T1 ON T.GUID = T1.PROFILE_ID + LEFT JOIN TBCW_PROFILE_PROCESS T2 ON T.GUID = T2.PROFILE_ID + LEFT JOIN TBCW_GROUP_PROFILE T3 ON T.GUID = T3.PROFILE_ID +WHERE T.ACTIVE = 1 +GO + +CREATE VIEW VWCW_PROFILE_REL_WINDOW AS +SELECT DISTINCT TOP 100 PERCENT + T.GUID + ,T.PROCESS_ID + ,T2.USER_ID + ,T1.PROC_NAME AS PROCESS_NAME + ,T1.PROFILE_ID + ,T.DESCRIPTION + ,T.REGEX + ,T.SEQUENCE +FROM + TBCW_PROF_REL_WINDOW T + ,TBCW_PROFILE_PROCESS T1 + ,VWCW_USER_PROFILE T2 +WHERE + T.PROCESS_ID = T1.GUID AND + T1.PROFILE_ID = T2.GUID + +ORDER BY T.SEQUENCE +GO + +CREATE VIEW VWCW_PROFILE_REL_CONTROL AS +SELECT DISTINCT TOP 100 PERCENT + T.GUID + ,T1.USER_ID + ,TP.PROC_NAME AS PROCESS_NAME + ,T1.GUID AS PROFILE_ID + ,T.WINDOW_ID + ,T.DESCRIPTION + ,T.SEQUENCE + ,T.CONTROL_NAME + ,T.TOPLEFT_LEFT + ,T.TOPLEFT_RIGHT + ,T.TOPLEFT_TOP + ,T.TOPLEFT_BOTTOM + ,T.TOPRIGHT_LEFT + ,T.TOPRIGHT_RIGHT + ,T.TOPRIGHT_TOP + ,T.TOPRIGHT_BOTTOM + ,T.BOTTOMLEFT_LEFT + ,T.BOTTOMLEFT_RIGHT + ,T.BOTTOMLEFT_TOP + ,T.BOTTOMLEFT_BOTTOM + ,T.BOTTOMRIGHT_LEFT + ,T.BOTTOMRIGHT_RIGHT + ,T.BOTTOMRIGHT_TOP + ,T.BOTTOMRIGHT_BOTTOM +FROM + TBCW_PROF_REL_CONTROL T + ,TBCW_PROF_REL_WINDOW TW + ,TBCW_PROFILE_PROCESS TP + ,VWCW_USER_PROFILE T1 +WHERE + T.WINDOW_ID = TW.GUID AND + TW.PROCESS_ID = TP.GUID AND + TP.PROFILE_ID = T1.GUID +ORDER BY T.SEQUENCE +GO + +CREATE VIEW [dbo].[VWCW_GROUP_PROFILE] AS +SELECT + T.GUID, + T.NAME, + T.REGEX_EXPRESSION, + T.COMMENT, + T.ACTIVE, + T1.GROUP_ID, + T2.PROC_NAME +FROM + TBCW_PROFILES T + ,TBCW_GROUP_PROFILE T1 + ,TBCW_PROFILE_PROCESS T2 +WHERE + T.GUID = T1.PROFILE_ID + AND T.GUID = T2.PROFILE_ID + AND T.ACTIVE = 1 +GO +CREATE FUNCTION [dbo].[FNDD_GET_WINDREAM_FILE_PATH] (@pDOCID BIGINT,@USE_WM_PATH as BIT = 0) +RETURNS VARCHAR(MAX) +AS +BEGIN + IF @pDOCID = 4712 + SET @pDOCID = 63 + ELSE + SELECT @pDOCID = REFERENCE_KEY FROM IDB.dbo.TBIDB_OBJECT WHERE IDB_OBJ_ID = @pDOCID + + DECLARE + @RESULT VARCHAR(MAX), + @DOCID BIGINT, + @a TINYINT = 1, + @i TINYINT = 0, + @PARENT_ID BIGINT, + @DATEINAME NVARCHAR(255), + @PARENTNAME NVARCHAR(255), + @FSFLAGS INT, + @WM_PREFIX VARCHAR(50) + + IF @USE_WM_PATH = 1 + SET @WM_PREFIX = '\\windream\objects' + ELSE + SELECT @WM_PREFIX = WM_REL_PATH from tbpm_KONFIGURATION WHERE GUID = 1 + + + SELECT @FSFLAGS = dwFSFlags FROM [@WINDREAM_DB].dbo.BaseAttributes WHERE dwDocID = @pDOCID + IF @FSFLAGS = 16 + BEGIN + SET @RESULT = 'THIS IS NOT A FILE!' + END + ELSE + BEGIN + SELECT @DATEINAME = szLongName,@PARENT_ID = dwParentID FROM [@WINDREAM_DB].dbo.BaseAttributes WHERE dwDocID = @pDOCID + WHILE @a > 0 + BEGIN + IF @i = 0 + BEGIN + IF @PARENT_ID = 1 + BEGIN + SET @RESULT = '\' + + BREAK + END + ELSE + BEGIN + SET @DOCID = @PARENT_ID + SET @RESULT = '\' + END + END + ELSE + BEGIN + IF @PARENT_ID = 1 + BEGIN + SET @RESULT = '\' + @PARENTNAME + @RESULT + BREAK + END + ELSE + BEGIN + SET @DOCID = @PARENT_ID + SET @RESULT = '\' + @PARENTNAME + @RESULT + END + END + SELECT @PARENTNAME = szLongName,@PARENT_ID = dwParentID FROM [@WINDREAM_DB].dbo.BaseAttributes WHERE dwDocID = @DOCID + SET @i = @i + 1 + END + END + + SET @RESULT = @WM_PREFIX + @RESULT + @DATEINAME + RETURN @RESULT +END +GO + + +CREATE VIEW [dbo].[VWCW_DOC_SEARCH] AS +SELECT TOP 100 PERCENT + T.dwDocID as DocID + ,T.dwParentID + ,dbo.FNDD_GET_WINDREAM_FILE_PATH (T.dwDocID,1) AS FULL_FILENAME + ,T.szLongName AS [Filename] + ,T.szText00 + ,T.szText01 + ,T.szText02 + ,T.szText03 + ,T.szText04 + ,T.szText05 + ,T.szText06 + ,T.szText07 + ,T.szText08 + ,T.szText09 + ,T.szText10 + ,T.szText11 + ,T.szText12 + ,T.szText13 + ,T.szText14 + ,T.szText15 + ,T.szText16 + ,T.szText17 + ,T.szText18 + ,T.szText19 + ,T.szText20 + ,T.szText21 + ,T.szText22 + ,T.szText23 + ,T.szText24 + ,T.szText25 + ,T.szText26 + ,T.szText27 + ,T.szText28 + ,T.szText29 + ,T.szText30 + ,T.szText31 + ,T.szText32 + ,T.szText33 + ,T.szText34 + ,T.szText35 + ,T.szText36 + ,ISNULL(T.szText37,'NO DOCTYPE') AS Doctype + ,T.szText38 + ,T.szText39 + ,T.dwInteger00 + ,T.dwInteger01 + ,T.dwInteger02 + ,T.dwInteger03 + ,T.dwInteger04 + ,T.dwInteger05 + ,T.dwInteger06 + ,T.dwInteger07 + ,T.dwInteger08 + ,T.dwInteger09 + ,T.dwInteger10 + ,T.dwInteger11 + ,T.dwInteger12 + ,T.dwInteger13 + ,T.dwInteger14 + ,T.dwInteger15 + ,T.dwInteger16 + ,T.dwInteger17 + ,T.dwInteger18 + ,T.dwInteger19 + ,T.dwInteger20 + ,T.dwInteger21 + ,T.dwInteger22 + ,T.dwInteger23 + ,T.dwInteger24 + ,T.lfFloat00 + ,T.lfFloat01 + ,T.lfFloat02 + ,T.lfFloat03 + ,T.lfFloat04 + ,T.lfFloat05 + ,T.lfFloat06 + ,T.lfFloat07 + ,T.lfFloat08 + ,T.lfFloat09 + ,T.lfFloat10 + ,T.lfFloat11 + ,T.lfFloat12 + ,T.lfFloat13 + ,T.lfFloat14 + ,T.blBool00 + ,T.blBool01 + ,T.blBool02 + ,T.blBool03 + ,T.blBool04 + ,T.dwDate00 + ,T.dwDate01 + ,T.dwDate02 + ,T.dwDate03 + ,T.dwDate04 + ,T.dwDate05 + ,T.dwDate06 + ,T.dwDate07 + ,T.dwDate08 + ,T.dwDate09 + ,T.wmVar00 + ,T.wmVar01 + ,T.wmVar02 + ,T.wmVar03 + ,T.wmVar04 + ,T.wmVar05 + ,T.wmVar06 + ,T.wmVar07 + ,T.wmVar08 + ,T.wmVar09 + ,T.wmVar10 + ,T.wmVar11 + ,T.wmVar12 + ,T.wmVar13 + ,T.wmVar14 + ,T.wmVar15 + ,T.wmVar16 + ,T.wmVar17 + ,T.wmVar18 + ,T.wmVar19 + ,T.wmVar20 + ,T.wmVar21 + ,T.wmVar22 + ,T.wmVar23 + ,T.wmVar24 + ,T.wmVar25 + ,T.wmVar26 + ,T.wmVar27 + ,T.wmVar28 + ,T.wmVar29 + ,(SELECT ISNULL(T.dwVersionNumber,'1') from @WINDREAM_DB.dbo.BaseAttributes WHERE dwDocID = T.dwDocID) AS [Version] + ,CAST(CAST(CONVERT(DATE,CONVERT(VARCHAR(10),T.dwCreationDate)) AS DATETIME) + CAST(STUFF(STUFF(REPLICATE('0',6-LEN(T.dwCreation_Time)) + convert(VARCHAR(6),T.dwCreation_Time),3,0,':'),6,0,':') AS DATETIME) AS DATETIME) AS [Creation_DateTime] + ,CAST(CAST(CONVERT(DATE,CONVERT(VARCHAR(10),T.dwChangeDate)) AS DATETIME) + CAST(STUFF(STUFF(REPLICATE('0',6-LEN(T.dwChange_Time)) + convert(VARCHAR(6),T.dwChange_Time),3,0,':'),6,0,':') AS DATETIME) AS DATETIME) AS Change_DateTime,T1.szDocTypeName AS OBJECTTYPE + ,T.dwObjectTypeID +FROM + @WINDREAM_DB.dbo.BaseAttributes T + ,@WINDREAM_DB.dbo.ObjectType T1 +WHERE + T.dwCatalogID = 1 + AND T.dwObjectTypeID = 4 + AND T.dwObjectTypeID = T1.dwObjectTypeID +ORDER BY [Creation_DateTime] +GO +--############################################################################################################################################################ +--TOOL-COLLECTION +--############################################################################################################################################################ +IF not EXISTS(SELECT GUID FROM TBDD_MODULES WHERE NAME = 'ToolCollection' ) + INSERT INTO TBDD_MODULES (NAME, SHORT_NAME, LICENSE,ACTIVE) VALUES ('ToolCollection','TC','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=',1) +UPDATE TBDD_MODULES SET DB_VERSION = '1.1.0.0' where UPPER(NAME) = UPPER('ToolCollection') +GO +CREATE TABLE TBTC_MOVE_RENAME +( + GUID INT IDENTITY(1,1), + PROFILE_NAME VARCHAR(100) NOT NULL, + FOLDER_FOR_INDEX VARCHAR(500) DEFAULT '' NOT NULL, + NAMECONVENTION VARCHAR(500) NOT NULL DEFAULT '', + VERSION_OFF BIT DEFAULT 0 NOT NULL, + ACTIVE BIT DEFAULT 1 NOT NULL, + CREATED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + CREATED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBTC_MOVE_RENAME PRIMARY KEY(GUID), + CONSTRAINT UNIQUE_TBTC_MOVE_RENAME UNIQUE(PROFILE_NAME) +) +GO +------------------------------------------------------------------------------ + +CREATE TRIGGER TBTC_MOVE_RENAME_AFT_UPD ON TBTC_MOVE_RENAME +FOR UPDATE +AS +BEGIN TRY + UPDATE TBTC_MOVE_RENAME SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBTC_MOVE_RENAME.GUID = INSERTED.GUID + +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 TBTC_DI_REGEX_MATCH +( + GUID INT IDENTITY(1,1), + PROFILE_NAME VARCHAR(250) NOT NULL, + REGEX VARCHAR(1000) NOT NULL, + CREATED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + CREATED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBTC_DI_REGEX_MATCH PRIMARY KEY(GUID), + CONSTRAINT UNIQUE_TBTC_DI_REGEX_MATCH UNIQUE(PROFILE_NAME) +) +GO +------------------------------------------------------------------------------ + +CREATE TRIGGER TBTC_DI_REGEX_MATCH_AFT_UPD ON TBTC_DI_REGEX_MATCH +FOR UPDATE +AS +BEGIN TRY + UPDATE TBTC_DI_REGEX_MATCH SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBTC_DI_REGEX_MATCH.GUID = INSERTED.GUID + +END TRY +BEGIN CATCH + PRINT 'ERROR IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + + ' - ERROR-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) +END CATCH +GO +CREATE FUNCTION [dbo].[FNCUST_GET_TC_WD_RIGHTS] ( + @windreamDocID BIGINT +) +RETURNS TABLE +AS +RETURN + + ---------------------------------------------------------------------------------------------------------------------------------- + + SELECT concat([wdGI].[szNTDomain],'\',[wdGI].[szGroupName]) as 'RightGroups' + FROM [@WINDREAM_DB].[dbo].[BaseAttributes] as [wdBA] (NOLOCK) + + INNER JOIN [@WINDREAM_DB].[dbo].[UserInfo] as [wdUI] (NOLOCK) ON UPPER([wdBA].[szText22]) = UPPER([wdUI].[szUserName]) -- Username for UserID + INNER JOIN [@WINDREAM_DB].[dbo].[UserGroup] as [wdU2G] (NOLOCK) ON [wdUI].[dwUserID] = [wdU2G].[dwUserOrGroupID] -- UserID for GroupsID + INNER JOIN [@WINDREAM_DB].[dbo].[GroupInfo] as [wdGI] (NOLOCK) ON [wdU2G].[dwGroupID] = [wdGI].[dwGroupID] -- GroupIDs for Groupnames + + INNER JOIN [DD_ECM].[dbo].[TBDD_USER] as [ddUI] (NOLOCK) ON [wdUI].[dwUserID] = [ddUI].[USERID_FK_INT_ECM] -- windream UserID to DD UserID + INNER JOIN [DD_ECM].[dbo].[TBDD_GROUPS_USER] as [ddU2G] (NOLOCK) ON [ddUI].[GUID] = [ddU2G].[USER_ID] -- UserID for GroupsID + INNER JOIN [DD_ECM].[dbo].[TBDD_GROUPS] as [ddGI] (NOLOCK) ON [ddU2G].[GROUP_ID] = [ddGI].[GUID] -- GroupIDs for Groupnames + + WHERE UPPER([wdGI].[szGroupName]) = UPPER([ddGI].[NAME]) + AND [wdBA].[dwDocID] = @windreamDocID +GO +--############################################################################################################################################################ +--EMAIL-PROFILER +--############################################################################################################################################################ +IF NOT EXISTS(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'EMLP') +INSERT INTO TBDD_MODULES(GUID,NAME,SHORT_NAME,LICENSE,STRING1) VALUES +(6,'Email-Profiler','EMLP','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=','W') +GO +UPDATE TBDD_MODULES SET DB_VERSION = '1.3.0.0' where SHORT_NAME = 'EMLP' +GO +CREATE TABLE TBEMLP_CONFIG +( + GUID TINYINT, + FONT_BODY VARCHAR(50) NOT NULL DEFAULT 'Calibri', + LOG_ERRORS_ONLY BIT NOT NULL DEFAULT 1, + CHECK_INTERVALL_MINUTES INTEGER NOT NULL DEFAULT 5, + LAST_TICK DATETIME, + PATH_EMAIL_TEMP VARCHAR(1000) NOT NULL, + PATH_EMAIL_ERRORS VARCHAR(1000) NOT NULL, + WM_CON_STRING VARCHAR(1000) NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBEMLP_CONFIG_GUID PRIMARY KEY(GUID), + CONSTRAINT CH_TBEMLP_CONFIG_GUID CHECK(GUID = 1) +) +GO +CREATE TRIGGER TBEMLP_CONFIG_AFT_UPD ON TBEMLP_CONFIG +FOR UPDATE +AS + UPDATE TBEMLP_CONFIG SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBEMLP_CONFIG.GUID = INSERTED.GUID +GO +INSERT INTO TBEMLP_CONFIG (GUID, PATH_EMAIL_TEMP,PATH_EMAIL_ERRORS,WM_CON_STRING) VALUES (1,'E:\TEMP\EMAIL_PROFILER\TEMP','E:\TEMP\EMAIL_PROFILER\ERROR','Data Source=172.24.12.41\tests;Initial Catalog=DD_ECM_TEST;Persist Security Info=True;User ID=sa;Password=dd') +GO +------------------------------------------------------------------------------ + +CREATE TABLE TBEMLP_POLL_PROFILES +( + GUID INTEGER IDENTITY(1,1), + PROFILE_NAME VARCHAR(100) NOT NULL, + POLL_TYPE VARCHAR(100) NOT NULL, --IMAP OR POP + EMAIL_CONF_ID INTEGER NOT NULL, + COMMENT VARCHAR(500), + LAST_TICK DATETIME, + ACTIVE BIT DEFAULT 0 NOT NULL, -- + SEQUENCE INT DEFAULT 1, + ADDED_WHO VARCHAR(50) DEFAULT 'Default', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBEMLP_POLL_PROFILES PRIMARY KEY (GUID) +) +GO +INSERT INTO TBEMLP_POLL_PROFILES (PROFILE_NAME,POLL_TYPE,EMAIL_CONF_ID) VALUES ('TEST1','POP',1) +GO +------------------------------------------------------------------------------ +CREATE TRIGGER TBEMLP_POLL_PROFILES_AFT_UPD ON TBEMLP_POLL_PROFILES +FOR UPDATE +AS + UPDATE TBEMLP_POLL_PROFILES SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBEMLP_POLL_PROFILES.GUID = INSERTED.GUID +GO +CREATE TABLE TBEMLP_POLL_PROCESS +( + GUID INTEGER IDENTITY(1,1), + PROCESS_NAME VARCHAR(100) NOT NULL, + STEP_NAME VARCHAR(50) NOT NULL, --'Easy Approval' bei ProcessManager, + PROFILE_ID INTEGER NOT NULL, + COPY_2_HDD BIT NOT NULL DEFAULT 0, + WM_IDX_BODY_TEXT VARCHAR(50) NOT NULL DEFAULT '', + WM_IDX_BODY_SUBSTR_LENGTH INTEGER NOT NULL DEFAULT 0, + WM_IMPORT BIT NOT NULL DEFAULT 0, + WM_OBJEKTTYPE VARCHAR(100), + WM_VECTOR_LOG VARCHAR(100), + WM_PATH VARCHAR(1000), + WM_FILE_NAME VARCHAR(100), + WM_REFERENCE_INDEX VARCHAR(100), + PATH_EMAIL_TEMP VARCHAR(1000) NOT NULL DEFAULT '', + PATH_EMAIL_ERRORS VARCHAR(1000) NOT NULL DEFAULT '', + PATH_ORIGINAL VARCHAR(1000), + DELETE_MAIL BIT NOT NULL DEFAULT 0, + USE_FOR_DIRECT_ANSWER BIT NOT NULL DEFAULT 0, + COMMENT VARCHAR(500), + ACTIVE BIT DEFAULT 1 NOT NULL, -- + SEQUENCE INT DEFAULT 1, + ADDED_WHO VARCHAR(50) DEFAULT 'Default', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBEMLP_POLL_PROCESS PRIMARY KEY (GUID), + CONSTRAINT FK_TBEMLP_POLL_PROCESS_PROFILE_ID FOREIGN KEY (PROFILE_ID) REFERENCES TBEMLP_POLL_PROFILES (GUID) +) +GO +INSERT INTO TBEMLP_POLL_PROCESS (PROCESS_NAME,STEP_NAME,PROFILE_ID,PATH_EMAIL_TEMP,PATH_EMAIL_ERRORS,COPY_2_HDD, +WM_IMPORT, +WM_OBJEKTTYPE, +WM_VECTOR_LOG, +WM_PATH, +WM_FILE_NAME, +WM_REFERENCE_INDEX, +SEQUENCE,DELETE_MAIL) VALUES ('ProcessManager','Easy Approval',1,'E:\TEMP\EMAIL_PROFILER\TEMP','E:\TEMP\EMAIL_PROFILER\ERROR',1, +0, +'DIGITAL DATA - Entwicklung', +'Vektor_Text1', +'W:\Import_Temp', +'EA_[%DATE]_', +'Dokument-ID', +1,1) +GO +CREATE TRIGGER TBEMLP_POLL_PROCESS_AFT_UPD ON TBEMLP_POLL_PROCESS +FOR UPDATE +AS + UPDATE TBEMLP_POLL_PROCESS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBEMLP_POLL_PROCESS.GUID = INSERTED.GUID +GO +------------------------------------------------------------------------------ +--select * from TBEMLP_POLL_STEPS +--GO +CREATE TABLE TBEMLP_POLL_STEPS +( + GUID INTEGER IDENTITY(1,1), + PROCESS_ID INTEGER NOT NULL, + STEP_NAME VARCHAR(50) NOT NULL, --'z.B. Invoice Approved or Invoice Disapproved' bei ProcessManager, + KEYWORDS_BODY VARCHAR(1000), + COMMENT VARCHAR(500), + ACTIVE BIT DEFAULT 1 NOT NULL, -- + SEQUENCE INT DEFAULT 1, + ADDED_WHO VARCHAR(50) DEFAULT 'Default', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBEMLP_POLL_STEPS PRIMARY KEY (GUID), + CONSTRAINT FK_TBEMLP_POLL_STEPS_PROCESS_ID FOREIGN KEY (PROCESS_ID) REFERENCES TBEMLP_POLL_PROCESS (GUID) +) +GO +INSERT INTO TBEMLP_POLL_STEPS (PROCESS_ID,STEP_NAME,KEYWORDS_BODY,ACTIVE) VALUES (1,'Invoice Disapproved','Disapproved;Abgelehnt',1) +GO +INSERT INTO TBEMLP_POLL_STEPS (PROCESS_ID,STEP_NAME,KEYWORDS_BODY,ACTIVE) VALUES (1,'Invoice Approved','OK;Approved;OK',1) +GO +CREATE TRIGGER TBEMLP_POLL_STEPS_AFT_UPD ON TBEMLP_POLL_STEPS +FOR UPDATE +AS + UPDATE TBEMLP_POLL_STEPS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBEMLP_POLL_STEPS.GUID = INSERTED.GUID +GO +CREATE TABLE TBEMLP_POLL_INDEXING_STEPS +( + GUID SMALLINT IDENTITY(1,1), + STEP_ID INTEGER NOT NULL, + INDEXNAME VARCHAR(100) NOT NULL, --'Easy Approval' bei ProcessManager, + INDEXVALUE VARCHAR(100) NOT NULL, + USE_FOR_DIRECT_ANSWER BIT NOT NULL DEFAULT 0, + ACTIVE BIT DEFAULT 1 NOT NULL, -- + SEQUENCE INT DEFAULT 1, + ADDED_WHO VARCHAR(50) DEFAULT 'Default', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBEMLP_POLL_INDEXING_STEPS PRIMARY KEY (GUID), + CONSTRAINT FK_TBEMLP_POLL_INDEXING_STEPS_STEP_ID FOREIGN KEY (STEP_ID) REFERENCES TBEMLP_POLL_STEPS (GUID) +) +GO +CREATE TRIGGER TBEMLP_POLL_INDEXING_STEPS_AFT_UPD ON TBEMLP_POLL_INDEXING_STEPS +FOR UPDATE +AS + UPDATE TBEMLP_POLL_INDEXING_STEPS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBEMLP_POLL_INDEXING_STEPS.GUID = INSERTED.GUID +GO +INSERT INTO TBEMLP_POLL_INDEXING_STEPS (STEP_ID,INDEXNAME,INDEXVALUE) VALUES (1,'Dokumentart','Email-Approved') +GO +INSERT INTO TBEMLP_POLL_INDEXING_STEPS (STEP_ID,INDEXNAME,INDEXVALUE) VALUES (2,'Dokumentart','Email-Disapproved') +GO +--select * from TBEMLP_POLL_INDEXING_STEPS +--GO +CREATE TABLE TBEMLP_EMAIL_OUT +( + GUID INTEGER NOT NULL IDENTITY(1,1), + REMINDER_TYPE_ID INTEGER NOT NULL DEFAULT '1', + SENDING_PROFILE INTEGER NOT NULL, + REFERENCE_ID INTEGER NOT NULL, + REFERENCE_STRING VARCHAR(200), + ENTITY_ID INTEGER, + WF_ID INTEGER NOT NULL, + WF_REFERENCE VARCHAR(200), + EMAIL_ADRESS VARCHAR(1000) NOT NULL, + EMAIL_SUBJ VARCHAR(500) NOT NULL, + EMAIL_BODY VARCHAR(500) NOT NULL, + EMAIL_ATTMT1 VARCHAR(512), + EMAIL_SENT DATETIME, + COMMENT VARCHAR(500), + ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT', + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + ERROR_TIMESTAMP DATETIME, + ERROR_MSG VARCHAR(900), + CONSTRAINT PK_TBEMLP_EMAIL_OUT PRIMARY KEY (GUID), + CONSTRAINT FK_TBEMLP_EMAIL_OUT_SENDING_PROFILE FOREIGN KEY (SENDING_PROFILE) REFERENCES TBDD_EMAIL_ACCOUNT (GUID) +) +GO +CREATE TABLE TBEMLP_HISTORY +( + GUID INTEGER IDENTITY(1,1), + WORK_PROCESS VARCHAR(100), + EMAIL_MSGID VARCHAR(500) NOT NULL, + EMAIL_FROM VARCHAR(500) NOT NULL DEFAULT 'NONE', + EMAIL_SUBJECT VARCHAR(MAX), + EMAIL_DATE DATETIME, + EMAIL_BODY VARCHAR(MAX), + EMAIL_SUBSTRING1 VARCHAR(2000), + EMAIL_SUBSTRING2 VARCHAR(2000), + DATE_DELETED_INBOX DATETIME, + COMMENT VARCHAR(500), + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBEMLP_HISTORY PRIMARY KEY (GUID) +) +GO +CREATE TABLE TBEMLP_HISTORY_STATE +( +GUID INTEGER NOT NULL IDENTITY (1, 1), +MESSAGE_ID VARCHAR(900) NOT NULL, +STATE_TITLE VARCHAR(900) NOT NULL, +STATE_TITLE1 VARCHAR(900) , +COMMENT VARCHAR(3000), +ADDED_WHO VARCHAR(30) DEFAULT 'Digital Data', +ADDED_WHEN DATETIME DEFAULT (GETDATE()), +CHANGED_WHO VARCHAR(30), +CHANGED_WHEN DATETIME, +CONSTRAINT PK_TBEMLP_HISTORY_STATE PRIMARY KEY (GUID) +) +GO +CREATE PROCEDURE PRCUST_ADD_HISTORY_STATE @MessageID VARCHAR(250), @TITLE1 VARCHAR(250), @TITLE2 VARCHAR(250), @COMMENT VARCHAR(3000) = 0 +AS +BEGIN + INSERT INTO TBEMLP_HISTORY_STATE + (MESSAGE_ID,STATE_TITLE,STATE_TITLE1,COMMENT) VALUES (@MessageID,@TITLE1,@TITLE2,@COMMENT) +END +GO +-- ============================================= +-- Author: DD MS +-- Creation date: 07.05.2020 +-- ============================================= +CREATE PROCEDURE PREMAIL_NEW_EMAIL @SENDING_PROFILE TINYINT, @EMAIL_TO VARCHAR(100),@SUBJECT VARCHAR(200),@BODY VARCHAR(MAX),@REF_STRING As VARCHAR(900),@REF_ID BIGINT,@WF_ID INT,@WHO VARCHAR(100) AS +BEGIN + INSERT INTO [dbo].[TBEMLP_EMAIL_OUT] + ([SENDING_PROFILE] + ,[WF_ID] + ,[EMAIL_ADRESS] + ,[EMAIL_SUBJ] + ,[EMAIL_BODY] + ,REFERENCE_STRING + ,REFERENCE_ID + ,[ADDED_WHO]) + VALUES (@SENDING_PROFILE, + @WF_ID, + @EMAIL_TO, + @SUBJECT, + @BODY, + @REF_STRING, + @REF_ID, + @WHO) +END +GO + + +CREATE TABLE dbo.TBEDMI_ITEM_VALUE( + GUID BIGINT NOT NULL IDENTITY (1, 1), + REFERENCE_GUID nvarchar(max) NOT NULL, + ITEM_DESCRIPTION nvarchar(max) NOT NULL, + ITEM_VALUE nvarchar(max) NULL, + CREATEDWHEN datetime NOT NULL DEFAULT GETDATE(), + CREATEDWHO nvarchar(max), + CHANGEDWHEN datetime, + GROUP_COUNTER integer NULL, + SPEC_NAME VARCHAR(250), + IS_REQUIRED BIT NOT NULL DEFAULT 0 +) +GO +--############################################################################################################################################################ +--USER-MANAGER +--############################################################################################################################################################ +UPDATE TBDD_MODULES SET PRODUCT_VERSION = '1.0.0.1' where SHORT_NAME = 'UM' +GO +BEGIN + IF NOT EXISTS (SELECT 1 FROM TBDD_GROUPS WHERE NAME = 'UM_ADMINS') + INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('UM_ADMINS',1); +END + +ALTER TABLE [dbo].[TBDD_GROUPS_USER] DROP CONSTRAINT [FK_TBDD_GROUPS_USER_GROUP_ID] +GO +ALTER TABLE [dbo].[TBDD_GROUPS_USER] WITH CHECK ADD CONSTRAINT [FK_TBDD_GROUPS_USER_GROUP_ID] FOREIGN KEY([GROUP_ID]) +REFERENCES [dbo].[TBDD_GROUPS] ([GUID]) +GO + +ALTER TABLE [dbo].[TBDD_GROUPS_USER] CHECK CONSTRAINT [FK_TBDD_GROUPS_USER_GROUP_ID] +GO + +DECLARE @UM_GROUP_ID INT +SELECT @UM_GROUP_ID = GUID FROM TBDD_GROUPS WHERE NAME = 'UM_ADMINS' +INSERT INTO TBDD_GROUPS_USER (GROUP_ID,USER_ID) + SELECT @UM_GROUP_ID,B.GUID FROM TBIMPORT_USER A INNER JOIN TBDD_USER B ON A.USR_NAME = B.USERNAME +GO +CREATE TABLE TBUM_AD_COMMAND +( + GUID INTEGER IDENTITY(1,1), + AD_CMD_NAME VARCHAR(250), + COMMAND_STRING VARCHAR(MAX), + ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(50), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBUM_AD_COMMAND PRIMARY KEY (GUID), + CONSTRAINT UC_TBUM_AD_COMMAND UNIQUE (AD_CMD_NAME), +) +GO +CREATE TRIGGER TBUM_AD_COMMAND_AFT_UPD ON TBUM_AD_COMMAND +FOR UPDATE +AS + UPDATE TBUM_AD_COMMAND SET CHANGED_WHEN = GETDATE() FROM INSERTED + WHERE TBUM_AD_COMMAND.GUID = INSERTED.GUID +GO +CREATE PROCEDURE [dbo].[PRDD_DELETE_GROUP](@pGROUP_ID INT) +AS +BEGIN TRY + -- COMMON + IF OBJECT_ID(N'dbo.TBDD_GROUPS_USER', N'U') IS NOT NULL + DELETE FROM TBDD_GROUPS_USER WHERE GROUP_ID = @pGROUP_ID + IF OBJECT_ID(N'dbo.TBDD_GROUPS_CLIENT', N'U') IS NOT NULL + DELETE FROM TBDD_GROUPS_CLIENT WHERE GROUP_ID = @pGROUP_ID + IF OBJECT_ID(N'dbo.TBDD_GROUPS_MODULES', N'U') IS NOT NULL + DELETE FROM TBDD_GROUPS_MODULES WHERE GROUP_ID = @pGROUP_ID + + -- FINALLY + DELETE FROM TBDD_GROUPS WHERE GUID = @pGROUP_ID + + RETURN 0 +END TRY +BEGIN CATCH + PRINT 'FEHLER IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE()) + ' - ZEILE: ' + CONVERT(VARCHAR(10),ERROR_LINE()) + + ' - FEHLER-MESSAGE: ' + + CONVERT(VARCHAR(500),ERROR_MESSAGE()) + RETURN -1 +END CATCH +GO +--############################################################################################################################################################ +--WM-RESULT HANDLER +--############################################################################################################################################################ +CREATE TABLE TBWMRH_KONFIGURATION ( + GUID INTEGER PRIMARY KEY NOT NULL DEFAULT (1), + WD_LAUFWERK VARCHAR(10) NOT NULL DEFAULT 'W', + INTERVALL INTEGER NOT NULL DEFAULT 60, + LAST_TICK DATETIME NOT NULL DEFAULT ('1900-01-01 00:00:00' ), + PDF_TK_LOCATION VARCHAR(500) DEFAULT '', + PDF_XCHANGE_LOCATION VARCHAR(500) DEFAULT '', + LOG_ERRORS_ONLY BIT NOT NULL DEFAULT (1), + GEAENDERT_WER VARCHAR(100), + GEAENDERTWANN DATETIME +) +GO +CREATE TRIGGER TBWMRH_KONFIGURATION_AFT_UPD ON TBWMRH_KONFIGURATION +FOR UPDATE +AS + UPDATE TBWMRH_KONFIGURATION SET GEAENDERTWANN = GETDATE() FROM INSERTED WHERE TBWMRH_KONFIGURATION.GUID = INSERTED.GUID +GO + +INSERT INTO TBWMRH_KONFIGURATION (WD_LAUFWERK) VALUES ('W') +GO +CREATE TABLE TBWMRH_PROFIL ( + GUID INTEGER IDENTITY(1,1), + Profilname VARCHAR(100) NOT NULL, + Aktiv BIT DEFAULT ( 0 ), + Objekttyp VARCHAR(100) NOT NULL, + WindreamSuche VARCHAR(500) NOT NULL, + Day VARCHAR(100) NOT NULL DEFAULT '0000000', --Ausführungstage + Run VARCHAR(100) NOT NULL, --Intervall: Präfix INTV;MINUTE ODER Präfix TIME;Uhrzeit + Letzter_Durchlauf DATETIME NOT NULL DEFAULT ('1900-01-01 00:00:00' ), + Running BIT NOT NULL DEFAULT(0), + Reihenfolge INTEGER NOT NULL DEFAULT 1, + ERSTELLTWER VARCHAR(50) DEFAULT 'DEFAULT', + ERSTELLTWANN DATETIME DEFAULT GETDATE(), + GEAENDERTWER VARCHAR(50), + GEAENDERTWANN DATETIME , + CONSTRAINT PK_TBWMRH_PROFIL_GUID PRIMARY KEY(GUID) +) +GO +CREATE TRIGGER TBWMRH_PROFIL_AFT_UPD ON TBWMRH_PROFIL +FOR UPDATE +AS + UPDATE TBWMRH_PROFIL SET GEAENDERTWANN = GETDATE() FROM INSERTED WHERE TBWMRH_PROFIL.GUID = INSERTED.GUID +GO +CREATE TABLE TBWMRH_PROFIL_JOB ( + GUID INTEGER IDENTITY(1,1), + PROFIL_ID INTEGER , + JOB_TYP VARCHAR(50) NOT NULL, -- EMAIL,EXP_HDD + STRING1 VARCHAR(MAX), -- WENN EXP_HDD: SPEICHERORT + STRING2 VARCHAR(MAX), + STRING3 VARCHAR(MAX), + STRING4 VARCHAR(MAX), + BOOL1 BIT DEFAULT 0, + BOOL2 BIT DEFAULT 0, + BOOL3 BIT DEFAULT 0, + BOOL4 BIT DEFAULT 0, + AKTIV BIT DEFAULT (1), + REIHENFOLGE INTEGER NOT NULL DEFAULT 1, + ERSTELLTWER VARCHAR(50) DEFAULT 'DEFAULT', + ERSTELLTWANN DATETIME DEFAULT GETDATE(), + GEAENDERTWER VARCHAR(50), + GEAENDERTWANN DATETIME , + CONSTRAINT PK_TBWMRH_PROFIL_JOB_GUID PRIMARY KEY(GUID), + CONSTRAINT FK_TBPROFIL_JOB_PROFILID FOREIGN KEY (PROFIL_ID) REFERENCES TBWMRH_PROFIL (GUID) +) +GO +CREATE TRIGGER TBWMRH_PROFIL_JOB_AFT_UPD ON TBWMRH_PROFIL_JOB +FOR UPDATE +AS + UPDATE TBWMRH_PROFIL_JOB SET GEAENDERTWANN = GETDATE() FROM INSERTED WHERE TBWMRH_PROFIL_JOB.GUID = INSERTED.GUID +GO +CREATE TABLE TBWMRH_PROFIL_FILE_JOB ( + GUID INTEGER IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + TYP VARCHAR(50) NOT NULL, -- SETINDEX, + STRING1 VARCHAR(MAX), -- WENN SETINDEX: INDEXNAME + STRING2 VARCHAR(MAX), -- WENN SETINDEX: WERT + STRING3 VARCHAR(MAX), -- + STRING4 VARCHAR(MAX), -- + BOOL1 BIT NOT NULL DEFAULT 0, + BOOL2 BIT NOT NULL DEFAULT 0, + BOOL3 BIT NOT NULL DEFAULT 0, + BOOL4 BIT NOT NULL DEFAULT 0, + AKTIV BIT NOT NULL DEFAULT (1), + REIHENFOLGE INTEGER NOT NULL DEFAULT 1, + ERSTELLTWER VARCHAR(50) DEFAULT 'DEFAULT', + ERSTELLTWANN DATETIME DEFAULT GETDATE(), + GEAENDERTWER VARCHAR(50), + GEAENDERTWANN DATETIME , + CONSTRAINT PK_TBWMRH_PROFIL_FILE_JOB_GUID PRIMARY KEY(GUID), + CONSTRAINT FK_FILE_JOB_PROFILID FOREIGN KEY (PROFIL_ID) REFERENCES TBWMRH_PROFIL (GUID) +) +GO +CREATE TRIGGER TBWMRH_PROFIL_FILE_JOB_AFT_UPD ON TBWMRH_PROFIL_FILE_JOB +FOR UPDATE +AS + UPDATE TBWMRH_PROFIL_FILE_JOB SET GEAENDERTWANN = GETDATE() FROM INSERTED WHERE TBWMRH_PROFIL_FILE_JOB.GUID = INSERTED.GUID +GO + + + + + + + diff --git a/00_DD/DD_ECM.sql b/01_DD_ECM/DD_ECM.sql similarity index 95% rename from 00_DD/DD_ECM.sql rename to 01_DD_ECM/DD_ECM.sql index f70d073..241d988 100644 --- a/00_DD/DD_ECM.sql +++ b/01_DD_ECM/DD_ECM.sql @@ -1,11 +1,10 @@ --################################## ---1. Replace @ADMINUSER NAmes +--1. Define Your AdminUsers via replacing @ADMINUSER with proper UserNames DECLARE @ADMINUSER1 VARCHAR(100),@ADMINUSER2 VARCHAR(100) SET @ADMINUSER1 = 'Administrator' SET @ADMINUSER2 = 'digitaldata' --- 2. In case windream is installed on another SQL-Server: --- Replace windream60 in code with name of linked Database - Example: [172.24.12.41\REMOTESERVER\windream60]. --- 3. Search for DIGITALDATA.LOCAL and replace with Your Domainname +-- 2. Replace @WINDREAM_DB in code with name of WM-Database +-- 3. Replace @DIGITALDATA.LOCAL with Your Domainname -- 4. Add the ECM-Login Data -- Search for @ECM_IP and replace it with IP or Name of MSSQL Server -- Search for @ECM_USER and replace it with DB-Username for ECM-DB @@ -182,25 +181,26 @@ CREATE TABLE TBDD_USER COMMENT VARCHAR(500), WAN_ENVIRONMENT BIT NOT NULL DEFAULT 0, USERID_FK_INT_ECM INTEGER NOT NULL DEFAULT 0, - ATTR_CHAR1 VARCHAR(250), - ATTR_CHAR2 VARCHAR(250), - ATTR_CHAR3 VARCHAR(250), - ATTR_CHAR4 VARCHAR(250), - ATTR_CHAR5 VARCHAR(250), - ATTR_CHAR6 VARCHAR(250), - ATTR_CHAR7 VARCHAR(250), - ATTR_CHAR8 VARCHAR(250), - ATTR_CHAR9 VARCHAR(250), - ATTR_CHAR10 VARCHAR(250), - ATTR_CHAR11 VARCHAR(250), - ATTR_CHAR12 VARCHAR(250), - ATTR_CHAR13 VARCHAR(250), - ATTR_CHAR14 VARCHAR(250), - ATTR_CHAR15 VARCHAR(250), - ATTR_BIT1 BIT NOT NULL DEFAULT 0, - ATTR_BIT2 BIT NOT NULL DEFAULT 0, - ATTR_BIT3 BIT NOT NULL DEFAULT 0, - ATTR_BIT4 BIT NOT NULL DEFAULT 0, + ATTR_CHAR1 VARCHAR(250), + ATTR_CHAR2 VARCHAR(250), + ATTR_CHAR3 VARCHAR(250), + ATTR_CHAR4 VARCHAR(250), + ATTR_CHAR5 VARCHAR(250), + ATTR_CHAR6 VARCHAR(250), + ATTR_CHAR7 VARCHAR(250), + ATTR_CHAR8 VARCHAR(250), + ATTR_CHAR9 VARCHAR(250), + ATTR_CHAR10 VARCHAR(250), + ATTR_CHAR11 VARCHAR(250), + ATTR_CHAR12 VARCHAR(250), + ATTR_CHAR13 VARCHAR(250), + ATTR_CHAR14 VARCHAR(250), + ATTR_CHAR15 VARCHAR(250), + ATTR_BIT1 BIT NOT NULL DEFAULT 0, + ATTR_BIT2 BIT NOT NULL DEFAULT 0, + ATTR_BIT3 BIT NOT NULL DEFAULT 0, + ATTR_BIT4 BIT NOT NULL DEFAULT 0, + ACTIVE BIT NOT NULL DEFAULT 1, DELETED BIT NOT NULL DEFAULT 0, DELETED_WHEN DATETIME, DELETED_WHO DATETIME, @@ -246,7 +246,7 @@ BEGIN BEGIN DECLARE @ECM_GRP_ID INTEGER SELECT @ECM_GRP_ID = [dwGroupID] - FROM windream60.[dbo].[GroupInfo] where UPPER(szGroupName) = UPPER(@GRPNAME) AND szNTDomain = 'DIGITALDATA.LOCAL' + FROM @WINDREAM_DB.[dbo].[GroupInfo] where UPPER(szGroupName) = UPPER(@GRPNAME) AND szNTDomain = '@DIGITALDATA.LOCAL' IF @ECM_GRP_ID IS NULL SET @ECM_GRP_ID = 0 UPDATE TBDD_GROUPS SET ECM_FK_ID = @ECM_GRP_ID @@ -546,7 +546,7 @@ BEGIN TRY FROM INSERTED SELECT @ECM_USR_ID = [dwUserID] - FROM windream60.[dbo].[UserInfo] where UPPER(szUserName) = UPPER(@USRNAME) + FROM @WINDREAM_DB.[dbo].[UserInfo] where UPPER(szUserName) = UPPER(@USRNAME) IF @ECM_USR_ID IS NOT NULL UPDATE TBDD_USER SET USERID_FK_INT_ECM = @ECM_USR_ID FROM INSERTED @@ -581,7 +581,7 @@ BEGIN BEGIN DECLARE @ECM_USR_ID INTEGER SELECT @ECM_USR_ID = [dwUserID] - FROM windream60.[dbo].[UserInfo] where UPPER(szUserName) = UPPER(@USRNAME) + FROM @WINDREAM_DB.[dbo].[UserInfo] where UPPER(szUserName) = UPPER(@USRNAME) IF @ECM_USR_ID IS NOT NULL UPDATE TBDD_USER SET USERID_FK_INT_ECM = @ECM_USR_ID FROM INSERTED @@ -1590,7 +1590,7 @@ DECLARE c_REDO CURSOR FOR BEGIN DECLARE @ECM_USR_ID INTEGER - SELECT @ECM_USR_ID = [dwUserID] FROM windream60.[dbo].[UserInfo] where UPPER(szUserName) = UPPER(@USERNAME) + SELECT @ECM_USR_ID = [dwUserID] FROM @WINDREAM_DB.[dbo].[UserInfo] where UPPER(szUserName) = UPPER(@USERNAME) IF @ECM_USR_ID IS NOT NULL UPDATE TBDD_USER SET USERID_FK_INT_ECM = @ECM_USR_ID WHERE GUID = @GUID @@ -1697,7 +1697,8 @@ SELECT TOP 100 PERCENT T2.PASSWORD, T.SQL_RESULT, T.SQL_ACTIVE, - T.VALUE + T.VALUE, + T.[SEQUENCE] FROM TBDD_INDEX_AUTOM T INNER JOIN TBDD_DOKUMENTART T1 ON T.DOCTYPE_ID = T1.GUID AND T1.AKTIV = 1 @@ -2054,7 +2055,7 @@ SELECT AR.dwObjectID, AR.dwUserOrGROUPID, AR.dwAccessRight, AR.dwObjectDBID -FROM windream60.dbo.AccessRight AR LEFT JOIN windream60.dbo.UserGroup UG ON AR.dwUserOrGroupID = UG.dwGroupID +FROM @WINDREAM_DB.dbo.AccessRight AR LEFT JOIN @WINDREAM_DB.dbo.UserGroup UG ON AR.dwUserOrGroupID = UG.dwGroupID INNER JOIN TBDD_USER TU ON AR.dwUserOrGroupID = TU.USERID_FK_INT_ECM WHERE UG.dwUserOrGroupID IS NULL GO @@ -2064,7 +2065,7 @@ SELECT AR.dwObjectID, UG.dwUserOrGROUPID, AR.dwAccessRight, AR.dwObjectDBID -FROM windream60.dbo.AccessRight AR LEFT JOIN windream60.dbo.UserGroup UG ON AR.dwUserOrGroupID = UG.dwGroupID +FROM @WINDREAM_DB.dbo.AccessRight AR LEFT JOIN @WINDREAM_DB.dbo.UserGroup UG ON AR.dwUserOrGroupID = UG.dwGroupID INNER JOIN TBDD_USER TU ON UG.dwUserOrGroupID = TU.USERID_FK_INT_ECM WHERE UG.dwUserOrGroupID IS NOT NULL GO diff --git a/00_DD/Microsoft Publisher Document (neu).pub b/01_DD_ECM/Microsoft Publisher Document (neu).pub similarity index 100% rename from 00_DD/Microsoft Publisher Document (neu).pub rename to 01_DD_ECM/Microsoft Publisher Document (neu).pub diff --git a/00_DD/SQL_JOB1.sql b/01_DD_ECM/SQL_JOB1.sql similarity index 100% rename from 00_DD/SQL_JOB1.sql rename to 01_DD_ECM/SQL_JOB1.sql diff --git a/00_DD/Update/Added2Main_script/1.1.sql b/01_DD_ECM/Update/Added2Main_script/1.1.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.1.sql rename to 01_DD_ECM/Update/Added2Main_script/1.1.sql diff --git a/00_DD/Update/Added2Main_script/1.2.sql b/01_DD_ECM/Update/Added2Main_script/1.2.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.2.sql rename to 01_DD_ECM/Update/Added2Main_script/1.2.sql diff --git a/00_DD/Update/Added2Main_script/1.3.sql b/01_DD_ECM/Update/Added2Main_script/1.3.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.3.sql rename to 01_DD_ECM/Update/Added2Main_script/1.3.sql diff --git a/00_DD/Update/Added2Main_script/1.4.sql b/01_DD_ECM/Update/Added2Main_script/1.4.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.4.sql rename to 01_DD_ECM/Update/Added2Main_script/1.4.sql diff --git a/00_DD/Update/Added2Main_script/1.5.sql b/01_DD_ECM/Update/Added2Main_script/1.5.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.5.sql rename to 01_DD_ECM/Update/Added2Main_script/1.5.sql diff --git a/00_DD/Update/Added2Main_script/1.6.sql b/01_DD_ECM/Update/Added2Main_script/1.6.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.6.sql rename to 01_DD_ECM/Update/Added2Main_script/1.6.sql diff --git a/00_DD/Update/Added2Main_script/1.7.sql b/01_DD_ECM/Update/Added2Main_script/1.7.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.7.sql rename to 01_DD_ECM/Update/Added2Main_script/1.7.sql diff --git a/00_DD/Update/Added2Main_script/1.8.0.0.sql b/01_DD_ECM/Update/Added2Main_script/1.8.0.0.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.8.0.0.sql rename to 01_DD_ECM/Update/Added2Main_script/1.8.0.0.sql diff --git a/00_DD/Update/Added2Main_script/1.8.0.1.sql b/01_DD_ECM/Update/Added2Main_script/1.8.0.1.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.8.0.1.sql rename to 01_DD_ECM/Update/Added2Main_script/1.8.0.1.sql diff --git a/00_DD/Update/Added2Main_script/1.9.0.0.sql b/01_DD_ECM/Update/Added2Main_script/1.9.0.0.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.0.0.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.0.0.sql diff --git a/00_DD/Update/Added2Main_script/1.9.0.1.sql b/01_DD_ECM/Update/Added2Main_script/1.9.0.1.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.0.1.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.0.1.sql diff --git a/00_DD/Update/Added2Main_script/1.9.0.2.sql b/01_DD_ECM/Update/Added2Main_script/1.9.0.2.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.0.2.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.0.2.sql diff --git a/00_DD/Update/Added2Main_script/1.9.0.3.sql b/01_DD_ECM/Update/Added2Main_script/1.9.0.3.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.0.3.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.0.3.sql diff --git a/00_DD/Update/Added2Main_script/1.9.0.4.sql b/01_DD_ECM/Update/Added2Main_script/1.9.0.4.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.0.4.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.0.4.sql diff --git a/00_DD/Update/Added2Main_script/1.9.0.5.sql b/01_DD_ECM/Update/Added2Main_script/1.9.0.5.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.0.5.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.0.5.sql diff --git a/00_DD/Update/Added2Main_script/1.9.0.6.sql b/01_DD_ECM/Update/Added2Main_script/1.9.0.6.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.0.6.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.0.6.sql diff --git a/00_DD/Update/Added2Main_script/1.9.0.7.sql b/01_DD_ECM/Update/Added2Main_script/1.9.0.7.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.0.7.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.0.7.sql diff --git a/00_DD/Update/Added2Main_script/1.9.0.8.sql b/01_DD_ECM/Update/Added2Main_script/1.9.0.8.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.0.8.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.0.8.sql diff --git a/00_DD/Update/1.9.0.8.sql b/01_DD_ECM/Update/Added2Main_script/1.9.0.8_1.sql similarity index 100% rename from 00_DD/Update/1.9.0.8.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.0.8_1.sql diff --git a/00_DD/Update/Added2Main_script/1.9.1.0.sql b/01_DD_ECM/Update/Added2Main_script/1.9.1.0.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.1.0.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.1.0.sql diff --git a/00_DD/Update/Added2Main_script/1.9.1.1.sql b/01_DD_ECM/Update/Added2Main_script/1.9.1.1.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.1.1.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.1.1.sql diff --git a/00_DD/Update/Added2Main_script/1.9.2.0.sql b/01_DD_ECM/Update/Added2Main_script/1.9.2.0.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/1.9.2.0.sql rename to 01_DD_ECM/Update/Added2Main_script/1.9.2.0.sql diff --git a/00_DD/Update/Added2Main_script/2.0.0.2.sql b/01_DD_ECM/Update/Added2Main_script/2.0.0.2.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/2.0.0.2.sql rename to 01_DD_ECM/Update/Added2Main_script/2.0.0.2.sql diff --git a/00_DD/Update/Added2Main_script/2.0.0.3.sql b/01_DD_ECM/Update/Added2Main_script/2.0.0.3.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/2.0.0.3.sql rename to 01_DD_ECM/Update/Added2Main_script/2.0.0.3.sql diff --git a/00_DD/Update/Added2Main_script/2.0.0.4.sql b/01_DD_ECM/Update/Added2Main_script/2.0.0.4.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/2.0.0.4.sql rename to 01_DD_ECM/Update/Added2Main_script/2.0.0.4.sql diff --git a/00_DD/Update/Added2Main_script/2.0.0.5.sql b/01_DD_ECM/Update/Added2Main_script/2.0.0.5.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/2.0.0.5.sql rename to 01_DD_ECM/Update/Added2Main_script/2.0.0.5.sql diff --git a/00_DD/Update/Added2Main_script/2.0.0.6.sql b/01_DD_ECM/Update/Added2Main_script/2.0.0.6.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/2.0.0.6.sql rename to 01_DD_ECM/Update/Added2Main_script/2.0.0.6.sql diff --git a/00_DD/Update/Added2Main_script/2.1.0.0.sql b/01_DD_ECM/Update/Added2Main_script/2.1.0.0.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/2.1.0.0.sql rename to 01_DD_ECM/Update/Added2Main_script/2.1.0.0.sql diff --git a/00_DD/Update/Added2Main_script/2.1.0.1.sql b/01_DD_ECM/Update/Added2Main_script/2.1.0.1.sql similarity index 100% rename from 00_DD/Update/Added2Main_script/2.1.0.1.sql rename to 01_DD_ECM/Update/Added2Main_script/2.1.0.1.sql diff --git a/00_IDB/CreateDB.sql b/01_IDB/CreateDB.sql similarity index 100% rename from 00_IDB/CreateDB.sql rename to 01_IDB/CreateDB.sql diff --git a/00_IDB/CreateDBObjects.sql b/01_IDB/CreateDBObjects.sql similarity index 97% rename from 00_IDB/CreateDBObjects.sql rename to 01_IDB/CreateDBObjects.sql index aa01b61..3408957 100644 --- a/00_IDB/CreateDBObjects.sql +++ b/01_IDB/CreateDBObjects.sql @@ -844,6 +844,7 @@ GO INSERT INTO TBIDB_LANGUAGE_TERM_TYPE (TITLE) VALUES ('METADATA-TERM'); INSERT INTO TBIDB_LANGUAGE_TERM_TYPE (TITLE) VALUES ('DOCTYPE'); INSERT INTO TBIDB_LANGUAGE_TERM_TYPE (TITLE) VALUES ('DOC_STATE'); +INSERT INTO TBIDB_LANGUAGE_TERM_TYPE (TITLE) VALUES ('STRUCTURE_NODE'); GO CREATE TRIGGER TBIDB_LANGUAGE_TERM_TYPE_UPD ON TBIDB_LANGUAGE_TERM_TYPE FOR UPDATE @@ -1358,6 +1359,13 @@ CREATE TABLE TBIDB_COMMON_SQL CONSTRAINT PK_TBIDB_COMMON_SQL PRIMARY KEY (GUID) ) GO +CREATE TRIGGER [dbo].[TBIDB_COMMON_SQL_AFT_UPD] ON [dbo].[TBIDB_COMMON_SQL] +FOR UPDATE +AS + UPDATE TBIDB_COMMON_SQL SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_COMMON_SQL.GUID = INSERTED.GUID +GO DELETE FROM [TBIDB_COMMON_SQL] WHERE TITLE = 'FLOW_SEARCH_SQL_BASE'; INSERT INTO [dbo].[TBIDB_COMMON_SQL] ([TITLE] diff --git a/00_IDB/CreateFulltext.sql b/01_IDB/CreateFulltext.sql similarity index 100% rename from 00_IDB/CreateFulltext.sql rename to 01_IDB/CreateFulltext.sql diff --git a/00_IDB/DB01.sql b/01_IDB/DB01.sql similarity index 100% rename from 00_IDB/DB01.sql rename to 01_IDB/DB01.sql diff --git a/00_IDB/Development/TextSearch.sql b/01_IDB/Development/TextSearch.sql similarity index 100% rename from 00_IDB/Development/TextSearch.sql rename to 01_IDB/Development/TextSearch.sql diff --git a/00_IDB/Fulltext.sql b/01_IDB/Fulltext.sql similarity index 100% rename from 00_IDB/Fulltext.sql rename to 01_IDB/Fulltext.sql diff --git a/00_IDB/Search_Logic.sql b/01_IDB/Search_Logic.sql similarity index 100% rename from 00_IDB/Search_Logic.sql rename to 01_IDB/Search_Logic.sql diff --git a/00_IDB/Search_TEST.sql b/01_IDB/Search_TEST.sql similarity index 100% rename from 00_IDB/Search_TEST.sql rename to 01_IDB/Search_TEST.sql diff --git a/01_IDB/StructureNode.sql b/01_IDB/StructureNode.sql new file mode 100644 index 0000000..a8440e2 --- /dev/null +++ b/01_IDB/StructureNode.sql @@ -0,0 +1,226 @@ +-- ============================================= +-- Author: DD MS +-- Changed: +-- ============================================= +--CREATE PROCEDURE PRIDB_NEW_DYNAMIC_FOLDER_FOR_OBJECT + +DECLARE @pIDB_OBJ_ID BIGINT, @pDYNAMIC_FOLDER VARCHAR(900),@pWHO VARCHAR(100),@pLANG_CODE VARCHAR(5) +--AS +SET @pIDB_OBJ_ID = 10026 +SET @pDYNAMIC_FOLDER = 'DIGITAL DATA\Geschäftsprozess\Projekte\Zooflow\Entwicklung\Dynamischer Ordner' +DECLARE + @FOLD_PART VARCHAR(250) +BEGIN + + DECLARE @FOLDER_DEPTH TINYINT,@FOLDER_PART VARCHAR(900) + SET @FOLDER_DEPTH = 0 + DECLARE @PARENT_OBJ_ID BIGINT + --SPLIT FOR FOLDER PARTS + DECLARE cursSplitFolder CURSOR FOR + SELECT Item FROM [dbo].[FN_SPLIT_STRING] (@pDYNAMIC_FOLDER,'\') + OPEN cursSplitFolder + FETCH NEXT FROM cursSplitFolder INTO @FOLD_PART + WHILE @@FETCH_STATUS = 0 + BEGIN + --EACH FOLDER PART WORKED SEPERATELY + IF @FOLDER_DEPTH = 0 + BEGIN + SET @PARENT_OBJ_ID = 0 + SET @FOLDER_PART = @FOLD_PART + END + ELSE + BEGIN + SET @FOLDER_PART += '\' + @FOLD_PART + END + PRINT '##############################' + PRINT '@FOLDER_PART: ' + @FOLDER_PART + DECLARE @PATH_PART_ID BIGINT,@FOLDER_PART_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@FOLD_PART,@pWHO,@TERM_ID = @PATH_PART_ID OUTPUT; + --EXEC PRIDB_NEW_TERM 'VARCHAR',@FOLDER_PART,'DD MS',@TERM_ID = @FOLDER_PART_ID OUTPUT; + DECLARE @FOLD_PART_IDB_OBJ_ID BIGINT + IF NOT EXISTS(SELECT * FROM VWIDB_STRUCTURE_NODES WHERE TERM_GUID = @PATH_PART_ID AND PARENT_OBJ_ID = @PARENT_OBJ_ID) + BEGIN + PRINT 'FOLDER-PART ' + @FOLD_PART + ' muss angelegt werden' + EXEC PRIDB_NEW_OBJECT 'DYNAMIC_FOLDER',@pWHO,0, @PARENT_OBJ_ID, @IDB_OBJ_ID = @FOLD_PART_IDB_OBJ_ID OUTPUT; + DECLARE @NEW_OBJ_MD_ID BIGINT + EXEC PRIDB_NEW_OBJ_DATA @FOLD_PART_IDB_OBJ_ID, 'VIRTUAL_FOLDER_PART', @pWHO, @FOLD_PART, @pLANG_CODE, 0, @OMD_ID = @NEW_OBJ_MD_ID OUTPUT + END + ELSE + BEGIN + SELECT @FOLD_PART_IDB_OBJ_ID = MAX(IDB_OBJ_ID) FROM VWIDB_STRUCTURE_NODES WHERE TERM_GUID = @PATH_PART_ID AND PARENT_OBJ_ID = @PARENT_OBJ_ID + PRINT 'FOLDER-PART ' + @FOLD_PART + ' EXISTIERT BEREITS' + END + SET @PARENT_OBJ_ID = @FOLD_PART_IDB_OBJ_ID + + SET @FOLDER_DEPTH += 1 + FETCH NEXT FROM cursSplitFolder INTO @FOLD_PART + END + CLOSE cursSplitFolder + DEALLOCATE cursSplitFolder + + IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_DYNAMIC_FOLDER WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND DYN_FOLD_ID = @FOLD_PART_IDB_OBJ_ID) + INSERT INTO TBIDB_OBJECT_DYNAMIC_FOLDER (IDB_OBJ_ID,DYN_FOLD_ID,ADDED_WHO) VALUES (@pIDB_OBJ_ID,@FOLD_PART_IDB_OBJ_ID,@pWHO); +END +GO +DROP TABLE TBIDB_SN_IDB_OBJ +DROP TABLE TBIDB_STRUCTURE_NODES +CREATE TABLE TBIDB_STRUCTURE_NODES +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + PARENT_ID BIGINT NOT NULL DEFAULT 0, + TERM_LANG_ID BIGINT NOT NULL, + ADDED_WHO VARCHAR(100), + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CHANGED_WHO VARCHAR(100), + CHANGED_WHEN DATETIME, + CONSTRAINT PK_TBIDB_STRUCTURE_NODES PRIMARY KEY (GUID), + CONSTRAINT FK_TBIDB_STRUCTURE_NODES_TLANGID FOREIGN KEY (TERM_LANG_ID) REFERENCES TBIDB_LANGUAGE_TERM (GUID), + CONSTRAINT UQ_TBIDB_STRUCTURE_NODES UNIQUE(PARENT_ID,TERM_LANG_ID) + ) +GO +CREATE TRIGGER TBIDB_STRUCTURE_NODES_AFT_UPD ON TBIDB_STRUCTURE_NODES +FOR UPDATE +AS + UPDATE TBIDB_STRUCTURE_NODES SET CHANGED_WHEN = GETDATE() + FROM INSERTED + WHERE TBIDB_STRUCTURE_NODES .GUID = INSERTED.GUID +GO +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_STRUCTURE_NODE] @pPARENT_ID BIGINT, @pTERM_LANG_ID BIGINT,@pWHO VARCHAR(100), @OUT_SN_GUID BIGINT OUTPUT +AS +BEGIN + IF NOT EXISTS(SELECT GUID FROM TBIDB_STRUCTURE_NODES WHERE PARENT_ID = @pPARENT_ID AND TERM_LANG_ID = @pTERM_LANG_ID) + INSERT INTO TBIDB_STRUCTURE_NODES (PARENT_ID,TERM_LANG_ID,ADDED_WHO) VALUES (@pPARENT_ID,@pTERM_LANG_ID,@pWHO) + BEGIN + SELECT @OUT_SN_GUID = GUID FROM TBIDB_STRUCTURE_NODES WHERE PARENT_ID = @pPARENT_ID AND TERM_LANG_ID = @pTERM_LANG_ID + END +END +GO + +CREATE TABLE TBIDB_STRUCTURE_NODES_IDB_OBJ +( + GUID BIGINT NOT NULL IDENTITY (1, 1), + SN_ID BIGINT NOT NULL, + IDB_OBJ_ID BIGINT NOT NULL, + ADDED_WHO VARCHAR(100), + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBIDB_SN_IDB_OBJ PRIMARY KEY (GUID), + CONSTRAINT FK_TBIDB_SN_IDB_OBJ_SN_ID FOREIGN KEY (SN_ID) REFERENCES TBIDB_STRUCTURE_NODES (GUID), + CONSTRAINT FK_TBIDB_SN_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID), + CONSTRAINT UQ_TBIDB_SN_IDB_OBJ UNIQUE(SN_ID,IDB_OBJ_ID) + ) +GO +CREATE VIEW VWIDB_LANGAGE_TERM_KIND_NODE +AS +SELECT + LTERM.GUID + ,LTERM.TERM_ID + ,TERM.TERM_VALUE + ,LTERM.LANG_ID + ,LANG.LANG_CODE +FROM + TBIDB_LANGUAGE_TERM LTERM + INNER JOIN TBIDB_LANGUAGE LANG ON LTERM.LANG_ID = LANG.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON LTERM.TERM_ID = TERM.GUID +WHERE + LTERM.KIND_TYPE = 4 + +GO +CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_LANGUAGE_TERM] @pOBJ_ID BIGINT, @pTERM_ID BIGINT,@pWHO_TERM_ID BIGINT,@pKIND_TYPE INT,@pLANG_ID TINYINT, @OUT_LANG_TERM_GUID BIGINT OUTPUT +AS +BEGIN + IF NOT EXISTS(SELECT GUID FROM TBIDB_LANGUAGE_TERM WHERE OBJECT_ID = @pOBJ_ID AND LANG_ID = @pLANG_ID AND TERM_ID = @pTERM_ID AND KIND_TYPE = @pKIND_TYPE ) + INSERT INTO TBIDB_LANGUAGE_TERM (OBJECT_ID,TERM_ID,LANG_ID,ADDED_WHO,KIND_TYPE) VALUES (@pOBJ_ID,@pTERM_ID,@pLANG_ID,@pWHO_TERM_ID,@pKIND_TYPE) + ELSE + BEGIN + UPDATE TBIDB_LANGUAGE_TERM SET TERM_ID = @pTERM_ID,CHANGED_WHO = @pWHO_TERM_ID WHERE OBJECT_ID = @pOBJ_ID AND LANG_ID = @pLANG_ID AND KIND_TYPE = @pKIND_TYPE + AND TERM_ID <> @pTERM_ID + PRINT 'NEW LANG TERM ALREADY EXISTING' + END + SELECT @OUT_LANG_TERM_GUID = GUID FROM TBIDB_LANGUAGE_TERM WHERE OBJECT_ID = @pOBJ_ID AND LANG_ID = @pLANG_ID AND TERM_ID = @pTERM_ID AND KIND_TYPE = @pKIND_TYPE + PRINT 'NEW LANGTERMID: ' + CONVERT(VARCHAR(10),@OUT_LANG_TERM_GUID) +END +GO +-- ============================================= +-- Author: DD MS +-- Changed: +-- ============================================= +--CREATE PROCEDURE PRIDB_NEW_DYNAMIC_FOLDER_FOR_OBJECT + +DECLARE @pIDB_OBJ_ID BIGINT, @pDYNAMIC_FOLDER VARCHAR(900),@pWHO VARCHAR(100),@pLANG_ID TINYINT +--AS +SET @pIDB_OBJ_ID = 10026 +SET @pDYNAMIC_FOLDER = 'DIGITAL DATA\Geschäftsprozess\Projekte\Zooflow\Entwicklung\Dynamischer Ordner' +SET @pLANG_ID = 1 +SET @pWHO = 'SchreiberM' +DECLARE + @FOLD_PART VARCHAR(250), + @WHO_TERM_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT; +BEGIN + + DECLARE @FOLDER_DEPTH TINYINT,@FOLDER_PART VARCHAR(900) + SET @FOLDER_DEPTH = 0 + DECLARE @PARENT_NODE_GUID BIGINT + --SPLIT FOR FOLDER PARTS + DECLARE cursSplitFolder CURSOR FOR + SELECT Item FROM [dbo].[FN_SPLIT_STRING] (@pDYNAMIC_FOLDER,'\') + OPEN cursSplitFolder + FETCH NEXT FROM cursSplitFolder INTO @FOLD_PART + WHILE @@FETCH_STATUS = 0 + BEGIN + --EACH FOLDER PART WORKED SEPERATELY + IF @FOLDER_DEPTH = 0 + BEGIN + SET @PARENT_NODE_GUID = 0 + SET @FOLDER_PART = @FOLD_PART + END + ELSE + BEGIN + SET @FOLDER_PART += '\' + @FOLD_PART + END + PRINT '##############################' + PRINT '@FOLDER_PART: ' + @FOLDER_PART + DECLARE @PATH_PART_ID BIGINT,@FOLDER_PART_ID BIGINT + EXEC PRIDB_NEW_TERM 'VARCHAR',@FOLD_PART,@pWHO,@TERM_ID = @PATH_PART_ID OUTPUT; + --EXEC PRIDB_NEW_TERM 'VARCHAR',@FOLDER_PART,'DD MS',@TERM_ID = @FOLDER_PART_ID OUTPUT; + DECLARE @OUT_LANG_TERM_GUID BIGINT + + --PRÜFEN OB DER NODE_TERM ANGELEGT IST + EXEC [PRIDB_NEW_LANGUAGE_TERM] @PARENT_NODE_GUID, @PATH_PART_ID,@WHO_TERM_ID,4,@pLANG_ID,@OUT_LANG_TERM_GUID = @OUT_LANG_TERM_GUID + SELECT @OUT_LANG_TERM_GUID = GUID FROM TBIDB_LANGUAGE_TERM WHERE OBJECT_ID = @PARENT_NODE_GUID AND LANG_ID = @pLANG_ID AND TERM_ID = @PATH_PART_ID AND KIND_TYPE = 4 + DECLARE @OUT_SN_GUID BIGINT + EXEC PRIDB_NEW_STRUCTURE_NODE @PARENT_NODE_GUID, @OUT_LANG_TERM_GUID,@pWHO,@OUT_SN_GUID = @OUT_SN_GUID OUTPUT + + SET @PARENT_NODE_GUID = @OUT_SN_GUID + + SET @FOLDER_DEPTH += 1 + FETCH NEXT FROM cursSplitFolder INTO @FOLD_PART + END + CLOSE cursSplitFolder + DEALLOCATE cursSplitFolder + + --IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_DYNAMIC_FOLDER WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND DYN_FOLD_ID = @FOLD_PART_IDB_OBJ_ID) + -- INSERT INTO TBIDB_OBJECT_DYNAMIC_FOLDER (IDB_OBJ_ID,DYN_FOLD_ID,ADDED_WHO) VALUES (@pIDB_OBJ_ID,@FOLD_PART_IDB_OBJ_ID,@pWHO); +END + +GO +CREATE VIEW VWIDB_LANGAGE_TERM_KIND_NODE +AS +SELECT + SN.GUID NODE_ID + ,SN.PARENT_ID NODE_PARENT_ID + ,LTERM.TERM_ID + ,LTERM.OBJECT_ID OBJ_ID + ,TERM.TERM_VALUE AS NODE_CAPTION + ,LTERM.LANG_ID + ,LANG.LANG_CODE +FROM + TBIDB_STRUCTURE_NODES SN INNER JOIN + TBIDB_LANGUAGE_TERM LTERM ON SN.TERM_LANG_ID = LTERM.GUID + INNER JOIN TBIDB_LANGUAGE LANG ON LTERM.LANG_ID = LANG.GUID + INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON LTERM.TERM_ID = TERM.GUID +WHERE + LTERM.KIND_TYPE = 4 + +GO +select * from TBIDB_STRUCTURE_NODES \ No newline at end of file diff --git a/00_IDB/Update/1.1.1.sql b/01_IDB/Update/1.1.1.sql similarity index 100% rename from 00_IDB/Update/1.1.1.sql rename to 01_IDB/Update/1.1.1.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.0.1.sql b/01_IDB/Update/Added2CreateDBObjects/1.0.1.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.0.1.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.0.1.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.0.2.sql b/01_IDB/Update/Added2CreateDBObjects/1.0.2.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.0.2.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.0.2.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.0.3.sql b/01_IDB/Update/Added2CreateDBObjects/1.0.3.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.0.3.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.0.3.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.0.4.1.sql b/01_IDB/Update/Added2CreateDBObjects/1.0.4.1.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.0.4.1.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.0.4.1.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.0.4.sql b/01_IDB/Update/Added2CreateDBObjects/1.0.4.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.0.4.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.0.4.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.0.5.sql b/01_IDB/Update/Added2CreateDBObjects/1.0.5.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.0.5.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.0.5.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.0.6.sql b/01_IDB/Update/Added2CreateDBObjects/1.0.6.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.0.6.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.0.6.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.0.7.sql b/01_IDB/Update/Added2CreateDBObjects/1.0.7.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.0.7.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.0.7.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.0.8.sql b/01_IDB/Update/Added2CreateDBObjects/1.0.8.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.0.8.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.0.8.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.0.9.sql b/01_IDB/Update/Added2CreateDBObjects/1.0.9.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.0.9.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.0.9.sql diff --git a/00_IDB/Update/Added2CreateDBObjects/1.1.0.sql b/01_IDB/Update/Added2CreateDBObjects/1.1.0.sql similarity index 100% rename from 00_IDB/Update/Added2CreateDBObjects/1.1.0.sql rename to 01_IDB/Update/Added2CreateDBObjects/1.1.0.sql diff --git a/00_IDB/Update/g1hxflhb.tpr~ b/01_IDB/Update/g1hxflhb.tpr~ similarity index 100% rename from 00_IDB/Update/g1hxflhb.tpr~ rename to 01_IDB/Update/g1hxflhb.tpr~ diff --git a/01_PM/CreateDBObjects.sql b/02_PM/CreateDBObjects.sql similarity index 94% rename from 01_PM/CreateDBObjects.sql rename to 02_PM/CreateDBObjects.sql index e66070b..fd78e5d 100644 --- a/01_PM/CreateDBObjects.sql +++ b/02_PM/CreateDBObjects.sql @@ -1,12 +1,9 @@ /*################################## -1. If windream database is not located: Search for windream60 and replace with databaselink.windream60 -ALTER TABLE TBDD_CONNECTION -ADD SYS_CONNECTION BIT DEFAULT 0 NOT NULL; -GO +1. Replace @WINDREAM_DB in code with name of WM-Database ####################################*/ -UPDATE TBDD_MODULES SET DB_VERSION = '2.2.0.0' where NAME = 'Process-Manager' +UPDATE TBDD_MODULES SET DB_VERSION = '2.2.1.1' where NAME = 'Process-Manager' GO INSERT INTO TBDD_USER_MODULES (USER_ID,MODULE_ID,IS_ADMIN) SELECT GUID,(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'PM'),1 FROM TBDD_USER where USERNAME IN (SELECT USR_NAME FROM TBIMPORT_USER); INSERT INTO TBDD_CLIENT_USER (USER_ID,CLIENT_ID) SELECT GUID,1 FROM TBDD_USER WHERE GUID NOT IN (SELECT USER_ID FROM TBDD_CLIENT_USER WHERE CLIENT_ID = 1); @@ -385,6 +382,7 @@ DEFAULT_VALUE VARCHAR (MAX) NOT NULL DEFAULT '', ADVANCED_LOOKUP BIT NOT NULL DEFAULT 0, [SUMMARY_FUNCTION] VARCHAR(20) NOT NULL DEFAULT ('NONE'), [TYPE_COLUMN] VARCHAR(20) NOT NULL DEFAULT ('TEXT'), +LU_CAPTION VARCHAR(150) NOT NULL DEFAULT 'NONE', ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data', ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()), CHANGED_WHO VARCHAR(30), @@ -626,13 +624,26 @@ CREATE TABLE [dbo].[TBPM_DOCWALKOVER]( GO ALTER TABLE [dbo].[TBPM_DOCWALKOVER] ADD CONSTRAINT [DF_TBPM_CUST_DocWalkOver_ADDED_WHEN] DEFAULT (getdate()) FOR [ADDED_WHEN] GO +CREATE TABLE TBPM_VALIDATION_PROFILE_GROUP_USER +( + GUID BIGINT IDENTITY(1,1), + PROFIL_ID INTEGER NOT NULL, + DocID BIGINT NOT NULL, + UserID INTEGER NOT NULL, + ADDED_WHO VARCHAR(100) DEFAULT 'SYSTEM' NOT NULL, + ADDED_WHEN DATETIME DEFAULT GETDATE(), + CONSTRAINT PK_TBPM_VALIDATION_PROFILE_GROUP_USER PRIMARY KEY(GUID), + CONSTRAINT UQ_TBPM_VALIDATION_PROFILE_GROUP_USER UNIQUE (PROFIL_ID,DocID,UserID) +) +GO --############################################ --##########PROCEDURES######################## --############################################ -- ============================================= -- Author: Digital Data MS --- Create date: 11.06.2021 +-- Created: 11.06.2021 -- Description: Gets the next DocumentID +-- Changed: 05.05.2022 Insert only when <> 0 -- ============================================= CREATE PROCEDURE [dbo].[PRPM_GET_NEXT_DOC_INFO] ( @@ -642,19 +653,15 @@ CREATE PROCEDURE [dbo].[PRPM_GET_NEXT_DOC_INFO] ) AS BEGIN - INSERT INTO TBPM_DOCWALKOVER (DocID,UserID) VALUES (@DocID,@UserID) + IF @DocID <> 0 + BEGIN + INSERT INTO TBPM_DOCWALKOVER (DocID,UserID) VALUES (@DocID,@UserID); + END - SELECT Top 1 GUID, DOC_ID - FROM - TBPM_PROFILE_FILES - WHERE - PROFIL_ID = @PROFIL_ID AND EDIT = 0 AND IN_WORK = 0 AND - DOC_ID <> @DocID AND DOC_ID NOT IN (select DocID from TBPM_DOCWALKOVER WHERE UserID = @DocID AND UserID = @UserID) - AND GUID NOT IN ( - SELECT A.[DocGUID] - FROM [TBPM_FILES_USER_NOT_INDEXED] A INNER JOIN TBDD_USER B ON A.USR_NAME = B.USERNAME - WHERE A.PROFIL_ID = @PROFIL_ID AND B.GUID = @UserID - ) + SELECT GUID as DocGUID, DOC_ID as DocID + ,(SELECT COUNT(GUID) FROM TBPM_VALIDATION_PROFILE_GROUP_USER WHERE UserID = @UserID) - (SELECT COUNT(DocID) + 1 FROM TBPM_DOCWALKOVER WHERE UserID = @UserID) REMAINING + FROM TBPM_PROFILE_FILES WHERE PROFIL_ID = @PROFIL_ID AND DOC_ID = ( + SELECT MIN(DocID) FROM TBPM_VALIDATION_PROFILE_GROUP_USER WHERE UserID = @UserID AND DocID not in (SELECT DISTINCT DocID FROM TBPM_DOCWALKOVER WHERE UserID = @UserID)) RETURN END @@ -900,7 +907,7 @@ DECLARE c_PRPM_REMOVE_NE_FILES CURSOR FOR FETCH NEXT FROM c_PRPM_REMOVE_NE_FILES INTO @DOC_ID,@DocRelativePath WHILE @@FETCH_STATUS = 0 BEGIN - IF NOT EXISTS(SELECT [dwDocID] FROM windream60.[dbo].[BaseAttributes] where dwDocID = @DOC_ID) + IF NOT EXISTS(SELECT [dwDocID] FROM @WINDREAM_DB.[dbo].[BaseAttributes] where dwDocID = @DOC_ID) IF NOT EXISTS(SELECT IDB_OBJ_ID FROM IDB.dbo.TBIDB_DOC_INFO WHERE IDB_OBJ_ID = @DOC_ID and UPPER(RELATIVE_PATH) = UPPER(@DocRelativePath)) DELETE FROM TBPM_PROFILE_FILES WHERE DOC_ID = @DOC_ID FETCH NEXT FROM c_PRPM_REMOVE_NE_FILES INTO @DOC_ID,@DocRelativePath @@ -1569,7 +1576,7 @@ LAST EDITED */ FROM TBPM_PROFILE_FILES T, TBPM_PROFILE T1, TBDD_USER T2, - windream60.dbo.BaseAttributes TWM_BA WHERE T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1 AND T.PROFIL_ID = T1.GUID AND T1.GUID in (SELECT PROFIL_ID FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] ({#USER#USER_ID})) AND T1.ACTIVE = 1 And T2.GUID = {#USER#USER_ID} + @WINDREAM_DB.dbo.BaseAttributes TWM_BA WHERE T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1 AND T.PROFIL_ID = T1.GUID AND T1.GUID in (SELECT PROFIL_ID FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] ({#USER#USER_ID})) AND T1.ACTIVE = 1 And T2.GUID = {#USER#USER_ID} AND T.DOC_ID = TWM_BA.dwDocID ORDER By T1.PRIORITY' WHERE GUID = 1 GO @@ -1590,14 +1597,14 @@ BEGIN SELECT @WM_PREFIX = WM_REL_PATH from tbpm_KONFIGURATION WHERE GUID = 1 - SELECT @FSFLAGS = dwFSFlags FROM windream60.dbo.BaseAttributes WHERE dwDocID = @pDOCID + SELECT @FSFLAGS = dwFSFlags FROM @WINDREAM_DB.dbo.BaseAttributes WHERE dwDocID = @pDOCID IF @FSFLAGS = 16 BEGIN SET @RESULT = 'THIS IS NOT A FILE!' END ELSE BEGIN - SELECT @DATEINAME = szLongName,@PARENT_ID = dwParentID FROM windream60.dbo.BaseAttributes WHERE dwDocID = @pDOCID + SELECT @DATEINAME = szLongName,@PARENT_ID = dwParentID FROM @WINDREAM_DB.dbo.BaseAttributes WHERE dwDocID = @pDOCID WHILE @a > 0 BEGIN IF @i = 0 @@ -1626,8 +1633,7 @@ BEGIN SET @RESULT = '\' + @PARENTNAME + @RESULT END END - --select * from [172.24.12.41\BRAINPOOL].windream60.dbo.BaseAttributes - SELECT @PARENTNAME = szLongName,@PARENT_ID = dwParentID FROM windream60.dbo.BaseAttributes WHERE dwDocID = @DOCID + SELECT @PARENTNAME = szLongName,@PARENT_ID = dwParentID FROM @WINDREAM_DB.dbo.BaseAttributes WHERE dwDocID = @DOCID SET @i = @i + 1 END END diff --git a/01_PM/Updates/1.9.4.9.sql b/02_PM/Updates/Added2MainScript/1.9.4.9.sql similarity index 100% rename from 01_PM/Updates/1.9.4.9.sql rename to 02_PM/Updates/Added2MainScript/1.9.4.9.sql diff --git a/01_PM/Updates/1.9.5.0.sql b/02_PM/Updates/Added2MainScript/1.9.5.0.sql similarity index 100% rename from 01_PM/Updates/1.9.5.0.sql rename to 02_PM/Updates/Added2MainScript/1.9.5.0.sql diff --git a/01_PM/Updates/2.2.0.0.sql b/02_PM/Updates/Added2MainScript/2.2.0.0 - AH Workflows.sql similarity index 100% rename from 01_PM/Updates/2.2.0.0.sql rename to 02_PM/Updates/Added2MainScript/2.2.0.0 - AH Workflows.sql diff --git a/01_PM/Updates/2.2.1.0.sql b/02_PM/Updates/Added2MainScript/2.2.1.0.sql similarity index 100% rename from 01_PM/Updates/2.2.1.0.sql rename to 02_PM/Updates/Added2MainScript/2.2.1.0.sql diff --git a/01_PM/Updates/2.2.1.1.sql b/02_PM/Updates/Added2MainScript/2.2.1.1.sql similarity index 100% rename from 01_PM/Updates/2.2.1.1.sql rename to 02_PM/Updates/Added2MainScript/2.2.1.1.sql diff --git a/03_CW/windream_related_scripts.sql b/03_CW/windream_related_scripts.sql index 05e6121..585c244 100644 --- a/03_CW/windream_related_scripts.sql +++ b/03_CW/windream_related_scripts.sql @@ -1,3 +1,5 @@ + +-- Replace @WINDREAM_DB in code with name of WM-Database CREATE FUNCTION [dbo].[FNDD_GET_WINDREAM_FILE_PATH] (@pDOCID BIGINT,@USE_WM_PATH as BIT = 0) RETURNS VARCHAR(MAX) AS @@ -24,14 +26,14 @@ BEGIN SELECT @WM_PREFIX = WM_REL_PATH from tbpm_KONFIGURATION WHERE GUID = 1 - SELECT @FSFLAGS = dwFSFlags FROM [sDD_VMP01_APS01_windream60].dbo.BaseAttributes WHERE dwDocID = @pDOCID + SELECT @FSFLAGS = dwFSFlags FROM [@WINDREAM_DB].dbo.BaseAttributes WHERE dwDocID = @pDOCID IF @FSFLAGS = 16 BEGIN SET @RESULT = 'THIS IS NOT A FILE!' END ELSE BEGIN - SELECT @DATEINAME = szLongName,@PARENT_ID = dwParentID FROM [sDD_VMP01_APS01_windream60].dbo.BaseAttributes WHERE dwDocID = @pDOCID + SELECT @DATEINAME = szLongName,@PARENT_ID = dwParentID FROM [@WINDREAM_DB].dbo.BaseAttributes WHERE dwDocID = @pDOCID WHILE @a > 0 BEGIN IF @i = 0 @@ -61,8 +63,7 @@ BEGIN SET @RESULT = '\' + @PARENTNAME + @RESULT END END - --select * from [172.24.12.41\BRAINPOOL].[sDD_VMP01_APS01_windream60].dbo.BaseAttributes - SELECT @PARENTNAME = szLongName,@PARENT_ID = dwParentID FROM [sDD_VMP01_APS01_windream60].dbo.BaseAttributes WHERE dwDocID = @DOCID + SELECT @PARENTNAME = szLongName,@PARENT_ID = dwParentID FROM [@WINDREAM_DB].dbo.BaseAttributes WHERE dwDocID = @DOCID SET @i = @i + 1 END END @@ -204,14 +205,13 @@ SELECT TOP 100 PERCENT ,T.wmVar27 ,T.wmVar28 ,T.wmVar29 - - ,(SELECT ISNULL(T.dwVersionNumber,'1') from sDD_VMP01_APS01_windream60.dbo.BaseAttributes WHERE dwDocID = T.dwDocID) AS [Version] + ,(SELECT ISNULL(T.dwVersionNumber,'1') from @WINDREAM_DB.dbo.BaseAttributes WHERE dwDocID = T.dwDocID) AS [Version] ,CAST(CAST(CONVERT(DATE,CONVERT(VARCHAR(10),T.dwCreationDate)) AS DATETIME) + CAST(STUFF(STUFF(REPLICATE('0',6-LEN(T.dwCreation_Time)) + convert(VARCHAR(6),T.dwCreation_Time),3,0,':'),6,0,':') AS DATETIME) AS DATETIME) AS [Creation_DateTime] ,CAST(CAST(CONVERT(DATE,CONVERT(VARCHAR(10),T.dwChangeDate)) AS DATETIME) + CAST(STUFF(STUFF(REPLICATE('0',6-LEN(T.dwChange_Time)) + convert(VARCHAR(6),T.dwChange_Time),3,0,':'),6,0,':') AS DATETIME) AS DATETIME) AS Change_DateTime,T1.szDocTypeName AS OBJECTTYPE ,T.dwObjectTypeID FROM - sDD_VMP01_APS01_windream60.dbo.BaseAttributes T - ,sDD_VMP01_APS01_windream60.dbo.ObjectType T1 + @WINDREAM_DB.dbo.BaseAttributes T + ,@WINDREAM_DB.dbo.ObjectType T1 WHERE T.dwCatalogID = 1 AND T.dwObjectTypeID = 4 diff --git a/02_GI/CreateDBObjects.sql b/03_GI/CreateDBObjects.sql similarity index 93% rename from 02_GI/CreateDBObjects.sql rename to 03_GI/CreateDBObjects.sql index 7f011da..3d3f6ad 100644 --- a/02_GI/CreateDBObjects.sql +++ b/03_GI/CreateDBObjects.sql @@ -1,4 +1,3 @@ - UPDATE TBDD_MODULES SET PRODUCT_VERSION = '2.5.2.0' where NAME = 'Global-Indexer' GO UPDATE TBDD_MODULES SET STRING1 = '\\windream\objects' WHERE SHORT_NAME = 'GLOBIX' AND STRING1 = 'W'; @@ -32,9 +31,10 @@ GO ------------------------------------------------------------------------------ CREATE TABLE TBGI_FILES_USER ( - GUID INT IDENTITY(1,1), + GUID BIGINT IDENTITY(1,1), + DocID BIGINT NOT NULL DEFAULT 0, FILENAME2WORK VARCHAR(500) NOT NULL, - FILENAME_ONLY VARCHAR(250) NOT NULL DEFAULT '', + FILENAME_ONLY VARCHAR(250) NOT NULL DEFAULT '', FILE_HASH VARCHAR(100), USER@WORK VARCHAR(50) NOT NULL, WORKED BIT NOT NULL DEFAULT 0, @@ -112,12 +112,14 @@ CREATE TABLE TBGI_HISTORY INDEX10 VARCHAR(250), MSG_ID VARCHAR(250), ATTACHMENT BIT NOT NULL DEFAULT 0, + FILE_HASH VARCHAR(100), ADDED_WHO VARCHAR(50), ADDED_WHEN DATETIME DEFAULT GETDATE(), ADDED_WHERE VARCHAR(100), CONSTRAINT PK_TBGI_HISTORY PRIMARY KEY(GUID) ) GO + ------------------------------------------------------------------------------ CREATE TABLE TBGI_OBJECTTYPE_EMAIL_INDEX @@ -281,7 +283,7 @@ GO --############# VIEWS ################# ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -CREATE VIEW VWGI_DOCTYPE_GROUP AS +CREATE VIEW [dbo].[VWGI_DOCTYPE_GROUP] AS SELECT T.GUID, T.DOCTYPE_ID, @@ -297,9 +299,10 @@ FROM TBDD_DOKUMENTART T2 WHERE T.DOCTYPE_ID = T2.GUID AND - T.GROUP_ID = T1.GUID + T.GROUP_ID = T1.GUID AND + T1.ACTIVE = 1 AND + T2.AKTIV = 1 GO - CREATE VIEW [dbo].[VWGI_DOCTYPE_USER] AS SELECT DISTINCT T.GUID AS [USER_ID], @@ -505,10 +508,7 @@ BEGIN DEALLOCATE c_INDEX END GO -ALTER TABLE TBGI_HISTORY ALTER COLUMN FILENAME_NEW VARCHAR(500) NOT NULL -GO -ALTER TABLE TBGI_HISTORY ALTER COLUMN FILENAME_ORIGINAL VARCHAR(500) NOT NULL -GO + CREATE OR ALTER VIEW [dbo].[VWGI_DOCTYPE_IDB] AS SELECT @@ -537,15 +537,16 @@ CREATE VIEW [dbo].[VWGI_DOCTYPE] AS SELECT DISTINCT T.GUID AS [USER_ID], T.USERNAME, - T2.NAME AS GROUP_NAME, + --T2.NAME AS GROUP_NAME, T3.DOCTYPE_ID, - T4.BEZEICHNUNG + ' - ' + T2.NAME AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE, T4.BEZEICHNUNG AS DOCTYPE_ONLY, T4.KURZNAME, T4.ZIEL_PFAD, T4.AKTIV, T4.NAMENKONVENTION, T4.OBJEKTTYP, + --T4.IDB_FILESTORE_ID, T4.SEQUENCE FROM TBDD_USER T, @@ -559,29 +560,31 @@ WHERE T1.GROUP_ID = T2.GUID AND T2.GUID = T3.GROUP_ID AND T3.DOCTYPE_ID = T4.GUID AND - T4.GUID in (SELECT DOKART_ID FROM TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM TBDD_MODULES WHERE UPPER(NAME) = UPPER('Global-Indexer'))) -GO - - -CREATE VIEW [dbo].[VWGI_DOCTYPE_GROUP] AS -SELECT - T.GUID, - T.DOCTYPE_ID, - T2.BEZEICHNUNG AS DOCTYPE, - T.GROUP_ID, - T1.NAME AS [GROUP], - T.ADDED_WHO, - T.ADDED_WHEN, - T.CHANGED_WHEN -FROM - TBDD_USRGRP_DOKTYPE T, - TBDD_GROUPS T1, - TBDD_DOKUMENTART T2 + T4.GUID in (SELECT DOKART_ID FROM TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) +UNION +SELECT DISTINCT + T.GUID AS [USER_ID], + T.USERNAME, + --'' AS GROUP_NAME, + T4.GUID as DOCTYPE_ID, + T4.BEZEICHNUNG AS DOCTYPE, + T4.BEZEICHNUNG AS DOCTYPE_ONLY, + T4.KURZNAME, + T4.ZIEL_PFAD, + T4.AKTIV, + T4.NAMENKONVENTION, + T4.OBJEKTTYP, + --T4.IDB_FILESTORE_ID, + T4.SEQUENCE +FROM + TBDD_USER T, + TBDD_USER_DOKTYPE T3, + TBDD_DOKUMENTART T4 WHERE - T.DOCTYPE_ID = T2.GUID AND - T.GROUP_ID = T1.GUID AND - T1.ACTIVE = 1 AND - T2.AKTIV = 1 + T4.AKTIV = 1 AND + T.GUID = T3.[USER_ID] AND + T3.DOCTYPE_ID = T4.GUID AND + T4.GUID in (SELECT DOKART_ID FROM TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX'))) GO diff --git a/02_GI/Updates/Added2MainScript/1.9.3.1.sql b/03_GI/Updates/Added2MainScript/1.9.3.1.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/1.9.3.1.sql rename to 03_GI/Updates/Added2MainScript/1.9.3.1.sql diff --git a/02_GI/Updates/Added2MainScript/1.9.8.2.sql b/03_GI/Updates/Added2MainScript/1.9.8.2.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/1.9.8.2.sql rename to 03_GI/Updates/Added2MainScript/1.9.8.2.sql diff --git a/02_GI/Updates/Added2MainScript/1.9.8.3.sql b/03_GI/Updates/Added2MainScript/1.9.8.3.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/1.9.8.3.sql rename to 03_GI/Updates/Added2MainScript/1.9.8.3.sql diff --git a/02_GI/Updates/Added2MainScript/1.9.8.4.sql b/03_GI/Updates/Added2MainScript/1.9.8.4.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/1.9.8.4.sql rename to 03_GI/Updates/Added2MainScript/1.9.8.4.sql diff --git a/02_GI/Updates/Added2MainScript/1.9.8.5.sql b/03_GI/Updates/Added2MainScript/1.9.8.5.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/1.9.8.5.sql rename to 03_GI/Updates/Added2MainScript/1.9.8.5.sql diff --git a/02_GI/Updates/Added2MainScript/1.9.8.6.sql b/03_GI/Updates/Added2MainScript/1.9.8.6.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/1.9.8.6.sql rename to 03_GI/Updates/Added2MainScript/1.9.8.6.sql diff --git a/02_GI/Updates/Added2MainScript/2.0.0.0.sql b/03_GI/Updates/Added2MainScript/2.0.0.0.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/2.0.0.0.sql rename to 03_GI/Updates/Added2MainScript/2.0.0.0.sql diff --git a/02_GI/Updates/Added2MainScript/2.0.0.1.sql b/03_GI/Updates/Added2MainScript/2.0.0.1.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/2.0.0.1.sql rename to 03_GI/Updates/Added2MainScript/2.0.0.1.sql diff --git a/02_GI/Updates/Added2MainScript/2.0.0.12.sql b/03_GI/Updates/Added2MainScript/2.0.0.12.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/2.0.0.12.sql rename to 03_GI/Updates/Added2MainScript/2.0.0.12.sql diff --git a/02_GI/Updates/Added2MainScript/2.0.0.16.sql b/03_GI/Updates/Added2MainScript/2.0.0.16.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/2.0.0.16.sql rename to 03_GI/Updates/Added2MainScript/2.0.0.16.sql diff --git a/02_GI/Updates/Added2MainScript/2.0.0.34.sql b/03_GI/Updates/Added2MainScript/2.0.0.34.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/2.0.0.34.sql rename to 03_GI/Updates/Added2MainScript/2.0.0.34.sql diff --git a/02_GI/Updates/Added2MainScript/2.3.0.0.sql b/03_GI/Updates/Added2MainScript/2.3.0.0.sql similarity index 100% rename from 02_GI/Updates/Added2MainScript/2.3.0.0.sql rename to 03_GI/Updates/Added2MainScript/2.3.0.0.sql diff --git a/02_GI/Updates/2.4.0.0.sql b/03_GI/Updates/Added2MainScript/2.4.0.0.sql similarity index 100% rename from 02_GI/Updates/2.4.0.0.sql rename to 03_GI/Updates/Added2MainScript/2.4.0.0.sql diff --git a/02_GI/Updates/2.5.0.0.sql b/03_GI/Updates/Added2MainScript/2.5.0.0.sql similarity index 100% rename from 02_GI/Updates/2.5.0.0.sql rename to 03_GI/Updates/Added2MainScript/2.5.0.0.sql diff --git a/02_GI/Updates/2.5.0.1.sql b/03_GI/Updates/Added2MainScript/2.5.0.1.sql similarity index 100% rename from 02_GI/Updates/2.5.0.1.sql rename to 03_GI/Updates/Added2MainScript/2.5.0.1.sql diff --git a/02_GI/Updates/2.5.1.0.sql b/03_GI/Updates/Added2MainScript/2.5.1.0.sql similarity index 100% rename from 02_GI/Updates/2.5.1.0.sql rename to 03_GI/Updates/Added2MainScript/2.5.1.0.sql diff --git a/02_GI/Updates/2.5.2.0.sql b/03_GI/Updates/Added2MainScript/2.5.2.0.sql similarity index 100% rename from 02_GI/Updates/2.5.2.0.sql rename to 03_GI/Updates/Added2MainScript/2.5.2.0.sql diff --git a/02_GI/Updates/2.5.2.1.sql b/03_GI/Updates/Added2MainScript/2.5.2.1.sql similarity index 100% rename from 02_GI/Updates/2.5.2.1.sql rename to 03_GI/Updates/Added2MainScript/2.5.2.1.sql diff --git a/05_ToolCollection/CreateDBObjects.sql b/05_ToolCollection/CreateDBObjects.sql index 7e62e1d..65d08dc 100644 --- a/05_ToolCollection/CreateDBObjects.sql +++ b/05_ToolCollection/CreateDBObjects.sql @@ -1,6 +1,7 @@ +-- Replace @WINDREAM_DB in code with name of WM-Database IF not EXISTS(SELECT GUID FROM TBDD_MODULES WHERE NAME = 'ToolCollection' ) INSERT INTO TBDD_MODULES (NAME, SHORT_NAME, LICENSE,ACTIVE) VALUES ('ToolCollection','TC','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=',1) -UPDATE TBDD_MODULES SET DB_VERSION = '1.0.0.0' where UPPER(NAME) = UPPER('ToolCollection') +UPDATE TBDD_MODULES SET DB_VERSION = '1.1.0.0' where UPPER(NAME) = UPPER('ToolCollection') GO CREATE TABLE TBTC_MOVE_RENAME ( @@ -8,6 +9,7 @@ CREATE TABLE TBTC_MOVE_RENAME PROFILE_NAME VARCHAR(100) NOT NULL, FOLDER_FOR_INDEX VARCHAR(500) DEFAULT '' NOT NULL, NAMECONVENTION VARCHAR(500) NOT NULL DEFAULT '', + VERSION_OFF BIT DEFAULT 0 NOT NULL, ACTIVE BIT DEFAULT 1 NOT NULL, CREATED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, CREATED_WHEN DATETIME DEFAULT GETDATE(), @@ -63,3 +65,26 @@ BEGIN CATCH + CONVERT(VARCHAR(500),ERROR_MESSAGE()) END CATCH GO +CREATE FUNCTION [dbo].[FNCUST_GET_TC_WD_RIGHTS] ( + @windreamDocID BIGINT +) +RETURNS TABLE +AS +RETURN + + ---------------------------------------------------------------------------------------------------------------------------------- + + SELECT concat([wdGI].[szNTDomain],'\',[wdGI].[szGroupName]) as 'RightGroups' + FROM [@WINDREAM_DB].[dbo].[BaseAttributes] as [wdBA] (NOLOCK) + + INNER JOIN [@WINDREAM_DB].[dbo].[UserInfo] as [wdUI] (NOLOCK) ON UPPER([wdBA].[szText22]) = UPPER([wdUI].[szUserName]) -- Username for UserID + INNER JOIN [@WINDREAM_DB].[dbo].[UserGroup] as [wdU2G] (NOLOCK) ON [wdUI].[dwUserID] = [wdU2G].[dwUserOrGroupID] -- UserID for GroupsID + INNER JOIN [@WINDREAM_DB].[dbo].[GroupInfo] as [wdGI] (NOLOCK) ON [wdU2G].[dwGroupID] = [wdGI].[dwGroupID] -- GroupIDs for Groupnames + + INNER JOIN [DD_ECM].[dbo].[TBDD_USER] as [ddUI] (NOLOCK) ON [wdUI].[dwUserID] = [ddUI].[USERID_FK_INT_ECM] -- windream UserID to DD UserID + INNER JOIN [DD_ECM].[dbo].[TBDD_GROUPS_USER] as [ddU2G] (NOLOCK) ON [ddUI].[GUID] = [ddU2G].[USER_ID] -- UserID for GroupsID + INNER JOIN [DD_ECM].[dbo].[TBDD_GROUPS] as [ddGI] (NOLOCK) ON [ddU2G].[GROUP_ID] = [ddGI].[GUID] -- GroupIDs for Groupnames + + WHERE UPPER([wdGI].[szGroupName]) = UPPER([ddGI].[NAME]) + AND [wdBA].[dwDocID] = @windreamDocID +GO \ No newline at end of file diff --git a/05_ToolCollection/Updates/1.0.0.1.sql b/05_ToolCollection/Updates/Added2MainScript/1.0.0.1.sql similarity index 100% rename from 05_ToolCollection/Updates/1.0.0.1.sql rename to 05_ToolCollection/Updates/Added2MainScript/1.0.0.1.sql diff --git a/05_ToolCollection/Updates/1.1.0.0.sql b/05_ToolCollection/Updates/Added2MainScript/1.1.0.0.sql similarity index 100% rename from 05_ToolCollection/Updates/1.1.0.0.sql rename to 05_ToolCollection/Updates/Added2MainScript/1.1.0.0.sql diff --git a/06_EmailProfiler/01_Create EmailProfiler DBObjects.sql b/06_EmailProfiler/CreateDBObjects.sql similarity index 80% rename from 06_EmailProfiler/01_Create EmailProfiler DBObjects.sql rename to 06_EmailProfiler/CreateDBObjects.sql index e07adaf..b8b4e2c 100644 --- a/06_EmailProfiler/01_Create EmailProfiler DBObjects.sql +++ b/06_EmailProfiler/CreateDBObjects.sql @@ -1,5 +1,9 @@ ---DROP TABLE TBEMLP_CONFIG ---GO +IF NOT EXISTS(SELECT GUID FROM TBDD_MODULES WHERE SHORT_NAME = 'EMLP') +INSERT INTO TBDD_MODULES(GUID,NAME,SHORT_NAME,LICENSE,STRING1) VALUES +(6,'Email-Profiler','EMLP','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=','W') +GO +UPDATE TBDD_MODULES SET DB_VERSION = '1.3.0.0' where SHORT_NAME = 'EMLP' +GO CREATE TABLE TBEMLP_CONFIG ( GUID TINYINT, @@ -25,15 +29,7 @@ GO INSERT INTO TBEMLP_CONFIG (GUID, PATH_EMAIL_TEMP,PATH_EMAIL_ERRORS,WM_CON_STRING) VALUES (1,'E:\TEMP\EMAIL_PROFILER\TEMP','E:\TEMP\EMAIL_PROFILER\ERROR','Data Source=172.24.12.41\tests;Initial Catalog=DD_ECM_TEST;Persist Security Info=True;User ID=sa;Password=dd') GO ------------------------------------------------------------------------------ -IF NOT EXISTS(SELECT GUID FROM TBDD_MODULES WHERE NAME = 'Email-Profiler') -INSERT INTO TBDD_MODULES(GUID,NAME,SHORT_NAME,LICENSE,STRING1) VALUES -(6,'Email-Profiler','EMLP','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=','W') -GO -UPDATE TBDD_MODULES SET DB_VERSION = '1.3.0.0' where SHORT_NAME = 'EMLP' -GO ---DROP TABLE TBEMLP_POLL_PROFILES ---select * from TBEMLP_POLL_PROFILES ---GO + CREATE TABLE TBEMLP_POLL_PROFILES ( GUID INTEGER IDENTITY(1,1), @@ -59,13 +55,6 @@ FOR UPDATE AS UPDATE TBEMLP_POLL_PROFILES SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBEMLP_POLL_PROFILES.GUID = INSERTED.GUID GO ---select * from TBEMLP_POLL_PROCESS ---DROP TABLE TBEMLP_POLL_INDEXING_STEPS ---GO ---DROP TABLE TBEMLP_POLL_STEPS ---go ---DROP TABLE TBEMLP_POLL_PROCESS ---go CREATE TABLE TBEMLP_POLL_PROCESS ( GUID INTEGER IDENTITY(1,1), @@ -201,67 +190,6 @@ CREATE TABLE TBEMLP_EMAIL_OUT CONSTRAINT FK_TBEMLP_EMAIL_OUT_SENDING_PROFILE FOREIGN KEY (SENDING_PROFILE) REFERENCES TBDD_EMAIL_ACCOUNT (GUID) ) GO - -CREATE FUNCTION [dbo].[FNDD_GET_WINDREAM_FILE_PATH] (@pDOCID BIGINT,@WMLAUFWERK as VARCHAR(1)) -RETURNS VARCHAR(MAX) -AS -BEGIN - DECLARE - @RESULT VARCHAR(MAX), - @DOCID BIGINT, - @a TINYINT = 1, - @i TINYINT = 0, - @PARENT_ID BIGINT, - @DATEINAME NVARCHAR(255), - @PARENTNAME NVARCHAR(255), - @FSFLAGS INT - - SELECT @FSFLAGS = dwFSFlags FROM windream60.dbo.BaseAttributes WHERE dwDocID = @pDOCID - IF @FSFLAGS = 16 - BEGIN - SET @RESULT = 'THIS IS NOT A FILE!' - END - ELSE - BEGIN - SELECT @DATEINAME = szLongName,@PARENT_ID = dwParentID FROM windream60.dbo.BaseAttributes WHERE dwDocID = @pDOCID - WHILE @a > 0 - BEGIN - IF @i = 0 - BEGIN - IF @PARENT_ID = 1 - BEGIN - SET @RESULT = '\' - BREAK - END - ELSE - BEGIN - SET @DOCID = @PARENT_ID - SET @RESULT = '\' - END - END - ELSE - BEGIN - IF @PARENT_ID = 1 - BEGIN - SET @RESULT = '\' + @PARENTNAME + @RESULT - BREAK - END - ELSE - BEGIN - SET @DOCID = @PARENT_ID - SET @RESULT = '\' + @PARENTNAME + @RESULT - END - END - --select * from windream60.dbo.BaseAttributes - SELECT @PARENTNAME = szLongName,@PARENT_ID = dwParentID FROM windream60.dbo.BaseAttributes WHERE dwDocID = @DOCID - SET @i = @i + 1 - END - END - - SET @RESULT = @WMLAUFWERK +':' + @RESULT + @DATEINAME - RETURN @RESULT -END -GO CREATE TABLE TBEMLP_HISTORY ( GUID INTEGER IDENTITY(1,1), @@ -325,10 +253,7 @@ BEGIN @WHO) END GO -ALTER TABLE TBEDMI_ITEM_VALUE ADD SPEC_NAME VARCHAR(250) -GO -ALTER TABLE TBEDMI_ITEM_VALUE ADD IS_REQUIRED BIT NOT NULL DEFAULT 0 -GO + CREATE TABLE dbo.TBEDMI_ITEM_VALUE( GUID BIGINT NOT NULL IDENTITY (1, 1), @@ -338,8 +263,9 @@ CREATE TABLE dbo.TBEDMI_ITEM_VALUE( CREATEDWHEN datetime NOT NULL DEFAULT GETDATE(), CREATEDWHO nvarchar(max), CHANGEDWHEN datetime, - GROUP_COUNTER integer NULL -) ON PRIMARY TEXTIMAGE_ON PRIMARY + GROUP_COUNTER integer NULL, + SPEC_NAME VARCHAR(250), + IS_REQUIRED BIT NOT NULL DEFAULT 0 +) GO - diff --git a/07_UserManager/CreateDBObjects.sql b/07_UserManager/CreateDBObjects.sql index 533ffe6..68ca5cb 100644 --- a/07_UserManager/CreateDBObjects.sql +++ b/07_UserManager/CreateDBObjects.sql @@ -19,107 +19,6 @@ SELECT @UM_GROUP_ID = GUID FROM TBDD_GROUPS WHERE NAME = 'UM_ADMINS' INSERT INTO TBDD_GROUPS_USER (GROUP_ID,USER_ID) SELECT @UM_GROUP_ID,B.GUID FROM TBIMPORT_USER A INNER JOIN TBDD_USER B ON A.USR_NAME = B.USERNAME GO ---if not exists (select * from sysobjects where name='TBDD_GROUPS_MODULES' and xtype='U') ---CREATE TABLE TBDD_GROUPS_MODULES ---( --- GUID INTEGER IDENTITY(1,1), --- MODULE_ID INT NOT NULL, --- GROUP_ID INT NOT NULL, --- COMMENT VARCHAR(200), --- ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, --- ADDED_WHEN DATETIME DEFAULT GETDATE(), --- CHANGED_WHO VARCHAR(50), --- CHANGED_WHEN DATETIME, --- CONSTRAINT PK_TBDD_GROUPS_MODULES PRIMARY KEY (GUID), --- CONSTRAINT UC_MODULE_GROUP UNIQUE (MODULE_ID,GROUP_ID), --- CONSTRAINT FK_TBDD_GROUPS_MODULES_GROUP_ID FOREIGN KEY(GROUP_ID) REFERENCES TBDD_GROUPS(GUID), --- CONSTRAINT FK_TBDD_GROUPS_MODULES_MODULE_ID FOREIGN KEY(MODULE_ID) REFERENCES TBDD_MODULES(GUID), ---) ---GO ---CREATE TABLE TBDD_CLIENT ---( --- GUID INTEGER IDENTITY(1,1), --- CLIENT_NAME VARCHAR(50) NOT NULL UNIQUE, --- SHORTNAME VARCHAR(30), --- LICENSE_PMO VARCHAR(5000) NOT NULL DEFAULT '', --- LICENSE_GI VARCHAR(5000) NOT NULL DEFAULT '', --- LICENSE_PM VARCHAR(5000) NOT NULL DEFAULT '', --- COMMENT VARCHAR(200), --- ACTIVE BIT NOT NULL DEFAULT 1, --- ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, --- ADDED_WHEN DATETIME DEFAULT GETDATE(), --- CHANGED_WHO VARCHAR(50), --- CHANGED_WHEN DATETIME, --- CONSTRAINT PK_TBDD_CLIENT PRIMARY KEY (GUID) ---) ---GO ---INSERT INTO TBDD_CLIENT(CLIENT_NAME,SHORTNAME) VALUES ---('DEFAULT','DEF') ---GO - ---CREATE TRIGGER TBDD_CLIENT_AFT_UPD ON TBDD_CLIENT ---FOR UPDATE ---AS ---BEGIN --- UPDATE TBDD_CLIENT SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_CLIENT.GUID = INSERTED.GUID ---END ---GO ---if not exists (select * from sysobjects where name='TBDD_GROUPS_CLIENT' and xtype='U') ---CREATE TABLE TBDD_GROUPS_CLIENT ---( --- GUID INTEGER IDENTITY(1,1), --- CLIENT_ID INT NOT NULL, --- GROUP_ID INT NOT NULL, --- COMMENT VARCHAR(200), --- ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, --- ADDED_WHEN DATETIME DEFAULT GETDATE(), --- CHANGED_WHO VARCHAR(50), --- CHANGED_WHEN DATETIME, --- CONSTRAINT PK_TBDD_GROUPS_CLIENT PRIMARY KEY (GUID), --- CONSTRAINT UC_CLIENT_GROUP UNIQUE (CLIENT_ID,GROUP_ID), --- CONSTRAINT FK_TBDD_GROUPS_CLIENT_GROUP_ID FOREIGN KEY(GROUP_ID) REFERENCES TBDD_GROUPS(GUID), --- CONSTRAINT FK_TBDD_GROUPS_CLIENT_CLIENT_ID FOREIGN KEY(CLIENT_ID) REFERENCES TBDD_CLIENT(GUID), ---) ---GO - - ---if not exists (select * from sysobjects where name='TBDD_GROUPS_USER' and xtype='U') ---CREATE TABLE TBDD_GROUPS_USER ---( --- GUID INTEGER IDENTITY(1,1), --- [USER_ID] INT NOT NULL, --- GROUP_ID INT NOT NULL, --- COMMENT VARCHAR(200), --- ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL, --- ADDED_WHEN DATETIME DEFAULT GETDATE(), --- CHANGED_WHO VARCHAR(50), --- CHANGED_WHEN DATETIME, --- CONSTRAINT PK_TBDD_GROUPS_USER PRIMARY KEY (GUID), --- CONSTRAINT UC_USER_GROUP UNIQUE (USER_ID,GROUP_ID), --- CONSTRAINT FK_TBDD_GROUPS_USER_GROUP_ID FOREIGN KEY(GROUP_ID) REFERENCES TBDD_GROUPS(GUID), --- CONSTRAINT FK_TBDD_GROUPS_USER_USER_ID FOREIGN KEY([USER_ID]) REFERENCES TBDD_USER(GUID), ---) ---GO ---CREATE TRIGGER TBDD_GROUPS_USER_AFT_UPD ON TBDD_GROUPS_USER ---FOR UPDATE ---AS --- UPDATE TBDD_GROUPS_USER SET CHANGED_WHEN = GETDATE() FROM INSERTED --- WHERE TBDD_GROUPS_USER.GUID = INSERTED.GUID ---GO ---CREATE TRIGGER [dbo].[TBDD_GROUPS_USER_AFT_DEL] ON [dbo].[TBDD_GROUPS_USER] ---FOR DELETE ---AS --- DECLARE @USER_ID INTEGER --- SELECT @USER_ID = deleted.USER_ID FROM deleted --- IF @USER_ID IS NOT NULL --- BEGIN --- if exists (select * from sysobjects where name='TBPMO_USER_RIGHTS_JOBS' and xtype='U') --- INSERT INTO TBPMO_USER_RIGHTS_JOBS (USER_ID,COMMENT,ADDED_WHO) VALUES (@USER_ID,'USER DELETED FROM GROUP','TBDD_GROUPS_USER_AFT_DEL') --- if exists (select * from sysobjects where name='TBPMO_LOG_ESSENTIALS' and xtype='U') --- INSERT INTO TBPMO_LOG_ESSENTIALS (REFERENCE_KEY,REFERENCE_STRING,COMMENT,ADDED_WHO) VALUES (@USER_ID,'USER-ID','USER DELETED FROM USER-GROUP',(SELECT USERNAME FROM TBDD_USER WHERE GUID = @USER_ID )) --- END ---GO - CREATE TABLE TBUM_AD_COMMAND ( GUID INTEGER IDENTITY(1,1),