395 lines
15 KiB
Transact-SQL
Raw Blame History

UPDATE TBDD_MODULES SET PRODUCT_VERSION = '2.4.5.8' where NAME = 'Record-Organizer'
GO
DROP TABLE TBPMO_RIGHTS_WORK_SERVICE
CREATE TABLE TBPMO_RIGHTS_WORK_SERVICE
(
GUID INTEGER NOT NULL IDENTITY(1,1),
DOC_ID INTEGER NOT NULL,
USER_ID INTEGER NOT NULL,
RIGHT_MODIFY VARCHAR(30) NOT NULL,
FILE_RIGHT VARCHAR(100) NOT NULL,
REASON VARCHAR(100) NOT NULL,
WORKED BIT NOT NULL DEFAULT 0,
WORKING BIT NOT NULL DEFAULT 0,
ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'SERVICE',
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHEN DATETIME
CONSTRAINT PK_TBPMO_RIGHTS_WORK_SERVICE PRIMARY KEY (GUID)
)
GO
CREATE TRIGGER TBPMO_RIGHTS_WORK_SERVICE_AFT_UPD ON TBPMO_RIGHTS_WORK_SERVICE
FOR UPDATE
AS
UPDATE TBPMO_RIGHTS_WORK_SERVICE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPMO_RIGHTS_WORK_SERVICE.GUID = INSERTED.GUID
GO
--DROP TABLE TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT
CREATE TABLE TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT
(
GUID INTEGER NOT NULL IDENTITY(1,1),
DOC_ID INTEGER NOT NULL,
DOC_PATH VARCHAR(1000) NOT NULL,
USER_STRING VARCHAR(500) NOT NULL,
FILE_RIGHT INTEGER NOT NULL,
RIGHT_TYPE VARCHAR(100) NOT NULL,
WORKED BIT NOT NULL DEFAULT 0,
COMMENT VARCHAR(500),
ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'SERVICE',
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHEN DATETIME
CONSTRAINT PK_TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT PRIMARY KEY (GUID)
)
GO
CREATE TRIGGER TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT_AFT_UPD ON TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT
FOR UPDATE
AS
UPDATE TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT.GUID = INSERTED.GUID
GO
--DROP TABLE TBPMO_ENTITY_RIGHT_CONTROLS
CREATE TABLE TBPMO_ENTITY_RIGHT_CONTROLS
(
GUID INTEGER NOT NULL IDENTITY(1,1),
ENTITY_ID INTEGER NOT NULL,
CONTROL_ID INTEGER NOT NULL,
USED_FOR VARCHAR(50) NOT NULL DEFAULT '',
USER_GROUP VARCHAR(10) NOT NULL DEFAULT 'USER',
COMMENT VARCHAR(300),
ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT',
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHO VARCHAR(50),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBPMO_ENTITY_RIGHT_CONTROLS PRIMARY KEY (GUID),
CONSTRAINT FK_TBPMO_ENTITY_RIGHT_CONTROLS_CONTROL_ID FOREIGN KEY (CONTROL_ID) REFERENCES TBPMO_CONTROL (GUID),
CONSTRAINT FK_TBPMO_ENTITY_RIGHT_CONTROLS_ENTITY_ID FOREIGN KEY (ENTITY_ID) REFERENCES TBPMO_FORM (GUID)
)
GO
CREATE TRIGGER TBPMO_ENTITY_RIGHT_CONTROLS_AFT_UPD ON TBPMO_ENTITY_RIGHT_CONTROLS
FOR UPDATE
AS
UPDATE TBPMO_ENTITY_RIGHT_CONTROLS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPMO_ENTITY_RIGHT_CONTROLS.GUID = INSERTED.GUID
GO
INSERT INTO TBPMO_ENTITY_RIGHT_CONTROLS ([ENTITY_ID],CONTROL_ID,USED_FOR) VALUES(1,29,'RIGHT READ/WRITE')
GO
INSERT INTO TBPMO_ENTITY_RIGHT_CONTROLS ([ENTITY_ID],CONTROL_ID,USED_FOR) VALUES(1,14,'RIGHT READ/WRITE')
GO
INSERT INTO TBPMO_ENTITY_RIGHT_CONTROLS ([ENTITY_ID],CONTROL_ID,USED_FOR) VALUES(1,272,'RIGHT READ/WRITE')
GO
INSERT INTO TBPMO_ENTITY_RIGHT_CONTROLS ([ENTITY_ID],CONTROL_ID,USED_FOR,USER_GROUP) VALUES(1,346,'RIGHT READ','GROUP')
GO
ALTER PROCEDURE [dbo].[PRPMO_DELETE_CONTROL](@pCONTROL_ID INT)
AS
BEGIN TRY
DELETE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = @pCONTROL_ID
DELETE FROM TBPMO_CONTROL_LANGUAGE WHERE CONTROL_SCREEN_ID IN (SELECT GUID FROM TBPMO_CONTROL_SCREEN WHERE CONTROL_ID = @pCONTROL_ID)
DELETE FROM TBPMO_CONTROL_SCREEN WHERE CONTROL_ID = @pCONTROL_ID
DELETE FROM TBPMO_FUNCTION_GENERAL WHERE CONTROL_ID = @pCONTROL_ID
DELETE FROM TBPMO_CONTROL_IMAGE WHERE CONTROL_ID = @pCONTROL_ID
DELETE FROM TBPMO_STRUCTURE_NODES_CONFIGURATION WHERE CONTROL_ID = @pCONTROL_ID
DELETE FROM TBPMO_ENTITY_RIGHT_CONTROLS WHERE CONTROL_ID = @pCONTROL_ID
DELETE FROM TBPMO_CONTROL WHERE GUID = @pCONTROL_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
ALTER TRIGGER [dbo].[TBPMO_CONTROL_VALUE_AFT_UPD] ON [dbo].[TBPMO_CONTROL_VALUE]
FOR UPDATE
AS
BEGIN TRY
DECLARE
@CONTROL_ID INTEGER,
@RECORD_ID INTEGER,
@VALUE_NEW VARCHAR(MAX),
@VALUE_OLD VARCHAR(MAX),
@CHANGED_WHO VARCHAR(50),
@CHANGE_STEP INTEGER,
@REDO BIT,
@CHANGE_ID INTEGER,
@DOC_ID INTEGER,
@USER_ID INTEGER,
@RIGHT INTEGER
IF UPDATE (VALUE)
BEGIN
SELECT
@CONTROL_ID = DELETED.CONTROL_ID,
@RECORD_ID = DELETED.RECORD_ID,
@VALUE_OLD = DELETED.VALUE
FROM DELETED
--RAISERROR (@VALUE , 16, 1)
SELECT
@CHANGE_STEP = CHANGE_STEP,
@CHANGED_WHO = CHANGED_WHO,
@VALUE_NEW = VALUE,
@REDO = REDO
FROM INSERTED
IF NOT EXISTS(SELECT GUID FROM TBPMO_CONTROL_VALUE_CHANGE_HISTORY WHERE RECORD_ID = @RECORD_ID AND CONTROL_ID = @CONTROL_ID AND VALUE = @VALUE_OLD)
INSERT INTO TBPMO_CONTROL_VALUE_CHANGE_HISTORY (RECORD_ID,CONTROL_ID,VALUE,CHANGE_STEP,ADDED_WHO) VALUES
(@RECORD_ID,@CONTROL_ID,@VALUE_OLD,@CHANGE_STEP,@CHANGED_WHO)
ELSE
UPDATE TBPMO_CONTROL_VALUE_CHANGE_HISTORY SET ADDED_WHO = @CHANGED_WHO WHERE GUID = @CHANGE_ID
--IF @REDO = 0
-- IF @VALUE_OLD <> @VALUE_NEW AND NOT EXISTS(SELECT GUID FROM TBPMO_CONTROL_VALUE_CHANGE_HISTORY WHERE RECORD_ID = @RECORD_ID AND CONTROL_ID = @CONTROL_ID AND VALUE = @VALUE_OLD AND CHANGE_STEP = @CHANGE_STEP)
-- INSERT INTO TBPMO_CONTROL_VALUE_CHANGE_HISTORY (RECORD_ID,CONTROL_ID,VALUE,CHANGE_STEP,ADDED_WHO) VALUES
-- (@RECORD_ID,@CONTROL_ID,@VALUE_OLD,@CHANGE_STEP,@CHANGED_WHO)
--Update des Logs f<>r loggen von Datensatz<74>nderungen
IF EXISTS(SELECT LOG_UPDATE FROM TBPMO_RECORD_LOG_CONFIG WHERE CONTROL_ID = @CONTROL_ID AND LOG_UPDATE = 1)
BEGIN
If @VALUE_OLD <> @VALUE_NEW
BEGIN
DECLARE @LOG VARCHAR(1000)
SET @LOG = 'Update of Value - OLD-VALUE: ' + @VALUE_OLD + ' / NEW VALUE: ' + @VALUE_NEW
INSERT INTO TBPMO_RECORD_LOG (RECORD_ID,CONTROL_ID,LOG_DESCRIPTION,ADDED_WHO) VALUES
(@RECORD_ID,@CONTROL_ID,@LOG,@CHANGED_WHO)
END
END
END
/*###### KUNDEN-INDIVIDUELL - BEGIN ####################################################################*/
IF @CONTROL_ID = 29 --Vertragseigner Person
BEGIN
select @USER_ID = dbo.FNPMO_GET_USERID_FORSTRING (@VALUE_NEW)
If @USER_ID IS NOT NULL AND @USER_ID <> 0
BEGIN
DECLARE cursDOC_V1 CURSOR FOR
select DocID from VWPMO_WD_DOC_SEARCH where RECORD_ID = @RECORD_ID
OPEN cursDOC_V1
FETCH NEXT FROM cursDOC_V1 INTO @DOC_ID
WHILE @@FETCH_STATUS = 0
BEGIN
IF EXISTS(SELECT GUID FROM TBPMO_RIGHTS_WORK_SERVICE WHERE DOC_ID = @DOC_ID AND REASON = 'VERTRAGSEIGNER USER' AND WORKED = 0 AND WORKING = 0)
DELETE FROM TBPMO_RIGHTS_WORK_SERVICE WHERE DOC_ID = @DOC_ID AND REASON = 'VERTRAGSEIGNER USER' AND WORKED = 0 AND WORKING = 0
IF NOT EXISTS(SELECT GUID FROM TBPMO_RIGHTS_WORK_SERVICE WHERE DOC_ID = @DOC_ID AND REASON = 'VERTRAGSEIGNER USER' AND USER_ID = @USER_ID AND WORKED = 0)
INSERT INTO TBPMO_RIGHTS_WORK_SERVICE (DOC_ID,USER_ID,RIGHT_MODIFY, FILE_RIGHT,REASON,ADDED_WHO) VALUES
(@DOC_ID,@USER_ID,'ADD RIGHT',3,'VERTRAGSEIGNER USER','TBPMO_CONTROL_VALUE_AFT_UPD')
FETCH NEXT FROM cursDOC_V1 INTO @DOC_ID
END
CLOSE cursDOC_V1
DEALLOCATE cursDOC_V1
END
END
-- ####### Vertragseigner Team ###############
ELSE IF @CONTROL_ID = 14
BEGIN
DECLARE c_USER CURSOR FOR
SELECT [USER_ID] FROM TBDD_GROUPS_USER WHERE GROUP_ID = (SELECT GUID FROM TBDD_USER_GROUPS WHERE NAME = @VALUE_NEW)
OPEN c_USER
FETCH NEXT FROM c_USER INTO @USER_ID
WHILE @@FETCH_STATUS = 0
BEGIN
IF @USER_ID <> 0
BEGIN
DECLARE cursDOC_V2 CURSOR FOR
select DocID from VWPMO_WD_DOC_SEARCH where RECORD_ID = @RECORD_ID
OPEN cursDOC_V2
FETCH NEXT FROM cursDOC_V2 INTO @DOC_ID
WHILE @@FETCH_STATUS = 0
BEGIN
IF EXISTS(SELECT GUID FROM TBPMO_RIGHTS_WORK_SERVICE WHERE DOC_ID = @DOC_ID AND REASON = 'VERTRAGSEIGNER TEAM' AND WORKED = 0 AND WORKING = 0)
DELETE FROM TBPMO_RIGHTS_WORK_SERVICE WHERE DOC_ID = @DOC_ID AND REASON = 'VERTRAGSEIGNER TEAM' AND WORKED = 0 AND WORKING = 0
IF NOT EXISTS(SELECT GUID FROM TBPMO_RIGHTS_WORK_SERVICE WHERE DOC_ID = @DOC_ID AND REASON = 'VERTRAGSEIGNER TEAM' AND USER_ID = @USER_ID AND WORKED = 0)
INSERT INTO TBPMO_RIGHTS_WORK_SERVICE (DOC_ID,USER_ID,RIGHT_MODIFY,FILE_RIGHT,REASON,ADDED_WHO) VALUES
(@DOC_ID,@USER_ID,'ADD RIGHT',3,'VERTRAGSEIGNER TEAM','TBPMO_CONTROL_VALUE_AFT_UPD')
FETCH NEXT FROM cursDOC_V2 INTO @DOC_ID
END
CLOSE cursDOC_V2
DEALLOCATE cursDOC_V2
END
FETCH NEXT FROM c_USER INTO @USER_ID
END
CLOSE c_USER
DEALLOCATE c_USER
END
-- ####### RecordSupervisor ###############
--ELSE IF @CONTROL_ID = 227 --RecordSupervisor
-- BEGIN
-- END
--ELSE IF @CONTROL_ID = 346 --Leseberechtigung CheckableListbox
-- BEGIN
-- END
/*###### KUNDEN-INDIVIDUELL - END ####################################################################*/
--Generelle Updates (Datum und Recor-<2D>nderungen)
UPDATE TBPMO_CONTROL_VALUE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPMO_CONTROL_VALUE.GUID = INSERTED.GUID
UPDATE TBPMO_RECORD SET CHANGED_WHO = @CHANGED_WHO WHERE TBPMO_RECORD.GUID = @RECORD_ID
END TRY
BEGIN CATCH
PRINT 'ERROR IN PROCEDURE: ' + CONVERT(VARCHAR(30),ERROR_PROCEDURE())
+ ' - ERROR-MESSAGE: '
+ CONVERT(VARCHAR(500),ERROR_MESSAGE())
END CATCH
GO
ALTER TRIGGER [dbo].[TBPMO_CONTROL_VALUE_AFT_INS] ON [dbo].[TBPMO_CONTROL_VALUE]
WITH EXECUTE AS CALLER
FOR INSERT
AS
BEGIN TRY
DECLARE
@RECORD_ID INTEGER,
@CONTROL_ID INTEGER,
@ADDED_WHO VARCHAR(50),
@VALUE_NEW VARCHAR(MAX),
@DOC_ID INTEGER,
@USER_ID INTEGER,
@RIGHT INTEGER
SELECT
@RECORD_ID = RECORD_ID,
@CONTROL_ID = CONTROL_ID,
@ADDED_WHO = ADDED_WHO,
@VALUE_NEW = VALUE
FROM INSERTED
/*###### KUNDEN-INDIVIDUELL - BEGIN ####################################################################*/
IF @CONTROL_ID = 346
BEGIN
DECLARE c_USER CURSOR FOR
SELECT [USER_ID] FROM TBDD_GROUPS_USER WHERE GROUP_ID = (SELECT GUID FROM TBDD_USER_GROUPS WHERE NAME = @VALUE_NEW)
OPEN c_USER
FETCH NEXT FROM c_USER INTO @USER_ID
WHILE @@FETCH_STATUS = 0
BEGIN
IF @USER_ID <> 0
BEGIN
DECLARE cursDOC_V2 CURSOR FOR
select DocID from VWPMO_WD_DOC_SEARCH where RECORD_ID = @RECORD_ID
OPEN cursDOC_V2
FETCH NEXT FROM cursDOC_V2 INTO @DOC_ID
WHILE @@FETCH_STATUS = 0
BEGIN
IF EXISTS(SELECT GUID FROM TBPMO_RIGHTS_WORK_SERVICE WHERE DOC_ID = @DOC_ID AND REASON = 'LESEBERECHTIGUNG TEAM' AND WORKED = 0 AND WORKING = 0)
DELETE FROM TBPMO_RIGHTS_WORK_SERVICE WHERE DOC_ID = @DOC_ID AND REASON = 'LESEBERECHTIGUNG TEAM' AND WORKED = 0 AND WORKING = 0
IF NOT EXISTS(SELECT GUID FROM TBPMO_RIGHTS_WORK_SERVICE WHERE DOC_ID = @DOC_ID AND REASON = 'LESEBERECHTIGUNG TEAM' AND USER_ID = @USER_ID AND WORKED = 0)
INSERT INTO TBPMO_RIGHTS_WORK_SERVICE (DOC_ID,USER_ID,RIGHT_MODIFY,FILE_RIGHT,REASON,ADDED_WHO) VALUES
(@DOC_ID,@USER_ID,'ADD RIGHT', 1,'LESEBERECHTIGUNG TEAM','TBPMO_CONTROL_VALUE_AFT_INS')
FETCH NEXT FROM cursDOC_V2 INTO @DOC_ID
END
CLOSE cursDOC_V2
DEALLOCATE cursDOC_V2
END
FETCH NEXT FROM c_USER INTO @USER_ID
END
CLOSE c_USER
DEALLOCATE c_USER
END
/*###### KUNDEN-INDIVIDUELL - ENDE ####################################################################*/
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 VIEW VWPMO_RIGHTS_2B_WORKED AS
SELECT
T.GUID
,T.DOC_ID
,T.USER_ID
,T1.USERNAME
,T.RIGHT_MODIFY
,T.FILE_RIGHT FILE_RIGHT_ID
,CASE T.FILE_RIGHT
WHEN 3 THEN 'READ/WRITE'
WHEN 1 THEN 'READ'
ELSE T.FILE_RIGHT END AS FILE_RIGHT
,T.WORKING
,T.ADDED_WHO
,T.ADDED_WHEN
FROM
TBPMO_RIGHTS_WORK_SERVICE T,
TBDD_USER T1
WHERE
T.WORKED = 0
AND T.USER_ID = T1.GUID
GO
DROP TABLE TBPMO_SERVICE_RIGHT_CONFIG
CREATE TABLE TBPMO_SERVICE_RIGHT_CONFIG
(
GUID TINYINT
,LOG_ERR_ONLY BIT NOT NULL DEFAULT 1
,HOUR_BEGIN INTEGER NOT NULL DEFAULT 6
,HOUR_END INTEGER NOT NULL DEFAULT 18
,AD_DOMAIN VARCHAR(250) NOT NULL DEFAULT ''
,AD_USER VARCHAR(250) NOT NULL DEFAULT ''
,AD_USER_PW VARCHAR(500) NOT NULL DEFAULT ''
,AD_SERVER VARCHAR(250) NOT NULL DEFAULT ''
,WD_RIGHT INTEGER NOT NULL DEFAULT '141'
,RUN_SERVICE BIT NOT NULL DEFAULT 0
,SERVICE_RUN DATETIME
,SERVICE_FINISHED DATETIME
,CHANGED_WHO VARCHAR(50)
,CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBPMO_SERVICE_RIGHT_CONFIG_GUID PRIMARY KEY(GUID),
CONSTRAINT CH_TBPMO_SERVICE_RIGHT_CONFIG_GUID CHECK(GUID = 1)
)
GO
INSERT INTO TBPMO_SERVICE_RIGHT_CONFIG (GUID,LOG_ERR_ONLY) VALUES (1,1)
GO
CREATE TRIGGER TBPMO_SERVICE_RIGHT_CONFIG_AFT_UPD ON TBPMO_SERVICE_RIGHT_CONFIG
FOR UPDATE
AS
UPDATE TBPMO_SERVICE_RIGHT_CONFIG SET CHANGED_WHEN = GETDATE() FROM INSERTED
WHERE TBPMO_SERVICE_RIGHT_CONFIG.GUID = INSERTED.GUID
GO
CREATE PROCEDURE [dbo].[PRPMO_RIGHTS_SERVICE_ADD_RECORD](@pDOC_ID INT, @pDOC_PATH VARCHAR(1000), @pUSERSTRING VARCHAR(250), @pRIGHT INT, @pTYPE VARCHAR(100))
AS
BEGIN TRY
DECLARE @GUID INTEGER,
@RIGHT INTEGER
SELECT @GUID = ISNULL(MAX(GUID),0) FROM TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT WHERE
DOC_ID = @pDOC_ID
AND UPPER(DOC_PATH) = UPPER(@pDOC_PATH)
AND UPPER(USER_STRING) = UPPER(@pUSERSTRING)
IF @GUID = 0
INSERT INTO TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT (DOC_ID,DOC_PATH,USER_STRING,FILE_RIGHT,RIGHT_TYPE,ADDED_WHO)
VALUES (@pDOC_ID,UPPER(@pDOC_PATH),UPPER(@pUSERSTRING),@pRIGHT,@pTYPE,'PRPMO_RIGHT_INSERT')
ELSE
BEGIN
SELECT @RIGHT = FILE_RIGHT FROM TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT WHERE GUID = @GUID
IF @RIGHT <> @pRIGHT
IF @RIGHT < @pRIGHT
UPDATE TBPMO_RIGHTS_WORK_SERVICE_ADD_RIGHT SET FILE_RIGHT = @pRIGHT,RIGHT_TYPE = @pTYPE WHERE GUID = @GUID
END
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 TABLE TBPMO_ENTITY_USERRIGHT_ADDING
(
GUID INTEGER NOT NULL IDENTITY(1,1)
,ENTITY_ID INTEGER
,AD_DOMAIN VARCHAR(250) NOT NULL DEFAULT ''
,AD_USER VARCHAR(250) NOT NULL DEFAULT ''
,AD_USER_PW VARCHAR(500) NOT NULL DEFAULT ''
,AD_SERVER VARCHAR(250) NOT NULL DEFAULT ''
,WD_RIGHT INTEGER NOT NULL DEFAULT '141'
,ADDED_WHO VARCHAR(50) DEFAULT 'DEFAULT'
,ADDED_WHEN DATETIME DEFAULT GETDATE()
,CHANGED_WHO VARCHAR(50)
,CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBPMO_ENTITY_USERRIGHT_ADDING_GUID PRIMARY KEY(GUID),
CONSTRAINT UQ_TBPMO_ENTITY_USERRIGHT_ADDING_GUID UNIQUE(ENTITY_ID)
)
GO
CREATE TRIGGER TBPMO_ENTITY_USERRIGHT_ADDING_AFT_UPD ON TBPMO_ENTITY_USERRIGHT_ADDING
FOR UPDATE
AS
UPDATE TBPMO_ENTITY_USERRIGHT_ADDING SET CHANGED_WHEN = GETDATE() FROM INSERTED
WHERE TBPMO_ENTITY_USERRIGHT_ADDING.GUID = INSERTED.GUID
GO