750 lines
23 KiB
Transact-SQL
750 lines
23 KiB
Transact-SQL
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
|
|
USE [DD_ECM_TEST]
|
|
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_TEST.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 [sDD_VMP01_APS01_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 [sDD_VMP01_APS01_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].[sDD_VMP01_APS01_windream60].dbo.BaseAttributes
|
|
SELECT @PARENTNAME = szLongName,@PARENT_ID = dwParentID FROM [sDD_VMP01_APS01_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].[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 sDD_VMP01_APS01_windream60.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
|
|
WHERE
|
|
T.dwCatalogID = 1
|
|
AND T.dwObjectTypeID = 4
|
|
AND T.dwObjectTypeID = T1.dwObjectTypeID
|
|
ORDER BY [Creation_DateTime]
|
|
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 |