340 lines
12 KiB
Transact-SQL
Raw Blame History

UPDATE TBDD_MODULES SET PRODUCT_VERSION = '2.4.5.4' where NAME = 'Record-Organizer'
GO
CREATE TABLE TBPMO_DOCSEARCH_RESULTLIST_CONFIG
(
GUID INTEGER NOT NULL IDENTITY(1,1),
[ENTITY_ID] INTEGER NOT NULL,
[LANGUAGE] VARCHAR(5) NOT NULL DEFAULT 'de-DE',
COLUMN_VIEW VARCHAR(100) NOT NULL,
HEADER_CAPTION VARCHAR(100) NOT NULL,
WIDTH INTEGER NOT NULL DEFAULT 250,
[TYPE_ID] TINYINT NOT NULL DEFAULT 1,
ADDED_WHO VARCHAR(50) NOT NULL DEFAULT 'DEFAULT',
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHO VARCHAR(50),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBPMO_DOCSEARCH_RESULTLIST_CONFIG PRIMARY KEY (GUID),
CONSTRAINT FK_TBPMO_DOCSEARCH_RESULTLIST_CONFIG_ENTITY_ID FOREIGN KEY (ENTITY_ID) REFERENCES TBPMO_FORM (GUID)
)
GO
CREATE TRIGGER TBPMO_DOCSEARCH_RESULTLIST_CONFIG_AFT_UPD ON TBPMO_DOCSEARCH_RESULTLIST_CONFIG
FOR UPDATE
AS
UPDATE TBPMO_DOCSEARCH_RESULTLIST_CONFIG SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPMO_DOCSEARCH_RESULTLIST_CONFIG.GUID = INSERTED.GUID
GO
CREATE TABLE TBPMO_DOCSEARCH_VARIABLE_CONTROLS (
GUID INT IDENTITY(1,1) NOT NULL,
[ENTITY_ID] INT NOT NULL,
OPTION1_CTRL INT NOT NULL DEFAULT 0,
OPTION2_CTRL INT NOT NULL DEFAULT 0,
OPTION3_CTRL INT NOT NULL DEFAULT 0,
PTION4_CTRL INT NOT NULL DEFAULT 0,
OPTION5_CTRL INT NOT NULL DEFAULT 0,
OPTION6_CTRL INT NOT NULL DEFAULT 0,
ADDED_WHO VARCHAR(50) NOT NULL DEFAULT ('DEFAULT'),
ADDED_WHEN DATETIME NULL DEFAULT (GETDATE()),
CHANGED_WHO VARCHAR(50) NULL,
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBPMO_DOCSEARCH_VARIABLE_CONTROLS PRIMARY KEY (GUID),
CONSTRAINT FK_TBPMO_DOCSEARCH_VARIABLE_CONTROLS_ENTITY_ID FOREIGN KEY (ENTITY_ID) REFERENCES TBPMO_FORM (GUID)
)
GO
CREATE TRIGGER TBPMO_DOCSEARCH_VARIABLE_CONTROLS_AFT_UPD ON TBPMO_DOCSEARCH_VARIABLE_CONTROLS
FOR UPDATE
AS
UPDATE TBPMO_DOCSEARCH_VARIABLE_CONTROLS SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPMO_DOCSEARCH_VARIABLE_CONTROLS.GUID = INSERTED.GUID
GO
CREATE TABLE TBPMO_STRUCTURE_NODES
(
GUID INTEGER NOT NULL IDENTITY(1,1),
[ENTITY_ID] INTEGER NOT NULL,
RECORD_ID INTEGER,
ID1 VARCHAR(100) NOT NULL,
ID2 VARCHAR(100),
ID3 VARCHAR(100),
ID4 VARCHAR(100),
[TYPE_NODE] SMALLINT NOT NULL DEFAULT 1,
CONTROL_ID INTEGER NOT NULL DEFAULT 0,
PARENT_GUID INTEGER NOT NULL DEFAULT 0,
BOOL1 BIT NOT NULL DEFAULT 0,
BOOL2 BIT 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_TBPMO_STRUCTURE_NODES PRIMARY KEY (GUID),
CONSTRAINT FK_TBPMO_STRUCTURE_NODESG_ENTITY_ID FOREIGN KEY (ENTITY_ID) REFERENCES TBPMO_FORM (GUID)
)
GO
CREATE TRIGGER TBPMO_STRUCTURE_NODES_AFT_UPD ON TBPMO_STRUCTURE_NODES
FOR UPDATE
AS
UPDATE TBPMO_STRUCTURE_NODES SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPMO_STRUCTURE_NODES.GUID = INSERTED.GUID
GO
CREATE TABLE TBPMO_STRUCTURE_NODES_CONFIGURATION
(
GUID INTEGER NOT NULL IDENTITY(1,1),
NAME VARCHAR(50) NOT NULL,
[ENTITY_ID] INTEGER NOT NULL,
[TYPE_NODE] SMALLINT NOT NULL DEFAULT 1,
NODE_IMAGE VARBINARY(MAX),
CREATE_RECORD BIT NOT NULL DEFAULT 0,
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_STRUCTURE_NODES_CONFIGURATION PRIMARY KEY (GUID),
CONSTRAINT FK_TBPMO_STRUCTURE_NODES_CONFIGURATION_ENTITY_ID FOREIGN KEY (ENTITY_ID) REFERENCES TBPMO_FORM (GUID)
)
GO
CREATE TRIGGER TBPMO_STRUCTURE_NODES_CONFIGURATION_AFT_UPD ON TBPMO_STRUCTURE_NODES_CONFIGURATION
FOR UPDATE
AS
UPDATE TBPMO_STRUCTURE_NODES_CONFIGURATION SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBPMO_STRUCTURE_NODES_CONFIGURATION.GUID = INSERTED.GUID
GO
ALTER PROCEDURE [dbo].[PRPMO_DELETE_ENTITY](@pENTITY_ID INT)
AS
BEGIN TRY
DELETE FROM TBPMO_FORM_SQL WHERE FORM_ID = @pENTITY_ID
DELETE FROM TBPMO_CLIENT_ENTITY WHERE ENTITY_ID = @pENTITY_ID
DELETE FROM TBPMO_WORKFLOW_ENTITY_STATE WHERE ENTITY_ID = @pENTITY_ID
DELETE FROM TBPMO_TEMPLATE_ENTITY WHERE ENTITY_ID = @pENTITY_ID
DELETE FROM TBPMO_FORM_CONSTRUCTOR_DETAIL WHERE FORM_ID = @pENTITY_ID
DELETE FROM TBPMO_CONTROL WHERE FORM_ID = @pENTITY_ID
IF OBJECT_ID (N'TBPMO_DOCSEARCH_RESULTLIST_CONFIG', N'U') IS NOT NULL
DELETE FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE [ENTITY_ID] = @pENTITY_ID
IF OBJECT_ID (N'TBPMO_STRUCTURE_NODES', N'U') IS NOT NULL
DELETE FROM TBPMO_STRUCTURE_NODES WHERE [ENTITY_ID] = @pENTITY_ID
DELETE FROM TBPMO_RECORD_CONNECT WHERE RECORD1_ID in (SELECT GUID FROM TBPMO_RECORD WHERE FORM_ID = @pENTITY_ID)
DELETE FROM TBPMO_RECORD_CONNECT WHERE RECORD2_ID in (SELECT GUID FROM TBPMO_RECORD WHERE FORM_ID = @pENTITY_ID)
DELETE FROM TBPMO_RECORD_LOG WHERE RECORD_ID in (SELECT GUID FROM TBPMO_RECORD WHERE FORM_ID = @pENTITY_ID)
DELETE FROM TBPMO_RECORD WHERE FORM_ID = @pENTITY_ID
DELETE FROM TBPMO_FORM WHERE GUID = @pENTITY_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
USE [DD_ECM]
GO
/****** Object: StoredProcedure [dbo].[PRPMO_CREATE_CONSTRUCTOR] Script Date: 30.06.2016 15:01:24 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[PRPMO_CREATE_CONSTRUCTOR](@pFORM_ID INT, @pNAME VARCHAR(50))
AS
DECLARE
@NEW_CONSTR_ID INTEGER,
@FORM_ID INTEGER,
@PARENT_ID INTEGER,
@PARENT_ID2 INTEGER,
@LEVEL1_SELECT INTEGER,
@SEQUENCE INTEGER,
@SEQUENCE2 INTEGER,
@SQL_SELECT_EBENE1 VARCHAR(4000)
IF NOT EXISTS(SELECT GUID FROM TBPMO_FORM_CONSTRUCTOR WHERE UPPER(FORM_TITLE) = UPPER(@pNAME))
INSERT INTO TBPMO_FORM_CONSTRUCTOR (FORM_TITLE,SEQUENCE_MENU,ADDED_WHO, SHORT_TITLE) VALUES
(@pNAME,1, 'CREATE_ROUTINE','SHORT-TITLE')
SELECT @NEW_CONSTR_ID = MAX(GUID) FROM TBPMO_FORM_CONSTRUCTOR WHERE UPPER(FORM_TITLE) = UPPER(@pNAME)
DECLARE c_ENTITY0 CURSOR FOR
SELECT T.GUID,T.LEVEL FROM TBPMO_FORM T, TBPMO_FORM_VIEW T1 WHERE
T.GUID = T1.FORM_ID AND T.SHOW_FORM_CONSTRUCT = 1 AND T1.SCREEN_ID = 1 AND T.PARENT_ID = 0 AND T.GUID = @pFORM_ID ORDER BY T.LEVEL
BEGIN
OPEN c_ENTITY0
FETCH NEXT FROM c_ENTITY0 INTO @FORM_ID,@SEQUENCE
WHILE @@FETCH_STATUS = 0
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBPMO_FORM_CONSTRUCTOR_DETAIL WHERE CONSTRUCT_ID = @NEW_CONSTR_ID AND FORM_ID = @FORM_ID AND PARENT_ID = 0)
INSERT INTO TBPMO_FORM_CONSTRUCTOR_DETAIL (
CONSTRUCT_ID
,FORM_ID
,PARENT_ID
,LEVEL1_SELECT
,SEQUENCE
,SQL_SELECT_EBENE1
,SQL_SELECT_EBENE2
,ADDED_WHO
) VALUES (
@NEW_CONSTR_ID
,@FORM_ID
,0
,0
,0
,'SELECT * FROM VWTEMP_PMO_FORM' + CONVERT(VARCHAR(5),@FORM_ID)
,''
,'CREATE_ROUTINE2'
)
FETCH NEXT FROM c_ENTITY0 INTO @FORM_ID,@SEQUENCE
END
END
CLOSE c_ENTITY0
DEALLOCATE c_ENTITY0
DECLARE c_ENTITY1 CURSOR FOR
SELECT
T.GUID, T.PARENT_ID, T.LEVEL
FROM TBPMO_FORM T, TBPMO_FORM_VIEW T1 WHERE T.GUID = T1.FORM_ID AND T.SHOW_FORM_CONSTRUCT = 1 AND T1.SCREEN_ID = 1 AND T.PARENT_ID = @FORM_ID ORDER BY T.LEVEL
BEGIN
OPEN c_ENTITY1
FETCH NEXT FROM c_ENTITY1 INTO @FORM_ID,@PARENT_ID,@SEQUENCE
WHILE @@FETCH_STATUS = 0
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBPMO_FORM_CONSTRUCTOR_DETAIL WHERE CONSTRUCT_ID = @NEW_CONSTR_ID AND FORM_ID = @FORM_ID AND PARENT_ID = @PARENT_ID)
BEGIN
PRINT 'c_ENTITY1: SELECT * FROM TBPMO_FORM WHERE PARENT_ID = @' + CONVERT(VARCHAR(3),@FORM_ID)
INSERT INTO TBPMO_FORM_CONSTRUCTOR_DETAIL (
CONSTRUCT_ID
,FORM_ID
,PARENT_ID
,LEVEL1_SELECT
,SEQUENCE
,SQL_SELECT_EBENE1
,SQL_SELECT_EBENE2
,ADDED_WHO
) VALUES (
@NEW_CONSTR_ID
,@FORM_ID
,@PARENT_ID
,0
,@SEQUENCE
,'SELECT * FROM VWTEMP_PMO_FORM' + CONVERT(VARCHAR(5),@FORM_ID)
,'SELECT T.* FROM VWTEMP_PMO_FORM' + CONVERT(VARCHAR(5),@PARENT_ID) + ' AS T, TBPMO_RECORD_CONNECT T1 WHERE T.[Record-ID] = T1.RECORD2_ID AND T1.RECORD1_ID = @RecordID'
,'CREATE_ROUTINE2'
)
END
If EXISTS(SELECT * FROM TBPMO_FORM WHERE PARENT_ID = @FORM_ID)
BEGIN
PRINT 'c_ENTITY2: SELECT * FROM TBPMO_FORM WHERE PARENT_ID = ' + CONVERT(VARCHAR(3),@FORM_ID)
--###############
DECLARE c_ENTITY2 CURSOR FOR
SELECT
T.GUID, T.PARENT_ID, T.LEVEL
FROM TBPMO_FORM T, TBPMO_FORM_VIEW T1 WHERE T.GUID = T1.FORM_ID AND T.SHOW_FORM_CONSTRUCT = 1 AND T1.SCREEN_ID = 1 AND T.PARENT_ID = @FORM_ID ORDER BY T.LEVEL
BEGIN
OPEN c_ENTITY2
FETCH NEXT FROM c_ENTITY2 INTO @FORM_ID,@PARENT_ID2,@SEQUENCE2
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO TBPMO_FORM_CONSTRUCTOR_DETAIL (
CONSTRUCT_ID
,FORM_ID
,PARENT_ID
,LEVEL1_SELECT
,SEQUENCE
,SQL_SELECT_EBENE1
,SQL_SELECT_EBENE2
,ADDED_WHO
) VALUES (
@NEW_CONSTR_ID
,@FORM_ID
,@PARENT_ID2
,0
,@SEQUENCE2
,'SELECT * FROM VWTEMP_PMO_FORM' + CONVERT(VARCHAR(5),@FORM_ID)
,'SELECT T.* FROM VWTEMP_PMO_FORM' + CONVERT(VARCHAR(5),@PARENT_ID2) + ' AS T, TBPMO_RECORD_CONNECT T1 WHERE T.[Record-ID] = T1.RECORD2_ID AND T1.RECORD1_ID = @RecordID'
,'CREATE_ROUTINE3'
)
FETCH NEXT FROM c_ENTITY2 INTO @FORM_ID,@PARENT_ID2,@SEQUENCE2
END
CLOSE c_ENTITY2
DEALLOCATE c_ENTITY2
END
END
--###############
FETCH NEXT FROM c_ENTITY1 INTO @FORM_ID,@PARENT_ID,@SEQUENCE
END
CLOSE c_ENTITY1
DEALLOCATE c_ENTITY1
END
GO
ALTER VIEW [dbo].[VWPMO_CONSTRUCTOR_FORMS] AS
SELECT TOP 100 PERCENT
T2.GUID,
T1.GUID FORM_VIEW_ID,
T1.SCREEN_ID,
T2.CONSTRUCT_ID,
T.PARENT_ID,
T2.SEQUENCE,
T2.LEVEL1_SELECT,
T.GUID AS FORM_ID,
T1.FORM_TITLE,
T2.SQL_SELECT_EBENE1,
T2.SQL_SELECT_EBENE2,
T2.SQL_QUICK_VIEW,
T2.COLUMN_NAME1,
T2.COLUMN_NAME2,
T.FORM_TYPE_ID,
T2.LOAD_DIRECT,
T2.CONTROL_DOCTYPE_MATCH,
T2.SQL_RIGHT_READ_AND_VIEW_ONLY,
T2.SQL_RIGHT_WINDREAM_VIEW,
(SELECT COUNT(GUID) FROm TBPMO_CONTROL WHERE FORM_ID = T1.FORM_ID AND TREE_VIEW = 1) AS COUNT_TREEVIEW
FROM
tbpmo_form T,
TBPMO_FORM_VIEW T1,
TBPMO_FORM_CONSTRUCTOR_DETAIL T2
where
T2.FORM_ID = T.GUID AND
T.GUID = T1.FORM_ID
ORDER BY
T2.CONSTRUCT_ID,T.PARENT_ID,T2.SEQUENCE
GO
ALTER TABLE TBPMO_RECORD
ADD NODE_GUID INTEGER
GO
ALTER TABLE TBPMO_WORKFLOW
ADD MANUALLY BIT NOT NULL DEFAULT 0
GO
ALTER TRIGGER [dbo].[TBPMO_RECORD_AFT_INS] ON [dbo].[TBPMO_RECORD]
WITH EXECUTE AS CALLER
FOR INSERT
AS
BEGIN TRY
DECLARE
@RECORD_ID INTEGER,
@MAX_ID INTEGER,
@FORM_ID INTEGER,
@WF_ID INTEGER,
@PARENT_ID INTEGER
SELECT
@FORM_ID = FORM_ID,
@RECORD_ID = GUID
FROM INSERTED
IF EXISTS(SELECT GUID FROM TBPMO_RECORD WHERE FORM_ID = @FORM_ID AND GUID <> @RECORD_ID)
SELECT @MAX_ID = MAX(RECORD_ENTITY_ID) + 1
FROM TBPMO_RECORD WHERE FORM_ID = @FORM_ID AND GUID <> @RECORD_ID
ELSE
SET @MAX_ID = 1
UPDATE TBPMO_RECORD SET RECORD_ENTITY_ID = @MAX_ID FROM INSERTED WHERE TBPMO_RECORD.GUID = INSERTED.GUID
----<2D>berpr<70>fen ob f<>r die Entity_ID Workflows definiert sind?
IF EXISTS(
SELECT DISTINCT T.[ENTITY_ID] FROM TBPMO_WORKFLOW_ENTITY_STATE T,TBPMO_WORKFLOW T1 where T.WF_ID = T1.GUID AND T1.MANUALLY = 0 AND T.[ENTITY_ID] = @FORM_ID
)
BEGIN
EXECUTE dbo.PRPMO_CREATE_WF_TASKS @FORM_ID, @RECORD_ID
END
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