This commit is contained in:
SchreiberM 2023-04-14 10:32:31 +02:00
parent 7555e91462
commit ecafe27e3a
266 changed files with 52716 additions and 54717 deletions

View File

@ -1,97 +1,97 @@
SELECt * FROM TBFOLDERIMPORT_PROFILE
CREATE TABLE TBFOLDERIMPORT_PROFILE
(
GUID INTEGER IDENTITY(1,1),
TITLE VARCHAR(250) NOT NULL,
IMPORT_PATH VARCHAR(900) NOT NULL,
REGEX_FILENAME VARCHAR(250) NOT NULL DEFAULT '',
LIMIT_FILECOUNT TINYINT NOT NULL DEFAULT 0,
DOCTYPE_ID INTEGER NOT NULL,
ARCHIVE_PATH VARCHAR(900) NOT NULL DEFAULT '',
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_TBFOLDERIMPORT_PROFILE PRIMARY KEY (GUID),
CONSTRAINT UC_TBFOLDERIMPORT_PROFILE UNIQUE (IMPORT_PATH),
)
GO
CREATE TRIGGER [dbo].[TBFOLDERIMPORT_PROFILE_AFT_UPD] ON [dbo].[TBFOLDERIMPORT_PROFILE]
FOR UPDATE
AS
BEGIN
UPDATE TBFOLDERIMPORT_PROFILE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBFOLDERIMPORT_PROFILE.GUID = INSERTED.GUID
END
GO
ALTER PROCEDURE PRIDBFOLDERIMPORT_PROFILE ( @TITLE VARCHAR(250),
@IMPORT_PATH VARCHAR(900),
@REGEX_FILENAME VARCHAR(250),
@LIMIT_FILECOUNT TINYINT,
@DOCTYPE_ID INTEGER,
@ARCHIVE_PATH VARCHAR(900),
@COMMENT VARCHAR(200),
@WHO VARCHAR(50),
@GUID INTEGER = 0)
AS
BEGIN
IF @GUID = 0
BEGIN
INSERT INTO [dbo].[TBFOLDERIMPORT_PROFILE]
([TITLE]
,[IMPORT_PATH]
,[REGEX_FILENAME]
,[LIMIT_FILECOUNT]
,[DOCTYPE_ID]
,[ARCHIVE_PATH]
,[COMMENT]
,[ADDED_WHO]
)
VALUES
(@TITLE
,@IMPORT_PATH
,@REGEX_FILENAME
,@LIMIT_FILECOUNT
,@DOCTYPE_ID
,@ARCHIVE_PATH
,@COMMENT
,@WHO);
SELECT @GUID = GUID FROM TBFOLDERIMPORT_PROFILE WHERE IMPORT_PATH = @IMPORT_PATH;
END
ELSE
BEGIN
UPDATE [dbo].[TBFOLDERIMPORT_PROFILE]
SET [TITLE] = @TITLE
,[IMPORT_PATH] = @IMPORT_PATH
,[REGEX_FILENAME] = @REGEX_FILENAME
,[LIMIT_FILECOUNT] = @LIMIT_FILECOUNT
,[DOCTYPE_ID] = @DOCTYPE_ID
,[ARCHIVE_PATH] = @ARCHIVE_PATH
,[COMMENT] = @COMMENT
,[CHANGED_WHO] = @WHO
WHERE GUID = @GUID
END
SELECT * FROM TBFOLDERIMPORT_PROFILE WHERE GUID = @GUID
END
GO
CREATE TABLE TBFOLDERIMPORT_STEP_ATTRIBUTE_SPLIT
(
GUID INTEGER IDENTITY(1,1),
PROFILE_ID INTEGER NOT NULL,
PRAEFIX VARCHAR(250) NOT NULL DEFAULT '',
SPLIT_CHARACTER VARCHAR(10) NOT NULL,
SPLIT_POS TINYINT NOT NULL,
SUFFIX VARCHAR(250) NOT NULL DEFAULT '',
ATTRIBUTE VARCHAR(900) 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_TBFOLDERIMPORT_STEP_ATTRIBUTE_SPLIT PRIMARY KEY (GUID),
CONSTRAINT UC_TBFOLDERIMPORT_STEP_ATTRIBUTE_SPLIT UNIQUE (PROFILE_ID,ATTRIBUTE),
CONSTRAINT FK_TBFOLDERIMPORT_STEP_ATTRIBUTE_SPLIT FOREIGN KEY(PROFILE_ID) REFERENCES TBFOLDERIMPORT_PROFILE(GUID)
)
SELECt * FROM TBFOLDERIMPORT_PROFILE
CREATE TABLE TBFOLDERIMPORT_PROFILE
(
GUID INTEGER IDENTITY(1,1),
TITLE VARCHAR(250) NOT NULL,
IMPORT_PATH VARCHAR(900) NOT NULL,
REGEX_FILENAME VARCHAR(250) NOT NULL DEFAULT '',
LIMIT_FILECOUNT TINYINT NOT NULL DEFAULT 0,
DOCTYPE_ID INTEGER NOT NULL,
ARCHIVE_PATH VARCHAR(900) NOT NULL DEFAULT '',
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_TBFOLDERIMPORT_PROFILE PRIMARY KEY (GUID),
CONSTRAINT UC_TBFOLDERIMPORT_PROFILE UNIQUE (IMPORT_PATH),
)
GO
CREATE TRIGGER [dbo].[TBFOLDERIMPORT_PROFILE_AFT_UPD] ON [dbo].[TBFOLDERIMPORT_PROFILE]
FOR UPDATE
AS
BEGIN
UPDATE TBFOLDERIMPORT_PROFILE SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBFOLDERIMPORT_PROFILE.GUID = INSERTED.GUID
END
GO
ALTER PROCEDURE PRIDBFOLDERIMPORT_PROFILE ( @TITLE VARCHAR(250),
@IMPORT_PATH VARCHAR(900),
@REGEX_FILENAME VARCHAR(250),
@LIMIT_FILECOUNT TINYINT,
@DOCTYPE_ID INTEGER,
@ARCHIVE_PATH VARCHAR(900),
@COMMENT VARCHAR(200),
@WHO VARCHAR(50),
@GUID INTEGER = 0)
AS
BEGIN
IF @GUID = 0
BEGIN
INSERT INTO [dbo].[TBFOLDERIMPORT_PROFILE]
([TITLE]
,[IMPORT_PATH]
,[REGEX_FILENAME]
,[LIMIT_FILECOUNT]
,[DOCTYPE_ID]
,[ARCHIVE_PATH]
,[COMMENT]
,[ADDED_WHO]
)
VALUES
(@TITLE
,@IMPORT_PATH
,@REGEX_FILENAME
,@LIMIT_FILECOUNT
,@DOCTYPE_ID
,@ARCHIVE_PATH
,@COMMENT
,@WHO);
SELECT @GUID = GUID FROM TBFOLDERIMPORT_PROFILE WHERE IMPORT_PATH = @IMPORT_PATH;
END
ELSE
BEGIN
UPDATE [dbo].[TBFOLDERIMPORT_PROFILE]
SET [TITLE] = @TITLE
,[IMPORT_PATH] = @IMPORT_PATH
,[REGEX_FILENAME] = @REGEX_FILENAME
,[LIMIT_FILECOUNT] = @LIMIT_FILECOUNT
,[DOCTYPE_ID] = @DOCTYPE_ID
,[ARCHIVE_PATH] = @ARCHIVE_PATH
,[COMMENT] = @COMMENT
,[CHANGED_WHO] = @WHO
WHERE GUID = @GUID
END
SELECT * FROM TBFOLDERIMPORT_PROFILE WHERE GUID = @GUID
END
GO
CREATE TABLE TBFOLDERIMPORT_STEP_ATTRIBUTE_SPLIT
(
GUID INTEGER IDENTITY(1,1),
PROFILE_ID INTEGER NOT NULL,
PRAEFIX VARCHAR(250) NOT NULL DEFAULT '',
SPLIT_CHARACTER VARCHAR(10) NOT NULL,
SPLIT_POS TINYINT NOT NULL,
SUFFIX VARCHAR(250) NOT NULL DEFAULT '',
ATTRIBUTE VARCHAR(900) 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_TBFOLDERIMPORT_STEP_ATTRIBUTE_SPLIT PRIMARY KEY (GUID),
CONSTRAINT UC_TBFOLDERIMPORT_STEP_ATTRIBUTE_SPLIT UNIQUE (PROFILE_ID,ATTRIBUTE),
CONSTRAINT FK_TBFOLDERIMPORT_STEP_ATTRIBUTE_SPLIT FOREIGN KEY(PROFILE_ID) REFERENCES TBFOLDERIMPORT_PROFILE(GUID)
)
GO

View File

@ -1,35 +1,35 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.3.0';
CREATE TABLE TBDD_NOTIFICATIONS_SYSTEM
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
TITLE VARCHAR(250) NOT NULL,
MODULE VARCHAR(250) NOT NULL,
DISPLAY_TYPE VARCHAR(100) NOT NULL,
MSG_STRING NVARCHAR(MAX) NOT NULL,
DISPLAY_UNTIL DATE,
VALIDATE_READ BIT NOT NULL DEFAULT 0,
ADDED_WHO VARCHAR(100),
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHO VARCHAR(100),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBDD_NOTIFICATIONS_SYSTEM PRIMARY KEY (GUID),
)
GO
CREATE TRIGGER TTBDD_NOTIFICATIONS_SYSTEM_AFT_UPD ON TBDD_NOTIFICATIONS_SYSTEM
FOR UPDATE
AS
UPDATE TBDD_NOTIFICATIONS_SYSTEM SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBDD_NOTIFICATIONS_SYSTEM .GUID = INSERTED.GUID
GO
CREATE TABLE TBDD_NOTIFICATIONS_USER_HISTORY
(
GUID INTEGER IDENTITY(1,1),
NOTIFY_ID INT NOT NULL,
USR_ID INT NOT NULL,
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CONSTRAINT PK_TBDD_NOTIFICATIONS_USER_HISTORY PRIMARY KEY (GUID),
CONSTRAINT FK_TBDD_NOTIFICATIONS_USER_HISTORY_NID FOREIGN KEY(NOTIFY_ID) REFERENCES TBDD_NOTIFICATIONS_SYSTEM(GUID),
)
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.3.0';
CREATE TABLE TBDD_NOTIFICATIONS_SYSTEM
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
TITLE VARCHAR(250) NOT NULL,
MODULE VARCHAR(250) NOT NULL,
DISPLAY_TYPE VARCHAR(100) NOT NULL,
MSG_STRING NVARCHAR(MAX) NOT NULL,
DISPLAY_UNTIL DATE,
VALIDATE_READ BIT NOT NULL DEFAULT 0,
ADDED_WHO VARCHAR(100),
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHO VARCHAR(100),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBDD_NOTIFICATIONS_SYSTEM PRIMARY KEY (GUID),
)
GO
CREATE TRIGGER TTBDD_NOTIFICATIONS_SYSTEM_AFT_UPD ON TBDD_NOTIFICATIONS_SYSTEM
FOR UPDATE
AS
UPDATE TBDD_NOTIFICATIONS_SYSTEM SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBDD_NOTIFICATIONS_SYSTEM .GUID = INSERTED.GUID
GO
CREATE TABLE TBDD_NOTIFICATIONS_USER_HISTORY
(
GUID INTEGER IDENTITY(1,1),
NOTIFY_ID INT NOT NULL,
USR_ID INT NOT NULL,
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CONSTRAINT PK_TBDD_NOTIFICATIONS_USER_HISTORY PRIMARY KEY (GUID),
CONSTRAINT FK_TBDD_NOTIFICATIONS_USER_HISTORY_NID FOREIGN KEY(NOTIFY_ID) REFERENCES TBDD_NOTIFICATIONS_SYSTEM(GUID),
)
GO

View File

@ -1,47 +1,47 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.4.0';
USE [DD_ECM]
GO
CREATE FUNCTION [dbo].[FNDD_LANGUAGE_PHRASE](@pTITLE VARCHAR(100),@pLANG_CODE VARCHAR(5), @pMODULE VARCHAR(10))
RETURNS VARCHAR(500)
AS
BEGIN
DECLARE @RESULT VARCHAR(250), @CTRL_CONFIG_TITLE VARCHAR(100)
SELECT @RESULT = STRING1 FROM TBDD_GUI_LANGUAGE_PHRASE
WHERE MODULE = @pMODULE AND TITLE = @pTITLE
AND [LANGUAGE] = @pLANG_CODE
IF LEN(@RESULT) > 0
SET @RESULT = @RESULT
ELSE
BEGIN
SELECT @RESULT = STRING1 FROM TBDD_GUI_LANGUAGE_PHRASE
WHERE MODULE = @pMODULE AND TITLE = @pTITLE
AND [LANGUAGE] = 'de-DE'
SET @RESULT = @RESULT + ' (NoLangConf)'
END
RETURN @RESULT
END
GO
CREATE PROCEDURE [dbo].[PRDD_GUI_LANGUAGE_PHRASE] (@pMODULE VARCHAR(10),@pTITLE VARCHAR(100),@pLANG_CODE VARCHAR(5),@pCAPTION_TYPE VARCHAR(50),@pSTRING1 VARCHAR(900),@pSTRING2 VARCHAR(900),@pWHO VARCHAR(100)
,@pOBJ_NAME VARCHAR(100),@pINTERNAL BIT)
AS
If NOT EXISTS(SELECT GUID FROm TBDD_GUI_LANGUAGE_PHRASE WHERE [MODULE] = @pMODULE AND TITLE = @pTITLE AND [LANGUAGE] = @pLANG_CODE)
INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE]
([MODULE]
,[TITLE]
,[LANGUAGE]
,[CAPT_TYPE]
,[STRING1]
,STRING2
,[ADDED_WHO]
,[OBJ_NAME],INTERNAL) VALUES
(@pMODULE,@pTITLE,@pLANG_CODE,@pCAPTION_TYPE,@pSTRING1,@pSTRING2,@pWHO,@pOBJ_NAME,@pINTERNAL)
ELSE
UPDATE [dbo].[TBDD_GUI_LANGUAGE_PHRASE] SET [CAPT_TYPE] = @pCAPTION_TYPE
,[STRING1] = @pSTRING1
,STRING2 = @pSTRING2
,CHANGED_WHO = @pWHO
,[OBJ_NAME] = @pOBJ_NAME,INTERNAL = @pINTERNAL WHERE
[MODULE] = @pMODULE AND TITLE = @pTITLE AND [LANGUAGE] = @pLANG_CODE
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.4.0';
USE [DD_ECM]
GO
CREATE FUNCTION [dbo].[FNDD_LANGUAGE_PHRASE](@pTITLE VARCHAR(100),@pLANG_CODE VARCHAR(5), @pMODULE VARCHAR(10))
RETURNS VARCHAR(500)
AS
BEGIN
DECLARE @RESULT VARCHAR(250), @CTRL_CONFIG_TITLE VARCHAR(100)
SELECT @RESULT = STRING1 FROM TBDD_GUI_LANGUAGE_PHRASE
WHERE MODULE = @pMODULE AND TITLE = @pTITLE
AND [LANGUAGE] = @pLANG_CODE
IF LEN(@RESULT) > 0
SET @RESULT = @RESULT
ELSE
BEGIN
SELECT @RESULT = STRING1 FROM TBDD_GUI_LANGUAGE_PHRASE
WHERE MODULE = @pMODULE AND TITLE = @pTITLE
AND [LANGUAGE] = 'de-DE'
SET @RESULT = @RESULT + ' (NoLangConf)'
END
RETURN @RESULT
END
GO
CREATE PROCEDURE [dbo].[PRDD_GUI_LANGUAGE_PHRASE] (@pMODULE VARCHAR(10),@pTITLE VARCHAR(100),@pLANG_CODE VARCHAR(5),@pCAPTION_TYPE VARCHAR(50),@pSTRING1 VARCHAR(900),@pSTRING2 VARCHAR(900),@pWHO VARCHAR(100)
,@pOBJ_NAME VARCHAR(100),@pINTERNAL BIT)
AS
If NOT EXISTS(SELECT GUID FROm TBDD_GUI_LANGUAGE_PHRASE WHERE [MODULE] = @pMODULE AND TITLE = @pTITLE AND [LANGUAGE] = @pLANG_CODE)
INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE]
([MODULE]
,[TITLE]
,[LANGUAGE]
,[CAPT_TYPE]
,[STRING1]
,STRING2
,[ADDED_WHO]
,[OBJ_NAME],INTERNAL) VALUES
(@pMODULE,@pTITLE,@pLANG_CODE,@pCAPTION_TYPE,@pSTRING1,@pSTRING2,@pWHO,@pOBJ_NAME,@pINTERNAL)
ELSE
UPDATE [dbo].[TBDD_GUI_LANGUAGE_PHRASE] SET [CAPT_TYPE] = @pCAPTION_TYPE
,[STRING1] = @pSTRING1
,STRING2 = @pSTRING2
,CHANGED_WHO = @pWHO
,[OBJ_NAME] = @pOBJ_NAME,INTERNAL = @pINTERNAL WHERE
[MODULE] = @pMODULE AND TITLE = @pTITLE AND [LANGUAGE] = @pLANG_CODE
GO

View File

@ -1,10 +1,10 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.4.1'
ALTER TABLE TBDD_NOTIFICATIONS_SYSTEM ADD LANG_CODE VARCHAR(5) NOT NULL DEFAULT 'ALL'
GO
IF NOT EXISTS(SELECT 1 FROM sys.columns
WHERE Name = N'ARCHIVE_FOLDER'
AND Object_ID = Object_ID(N'dbo.TBDD_EMAIL_ACCOUNT'))
BEGIN
-- Column Exists
ALTER TABLE TBDD_EMAIL_ACCOUNT ADD ARCHIVE_FOLDER VARCHAR(100) NOT NULL DEFAULT ''
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.4.1'
ALTER TABLE TBDD_NOTIFICATIONS_SYSTEM ADD LANG_CODE VARCHAR(5) NOT NULL DEFAULT 'ALL'
GO
IF NOT EXISTS(SELECT 1 FROM sys.columns
WHERE Name = N'ARCHIVE_FOLDER'
AND Object_ID = Object_ID(N'dbo.TBDD_EMAIL_ACCOUNT'))
BEGIN
-- Column Exists
ALTER TABLE TBDD_EMAIL_ACCOUNT ADD ARCHIVE_FOLDER VARCHAR(100) NOT NULL DEFAULT ''
END

View File

@ -0,0 +1,11 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.7.0'
CREATE TABLE TBDD_USER_LOG_IN_ATTEMPT(
GUID BIGINT IDENTITY(1,1) NOT NULL,
USERNAME VARCHAR(100),
MODULE VARCHAR(30),
VERSION_CLIENT VARCHAR(30),
MACHINE_NAME VARCHAR(250),
OVERRIDE_LANGUAGE VARCHAR(5),
[LOGIN] DATETIME DEFAULT (GETDATE()),
CONSTRAINT [PK_TBDD_USER_LOG_IN_ATTEMPT] PRIMARY KEY(GUID))
GO

View File

@ -0,0 +1,49 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.7.1'
IF NOT EXISTS(SELECT 1 FROM sys.columns
WHERE Name = N'ACTIVE'
AND Object_ID = Object_ID(N'dbo.TBDD_GUI_LANGUAGE'))
BEGIN
-- Column Exists
ALTER TABLE TBDD_GUI_LANGUAGE ADD ACTIVE BIT NOT NULL DEFAULT 1
END
ELSE
PRINT 'COLUMN DOES EXIST'
GO
CREATE TABLE TBDD_USER_CHANGE_LOG(
GUID BIGINT IDENTITY(1,1) NOT NULL,
USR_ID INTEGER NOT NULL,
COMMENT VARCHAR(3000),
CONSTRAINT [PK_TBDD_USER_CHANGE_LOG] PRIMARY KEY(GUID))
GO
USE [DD_ECM]
GO
/****** Object: Trigger [dbo].[TBDD_USER_AFT_UPD] Script Date: 30.03.2023 16:54:54 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TRIGGER [dbo].[TBDD_USER_AFT_UPD_LOG] ON [dbo].[TBDD_USER]
FOR UPDATE
AS
BEGIN
DECLARE @USRNAME VARCHAR(50),@LANGUAGE VARCHAR(5),@CHANGED_WHO VARCHAR(100),@USR_ID INTEGER, @COMMENT VARCHAR(1000)
SELECT @USRNAME = USERNAME,@LANGUAGE = LANGUAGE,@CHANGED_WHO = CHANGED_WHO,@USR_ID = GUID FROM inserted
IF UPDATE (LANGUAGE) AND @CHANGED_WHO LIKE 'LANG_CHANGE_GUI%'
BEGIN
SET @COMMENT = 'USER CHANGED LANGUAGE TO [' + @LANGUAGE + ']'
INSERT INTO [dbo].[TBDD_USER_CHANGE_LOG]
([USR_ID],[COMMENT])
VALUES
(@USR_ID,@COMMENT)
END
END
GO
IF NOT EXISTS(SELECT 1 FROM sys.columns
WHERE Name = N'APP_STARTUP_PATH'
AND Object_ID = Object_ID(N'dbo.TBDD_USER_LOG_IN_ATTEMPT'))
BEGIN
-- Column Exists
ALTER TABLE TBDD_USER_LOG_IN_ATTEMPT ADD APP_STARTUP_PATH VARCHAR(1000)
END

View File

@ -1,309 +1,309 @@
ALTER TABLE TBDD_BASECONFIG ADD WM_DRIVE VARCHAR(1) NOT NULL DEFAULT 'W'
GO
ALTER TABLE TBDD_BASECONFIG ADD DB_VERSION VARCHAR(10) NOT NULL DEFAULT '1.1'
GO
ALTER TABLE TBDD_USER ADD DELETED BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER ADD DELETED_WHEN DATETIME
GO
ALTER TABLE TBDD_USER ADD DELETED_WHO DATETIME
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.1'
GO
ALTER TABLE TBDD_MODULES ADD SHORT_NAME VARCHAR(10)
GO
if not exists (select * from sysobjects where name='TBDD_CLIENT' and xtype='U')
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),
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
if not exists (select * from sysobjects where name='TBDD_USER_MODULES' and xtype='U')
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
ALTER TABLE TBDD_USER_MODULES ADD IS_ADMIN BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER_MODULES ADD RIGHT1 BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER_MODULES ADD RIGHT2 BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER_MODULES ADD RIGHT3 BIT NOT NULL DEFAULT 0
GO
if not exists (select * from sysobjects where name='TBDD_GROUPS' and xtype='U')
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
UPDATE TBDD_GROUPS SET CHANGED_WHEN = GETDATE() FROM INSERTED
WHERE TBDD_GROUPS.GUID = INSERTED.GUID
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
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
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
if not exists (select * from sysobjects where name='TBDD_CLIENT_GROUP' and xtype='U')
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
if not exists (select * from sysobjects where name='TBDD_CLIENT_USER' and xtype='U')
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
if not exists (select * from sysobjects where name='TBDD_USER_LOGIN_OUT' and xtype='U')
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
DROP TABLE TBDD_USER_MODULE_LOG_IN
GO
CREATE TABLE TBDD_USER_MODULE_LOG_IN
(
GUID INTEGER IDENTITY(1,1),
CLIENT_ID INTEGER NOT NULL,
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
ALTER VIEW [dbo].[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
ALTER TABLE TBDD_BASECONFIG ADD WM_DRIVE VARCHAR(1) NOT NULL DEFAULT 'W'
GO
ALTER TABLE TBDD_BASECONFIG ADD DB_VERSION VARCHAR(10) NOT NULL DEFAULT '1.1'
GO
ALTER TABLE TBDD_USER ADD DELETED BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER ADD DELETED_WHEN DATETIME
GO
ALTER TABLE TBDD_USER ADD DELETED_WHO DATETIME
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.1'
GO
ALTER TABLE TBDD_MODULES ADD SHORT_NAME VARCHAR(10)
GO
if not exists (select * from sysobjects where name='TBDD_CLIENT' and xtype='U')
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),
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
if not exists (select * from sysobjects where name='TBDD_USER_MODULES' and xtype='U')
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
ALTER TABLE TBDD_USER_MODULES ADD IS_ADMIN BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER_MODULES ADD RIGHT1 BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER_MODULES ADD RIGHT2 BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER_MODULES ADD RIGHT3 BIT NOT NULL DEFAULT 0
GO
if not exists (select * from sysobjects where name='TBDD_GROUPS' and xtype='U')
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
UPDATE TBDD_GROUPS SET CHANGED_WHEN = GETDATE() FROM INSERTED
WHERE TBDD_GROUPS.GUID = INSERTED.GUID
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
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
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
if not exists (select * from sysobjects where name='TBDD_CLIENT_GROUP' and xtype='U')
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
if not exists (select * from sysobjects where name='TBDD_CLIENT_USER' and xtype='U')
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
if not exists (select * from sysobjects where name='TBDD_USER_LOGIN_OUT' and xtype='U')
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
DROP TABLE TBDD_USER_MODULE_LOG_IN
GO
CREATE TABLE TBDD_USER_MODULE_LOG_IN
(
GUID INTEGER IDENTITY(1,1),
CLIENT_ID INTEGER NOT NULL,
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
ALTER VIEW [dbo].[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

View File

@ -1,186 +1,186 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.2'
GO
ALTER TABLE TBDD_CLIENT ADD ACTIVE BIT NOT NULL DEFAULT 0
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
--AND T2.USERNAME = 'SchreiberM'
GO
CREATE 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_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),
@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'
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 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_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_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
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.2'
GO
ALTER TABLE TBDD_CLIENT ADD ACTIVE BIT NOT NULL DEFAULT 0
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
--AND T2.USERNAME = 'SchreiberM'
GO
CREATE 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_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),
@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'
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 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_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_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

View File

@ -1,99 +1,99 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.3'
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
UPDATE TBDD_CONNECTION SET SQL_PROVIDER = 'MS-SQL' WHERE SQL_PROVIDER = 'MS-SQLServer'
GO
ALTER 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 windream60.[dbo].[GroupInfo] where UPPER(szGroupName) = UPPER(@GRPNAME) AND szNTDomain = 'LOCAL.ZELLSTOFF-STENDAL.DE'
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
ALTER TABLE TBDD_EMAIL_ACCOUNT ADD EMAIL_NAME VARCHAR(100) DEFAULT ''
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
ALTER TABLE TBDD_EMAIL_ACCOUNT ADD AUTH_TYPE VARCHAR(20) NOT NULL DEFAULT 'SSL'
GO
ALTER TABLE TBDD_BASECONFIG ADD WM_DB_CONSTRING VARCHAR(1000) NOT NULL DEFAULT ''
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
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.3'
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
UPDATE TBDD_CONNECTION SET SQL_PROVIDER = 'MS-SQL' WHERE SQL_PROVIDER = 'MS-SQLServer'
GO
ALTER 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 windream60.[dbo].[GroupInfo] where UPPER(szGroupName) = UPPER(@GRPNAME) AND szNTDomain = 'LOCAL.ZELLSTOFF-STENDAL.DE'
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
ALTER TABLE TBDD_EMAIL_ACCOUNT ADD EMAIL_NAME VARCHAR(100) DEFAULT ''
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
ALTER TABLE TBDD_EMAIL_ACCOUNT ADD AUTH_TYPE VARCHAR(20) NOT NULL DEFAULT 'SSL'
GO
ALTER TABLE TBDD_BASECONFIG ADD WM_DB_CONSTRING VARCHAR(1000) NOT NULL DEFAULT ''
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

View File

@ -1,10 +1,10 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.4.0.0'
GO
ALTER TABLE [dbo].[TBDD_INDEX_MAN] ADD VKT_ADD_ITEM BIT NOT NULL DEFAULT 0
GO
ALTER TABLE [dbo].[TBDD_INDEX_MAN] ADD VKT_PREVENT_MULTIPLE_VALUES BIT NOT NULL DEFAULT 1
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.4.0.0'
GO
ALTER TABLE [dbo].[TBDD_INDEX_MAN] ADD VKT_ADD_ITEM BIT NOT NULL DEFAULT 0
GO
ALTER TABLE [dbo].[TBDD_INDEX_MAN] ADD VKT_PREVENT_MULTIPLE_VALUES BIT NOT NULL DEFAULT 1
GO

View File

@ -1,129 +1,129 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.5.0.0'
GO
ALTER TABLE [dbo].[TBDD_MODULES] ADD WMSESSION_STARTSTOP_STARTUP BIT NOT NULL DEFAULT 0
GO
/*Run following command to set the WM-Startup on Appstart to true*/
--UPDATE TBDD_MODULES SET WMSESSION_STARTSTOP_STARTUP = 1 WHERE SHORT_NAME = 'PM'
--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.5.0.0'
GO
ALTER TABLE [dbo].[TBDD_MODULES] ADD WMSESSION_STARTSTOP_STARTUP BIT NOT NULL DEFAULT 0
GO
/*Run following command to set the WM-Startup on Appstart to true*/
--UPDATE TBDD_MODULES SET WMSESSION_STARTSTOP_STARTUP = 1 WHERE SHORT_NAME = 'PM'
--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

View File

@ -1,9 +1,9 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.6.0.0'
GO
IF NOT EXISTS (SELECT GUID FROM TBDD_GROUPS WHERE NAME = 'SERVER_USER')
INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('SERVER_USER',1)
GO
ALTER TABLE TBDD_MODULES ADD WMSESSION_STARTSTOP_STARTUP BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_EMAIL_ACCOUNT ADD PORT_IN INT NOT NULL DEFAULT 25
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.6.0.0'
GO
IF NOT EXISTS (SELECT GUID FROM TBDD_GROUPS WHERE NAME = 'SERVER_USER')
INSERT INTO TBDD_GROUPS (NAME,INTERNAL) VALUES ('SERVER_USER',1)
GO
ALTER TABLE TBDD_MODULES ADD WMSESSION_STARTSTOP_STARTUP BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_EMAIL_ACCOUNT ADD PORT_IN INT NOT NULL DEFAULT 25
GO

View File

@ -1,51 +1,51 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.7.0.0'
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR1 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR2 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR3 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR4 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR5 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR6 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR7 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR8 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR9 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR10 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR11 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR12 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR13 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR14 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR15 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_BIT1 BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER ADD ATTR_BIT2 BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER ADD ATTR_BIT3 BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER ADD ATTR_BIT4 BIT NOT NULL DEFAULT 0
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)
)
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.7.0.0'
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR1 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR2 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR3 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR4 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR5 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR6 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR7 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR8 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR9 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR10 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR11 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR12 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR13 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR14 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_CHAR15 VARCHAR(250)
GO
ALTER TABLE TBDD_USER ADD ATTR_BIT1 BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER ADD ATTR_BIT2 BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER ADD ATTR_BIT3 BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBDD_USER ADD ATTR_BIT4 BIT NOT NULL DEFAULT 0
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

View File

@ -1,167 +1,167 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.8.0.0'
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
-- 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
-- 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
-- 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
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
ALTER TABLE TBDD_MODULES ADD LICENSE_VALID BIT NOT NULL DEFAULT 1
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.8.0.0'
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
-- 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
-- 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
-- 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
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
ALTER TABLE TBDD_MODULES ADD LICENSE_VALID BIT NOT NULL DEFAULT 1
GO

View File

@ -1,54 +1,54 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.8.0.1'
GO
ALTER 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
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.8.0.1'
GO
ALTER 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

View File

@ -1,37 +1,37 @@
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 windream60.dbo.AccessRight AR LEFT JOIN windream60.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 windream60.dbo.AccessRight AR LEFT JOIN windream60.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
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 windream60.dbo.AccessRight AR LEFT JOIN windream60.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 windream60.dbo.AccessRight AR LEFT JOIN windream60.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

View File

@ -1,96 +1,96 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.1'
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]
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
CREATE TRIGGER [dbo].[TBDD_3RD_PARTY_MODULES_AFT_INS] ON [dbo].[TBDD_3RD_PARTY_MODULES]
FOR INSERT
AS
UPDATE TBDD_3RD_PARTY_MODULES SET ADDED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_3RD_PARTY_MODULES.GUID = INSERTED.GUID
GO
CREATE TRIGGER [dbo].[TBDD_3RD_PARTY_MODULES_AFT_UPD] ON [dbo].[TBDD_3RD_PARTY_MODULES]
FOR UPDATE
AS
UPDATE TBDD_3RD_PARTY_MODULES SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_3RD_PARTY_MODULES.GUID = INSERTED.GUID
GO
INSERT INTO [dbo].[TBDD_3RD_PARTY_MODULES]
([ACTIVE]
,[NAME]
,[LICENSE]
,[VERSION])
VALUES
(1
,'GDPICTURE'
,'21182889975216572111813147150675976632'
,'1.0.0.0' )
GO
CREATE PROCEDURE 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) VALUES (@DOCTYPE_ID,@MODULEID)
GO
IF OBJECT_ID('TBDD_USER_DOKTYPE', 'U') IS NULL
BEGIN
CREATE TABLE [dbo].[TBDD_USER_DOKTYPE](
[GUID] [int] IDENTITY(1,1) NOT NULL,
[DOCTYPE_ID] [int] NOT NULL,
[USER_ID] [int] NOT NULL,
[ADDED_WHO] [varchar](50) NOT NULL,
[ADDED_WHEN] [datetime] NULL,
[CHANGED_WHEN] [datetime] NULL,
CONSTRAINT [PKTBDD_USER_DOKTYPE] 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]
) ON [PRIMARY];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] ADD DEFAULT ('Digital Data') FOR [ADDED_WHO];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] ADD DEFAULT (getdate()) FOR [ADDED_WHEN];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] WITH CHECK ADD CONSTRAINT [FK_TBDD_USER_DOKTYPE_DOCTYPE_ID] FOREIGN KEY([DOCTYPE_ID])
REFERENCES [dbo].[TBDD_DOKUMENTART] ([GUID]);
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] CHECK CONSTRAINT [FK_TBDD_USER_DOKTYPE_DOCTYPE_ID];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] WITH CHECK ADD CONSTRAINT [FK_TBDD_USER_DOKTYPE_USER_ID] FOREIGN KEY([USER_ID])
REFERENCES [dbo].[TBDD_USER] ([GUID]);
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] CHECK CONSTRAINT [FK_TBDD_USER_DOKTYPE_USER_ID];
END
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.1'
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]
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
CREATE TRIGGER [dbo].[TBDD_3RD_PARTY_MODULES_AFT_INS] ON [dbo].[TBDD_3RD_PARTY_MODULES]
FOR INSERT
AS
UPDATE TBDD_3RD_PARTY_MODULES SET ADDED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_3RD_PARTY_MODULES.GUID = INSERTED.GUID
GO
CREATE TRIGGER [dbo].[TBDD_3RD_PARTY_MODULES_AFT_UPD] ON [dbo].[TBDD_3RD_PARTY_MODULES]
FOR UPDATE
AS
UPDATE TBDD_3RD_PARTY_MODULES SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_3RD_PARTY_MODULES.GUID = INSERTED.GUID
GO
INSERT INTO [dbo].[TBDD_3RD_PARTY_MODULES]
([ACTIVE]
,[NAME]
,[LICENSE]
,[VERSION])
VALUES
(1
,'GDPICTURE'
,'21182889975216572111813147150675976632'
,'1.0.0.0' )
GO
CREATE PROCEDURE 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) VALUES (@DOCTYPE_ID,@MODULEID)
GO
IF OBJECT_ID('TBDD_USER_DOKTYPE', 'U') IS NULL
BEGIN
CREATE TABLE [dbo].[TBDD_USER_DOKTYPE](
[GUID] [int] IDENTITY(1,1) NOT NULL,
[DOCTYPE_ID] [int] NOT NULL,
[USER_ID] [int] NOT NULL,
[ADDED_WHO] [varchar](50) NOT NULL,
[ADDED_WHEN] [datetime] NULL,
[CHANGED_WHEN] [datetime] NULL,
CONSTRAINT [PKTBDD_USER_DOKTYPE] 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]
) ON [PRIMARY];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] ADD DEFAULT ('Digital Data') FOR [ADDED_WHO];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] ADD DEFAULT (getdate()) FOR [ADDED_WHEN];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] WITH CHECK ADD CONSTRAINT [FK_TBDD_USER_DOKTYPE_DOCTYPE_ID] FOREIGN KEY([DOCTYPE_ID])
REFERENCES [dbo].[TBDD_DOKUMENTART] ([GUID]);
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] CHECK CONSTRAINT [FK_TBDD_USER_DOKTYPE_DOCTYPE_ID];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] WITH CHECK ADD CONSTRAINT [FK_TBDD_USER_DOKTYPE_USER_ID] FOREIGN KEY([USER_ID])
REFERENCES [dbo].[TBDD_USER] ([GUID]);
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] CHECK CONSTRAINT [FK_TBDD_USER_DOKTYPE_USER_ID];
END

View File

@ -1,7 +1,7 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.2'
GO
ALTER TABLE TBDD_EMAIL_ACCOUNT ADD ARCHIVE_FOLDER VARCHAR(100) NOT NULL DEFAULT ''
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.2'
GO
ALTER TABLE TBDD_EMAIL_ACCOUNT ADD ARCHIVE_FOLDER VARCHAR(100) NOT NULL DEFAULT ''
GO

View File

@ -1,2 +1,2 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.3'
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.3'
GO

View File

@ -1,24 +1,24 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.4'
GO
-- =============================================
-- Author: DD MS
-- Creation date: 25.06.20200
-- =============================================
CREATE FUNCTION [dbo].[FNDD_GET_DECIMAL_FOR_VARCHAR] (@INPUT VARCHAR(100))
RETURNS DECIMAL(19,2)
AS
BEGIN
DECLARE @DEC_VALUE DECIMAL(19,2)
DECLARE @INPUT_SS_15 VARCHAR(5)
SELECT @INPUT_SS_15 = SUBSTRING(@INPUT,1,5)
IF @INPUT_SS_15 LIKE ('%.%')
BEGIN
DECLARE @REP_SS_15 VARCHAR(5)
SET @REP_SS_15 = REPLACE(@INPUT_SS_15,'.','')
SET @INPUT = REPLACE(@INPUT,@INPUT_SS_15,@REP_SS_15)
END
SELECT @INPUT = REPLACE(@INPUT,',','.')
SELECT @DEC_VALUE = convert(DECIMAL(19,2),@INPUT)
RETURN @DEC_VALUE
END
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.4'
GO
-- =============================================
-- Author: DD MS
-- Creation date: 25.06.20200
-- =============================================
CREATE FUNCTION [dbo].[FNDD_GET_DECIMAL_FOR_VARCHAR] (@INPUT VARCHAR(100))
RETURNS DECIMAL(19,2)
AS
BEGIN
DECLARE @DEC_VALUE DECIMAL(19,2)
DECLARE @INPUT_SS_15 VARCHAR(5)
SELECT @INPUT_SS_15 = SUBSTRING(@INPUT,1,5)
IF @INPUT_SS_15 LIKE ('%.%')
BEGIN
DECLARE @REP_SS_15 VARCHAR(5)
SET @REP_SS_15 = REPLACE(@INPUT_SS_15,'.','')
SET @INPUT = REPLACE(@INPUT,@INPUT_SS_15,@REP_SS_15)
END
SELECT @INPUT = REPLACE(@INPUT,',','.')
SELECT @DEC_VALUE = convert(DECIMAL(19,2),@INPUT)
RETURN @DEC_VALUE
END

View File

@ -1,32 +1,32 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.5'
GO
CREATE TABLE TBDD_GROUPS_USER_HISTORY
(
GUID BIGINT,
[USER_ID] INT NOT NULL,
GROUP_ID INT NOT NULL,
COMMENT VARCHAR(500),
DELETED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL,
DELETED_WHEN DATETIME DEFAULT GETDATE()
)
GO
-- =============================================
-- Author: DD MS
-- Creation date: 03.07.2020
-- =============================================
ALTER TRIGGER [dbo].[TBDD_GROUPS_USER_AFT_DEL] ON [dbo].[TBDD_GROUPS_USER]
FOR DELETE
AS
DECLARE @USER_ID INTEGER,@GROUP_ID INTEGER
SELECT @USER_ID = deleted.USER_ID,@GROUP_ID = deleted.GROUP_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 ))
if exists (select * from sysobjects where name='TBDD_GROUPS_USER_HISTORY' and xtype='U')
INSERT INTO TBDD_GROUPS_USER_HISTORY ([USER_ID],GROUP_ID,COMMENT,DELETED_WHO) VALUES (@USER_ID,@GROUP_ID,'USER DELETED FROM USER-GROUP','DD')
END
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.5'
GO
CREATE TABLE TBDD_GROUPS_USER_HISTORY
(
GUID BIGINT,
[USER_ID] INT NOT NULL,
GROUP_ID INT NOT NULL,
COMMENT VARCHAR(500),
DELETED_WHO VARCHAR(50) DEFAULT 'DEFAULT' NOT NULL,
DELETED_WHEN DATETIME DEFAULT GETDATE()
)
GO
-- =============================================
-- Author: DD MS
-- Creation date: 03.07.2020
-- =============================================
ALTER TRIGGER [dbo].[TBDD_GROUPS_USER_AFT_DEL] ON [dbo].[TBDD_GROUPS_USER]
FOR DELETE
AS
DECLARE @USER_ID INTEGER,@GROUP_ID INTEGER
SELECT @USER_ID = deleted.USER_ID,@GROUP_ID = deleted.GROUP_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 ))
if exists (select * from sysobjects where name='TBDD_GROUPS_USER_HISTORY' and xtype='U')
INSERT INTO TBDD_GROUPS_USER_HISTORY ([USER_ID],GROUP_ID,COMMENT,DELETED_WHO) VALUES (@USER_ID,@GROUP_ID,'USER DELETED FROM USER-GROUP','DD')
END

View File

@ -1,5 +1,5 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.8'
GO
ALTER TABLE TBDD_USER
ADD ACTIVE BIT NOT NULL DEFAULT 1
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.8'
GO
ALTER TABLE TBDD_USER
ADD ACTIVE BIT NOT NULL DEFAULT 1
GO

View File

@ -1,24 +1,24 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.1.0'
GO
CREATE TABLE TBDD_USER_REPRESENTATION (
GUID INTEGER NOT NULL IDENTITY(1,1),
USER_ID INTEGER NOT NULL,
REPR_GROUP INTEGER NOT NULL,
RIGHT_GROUP INTEGER 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_USER_REPRESENTATION PRIMARY KEY (GUID),
CONSTRAINT FK_TBDD_USER_REPRESENTATION_USER_ID FOREIGN KEY (USER_ID) REFERENCES TBDD_USER (GUID),
CONSTRAINT FK_TBDD_USER_REPRESENTATION_REPR_GROUP FOREIGN KEY (REPR_GROUP) REFERENCES TBDD_GROUPS (GUID),
CONSTRAINT FK_TBDD_USER_REPRESENTATION_RIGHT_GROUP FOREIGN KEY (RIGHT_GROUP) REFERENCES TBDD_GROUPS (GUID)
)
GO
CREATE TRIGGER TBDD_USER_REPRESENTATION_AFT_UPD ON TBDD_USER_REPRESENTATION
FOR UPDATE
AS
UPDATE TBDD_USER_REPRESENTATION SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBDD_USER_REPRESENTATION.GUID = INSERTED.GUID
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.1.0'
GO
CREATE TABLE TBDD_USER_REPRESENTATION (
GUID INTEGER NOT NULL IDENTITY(1,1),
USER_ID INTEGER NOT NULL,
REPR_GROUP INTEGER NOT NULL,
RIGHT_GROUP INTEGER 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_USER_REPRESENTATION PRIMARY KEY (GUID),
CONSTRAINT FK_TBDD_USER_REPRESENTATION_USER_ID FOREIGN KEY (USER_ID) REFERENCES TBDD_USER (GUID),
CONSTRAINT FK_TBDD_USER_REPRESENTATION_REPR_GROUP FOREIGN KEY (REPR_GROUP) REFERENCES TBDD_GROUPS (GUID),
CONSTRAINT FK_TBDD_USER_REPRESENTATION_RIGHT_GROUP FOREIGN KEY (RIGHT_GROUP) REFERENCES TBDD_GROUPS (GUID)
)
GO
CREATE TRIGGER TBDD_USER_REPRESENTATION_AFT_UPD ON TBDD_USER_REPRESENTATION
FOR UPDATE
AS
UPDATE TBDD_USER_REPRESENTATION SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBDD_USER_REPRESENTATION.GUID = INSERTED.GUID
GO

View File

@ -1,8 +1,8 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.1.1'
GO
ALTER TABLE TBDD_USER_REPRESENTATION ALTER COLUMN REPR_GROUP INTEGER NULL;
ALTER TABLE TBDD_USER_REPRESENTATION ADD REPR_USER INTEGER;
ALTER TABLE TBDD_USER_REPRESENTATION
ADD CONSTRAINT FK_TBDD_USER_REPRESENTATION_REPR_USER
FOREIGN KEY (REPR_USER)
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.1.1'
GO
ALTER TABLE TBDD_USER_REPRESENTATION ALTER COLUMN REPR_GROUP INTEGER NULL;
ALTER TABLE TBDD_USER_REPRESENTATION ADD REPR_USER INTEGER;
ALTER TABLE TBDD_USER_REPRESENTATION
ADD CONSTRAINT FK_TBDD_USER_REPRESENTATION_REPR_USER
FOREIGN KEY (REPR_USER)
REFERENCES TBDD_USER (GUID);

View File

@ -1,2 +1,2 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.2.0'
ALTER TABLE TBDD_DOKUMENTART ADD IDB_FILESTORE_ID INTEGER NOT NULL DEFAULT 0;
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.2.0'
ALTER TABLE TBDD_DOKUMENTART ADD IDB_FILESTORE_ID INTEGER NOT NULL DEFAULT 0;

View File

@ -1,111 +1,111 @@
USE [master]
GO
/****** Object: Database [IDB] Script Date: 10.01.2020 12:55:47 ******/
CREATE DATABASE [IDB]
CONTAINMENT = NONE
ON PRIMARY
( NAME = N'IDB', FILENAME = N'E:\DataFiles\Microsoft SQL Server 2017\MSSQL14.DD_DEVELOP01\MSSQL\DATA\IDB.mdf' , SIZE = 5120KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
LOG ON
( NAME = N'IDB_log', FILENAME = N'E:\DataFiles\Microsoft SQL Server 2017\MSSQL14.DD_DEVELOP01\MSSQL\DATA\IDB_log.ldf' , SIZE = 5184KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
GO
IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
begin
EXEC [IDB].[dbo].[sp_fulltext_database] @action = 'enable'
end
GO
ALTER DATABASE [IDB] SET ANSI_NULL_DEFAULT OFF
GO
ALTER DATABASE [IDB] SET ANSI_NULLS OFF
GO
ALTER DATABASE [IDB] SET ANSI_PADDING OFF
GO
ALTER DATABASE [IDB] SET ANSI_WARNINGS OFF
GO
ALTER DATABASE [IDB] SET ARITHABORT OFF
GO
ALTER DATABASE [IDB] SET AUTO_CLOSE OFF
GO
ALTER DATABASE [IDB] SET AUTO_SHRINK OFF
GO
ALTER DATABASE [IDB] SET AUTO_UPDATE_STATISTICS ON
GO
ALTER DATABASE [IDB] SET CURSOR_CLOSE_ON_COMMIT OFF
GO
ALTER DATABASE [IDB] SET CURSOR_DEFAULT GLOBAL
GO
ALTER DATABASE [IDB] SET CONCAT_NULL_YIELDS_NULL OFF
GO
ALTER DATABASE [IDB] SET NUMERIC_ROUNDABORT OFF
GO
ALTER DATABASE [IDB] SET QUOTED_IDENTIFIER OFF
GO
ALTER DATABASE [IDB] SET RECURSIVE_TRIGGERS OFF
GO
ALTER DATABASE [IDB] SET DISABLE_BROKER
GO
ALTER DATABASE [IDB] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
GO
ALTER DATABASE [IDB] SET DATE_CORRELATION_OPTIMIZATION OFF
GO
ALTER DATABASE [IDB] SET TRUSTWORTHY OFF
GO
ALTER DATABASE [IDB] SET ALLOW_SNAPSHOT_ISOLATION OFF
GO
ALTER DATABASE [IDB] SET PARAMETERIZATION SIMPLE
GO
ALTER DATABASE [IDB] SET READ_COMMITTED_SNAPSHOT OFF
GO
ALTER DATABASE [IDB] SET HONOR_BROKER_PRIORITY OFF
GO
ALTER DATABASE [IDB] SET RECOVERY FULL
GO
ALTER DATABASE [IDB] SET MULTI_USER
GO
ALTER DATABASE [IDB] SET PAGE_VERIFY CHECKSUM
GO
ALTER DATABASE [IDB] SET DB_CHAINING OFF
GO
ALTER DATABASE [IDB] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF )
GO
ALTER DATABASE [IDB] SET TARGET_RECOVERY_TIME = 0 SECONDS
GO
ALTER DATABASE [IDB] SET DELAYED_DURABILITY = DISABLED
GO
ALTER DATABASE [IDB] SET QUERY_STORE = OFF
GO
ALTER DATABASE [IDB] SET READ_WRITE
GO
USE [master]
GO
/****** Object: Database [IDB] Script Date: 10.01.2020 12:55:47 ******/
CREATE DATABASE [IDB]
CONTAINMENT = NONE
ON PRIMARY
( NAME = N'IDB', FILENAME = N'E:\DataFiles\Microsoft SQL Server 2017\MSSQL14.DD_DEVELOP01\MSSQL\DATA\IDB.mdf' , SIZE = 5120KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
LOG ON
( NAME = N'IDB_log', FILENAME = N'E:\DataFiles\Microsoft SQL Server 2017\MSSQL14.DD_DEVELOP01\MSSQL\DATA\IDB_log.ldf' , SIZE = 5184KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
GO
IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
begin
EXEC [IDB].[dbo].[sp_fulltext_database] @action = 'enable'
end
GO
ALTER DATABASE [IDB] SET ANSI_NULL_DEFAULT OFF
GO
ALTER DATABASE [IDB] SET ANSI_NULLS OFF
GO
ALTER DATABASE [IDB] SET ANSI_PADDING OFF
GO
ALTER DATABASE [IDB] SET ANSI_WARNINGS OFF
GO
ALTER DATABASE [IDB] SET ARITHABORT OFF
GO
ALTER DATABASE [IDB] SET AUTO_CLOSE OFF
GO
ALTER DATABASE [IDB] SET AUTO_SHRINK OFF
GO
ALTER DATABASE [IDB] SET AUTO_UPDATE_STATISTICS ON
GO
ALTER DATABASE [IDB] SET CURSOR_CLOSE_ON_COMMIT OFF
GO
ALTER DATABASE [IDB] SET CURSOR_DEFAULT GLOBAL
GO
ALTER DATABASE [IDB] SET CONCAT_NULL_YIELDS_NULL OFF
GO
ALTER DATABASE [IDB] SET NUMERIC_ROUNDABORT OFF
GO
ALTER DATABASE [IDB] SET QUOTED_IDENTIFIER OFF
GO
ALTER DATABASE [IDB] SET RECURSIVE_TRIGGERS OFF
GO
ALTER DATABASE [IDB] SET DISABLE_BROKER
GO
ALTER DATABASE [IDB] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
GO
ALTER DATABASE [IDB] SET DATE_CORRELATION_OPTIMIZATION OFF
GO
ALTER DATABASE [IDB] SET TRUSTWORTHY OFF
GO
ALTER DATABASE [IDB] SET ALLOW_SNAPSHOT_ISOLATION OFF
GO
ALTER DATABASE [IDB] SET PARAMETERIZATION SIMPLE
GO
ALTER DATABASE [IDB] SET READ_COMMITTED_SNAPSHOT OFF
GO
ALTER DATABASE [IDB] SET HONOR_BROKER_PRIORITY OFF
GO
ALTER DATABASE [IDB] SET RECOVERY FULL
GO
ALTER DATABASE [IDB] SET MULTI_USER
GO
ALTER DATABASE [IDB] SET PAGE_VERIFY CHECKSUM
GO
ALTER DATABASE [IDB] SET DB_CHAINING OFF
GO
ALTER DATABASE [IDB] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF )
GO
ALTER DATABASE [IDB] SET TARGET_RECOVERY_TIME = 0 SECONDS
GO
ALTER DATABASE [IDB] SET DELAYED_DURABILITY = DISABLED
GO
ALTER DATABASE [IDB] SET QUERY_STORE = OFF
GO
ALTER DATABASE [IDB] SET READ_WRITE
GO

View File

@ -1,14 +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;
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

View File

@ -1,16 +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
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

View File

@ -1,117 +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);
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

View File

@ -1,19 +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" ')
--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" ')

View File

@ -1,229 +1,229 @@
DROP TABLE TBIDB_STRUCTURE_NODES_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,
NODE_CAPTION VARCHAR(250) 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 UQ_TBIDB_STRUCTURE_NODES UNIQUE(PARENT_ID,NODE_CAPTION)
)
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 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 TABLE TBIDB_STRUCTURE_NODES_RELATIONS
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
SN_ID BIGINT NOT NULL,
USR_ID INT,
GRP_ID INT,
ADDED_WHO VARCHAR(100),
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CONSTRAINT PK_TBIDB_STRUCTURE_NODES_RELATIONS PRIMARY KEY (GUID),
CONSTRAINT FK_TBIDB_STRUCTURE_NODES_RELATIONS_SN_ID FOREIGN KEY (SN_ID) REFERENCES TBIDB_STRUCTURE_NODES (GUID),
CONSTRAINT UQ_TBIDB_STRUCTURE_NODES_RELATIONS UNIQUE(SN_ID,USR_ID,GRP_ID)
)
GO
CREATE OR ALTER VIEW VWIDB_SN_RELATIONS
AS
SELECT SNR.GUID as REL_ID, SNR.SN_ID, SN.NODE_CAPTION, USR.EMAIL as Identification, 'USR' as Scope, USR.GUID ScopeID
FROM
TBIDB_STRUCTURE_NODES_RELATIONS SNR INNER JOIN DD_ECM.dbo.TBDD_USER USR ON SNR.USR_ID = USR.GUID
INNER JOIN TBIDB_STRUCTURE_NODES SN ON SNR.SN_ID = SN.GUID
UNION
SELECT SNR.GUID as REL_ID, SNR.SN_ID,SN.NODE_CAPTION, GRP.NAME as Identification, 'GRP' as Scope, GRP.GUID ScopeID
FROM
TBIDB_STRUCTURE_NODES_RELATIONS SNR INNER JOIN DD_ECM.dbo.TBDD_GROUPS GRP ON SNR.GRP_ID = GRP.GUID
INNER JOIN TBIDB_STRUCTURE_NODES SN ON SNR.SN_ID = SN.GUID
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 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 OR ALTER PROCEDURE PRIDB_NEW_DYNAMIC_FOLDER @pDYNAMIC_FOLDER VARCHAR(900),@pWHO VARCHAR(100),@pLANG_ID TINYINT, @LAST_SN_ID BIGINT OUTPUT
AS
BEGIN
DECLARE @FOLDER_DEPTH TINYINT,@FOLD_PART VARCHAR(250),@FOLD_PATH_SO_FAR VARCHAR(900)
SET @FOLDER_DEPTH = 0
DECLARE @PARENT_NODE_GUID BIGINT,@SN_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_NODE_GUID = 0
SET @FOLD_PATH_SO_FAR = @FOLD_PART
END
ELSE
BEGIN
SET @FOLD_PATH_SO_FAR += '\' + @FOLD_PART
END
PRINT '##############################'
PRINT 'WORKING ON @FOLD_PATH_SO_FAR: ' + @FOLD_PATH_SO_FAR
EXEC PRIDB_NEW_STRUCTURE_NODE @PARENT_NODE_GUID, @FOLD_PART,@pWHO, @pLANG_ID, @LAST_SN_ID OUTPUT
SET @PARENT_NODE_GUID = @LAST_SN_ID
SET @FOLDER_DEPTH += 1
FETCH NEXT FROM cursSplitFolder INTO @FOLD_PART
END
CLOSE cursSplitFolder
DEALLOCATE cursSplitFolder
END
GO
CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_STRUCTURE_NODE] @pNODE_PARENT_ID BIGINT, @pNODECAPTION VARCHAR(200),@pWHO VARCHAR(100), @pLANG_ID TINYINT, @OUT_SN_ID BIGINT OUTPUT
AS
BEGIN
DECLARE
@WHO_TERM_ID BIGINT, @NODECAPTION_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO, @TERM_ID = @WHO_TERM_ID OUTPUT;
EXEC PRIDB_NEW_TERM 'VARCHAR',@pNODECAPTION,@pWHO, @TERM_ID = @NODECAPTION_TERM_ID OUTPUT;
IF NOT EXISTS(SELECT SN_ID FROM VWIDB_STRUCTURE_NODES_STRUCTURE WHERE SN_PARENT_ID = @pNODE_PARENT_ID AND LANG_ID = @pLANG_ID)
INSERT INTO TBIDB_STRUCTURE_NODES (PARENT_ID,NODE_CAPTION,ADDED_WHO) VALUES (@pNODE_PARENT_ID,@pNODECAPTION,@pWHO);
ELSE
IF NOT EXISTS(SELECT SN_ID FROM VWIDB_STRUCTURE_NODES_STRUCTURE WHERE SN_PARENT_ID = @pNODE_PARENT_ID AND LTERM_TERMID = @NODECAPTION_TERM_ID AND LANG_ID = @pLANG_ID)
INSERT INTO TBIDB_STRUCTURE_NODES (PARENT_ID,NODE_CAPTION,ADDED_WHO) VALUES (@pNODE_PARENT_ID,@pNODECAPTION,@pWHO);
BEGIN
SELECT @OUT_SN_ID = MAX(GUID) FROM TBIDB_STRUCTURE_NODES WHERE PARENT_ID = @pNODE_PARENT_ID AND NODE_CAPTION = @pNODECAPTION
END
DECLARE @OUT_LANG_TERM_GUID BIGINT
EXEC [PRIDB_NEW_LANGUAGE_TERM] @OUT_SN_ID, @NODECAPTION_TERM_ID,@WHO_TERM_ID,4,@pLANG_ID,@OUT_LANG_TERM_GUID OUTPUT
END
GO
-- =============================================
-- Author: DD MS
-- Changed:
-- =============================================
CREATE OR ALTER PROCEDURE PRIDB_NEW_STUCTURE_NODE_FOR_OBJECT @pIDB_OBJ_ID BIGINT, @pSN_ID BIGINT,@pWHO VARCHAR(100),@pLANG_ID TINYINT, @LAST_SN_ID BIGINT OUTPUT
AS
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBIDB_STRUCTURE_NODES_IDB_OBJ WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND SN_ID = @pSN_ID)
INSERT INTO TBIDB_STRUCTURE_NODES_IDB_OBJ (IDB_OBJ_ID,SN_ID,ADDED_WHO) VALUES (@pIDB_OBJ_ID,@pSN_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
CREATE OR ALTER VIEW [dbo].[VWIDB_STRUCTURE_NODES_STRUCTURE] AS
select
SN.GUID SN_ID
,SN.PARENT_ID SN_PARENT_ID
,SN.NODE_CAPTION SN_NODE_CAPTION
,T2.TERM_ID LTERM_TERMID
,T3.TERM_VALUE
,T4.LANG_CODE
,T4.GUID as LANG_ID
,SN.ADDED_WHO SN_ADDED_WHO
,SN.ADDED_WHEN SN_ADDED_WHEN
,T2.CHANGED_WHO TERM_CHANGED_WHO
,T2.CHANGED_WHEN TERM_CHANGED_WHEN
from
TBIDB_STRUCTURE_NODES SN INNER JOIN
TBIDB_LANGUAGE_TERM T2 ON SN.GUID = T2.[OBJECT_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
T2.KIND_TYPE = 4
GO
CREATE VIEW [dbo].[VWIDB_SN_DYNAMIC_FOLDER_OBJECT] AS
select
SN_OBJ.GUID AS SN_REL_ID,
SN_OBJ.IDB_OBJ_ID,
SN.GUID SN_ID,
SN.PARENT_ID SN_PARENT_ID,
OBJ.PARENT_OBJ_ID,
T3.TERM_VALUE AS LANG_NODE_CAPTION ,
LTERM.LANG_ID,
T4.LANG_CODE,
SN_OBJ.ADDED_WHO,
SN_OBJ.ADDED_WHEN
from
TBIDB_STRUCTURE_NODES_IDB_OBJ SN_OBJ
INNER JOIN TBIDB_STRUCTURE_NODES SN ON SN_OBJ.SN_ID = SN.GUID
INNER JOIN TBIDB_LANGUAGE_TERM LTERM ON SN_OBJ.SN_ID = LTERM.OBJECT_ID
INNER JOIN TBIDB_OBJECT OBJ ON SN_OBJ.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON LTERM.TERM_ID = T3.GUID
INNER JOIN TBIDB_LANGUAGE T4 ON LTERM.LANG_ID = T4.GUID
WHERE OBJ.ACTIVE = 1 AND LTERM.KIND_TYPE = 4
DROP TABLE TBIDB_STRUCTURE_NODES_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,
NODE_CAPTION VARCHAR(250) 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 UQ_TBIDB_STRUCTURE_NODES UNIQUE(PARENT_ID,NODE_CAPTION)
)
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 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 TABLE TBIDB_STRUCTURE_NODES_RELATIONS
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
SN_ID BIGINT NOT NULL,
USR_ID INT,
GRP_ID INT,
ADDED_WHO VARCHAR(100),
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CONSTRAINT PK_TBIDB_STRUCTURE_NODES_RELATIONS PRIMARY KEY (GUID),
CONSTRAINT FK_TBIDB_STRUCTURE_NODES_RELATIONS_SN_ID FOREIGN KEY (SN_ID) REFERENCES TBIDB_STRUCTURE_NODES (GUID),
CONSTRAINT UQ_TBIDB_STRUCTURE_NODES_RELATIONS UNIQUE(SN_ID,USR_ID,GRP_ID)
)
GO
CREATE OR ALTER VIEW VWIDB_SN_RELATIONS
AS
SELECT SNR.GUID as REL_ID, SNR.SN_ID, SN.NODE_CAPTION, USR.EMAIL as Identification, 'USR' as Scope, USR.GUID ScopeID
FROM
TBIDB_STRUCTURE_NODES_RELATIONS SNR INNER JOIN DD_ECM.dbo.TBDD_USER USR ON SNR.USR_ID = USR.GUID
INNER JOIN TBIDB_STRUCTURE_NODES SN ON SNR.SN_ID = SN.GUID
UNION
SELECT SNR.GUID as REL_ID, SNR.SN_ID,SN.NODE_CAPTION, GRP.NAME as Identification, 'GRP' as Scope, GRP.GUID ScopeID
FROM
TBIDB_STRUCTURE_NODES_RELATIONS SNR INNER JOIN DD_ECM.dbo.TBDD_GROUPS GRP ON SNR.GRP_ID = GRP.GUID
INNER JOIN TBIDB_STRUCTURE_NODES SN ON SNR.SN_ID = SN.GUID
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 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 OR ALTER PROCEDURE PRIDB_NEW_DYNAMIC_FOLDER @pDYNAMIC_FOLDER VARCHAR(900),@pWHO VARCHAR(100),@pLANG_ID TINYINT, @LAST_SN_ID BIGINT OUTPUT
AS
BEGIN
DECLARE @FOLDER_DEPTH TINYINT,@FOLD_PART VARCHAR(250),@FOLD_PATH_SO_FAR VARCHAR(900)
SET @FOLDER_DEPTH = 0
DECLARE @PARENT_NODE_GUID BIGINT,@SN_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_NODE_GUID = 0
SET @FOLD_PATH_SO_FAR = @FOLD_PART
END
ELSE
BEGIN
SET @FOLD_PATH_SO_FAR += '\' + @FOLD_PART
END
PRINT '##############################'
PRINT 'WORKING ON @FOLD_PATH_SO_FAR: ' + @FOLD_PATH_SO_FAR
EXEC PRIDB_NEW_STRUCTURE_NODE @PARENT_NODE_GUID, @FOLD_PART,@pWHO, @pLANG_ID, @LAST_SN_ID OUTPUT
SET @PARENT_NODE_GUID = @LAST_SN_ID
SET @FOLDER_DEPTH += 1
FETCH NEXT FROM cursSplitFolder INTO @FOLD_PART
END
CLOSE cursSplitFolder
DEALLOCATE cursSplitFolder
END
GO
CREATE OR ALTER PROCEDURE [dbo].[PRIDB_NEW_STRUCTURE_NODE] @pNODE_PARENT_ID BIGINT, @pNODECAPTION VARCHAR(200),@pWHO VARCHAR(100), @pLANG_ID TINYINT, @OUT_SN_ID BIGINT OUTPUT
AS
BEGIN
DECLARE
@WHO_TERM_ID BIGINT, @NODECAPTION_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO, @TERM_ID = @WHO_TERM_ID OUTPUT;
EXEC PRIDB_NEW_TERM 'VARCHAR',@pNODECAPTION,@pWHO, @TERM_ID = @NODECAPTION_TERM_ID OUTPUT;
IF NOT EXISTS(SELECT SN_ID FROM VWIDB_STRUCTURE_NODES_STRUCTURE WHERE SN_PARENT_ID = @pNODE_PARENT_ID AND LANG_ID = @pLANG_ID)
INSERT INTO TBIDB_STRUCTURE_NODES (PARENT_ID,NODE_CAPTION,ADDED_WHO) VALUES (@pNODE_PARENT_ID,@pNODECAPTION,@pWHO);
ELSE
IF NOT EXISTS(SELECT SN_ID FROM VWIDB_STRUCTURE_NODES_STRUCTURE WHERE SN_PARENT_ID = @pNODE_PARENT_ID AND LTERM_TERMID = @NODECAPTION_TERM_ID AND LANG_ID = @pLANG_ID)
INSERT INTO TBIDB_STRUCTURE_NODES (PARENT_ID,NODE_CAPTION,ADDED_WHO) VALUES (@pNODE_PARENT_ID,@pNODECAPTION,@pWHO);
BEGIN
SELECT @OUT_SN_ID = MAX(GUID) FROM TBIDB_STRUCTURE_NODES WHERE PARENT_ID = @pNODE_PARENT_ID AND NODE_CAPTION = @pNODECAPTION
END
DECLARE @OUT_LANG_TERM_GUID BIGINT
EXEC [PRIDB_NEW_LANGUAGE_TERM] @OUT_SN_ID, @NODECAPTION_TERM_ID,@WHO_TERM_ID,4,@pLANG_ID,@OUT_LANG_TERM_GUID OUTPUT
END
GO
-- =============================================
-- Author: DD MS
-- Changed:
-- =============================================
CREATE OR ALTER PROCEDURE PRIDB_NEW_STUCTURE_NODE_FOR_OBJECT @pIDB_OBJ_ID BIGINT, @pSN_ID BIGINT,@pWHO VARCHAR(100),@pLANG_ID TINYINT, @LAST_SN_ID BIGINT OUTPUT
AS
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBIDB_STRUCTURE_NODES_IDB_OBJ WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND SN_ID = @pSN_ID)
INSERT INTO TBIDB_STRUCTURE_NODES_IDB_OBJ (IDB_OBJ_ID,SN_ID,ADDED_WHO) VALUES (@pIDB_OBJ_ID,@pSN_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
CREATE OR ALTER VIEW [dbo].[VWIDB_STRUCTURE_NODES_STRUCTURE] AS
select
SN.GUID SN_ID
,SN.PARENT_ID SN_PARENT_ID
,SN.NODE_CAPTION SN_NODE_CAPTION
,T2.TERM_ID LTERM_TERMID
,T3.TERM_VALUE
,T4.LANG_CODE
,T4.GUID as LANG_ID
,SN.ADDED_WHO SN_ADDED_WHO
,SN.ADDED_WHEN SN_ADDED_WHEN
,T2.CHANGED_WHO TERM_CHANGED_WHO
,T2.CHANGED_WHEN TERM_CHANGED_WHEN
from
TBIDB_STRUCTURE_NODES SN INNER JOIN
TBIDB_LANGUAGE_TERM T2 ON SN.GUID = T2.[OBJECT_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
T2.KIND_TYPE = 4
GO
CREATE VIEW [dbo].[VWIDB_SN_DYNAMIC_FOLDER_OBJECT] AS
select
SN_OBJ.GUID AS SN_REL_ID,
SN_OBJ.IDB_OBJ_ID,
SN.GUID SN_ID,
SN.PARENT_ID SN_PARENT_ID,
OBJ.PARENT_OBJ_ID,
T3.TERM_VALUE AS LANG_NODE_CAPTION ,
LTERM.LANG_ID,
T4.LANG_CODE,
SN_OBJ.ADDED_WHO,
SN_OBJ.ADDED_WHEN
from
TBIDB_STRUCTURE_NODES_IDB_OBJ SN_OBJ
INNER JOIN TBIDB_STRUCTURE_NODES SN ON SN_OBJ.SN_ID = SN.GUID
INNER JOIN TBIDB_LANGUAGE_TERM LTERM ON SN_OBJ.SN_ID = LTERM.OBJECT_ID
INNER JOIN TBIDB_OBJECT OBJ ON SN_OBJ.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
INNER JOIN TBIDB_TERM_VALUE_VARCHAR T3 ON LTERM.TERM_ID = T3.GUID
INNER JOIN TBIDB_LANGUAGE T4 ON LTERM.LANG_ID = T4.GUID
WHERE OBJ.ACTIVE = 1 AND LTERM.KIND_TYPE = 4
GO

View File

@ -1,176 +1,176 @@
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
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
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
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

View File

@ -1,35 +1,35 @@
CREATE TABLE TBIDB_BASE
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
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_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
CHANGED_WHO VARCHAR(30),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBIDB_BASE PRIMARY KEY (GUID),
CONSTRAINT UQ1_TBIDB_BASE UNIQUE (CONFIG_NAME)
)
GO
CREATE TRIGGER TBIDB_BASE_AFT_UPD ON TBIDB_BASE
FOR UPDATE
AS
UPDATE TBIDB_BASE SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBIDB_BASE.GUID = INSERTED.GUID
GO
INSERT INTO TBIDB_BASE (CONFIG_NAME,CONFIG_VALUE) VALUES ('DB_VERSION','1.0.1')
GO
ALTER TABLE TBIDB_OBJECT_STORE ADD IS_ARCHIVE BIT NOT NULL DEFAULT 0
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
CREATE TABLE TBIDB_BASE
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
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_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
CHANGED_WHO VARCHAR(30),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBIDB_BASE PRIMARY KEY (GUID),
CONSTRAINT UQ1_TBIDB_BASE UNIQUE (CONFIG_NAME)
)
GO
CREATE TRIGGER TBIDB_BASE_AFT_UPD ON TBIDB_BASE
FOR UPDATE
AS
UPDATE TBIDB_BASE SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBIDB_BASE.GUID = INSERTED.GUID
GO
INSERT INTO TBIDB_BASE (CONFIG_NAME,CONFIG_VALUE) VALUES ('DB_VERSION','1.0.1')
GO
ALTER TABLE TBIDB_OBJECT_STORE ADD IS_ARCHIVE BIT NOT NULL DEFAULT 0
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

View File

@ -1,4 +1,4 @@
UPDATE TBIDB_CATALOG SET CAT_STRING = '1.0.2' where CAT_STRING = 'DB_VERSION'
INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_TITLE) VALUES ('GHOST_SELECT','
SELECT T.USERNAME,T.NAME, T.[PRENAME],T.EMAIL FROM DD_ECM.dbo.TBDD_USER T ORDER BY USERNAME')
GO
UPDATE TBIDB_CATALOG SET CAT_STRING = '1.0.2' where CAT_STRING = 'DB_VERSION'
INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_TITLE) VALUES ('GHOST_SELECT','
SELECT T.USERNAME,T.NAME, T.[PRENAME],T.EMAIL FROM DD_ECM.dbo.TBDD_USER T ORDER BY USERNAME')
GO

View File

@ -1,417 +1,417 @@
/*
FNDD_CHECK_USER_MODULE
#PM.CONV_IDENTIFICATION=Email
in Working Mode
*/
UPDATE TBIDB_CATALOG SET CAT_STRING = '1.0.3' where CAT_TITLE = 'DB_VERSION'
CREATE TABLE TBIDB_STATES
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
STATE_LTERM_ID BIGINT 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
CREATE TRIGGER TBIDB_STATES_AFT_UPD ON TBIDB_STATES
FOR UPDATE
AS
UPDATE TBIDB_STATES SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBIDB_STATES.GUID = INSERTED.GUID
GO
ALTER PROCEDURE [dbo].[PRIDB_NEW_IDB_STATE] @pSTATE VARCHAR(512),@pWHO VARCHAR(100),@pLANG_CODE VARCHAR(5) = 'de-DE'
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 @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 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 * FROM TBIDB_STATES WHERE STATE_LTERM_ID = @LANG_STATE_TERM_ID
END
GO
CREATE TABLE TBIDB_STATE_LANG_GROUP
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
STATE_ID BIGINT NOT NULL,
LANG_TERM_ID BIGINT 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_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
EXEC PRIDB_NEW_IDB_STATE 'Started', 'Digital Data','de-DE'
EXEC PRIDB_NEW_IDB_STATE 'Ended', 'Digital Data','de-DE'
--select * from TBIDB_STATE_LANG_GROUP
--DROP TABLE TBIDB_CONVERSATION_OBJECT
CREATE TABLE TBIDB_CONVERSATION_OBJECT
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
TITLE_TERM_ID BIGINT NOT NULL,
IDB_OBJ_ID BIGINT NOT NULL,
ADDED_WHO BIGINT,
ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
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),)
GO
CREATE TRIGGER TBIDB_CONVERSATION_OBJECT_AFT_UPD ON TBIDB_CONVERSATION_OBJECT
FOR UPDATE
AS
UPDATE TBIDB_CONVERSATION_OBJECT SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBIDB_CONVERSATION_OBJECT.GUID = INSERTED.GUID
GO
CREATE FUNCTION [dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (@LANG_TERM_ID BIGINT)
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
RETURN @RESULT
END
GO
-------------------------------------------------------------------
CREATE FUNCTION [dbo].[FNIDB_GET_STATE_FOR_OBJECT_ID] (@OBJ_ID BIGINT)
RETURNS VARCHAR(900)
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
END
GO
--delete from TBIDB_CONVERSATION_OBJECT
CREATE PROCEDURE [dbo].[PRIDB_NEW_CONVERSATION] @pIDB_OBJ_ID BIGINT, @pTITLE VARCHAR(512),@pWHO VARCHAR(100),@pLANG_CODE VARCHAR(5) = 'de-DE'
AS
BEGIN
DECLARE
@LANG_ID INTEGER
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE
DECLARE @TITLE_TERM_ID BIGINT,@LANG_TITLE_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@pTITLE,@pWHO,@TERM_ID = @TITLE_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 = @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 EXISTS(SELECT CONVERSATION_ID FROM VWIDB_CONVERSATION WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND CONVERSATION_STATE = 'Started')
-- BEGIN
-- DECLARE @ENDED_STATE BIGINT
-- SELECT @ENDED_STATE = GUID FROM TBIDB_STATES T WHERE dbo.[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (STATE_LTERM_ID) = 'Ended'
-- INSERT INTO TBIDB_MYOBJECT_STATES (
-- MY_OBJECT_ID
-- ,STATE_ID
-- ,ADDED_WHO) VALUES (
-- (SELECT CONVERSATION_ID FROM VWIDB_CONVERSATION WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND CONVERSATION_STATE = 'Started')
-- ,@ENDED_STATE
-- ,@ADDED_WHO_TERM_ID)
-- END
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'
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
IF NOT EXISTS(SELECT GUID FROM TBIDB_MYOBJECT_STATES WHERE MY_OBJECT_ID = @CONVERSATION_ID AND STATE_ID = @STARTED_STATE)
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'
AS
BEGIN
DECLARE
@LANG_ID INTEGER
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE
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 = @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'
AS
BEGIN
DECLARE
@LANG_ID INTEGER
,@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'
DECLARE @WHO_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT;
IF NOT EXISTS(SELECT MY_OBJECT_ID FROM TBIDB_MYOBJECT_STATES WHERE MY_OBJECT_ID = @pCONVID AND STATE_ID = @ENDED_STATE)
INSERT INTO TBIDB_MYOBJECT_STATES (
MY_OBJECT_ID
,STATE_ID
,ADDED_WHO) VALUES (
@pCONVID
,@ENDED_STATE
,@WHO_TERM_ID)
END
GO
--delete from 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,
COMMENT_ID BIGINT ,
ADDED_WHO BIGINT,
ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
CHANGED_WHO BIGINT,
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
CREATE TRIGGER TBIDB_MYOBJECT_STATES_AFT_UPD ON TBIDB_MYOBJECT_STATES
FOR UPDATE
AS
UPDATE TBIDB_MYOBJECT_STATES SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBIDB_MYOBJECT_STATES.GUID = INSERTED.GUID
GO
CREATE FUNCTION [dbo].[FNIDB_GET_TERM_VALUE_VARCHAR] (@TERM_ID BIGINT)
RETURNS VARCHAR(900)
AS
BEGIN
DECLARE @RESULT VARCHAR(900)
SELECT @RESULT = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @TERM_ID
RETURN @RESULT
END
CREATE TABLE TBIDB_CONVERSATION_USER
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
CONV_ID BIGINT NOT NULL,
USER_OR_GROUP_ID INTEGER NOT NULL,
IS_USER BIT NOT NULL,
ADDED_WHO BIGINT,
ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
CONSTRAINT PK_TBIDB_CONVERSATION_USER PRIMARY KEY (GUID),
CONSTRAINT FK_TBIDB_CONVERSATION_USER_CONV_ID FOREIGN KEY (CONV_ID) REFERENCES TBIDB_CONVERSATION_OBJECT (GUID),
CONSTRAINT FK_TBIDB_CONVERSATION_USER_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),)
GO
CREATE PROCEDURE [dbo].[PRIDB_ADD_USER_2_CONVERSATION] @pCONV_ID BIGINT, @pUSERID INTEGER,@pWHO VARCHAR(100)
AS
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_CONVERSATION_USER WHERE CONV_ID = @pCONV_ID AND USER_OR_GROUP_ID = @pUSERID AND IS_USER = 1)
INSERT INTO TBIDB_CONVERSATION_USER (CONV_ID,USER_OR_GROUP_ID,IS_USER,ADDED_WHO) VALUES (@pCONV_ID,@pUSERID,1,@ADDED_WHO_TERM_ID)
END
GO
CREATE TABLE TBIDB_CONVERSATION_MESSAGE
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
CONV_ID BIGINT NOT NULL,
TO_USER BIGINT NOT NULL DEFAULT 0,
FROM_USER BIGINT NOT NULL,
MESSAGE_TERM_ID BIGINT NOT NULL,
ADDED_WHO BIGINT,
ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
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 PROCEDURE [dbo].[PRIDB_NEW_CONVERSATION_MESSAGE] @pCONV_ID BIGINT, @pMESSAGE VARCHAR(100), @pWHO VARCHAR(100),@pTO_USER INTEGER = 0, @pLANG_CODE VARCHAR(5) = 'de-DE'
AS
BEGIN
DECLARE
@LANG_ID INTEGER
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE
DECLARE @MESSAGE_TERM_ID BIGINT,@LANG_MESSAGE_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@pMESSAGE,@pWHO,@TERM_ID = @MESSAGE_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 = @MESSAGE_TERM_ID)
INSERT INTO TBIDB_TERM_LANGUAGE (LANGUAGE_ID,TEXT_TERM_ID,ADDED_WHO) VALUES (@LANG_ID,@MESSAGE_TERM_ID,@pWHO)
SELECT @LANG_MESSAGE_TERM_ID = MAX(GUID) FROM TBIDB_TERM_LANGUAGE WHERE LANGUAGE_ID = @LANG_ID AND TEXT_TERM_ID = @MESSAGE_TERM_ID
--IF NOT EXISTS(SELECT GUID FROM TBIDB_CONVERSATION_MESSAGE WHERE CONV_ID = @pCONV_ID AND FROM_USER = FROM_USER AND MESSAGE_TERM_ID = @LANG_MESSAGE_TERM_ID)
INSERT INTO TBIDB_CONVERSATION_MESSAGE (CONV_ID,FROM_USER,TO_USER, MESSAGE_TERM_ID, ADDED_WHO) VALUES (@pCONV_ID,@ADDED_WHO_TERM_ID,@pTO_USER, @LANG_MESSAGE_TERM_ID,@ADDED_WHO_TERM_ID)
END
GO
--EXEC PRIDB_NEW_CONVERSATION 10070, 'My First Conversation', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Hallo JJ', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Hallo Marlon', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Na was machst Du so?', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Ei ich programmiere an der IDB...', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Und Du wartest auf mich?', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Jenau ;)', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 9,'Hallo Herr Schreiber, oh sorry habe ich das wirklich? ', 'j.jenne@digitaldata.works'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 9,'..warten sie ich prüfe das nochmal! ', 'j.jenne@digitaldata.works'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 9,'Tatsächlich. Ich korrigiere das!', 'j.jenne@digitaldata.works'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 9,'Was''nu schon wieder?', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 9,'2. conversation ist da..', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 10,'Hallo JJ, da bin ich wieder', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 10,'Hallo Marlon nicht schon wieder', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 10,'Was''nu schon wieder?', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 10,'3. conversation ist da..', 'SchreiberM'
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_VALUE_VARCHAR] (ADDED_WHO) as ADDED_WHO
,ADDED_WHEN
,[dbo].[FNIDB_GET_TERM_VALUE_VARCHAR] (CHANGED_WHO) as CHANGED_WHO
,CHANGED_WHEN
FROM TBIDB_CONVERSATION_OBJECT
GO
CREATE VIEW VWIDB_CONV_MESSAGES AS
select
T.GUID,
T.CONV_ID,
(SELECT EMAIL FROM DD_ECM_TEST.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
,[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
,T.ADDED_WHEN
from TBIDB_CONVERSATION_MESSAGE T INNER JOIN TBIDB_CONVERSATION_OBJECT T1 ON T.CONV_ID = T1.GUID
GO
CREATE VIEW VWIDB_CONVERSATION_USER AS
SELECT
T.CONV_ID
,T1.GUID As USER_ID
,T1.USERNAME
,T1.EMAIL
,T1.NAME + ', ' + T1.PRENAME as NAME
FROM
[IDB_TEST].[dbo].[TBIDB_CONVERSATION_USER] T
INNER JOIN DD_ECM_TEST.dbo.TBDD_USER T1 ON T.USER_OR_GROUP_ID = T1.GUID
WHERE IS_USER = 1
GO
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
DECLARE @CONVID BIGINT
SELECT @CONVID = CONVERSATION_ID FROM VWIDB_CONVERSATION WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND CONVERSATION_STATE = 'Started'
IF @CONVID > 0
BEGIN
INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('CONVERSATION_ID',@CONVID);
END
IF EXISTS(SELECT CONV_ID FROM VWIDB_CONVERSATION_USER WHERE CONV_ID = @CONVID AND USER_ID = @pUSERID)
BEGIN
INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('CONVERSATION_USER_ACTIVE','True');
END
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 DD_ECM_TEST.dbo.TBDD_USER WHERE GUID NOT IN (SELECT USER_OR_GROUP_ID FROM
TBIDB_CONVERSATION_USER WHERE CONV_ID = @CONVID AND IS_USER = 1)');
RETURN
END
GO
CREATE NONCLUSTERED INDEX IDX_CHANGED_WHEN_IN_GUID
ON [dbo].[TBIDB_OBJECT_METADATA_CHANGE] ([CHANGED_WHEN])
INCLUDE ([GUID])
GO
CREATE NONCLUSTERED INDEX IDX_IDBOBJID_CW
ON [dbo].[TBIDB_OBJECT_METADATA_CHANGE] ([IDB_OBJ_ID])
INCLUDE ([CHANGED_WHEN])
GO
/*
FNDD_CHECK_USER_MODULE
#PM.CONV_IDENTIFICATION=Email
in Working Mode
*/
UPDATE TBIDB_CATALOG SET CAT_STRING = '1.0.3' where CAT_TITLE = 'DB_VERSION'
CREATE TABLE TBIDB_STATES
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
STATE_LTERM_ID BIGINT 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
CREATE TRIGGER TBIDB_STATES_AFT_UPD ON TBIDB_STATES
FOR UPDATE
AS
UPDATE TBIDB_STATES SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBIDB_STATES.GUID = INSERTED.GUID
GO
ALTER PROCEDURE [dbo].[PRIDB_NEW_IDB_STATE] @pSTATE VARCHAR(512),@pWHO VARCHAR(100),@pLANG_CODE VARCHAR(5) = 'de-DE'
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 @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 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 * FROM TBIDB_STATES WHERE STATE_LTERM_ID = @LANG_STATE_TERM_ID
END
GO
CREATE TABLE TBIDB_STATE_LANG_GROUP
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
STATE_ID BIGINT NOT NULL,
LANG_TERM_ID BIGINT 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_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
EXEC PRIDB_NEW_IDB_STATE 'Started', 'Digital Data','de-DE'
EXEC PRIDB_NEW_IDB_STATE 'Ended', 'Digital Data','de-DE'
--select * from TBIDB_STATE_LANG_GROUP
--DROP TABLE TBIDB_CONVERSATION_OBJECT
CREATE TABLE TBIDB_CONVERSATION_OBJECT
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
TITLE_TERM_ID BIGINT NOT NULL,
IDB_OBJ_ID BIGINT NOT NULL,
ADDED_WHO BIGINT,
ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
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),)
GO
CREATE TRIGGER TBIDB_CONVERSATION_OBJECT_AFT_UPD ON TBIDB_CONVERSATION_OBJECT
FOR UPDATE
AS
UPDATE TBIDB_CONVERSATION_OBJECT SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBIDB_CONVERSATION_OBJECT.GUID = INSERTED.GUID
GO
CREATE FUNCTION [dbo].[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (@LANG_TERM_ID BIGINT)
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
RETURN @RESULT
END
GO
-------------------------------------------------------------------
CREATE FUNCTION [dbo].[FNIDB_GET_STATE_FOR_OBJECT_ID] (@OBJ_ID BIGINT)
RETURNS VARCHAR(900)
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
END
GO
--delete from TBIDB_CONVERSATION_OBJECT
CREATE PROCEDURE [dbo].[PRIDB_NEW_CONVERSATION] @pIDB_OBJ_ID BIGINT, @pTITLE VARCHAR(512),@pWHO VARCHAR(100),@pLANG_CODE VARCHAR(5) = 'de-DE'
AS
BEGIN
DECLARE
@LANG_ID INTEGER
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE
DECLARE @TITLE_TERM_ID BIGINT,@LANG_TITLE_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@pTITLE,@pWHO,@TERM_ID = @TITLE_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 = @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 EXISTS(SELECT CONVERSATION_ID FROM VWIDB_CONVERSATION WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND CONVERSATION_STATE = 'Started')
-- BEGIN
-- DECLARE @ENDED_STATE BIGINT
-- SELECT @ENDED_STATE = GUID FROM TBIDB_STATES T WHERE dbo.[FNIDB_GET_TERM_FOR_LANG_TERM_ID] (STATE_LTERM_ID) = 'Ended'
-- INSERT INTO TBIDB_MYOBJECT_STATES (
-- MY_OBJECT_ID
-- ,STATE_ID
-- ,ADDED_WHO) VALUES (
-- (SELECT CONVERSATION_ID FROM VWIDB_CONVERSATION WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND CONVERSATION_STATE = 'Started')
-- ,@ENDED_STATE
-- ,@ADDED_WHO_TERM_ID)
-- END
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'
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
IF NOT EXISTS(SELECT GUID FROM TBIDB_MYOBJECT_STATES WHERE MY_OBJECT_ID = @CONVERSATION_ID AND STATE_ID = @STARTED_STATE)
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'
AS
BEGIN
DECLARE
@LANG_ID INTEGER
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE
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 = @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'
AS
BEGIN
DECLARE
@LANG_ID INTEGER
,@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'
DECLARE @WHO_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT;
IF NOT EXISTS(SELECT MY_OBJECT_ID FROM TBIDB_MYOBJECT_STATES WHERE MY_OBJECT_ID = @pCONVID AND STATE_ID = @ENDED_STATE)
INSERT INTO TBIDB_MYOBJECT_STATES (
MY_OBJECT_ID
,STATE_ID
,ADDED_WHO) VALUES (
@pCONVID
,@ENDED_STATE
,@WHO_TERM_ID)
END
GO
--delete from 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,
COMMENT_ID BIGINT ,
ADDED_WHO BIGINT,
ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
CHANGED_WHO BIGINT,
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
CREATE TRIGGER TBIDB_MYOBJECT_STATES_AFT_UPD ON TBIDB_MYOBJECT_STATES
FOR UPDATE
AS
UPDATE TBIDB_MYOBJECT_STATES SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBIDB_MYOBJECT_STATES.GUID = INSERTED.GUID
GO
CREATE FUNCTION [dbo].[FNIDB_GET_TERM_VALUE_VARCHAR] (@TERM_ID BIGINT)
RETURNS VARCHAR(900)
AS
BEGIN
DECLARE @RESULT VARCHAR(900)
SELECT @RESULT = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @TERM_ID
RETURN @RESULT
END
CREATE TABLE TBIDB_CONVERSATION_USER
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
CONV_ID BIGINT NOT NULL,
USER_OR_GROUP_ID INTEGER NOT NULL,
IS_USER BIT NOT NULL,
ADDED_WHO BIGINT,
ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
CONSTRAINT PK_TBIDB_CONVERSATION_USER PRIMARY KEY (GUID),
CONSTRAINT FK_TBIDB_CONVERSATION_USER_CONV_ID FOREIGN KEY (CONV_ID) REFERENCES TBIDB_CONVERSATION_OBJECT (GUID),
CONSTRAINT FK_TBIDB_CONVERSATION_USER_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),)
GO
CREATE PROCEDURE [dbo].[PRIDB_ADD_USER_2_CONVERSATION] @pCONV_ID BIGINT, @pUSERID INTEGER,@pWHO VARCHAR(100)
AS
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_CONVERSATION_USER WHERE CONV_ID = @pCONV_ID AND USER_OR_GROUP_ID = @pUSERID AND IS_USER = 1)
INSERT INTO TBIDB_CONVERSATION_USER (CONV_ID,USER_OR_GROUP_ID,IS_USER,ADDED_WHO) VALUES (@pCONV_ID,@pUSERID,1,@ADDED_WHO_TERM_ID)
END
GO
CREATE TABLE TBIDB_CONVERSATION_MESSAGE
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
CONV_ID BIGINT NOT NULL,
TO_USER BIGINT NOT NULL DEFAULT 0,
FROM_USER BIGINT NOT NULL,
MESSAGE_TERM_ID BIGINT NOT NULL,
ADDED_WHO BIGINT,
ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
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 PROCEDURE [dbo].[PRIDB_NEW_CONVERSATION_MESSAGE] @pCONV_ID BIGINT, @pMESSAGE VARCHAR(100), @pWHO VARCHAR(100),@pTO_USER INTEGER = 0, @pLANG_CODE VARCHAR(5) = 'de-DE'
AS
BEGIN
DECLARE
@LANG_ID INTEGER
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE
DECLARE @MESSAGE_TERM_ID BIGINT,@LANG_MESSAGE_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@pMESSAGE,@pWHO,@TERM_ID = @MESSAGE_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 = @MESSAGE_TERM_ID)
INSERT INTO TBIDB_TERM_LANGUAGE (LANGUAGE_ID,TEXT_TERM_ID,ADDED_WHO) VALUES (@LANG_ID,@MESSAGE_TERM_ID,@pWHO)
SELECT @LANG_MESSAGE_TERM_ID = MAX(GUID) FROM TBIDB_TERM_LANGUAGE WHERE LANGUAGE_ID = @LANG_ID AND TEXT_TERM_ID = @MESSAGE_TERM_ID
--IF NOT EXISTS(SELECT GUID FROM TBIDB_CONVERSATION_MESSAGE WHERE CONV_ID = @pCONV_ID AND FROM_USER = FROM_USER AND MESSAGE_TERM_ID = @LANG_MESSAGE_TERM_ID)
INSERT INTO TBIDB_CONVERSATION_MESSAGE (CONV_ID,FROM_USER,TO_USER, MESSAGE_TERM_ID, ADDED_WHO) VALUES (@pCONV_ID,@ADDED_WHO_TERM_ID,@pTO_USER, @LANG_MESSAGE_TERM_ID,@ADDED_WHO_TERM_ID)
END
GO
--EXEC PRIDB_NEW_CONVERSATION 10070, 'My First Conversation', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Hallo JJ', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Hallo Marlon', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Na was machst Du so?', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Ei ich programmiere an der IDB...', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Und Du wartest auf mich?', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 1,'Jenau ;)', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 9,'Hallo Herr Schreiber, oh sorry habe ich das wirklich? ', 'j.jenne@digitaldata.works'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 9,'..warten sie ich prüfe das nochmal! ', 'j.jenne@digitaldata.works'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 9,'Tatsächlich. Ich korrigiere das!', 'j.jenne@digitaldata.works'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 9,'Was''nu schon wieder?', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 9,'2. conversation ist da..', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 10,'Hallo JJ, da bin ich wieder', 'SchreiberM'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 10,'Hallo Marlon nicht schon wieder', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 10,'Was''nu schon wieder?', 'JenneJ'
--EXEC [PRIDB_NEW_CONVERSATION_MESSAGE] 10,'3. conversation ist da..', 'SchreiberM'
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_VALUE_VARCHAR] (ADDED_WHO) as ADDED_WHO
,ADDED_WHEN
,[dbo].[FNIDB_GET_TERM_VALUE_VARCHAR] (CHANGED_WHO) as CHANGED_WHO
,CHANGED_WHEN
FROM TBIDB_CONVERSATION_OBJECT
GO
CREATE VIEW VWIDB_CONV_MESSAGES AS
select
T.GUID,
T.CONV_ID,
(SELECT EMAIL FROM DD_ECM_TEST.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
,[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
,T.ADDED_WHEN
from TBIDB_CONVERSATION_MESSAGE T INNER JOIN TBIDB_CONVERSATION_OBJECT T1 ON T.CONV_ID = T1.GUID
GO
CREATE VIEW VWIDB_CONVERSATION_USER AS
SELECT
T.CONV_ID
,T1.GUID As USER_ID
,T1.USERNAME
,T1.EMAIL
,T1.NAME + ', ' + T1.PRENAME as NAME
FROM
[IDB_TEST].[dbo].[TBIDB_CONVERSATION_USER] T
INNER JOIN DD_ECM_TEST.dbo.TBDD_USER T1 ON T.USER_OR_GROUP_ID = T1.GUID
WHERE IS_USER = 1
GO
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
DECLARE @CONVID BIGINT
SELECT @CONVID = CONVERSATION_ID FROM VWIDB_CONVERSATION WHERE IDB_OBJ_ID = @pIDB_OBJ_ID AND CONVERSATION_STATE = 'Started'
IF @CONVID > 0
BEGIN
INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('CONVERSATION_ID',@CONVID);
END
IF EXISTS(SELECT CONV_ID FROM VWIDB_CONVERSATION_USER WHERE CONV_ID = @CONVID AND USER_ID = @pUSERID)
BEGIN
INSERT INTO @Table (CONF_TITLE, CONF_VALUE) VALUES ('CONVERSATION_USER_ACTIVE','True');
END
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 DD_ECM_TEST.dbo.TBDD_USER WHERE GUID NOT IN (SELECT USER_OR_GROUP_ID FROM
TBIDB_CONVERSATION_USER WHERE CONV_ID = @CONVID AND IS_USER = 1)');
RETURN
END
GO
CREATE NONCLUSTERED INDEX IDX_CHANGED_WHEN_IN_GUID
ON [dbo].[TBIDB_OBJECT_METADATA_CHANGE] ([CHANGED_WHEN])
INCLUDE ([GUID])
GO
CREATE NONCLUSTERED INDEX IDX_IDBOBJID_CW
ON [dbo].[TBIDB_OBJECT_METADATA_CHANGE] ([IDB_OBJ_ID])
INCLUDE ([CHANGED_WHEN])
GO

View File

@ -1,15 +1,15 @@
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.0.4.1' where CONFIG_NAME = 'DB_VERSION'
CREATE TABLE TBIDB_COMMON_SQL
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
TITLE VARCHAR(200) NOT NULL,
SQL_COMMAND NVARCHAR(MAX),
ACTIVE BIT NOT NULL DEFAULT 1,
ADDED_WHO VARCHAR(100),
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHO VARCHAR(100),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBIDB_COMMON_SQL PRIMARY KEY (GUID)
)
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.0.4.1' where CONFIG_NAME = 'DB_VERSION'
CREATE TABLE TBIDB_COMMON_SQL
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
TITLE VARCHAR(200) NOT NULL,
SQL_COMMAND NVARCHAR(MAX),
ACTIVE BIT NOT NULL DEFAULT 1,
ADDED_WHO VARCHAR(100),
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHO VARCHAR(100),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBIDB_COMMON_SQL PRIMARY KEY (GUID)
)
GO

View File

@ -1,307 +1,307 @@
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.0.3' where CONFIG_NAME = 'DB_VERSION'
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])
GO
CREATE NONCLUSTERED INDEX IDX_CHANGED_WHEN_IDBOBJID
ON [dbo].[TBIDB_OBJECT_METADATA_CHANGE] ([IDB_OBJ_ID])
INCLUDE ([CHANGED_WHEN])
GO
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
--PRINT '@FOREIGN_KEY: ' + CONVERT(VARCHAR(50),@FOREIGN_KEY)
IF @FOREIGN_KEY <> 0 AND @IDB_OBJ_ID <> @FOREIGN_KEY
BEGIN
IF NOT EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @FOREIGN_KEY)
BEGIN
PRINT 'FOUND NO IDB-OBJECT FOR REFERENCE KEY: ' + CONVERT(VARCHAR(50),@FOREIGN_KEY)
END
ELSE
BEGIN
SELECT @IDB_OBJ_ID = IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @FOREIGN_KEY
--Print 'PRIDB_NEW_OBJ_DATA: Checked the DocID as Reference: ' + Convert(Varchar(10),@IDB_OBJ_ID)
END
END
IF NOT EXISTS(SELECT GUID FROM TBIDB_ATTRIBUTE WHERE UPPER(TITLE) = UPPER(@ATTRIBUTE))
RAISERROR ('NO VALID ATTRIBUTE',16,1)
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(T.TITLE) = UPPER(@ATTRIBUTE)
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @LANG_CODE
DECLARE @MY_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM @TYP_DESCR,@TERM_VAL,@WHO,@TERM_ID = @MY_TERM_ID OUTPUT;
--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 @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)
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
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)
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
IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID)
BEGIN
INSERT INTO [dbo].[TBIDB_OBJECT_METADATA]
([IDB_OBJ_ID]
,[ATTR_ID]
,[INT_TERM_ID]
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@ATTR_ID
,@MY_TERM_ID
,@WHO)
END
ELSE
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND [INT_TERM_ID] <> @MY_TERM_ID)
UPDATE TBIDB_OBJECT_METADATA SET [INT_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 INT_TERM_ID = @MY_TERM_ID
END
ELSE IF @TYP_ID = 3 --FLOAT
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID)
BEGIN
INSERT INTO [dbo].[TBIDB_OBJECT_METADATA]
([IDB_OBJ_ID]
,[ATTR_ID]
,[FLOAT_TERM_ID]
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@ATTR_ID
,@MY_TERM_ID
,@WHO)
END
ELSE
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND [FLOAT_TERM_ID] <> @MY_TERM_ID)
UPDATE TBIDB_OBJECT_METADATA SET [FLOAT_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 FLOAT_TERM_ID = @MY_TERM_ID
END
ELSE IF @TYP_ID = 4 --DECIMAL
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID)
BEGIN
INSERT INTO [dbo].[TBIDB_OBJECT_METADATA]
([IDB_OBJ_ID]
,[ATTR_ID]
,[DEC_TERM_ID]
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@ATTR_ID
,@MY_TERM_ID
,@WHO)
END
ELSE
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DEC_TERM_ID <> @MY_TERM_ID)
UPDATE TBIDB_OBJECT_METADATA SET [DEC_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 DEC_TERM_ID = @MY_TERM_ID
END
ELSE IF @TYP_ID = 5 --DATE
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID)
BEGIN
INSERT INTO [dbo].[TBIDB_OBJECT_METADATA]
([IDB_OBJ_ID]
,[ATTR_ID]
,[DATE_TERM_ID]
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@ATTR_ID
,@MY_TERM_ID
,@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
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
-- =============================================
-- Author: DD MS
-- Change date: 10.08.2020 MS Anpassung
-- =============================================
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
@SHARE_PATH VARCHAR(100),
@OBJ_STORE_PATH VARCHAR(250),
@NEW_FULL_PATH VARCHAR(512),
@FILENAME_EXT VARCHAR(250),
@FILENAME_ONLY VARCHAR(250),
@RELATIVE_PATH VARCHAR(512),
@RELATIVE_PATH_ONLY VARCHAR(512),
@EXT VARCHAR(10)
SELECT
@SHARE_PATH = T.CAT_STRING, @OBJ_STORE_PATH = T1.OBJ_PATH
FROM TBIDB_CATALOG T, TBIDB_OBJECT_STORE T1 WHERE T1.CAT_ID = T.GUID AND T1.GUID = @OBJ_ST_ID
SET @NEW_FULL_PATH = UPPER(@SHARE_PATH + '\' + @OBJ_STORE_PATH + '\' + @REL_PATH)
SET @NEW_FULL_PATH = REPLACE(@NEW_FULL_PATH,'\\','')
SET @RELATIVE_PATH = UPPER(@REL_PATH)
PRINT 'PRIDB_NEW_DOCUMENT - @NEW_FULL_PATH: ' + @NEW_FULL_PATH
PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH: ' + @RELATIVE_PATH
--SELECT @RELATIVE_PATH_ONLY = [dbo].[FNGetDirectoryPath] (@NEW_FULL_PATH);
--PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH_ONLY1: ' + @RELATIVE_PATH_ONLY
SELECT @FILENAME_EXT = [dbo].[FNGetFileName] (@NEW_FULL_PATH);
SELECT @FILENAME_ONLY = [dbo].[FNGetFileNameWithoutExtension] (@NEW_FULL_PATH);
SELECT @EXT = UPPER([dbo].[FNGetExtension] (@NEW_FULL_PATH));
SET @RELATIVE_PATH_ONLY = REPLACE(@REL_PATH,'\' + @FILENAME_EXT,'')
PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH_ONLY: ' + @RELATIVE_PATH_ONLY
--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;
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)
INSERT INTO [dbo].[TBIDB_DOC_INFO]
([IDB_OBJ_ID]
,[OBJ_ST_ID]
,[FILENAME_EXT]
,[FILENAME_ONLY]
,EXTENSION
,[RELATIVE_PATH]
,[RELATIVE_PATH_ONLY]
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@OBJ_ST_ID
,@FILENAME_EXT
,@FILENAME_ONLY
,@EXT
,@RELATIVE_PATH
,@RELATIVE_PATH_ONLY
,@WHO)
ELSE
BEGIN
PRINT 'OBJECT ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' ALREADY EXISTING ---- So ONLY UPDATE WITH NEW FILE PARAMS'
UPDATE [TBIDB_DOC_INFO] SET [FILENAME_EXT] = @FILENAME_EXT,[FILENAME_ONLY] = @FILENAME_ONLY
,EXTENSION = @EXT
,[RELATIVE_PATH] = @RELATIVE_PATH
,[RELATIVE_PATH_ONLY] = @RELATIVE_PATH_ONLY
,CHANGED_WHO = @WHO
WHERE IDB_OBJ_ID = @IDB_OBJ_ID
IF EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND DELETED = 1)
BEGIN
PRINT 'PRIDB_NEW_DOCUMENT - IDB_OBJ_ID: ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' DELETED FLAG ACTIVE!!'
UPDATE TBIDB_OBJECT SET DELETED = 0 WHERE IDB_OBJ_ID = @IDB_OBJ_ID
END
END
END
END
GO
ALTER PROCEDURE PRIDB_GET_VALUE_TYPE @pVALUE VARCHAR(900)--,@oType VARCHAR(10) OUTPUT
AS
BEGIN
declare @TBTYPE_RESULT table(pTYPE varchar(10))
DECLARE @oTYPE as Varchar(10)
SET @oType = 'NONE'
DECLARE @BIGINT as BIGINT, @FLOAT FLOAT,@DECIMAL DECIMAL(19,2),@DATE DATE
BEGIN TRY
SET @BIGINT = CONVERT(bigint,@pVALUE)
SET @oType = 'BIGINT'
INSERT INTO @TBTYPE_RESULT (pTYPE) VALUES (@oType)
END TRY
BEGIN CATCH
PRINT 'NO BIGINT'
END CATCH
--IF @oType = 'NONE'
BEGIN TRY
SET @FLOAT = CONVERT(FLOAT,@pVALUE)
SET @oType = 'FLOAT'
INSERT INTO @TBTYPE_RESULT (pTYPE) VALUES (@oType)
END TRY
BEGIN CATCH
PRINT 'NO FLOAT'
END CATCH
--IF @oType = 'NONE'
BEGIN TRY
SET @DECIMAL = CONVERT(DECIMAL(19,2),@pVALUE)
SET @oType = 'DECIMAL'
INSERT INTO @TBTYPE_RESULT (pTYPE) VALUES (@oType)
END TRY
BEGIN CATCH
PRINT 'NO DECIMAL'
END CATCH
--IF @oType = 'NONE'
BEGIN TRY
SET @DATE = CONVERT(DATE,@pVALUE)
SET @oType = 'DATE'
INSERT INTO @TBTYPE_RESULT (pTYPE) VALUES (@oType)
END TRY
BEGIN CATCH
PRINT 'NO DATE'
END CATCH
--IF @oType = 'NONE'
BEGIN TRY
SET @oType = 'VARCHAR'
INSERT INTO @TBTYPE_RESULT (pTYPE) VALUES (@oType)
END TRY
BEGIN CATCH
PRINT 'NO VARCHAR'
END CATCH
PRINT '@TYPE: ' + @oType
SELECT * FROM @TBTYPE_RESULT
END
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.0.3' where CONFIG_NAME = 'DB_VERSION'
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])
GO
CREATE NONCLUSTERED INDEX IDX_CHANGED_WHEN_IDBOBJID
ON [dbo].[TBIDB_OBJECT_METADATA_CHANGE] ([IDB_OBJ_ID])
INCLUDE ([CHANGED_WHEN])
GO
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
--PRINT '@FOREIGN_KEY: ' + CONVERT(VARCHAR(50),@FOREIGN_KEY)
IF @FOREIGN_KEY <> 0 AND @IDB_OBJ_ID <> @FOREIGN_KEY
BEGIN
IF NOT EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @FOREIGN_KEY)
BEGIN
PRINT 'FOUND NO IDB-OBJECT FOR REFERENCE KEY: ' + CONVERT(VARCHAR(50),@FOREIGN_KEY)
END
ELSE
BEGIN
SELECT @IDB_OBJ_ID = IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @FOREIGN_KEY
--Print 'PRIDB_NEW_OBJ_DATA: Checked the DocID as Reference: ' + Convert(Varchar(10),@IDB_OBJ_ID)
END
END
IF NOT EXISTS(SELECT GUID FROM TBIDB_ATTRIBUTE WHERE UPPER(TITLE) = UPPER(@ATTRIBUTE))
RAISERROR ('NO VALID ATTRIBUTE',16,1)
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(T.TITLE) = UPPER(@ATTRIBUTE)
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @LANG_CODE
DECLARE @MY_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM @TYP_DESCR,@TERM_VAL,@WHO,@TERM_ID = @MY_TERM_ID OUTPUT;
--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 @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)
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
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)
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
IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID)
BEGIN
INSERT INTO [dbo].[TBIDB_OBJECT_METADATA]
([IDB_OBJ_ID]
,[ATTR_ID]
,[INT_TERM_ID]
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@ATTR_ID
,@MY_TERM_ID
,@WHO)
END
ELSE
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND [INT_TERM_ID] <> @MY_TERM_ID)
UPDATE TBIDB_OBJECT_METADATA SET [INT_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 INT_TERM_ID = @MY_TERM_ID
END
ELSE IF @TYP_ID = 3 --FLOAT
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID)
BEGIN
INSERT INTO [dbo].[TBIDB_OBJECT_METADATA]
([IDB_OBJ_ID]
,[ATTR_ID]
,[FLOAT_TERM_ID]
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@ATTR_ID
,@MY_TERM_ID
,@WHO)
END
ELSE
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND [FLOAT_TERM_ID] <> @MY_TERM_ID)
UPDATE TBIDB_OBJECT_METADATA SET [FLOAT_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 FLOAT_TERM_ID = @MY_TERM_ID
END
ELSE IF @TYP_ID = 4 --DECIMAL
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID)
BEGIN
INSERT INTO [dbo].[TBIDB_OBJECT_METADATA]
([IDB_OBJ_ID]
,[ATTR_ID]
,[DEC_TERM_ID]
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@ATTR_ID
,@MY_TERM_ID
,@WHO)
END
ELSE
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DEC_TERM_ID <> @MY_TERM_ID)
UPDATE TBIDB_OBJECT_METADATA SET [DEC_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 DEC_TERM_ID = @MY_TERM_ID
END
ELSE IF @TYP_ID = 5 --DATE
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID)
BEGIN
INSERT INTO [dbo].[TBIDB_OBJECT_METADATA]
([IDB_OBJ_ID]
,[ATTR_ID]
,[DATE_TERM_ID]
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@ATTR_ID
,@MY_TERM_ID
,@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
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
-- =============================================
-- Author: DD MS
-- Change date: 10.08.2020 MS Anpassung
-- =============================================
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
@SHARE_PATH VARCHAR(100),
@OBJ_STORE_PATH VARCHAR(250),
@NEW_FULL_PATH VARCHAR(512),
@FILENAME_EXT VARCHAR(250),
@FILENAME_ONLY VARCHAR(250),
@RELATIVE_PATH VARCHAR(512),
@RELATIVE_PATH_ONLY VARCHAR(512),
@EXT VARCHAR(10)
SELECT
@SHARE_PATH = T.CAT_STRING, @OBJ_STORE_PATH = T1.OBJ_PATH
FROM TBIDB_CATALOG T, TBIDB_OBJECT_STORE T1 WHERE T1.CAT_ID = T.GUID AND T1.GUID = @OBJ_ST_ID
SET @NEW_FULL_PATH = UPPER(@SHARE_PATH + '\' + @OBJ_STORE_PATH + '\' + @REL_PATH)
SET @NEW_FULL_PATH = REPLACE(@NEW_FULL_PATH,'\\','')
SET @RELATIVE_PATH = UPPER(@REL_PATH)
PRINT 'PRIDB_NEW_DOCUMENT - @NEW_FULL_PATH: ' + @NEW_FULL_PATH
PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH: ' + @RELATIVE_PATH
--SELECT @RELATIVE_PATH_ONLY = [dbo].[FNGetDirectoryPath] (@NEW_FULL_PATH);
--PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH_ONLY1: ' + @RELATIVE_PATH_ONLY
SELECT @FILENAME_EXT = [dbo].[FNGetFileName] (@NEW_FULL_PATH);
SELECT @FILENAME_ONLY = [dbo].[FNGetFileNameWithoutExtension] (@NEW_FULL_PATH);
SELECT @EXT = UPPER([dbo].[FNGetExtension] (@NEW_FULL_PATH));
SET @RELATIVE_PATH_ONLY = REPLACE(@REL_PATH,'\' + @FILENAME_EXT,'')
PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH_ONLY: ' + @RELATIVE_PATH_ONLY
--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;
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)
INSERT INTO [dbo].[TBIDB_DOC_INFO]
([IDB_OBJ_ID]
,[OBJ_ST_ID]
,[FILENAME_EXT]
,[FILENAME_ONLY]
,EXTENSION
,[RELATIVE_PATH]
,[RELATIVE_PATH_ONLY]
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@OBJ_ST_ID
,@FILENAME_EXT
,@FILENAME_ONLY
,@EXT
,@RELATIVE_PATH
,@RELATIVE_PATH_ONLY
,@WHO)
ELSE
BEGIN
PRINT 'OBJECT ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' ALREADY EXISTING ---- So ONLY UPDATE WITH NEW FILE PARAMS'
UPDATE [TBIDB_DOC_INFO] SET [FILENAME_EXT] = @FILENAME_EXT,[FILENAME_ONLY] = @FILENAME_ONLY
,EXTENSION = @EXT
,[RELATIVE_PATH] = @RELATIVE_PATH
,[RELATIVE_PATH_ONLY] = @RELATIVE_PATH_ONLY
,CHANGED_WHO = @WHO
WHERE IDB_OBJ_ID = @IDB_OBJ_ID
IF EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND DELETED = 1)
BEGIN
PRINT 'PRIDB_NEW_DOCUMENT - IDB_OBJ_ID: ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' DELETED FLAG ACTIVE!!'
UPDATE TBIDB_OBJECT SET DELETED = 0 WHERE IDB_OBJ_ID = @IDB_OBJ_ID
END
END
END
END
GO
ALTER PROCEDURE PRIDB_GET_VALUE_TYPE @pVALUE VARCHAR(900)--,@oType VARCHAR(10) OUTPUT
AS
BEGIN
declare @TBTYPE_RESULT table(pTYPE varchar(10))
DECLARE @oTYPE as Varchar(10)
SET @oType = 'NONE'
DECLARE @BIGINT as BIGINT, @FLOAT FLOAT,@DECIMAL DECIMAL(19,2),@DATE DATE
BEGIN TRY
SET @BIGINT = CONVERT(bigint,@pVALUE)
SET @oType = 'BIGINT'
INSERT INTO @TBTYPE_RESULT (pTYPE) VALUES (@oType)
END TRY
BEGIN CATCH
PRINT 'NO BIGINT'
END CATCH
--IF @oType = 'NONE'
BEGIN TRY
SET @FLOAT = CONVERT(FLOAT,@pVALUE)
SET @oType = 'FLOAT'
INSERT INTO @TBTYPE_RESULT (pTYPE) VALUES (@oType)
END TRY
BEGIN CATCH
PRINT 'NO FLOAT'
END CATCH
--IF @oType = 'NONE'
BEGIN TRY
SET @DECIMAL = CONVERT(DECIMAL(19,2),@pVALUE)
SET @oType = 'DECIMAL'
INSERT INTO @TBTYPE_RESULT (pTYPE) VALUES (@oType)
END TRY
BEGIN CATCH
PRINT 'NO DECIMAL'
END CATCH
--IF @oType = 'NONE'
BEGIN TRY
SET @DATE = CONVERT(DATE,@pVALUE)
SET @oType = 'DATE'
INSERT INTO @TBTYPE_RESULT (pTYPE) VALUES (@oType)
END TRY
BEGIN CATCH
PRINT 'NO DATE'
END CATCH
--IF @oType = 'NONE'
BEGIN TRY
SET @oType = 'VARCHAR'
INSERT INTO @TBTYPE_RESULT (pTYPE) VALUES (@oType)
END TRY
BEGIN CATCH
PRINT 'NO VARCHAR'
END CATCH
PRINT '@TYPE: ' + @oType
SELECT * FROM @TBTYPE_RESULT
END

View File

@ -1,291 +1,291 @@
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.0.6' where CONFIG_NAME = 'DB_VERSION'
GO
/*
REPLACE @WORKFILESTORE WITH STORAGE-PATH FOR WORK
*/
CREATE 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],
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
GO
ALTER TABLE TBIDB_OBJECT ADD PARENT_OBJ_ID BIGINT NOT NULL DEFAULT 0
GO
ALTER TABLE TBIDB_OBJECT ADD IS_VERSION BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBIDB_BE_ATTRIBUTE ADD DEFAULT_SEARCH_ATTRIBUTE BIT NOT NULL DEFAULT 0
GO
-- =======================================================
-- Author: Digital Data, DD MS
-- 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))
RETURNS @Output TABLE (IDB_OBJ_ID BIGINT,TERM_VALUE VARCHAR(900))
AS
BEGIN
DECLARE
@ATTR_ID INTEGER,
@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)
IF @TYP_ID IN (1,8) --VARCHAR
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
ORDER BY OBJ.IDB_OBJ_ID DESC
END
ELSE IF @TYP_ID IN (2,7,9) --BIGINT
BEGIN
INSERT INTO @Output (IDB_OBJ_ID,TERM_VALUE)
SELECT OBJ.IDB_OBJ_ID,TERM.TERM_VALUE
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
WHERE
MD.ATTR_ID = @ATTR_ID
AND OBJ.DELETED = 0
ORDER BY OBJ.IDB_OBJ_ID DESC
END
ELSE IF @TYP_ID = 3 --FLOAT
BEGIN
INSERT INTO @Output (IDB_OBJ_ID,TERM_VALUE)
SELECT OBJ.IDB_OBJ_ID,TERM.TERM_VALUE
FROM
TBIDB_TERM_VALUE_FLOAT TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON MD.FLOAT_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 ORDER BY OBJ.IDB_OBJ_ID DESC
END
ELSE IF @TYP_ID = 4
BEGIN
INSERT INTO @Output (IDB_OBJ_ID,TERM_VALUE)
SELECT OBJ.IDB_OBJ_ID,TERM.TERM_VALUE
FROM
TBIDB_TERM_VALUE_DECIMAL TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON MD.DEC_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
ORDER BY OBJ.IDB_OBJ_ID DESC
END
ELSE IF @TYP_ID = 5
BEGIN
INSERT INTO @Output (IDB_OBJ_ID,TERM_VALUE)
SELECT OBJ.IDB_OBJ_ID,TERM.TERM_VALUE
FROM
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
ORDER BY OBJ.IDB_OBJ_ID DESC
END
RETURN
END
GO
CREATE NONCLUSTERED INDEX [IDX_ATTR-ID_OBJ-INTTERMID]
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID])
INCLUDE ([IDB_OBJ_ID],[INT_TERM_ID])
GO
CREATE NONCLUSTERED INDEX IDXATTR_IDINT_TERM_ID_IDB_OBJ_ID
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID],[INT_TERM_ID])
INCLUDE ([IDB_OBJ_ID])
GO
CREATE NONCLUSTERED INDEX IDX_DELETED_OBJID
ON [dbo].[TBIDB_OBJECT] ([DELETED])
INCLUDE ([IDB_OBJ_ID])
GO
CREATE NONCLUSTERED INDEX [IDXATTR_ID-IDB_OBJ_ID-FLOAT_TERM_ID]
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID])
INCLUDE ([IDB_OBJ_ID],[FLOAT_TERM_ID])
GO
CREATE NONCLUSTERED INDEX [ATTR_ID_IDB_OBJ_ID_DEC_TERM_ID]
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID])
INCLUDE ([IDB_OBJ_ID],[DEC_TERM_ID])
GO
CREATE NONCLUSTERED INDEX [ATTR_ID-IDB_OBJ_ID-DATE_TERM_ID]
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID])
INCLUDE ([IDB_OBJ_ID],[DATE_TERM_ID])
GO
CREATE NONCLUSTERED INDEX [IDXATTR_ID-DATE_TERM_ID-IDB_OBJ_ID]
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID],[DATE_TERM_ID])
INCLUDE ([IDB_OBJ_ID])
GO
--DROP TABLE TBIDB_ACCESSRIGHT
CREATE TABLE TBIDB_ACCESSRIGHT
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
IDB_OBJ_ID BIGINT NOT NULL,
USR_ID INTEGER NOT NULL,
ACCESSRIGHT INTEGER NOT NULL,
COMMENT VARCHAR(250),
ADDED_WHO BIGINT NOT NULL,
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CONSTRAINT PK_TBIDB_ACCESSRIGHT_GUID PRIMARY KEY (GUID),
CONSTRAINT FK_TBIDB_ACCESSRIGHT_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID),
CONSTRAINT FK_TBIDB_ACCESSRIGHT_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),
CONSTRAINT UQ_TBIDB_ACCESSRIGHT UNIQUE(IDB_OBJ_ID,USR_ID,ACCESSRIGHT)
)
GO
INSERT INTO [TBIDB_CATALOG] ([CAT_TITLE],[CAT_STRING]) VALUES ('APPSERV1','172.24.12.39')
GO
DECLARE
@IDB_OBJ_ID BIGINT,
@USERNAME VARCHAR(500)
DECLARE cursorDoc CURSOR FOR
select IDB_OBJ_ID FROm IDB_TEST.DBO.TBIDB_OBJECT WHERE DELETED = 0
OPEN cursorDoc
FETCH NEXT FROM cursorDoc INTO @IDB_OBJ_ID
WHILE @@FETCH_STATUS = 0
BEGIN
DELETE FROM TBIDB_ACCESSRIGHT where IDB_OBJ_ID = @IDB_OBJ_ID;
INSERT INTO TBIDB_ACCESSRIGHT (IDB_OBJ_ID,USR_ID,ACCESSRIGHT,ADDED_WHO)
SELECT @IDB_OBJ_ID,GUID,1,20242 FROM DD_ECM_TEST.dbo.TBDD_USER WHERE GUID <> 1
INSERT INTO TBIDB_ACCESSRIGHT (IDB_OBJ_ID,USR_ID,ACCESSRIGHT,ADDED_WHO)
SELECT @IDB_OBJ_ID,GUID,4,20242 FROM DD_ECM_TEST.dbo.TBDD_USER WHERE GUID = 1
FETCH NEXT FROM cursorDoc INTO @IDB_OBJ_ID
END
CLOSE cursorDoc
DEALLOCATE cursorDoc
CREATE TABLE TBIDB_REFRESH_ON_APPSERVER
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
IDB_OBJ_ID BIGINT NOT NULL,
USR_ID INTEGER NOT NULL,
ACCESSRIGHT INTEGER NOT NULL,
ADDED_WHO BIGINT NOT NULL,
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CONSTRAINT PKTBIDB_REFRESH_ON_APPSERVER_GUID PRIMARY KEY (GUID),
CONSTRAINT FKTBIDB_REFRESH_ON_APPSERVER_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID),
CONSTRAINT FKTBIDB_REFRESH_ON_APPSERVER_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),
CONSTRAINT UQ_TBIDB_REFRESH_ON_APPSERVER UNIQUE(IDB_OBJ_ID,USR_ID)
)
GO
USE [IDB_TEST]
GO
CREATE NONCLUSTERED INDEX IDX_TBIDB_ACCESSRIGHT_USRID
ON [dbo].[TBIDB_ACCESSRIGHT] ([USR_ID])
INCLUDE ([IDB_OBJ_ID])
GO
ALTER VIEW [dbo].[VWIDB_BE_ATTRIBUTE] AS
SELECT
T.[BE_ID]
,T2.TITLE AS BE
,[ATTR_ID]
,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
GO
--CREATE TABLE TBIDB_FILESTORE_CONFIG
--(
-- GUID BIGINT NOT NULL IDENTITY (1, 1),
-- TITLE VARCHAR(100) NOT NULL,
-- STORAGE_PATH VARCHAR(1000) NOT NULL,
-- ACTIVE BIT NOT NULL DEFAULT 0,
-- ADDED_WHO VARCHAR(100),
-- ADDED_WHEN DATETIME DEFAULT GETDATE(),
-- CHANGED_WHO VARCHAR(100),
-- CHANGED_WHEN DATETIME,
-- CONSTRAINT PKTBIDB_FILESTORE_CONFIG_GUID PRIMARY KEY (GUID),
-- CONSTRAINT UQ_TBIDB_FILESTORE_CONFIG_TITLE UNIQUE(TITLE),
-- CONSTRAINT UQ_TBIDB_FILESTORE_CONFIG_STORAGE_PATH UNIQUE(STORAGE_PATH),
--)
--GO
--CREATE TRIGGER [dbo].[TBIDB_FILESTORE_CONFIG_AFT_UPD] ON [dbo].[TBIDB_FILESTORE_CONFIG]
--FOR UPDATE
--AS
-- UPDATE TBIDB_FILESTORE_CONFIG SET CHANGED_WHEN = GETDATE()
-- FROM INSERTED
-- WHERE TBIDB_FILESTORE_CONFIG.GUID = INSERTED.GUID
--GO
--INSERT INTO TBIDB_FILESTORE_CONFIG (TITLE,STORAGE_PATH,ACTIVE,ADDED_WHO) VALUES ('WORK','@WORKFILESTORE',1,'Digital Data');
DROP TABLE TBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES
CREATE TABLE TBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES
(
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_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHO VARCHAR(100),
CHANGED_WHEN DATETIME,
CONSTRAINT PKTBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES_GUID PRIMARY KEY (GUID),
CONSTRAINT UQ_TBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES UNIQUE(ATTRIBUTE_ID),
CONSTRAINT FK_TBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES FOREIGN KEY (ATTRIBUTE_ID) REFERENCES TBIDB_ATTRIBUTE (GUID),
)
GO
INSERT INTO TBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES (ATTRIBUTE_ID) VALUES(1);
ALTER VIEW VWIDB_CATEGORIES_PER_OBJECT_AND_LANGUAGE AS
select
MD.IDB_OBJ_ID
,TLANG.LANGUAGE_ID
,TERM.TERM_VALUE
,ATTR.TITLE AS ATTRIBUTE_TITLE
,ATTR.GUID AS ATTRIBUTE_ID
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_FLOW_SEARCH_CATEGORY_ATTRIBUTES CAT_ATTR ON MD.ATTR_ID = CAT_ATTR.ATTRIBUTE_ID
INNER JOIN TBIDB_ATTRIBUTE ATTR ON CAT_ATTR.ATTRIBUTE_ID = ATTR.GUID
WHERE
CAT_ATTR.ACTIVE = 1
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.0.6' where CONFIG_NAME = 'DB_VERSION'
GO
/*
REPLACE @WORKFILESTORE WITH STORAGE-PATH FOR WORK
*/
CREATE 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],
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
GO
ALTER TABLE TBIDB_OBJECT ADD PARENT_OBJ_ID BIGINT NOT NULL DEFAULT 0
GO
ALTER TABLE TBIDB_OBJECT ADD IS_VERSION BIT NOT NULL DEFAULT 0
GO
ALTER TABLE TBIDB_BE_ATTRIBUTE ADD DEFAULT_SEARCH_ATTRIBUTE BIT NOT NULL DEFAULT 0
GO
-- =======================================================
-- Author: Digital Data, DD MS
-- 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))
RETURNS @Output TABLE (IDB_OBJ_ID BIGINT,TERM_VALUE VARCHAR(900))
AS
BEGIN
DECLARE
@ATTR_ID INTEGER,
@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)
IF @TYP_ID IN (1,8) --VARCHAR
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
ORDER BY OBJ.IDB_OBJ_ID DESC
END
ELSE IF @TYP_ID IN (2,7,9) --BIGINT
BEGIN
INSERT INTO @Output (IDB_OBJ_ID,TERM_VALUE)
SELECT OBJ.IDB_OBJ_ID,TERM.TERM_VALUE
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
WHERE
MD.ATTR_ID = @ATTR_ID
AND OBJ.DELETED = 0
ORDER BY OBJ.IDB_OBJ_ID DESC
END
ELSE IF @TYP_ID = 3 --FLOAT
BEGIN
INSERT INTO @Output (IDB_OBJ_ID,TERM_VALUE)
SELECT OBJ.IDB_OBJ_ID,TERM.TERM_VALUE
FROM
TBIDB_TERM_VALUE_FLOAT TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON MD.FLOAT_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 ORDER BY OBJ.IDB_OBJ_ID DESC
END
ELSE IF @TYP_ID = 4
BEGIN
INSERT INTO @Output (IDB_OBJ_ID,TERM_VALUE)
SELECT OBJ.IDB_OBJ_ID,TERM.TERM_VALUE
FROM
TBIDB_TERM_VALUE_DECIMAL TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON MD.DEC_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
ORDER BY OBJ.IDB_OBJ_ID DESC
END
ELSE IF @TYP_ID = 5
BEGIN
INSERT INTO @Output (IDB_OBJ_ID,TERM_VALUE)
SELECT OBJ.IDB_OBJ_ID,TERM.TERM_VALUE
FROM
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
ORDER BY OBJ.IDB_OBJ_ID DESC
END
RETURN
END
GO
CREATE NONCLUSTERED INDEX [IDX_ATTR-ID_OBJ-INTTERMID]
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID])
INCLUDE ([IDB_OBJ_ID],[INT_TERM_ID])
GO
CREATE NONCLUSTERED INDEX IDXATTR_IDINT_TERM_ID_IDB_OBJ_ID
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID],[INT_TERM_ID])
INCLUDE ([IDB_OBJ_ID])
GO
CREATE NONCLUSTERED INDEX IDX_DELETED_OBJID
ON [dbo].[TBIDB_OBJECT] ([DELETED])
INCLUDE ([IDB_OBJ_ID])
GO
CREATE NONCLUSTERED INDEX [IDXATTR_ID-IDB_OBJ_ID-FLOAT_TERM_ID]
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID])
INCLUDE ([IDB_OBJ_ID],[FLOAT_TERM_ID])
GO
CREATE NONCLUSTERED INDEX [ATTR_ID_IDB_OBJ_ID_DEC_TERM_ID]
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID])
INCLUDE ([IDB_OBJ_ID],[DEC_TERM_ID])
GO
CREATE NONCLUSTERED INDEX [ATTR_ID-IDB_OBJ_ID-DATE_TERM_ID]
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID])
INCLUDE ([IDB_OBJ_ID],[DATE_TERM_ID])
GO
CREATE NONCLUSTERED INDEX [IDXATTR_ID-DATE_TERM_ID-IDB_OBJ_ID]
ON [dbo].[TBIDB_OBJECT_METADATA] ([ATTR_ID],[DATE_TERM_ID])
INCLUDE ([IDB_OBJ_ID])
GO
--DROP TABLE TBIDB_ACCESSRIGHT
CREATE TABLE TBIDB_ACCESSRIGHT
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
IDB_OBJ_ID BIGINT NOT NULL,
USR_ID INTEGER NOT NULL,
ACCESSRIGHT INTEGER NOT NULL,
COMMENT VARCHAR(250),
ADDED_WHO BIGINT NOT NULL,
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CONSTRAINT PK_TBIDB_ACCESSRIGHT_GUID PRIMARY KEY (GUID),
CONSTRAINT FK_TBIDB_ACCESSRIGHT_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID),
CONSTRAINT FK_TBIDB_ACCESSRIGHT_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),
CONSTRAINT UQ_TBIDB_ACCESSRIGHT UNIQUE(IDB_OBJ_ID,USR_ID,ACCESSRIGHT)
)
GO
INSERT INTO [TBIDB_CATALOG] ([CAT_TITLE],[CAT_STRING]) VALUES ('APPSERV1','172.24.12.39')
GO
DECLARE
@IDB_OBJ_ID BIGINT,
@USERNAME VARCHAR(500)
DECLARE cursorDoc CURSOR FOR
select IDB_OBJ_ID FROm IDB_TEST.DBO.TBIDB_OBJECT WHERE DELETED = 0
OPEN cursorDoc
FETCH NEXT FROM cursorDoc INTO @IDB_OBJ_ID
WHILE @@FETCH_STATUS = 0
BEGIN
DELETE FROM TBIDB_ACCESSRIGHT where IDB_OBJ_ID = @IDB_OBJ_ID;
INSERT INTO TBIDB_ACCESSRIGHT (IDB_OBJ_ID,USR_ID,ACCESSRIGHT,ADDED_WHO)
SELECT @IDB_OBJ_ID,GUID,1,20242 FROM DD_ECM_TEST.dbo.TBDD_USER WHERE GUID <> 1
INSERT INTO TBIDB_ACCESSRIGHT (IDB_OBJ_ID,USR_ID,ACCESSRIGHT,ADDED_WHO)
SELECT @IDB_OBJ_ID,GUID,4,20242 FROM DD_ECM_TEST.dbo.TBDD_USER WHERE GUID = 1
FETCH NEXT FROM cursorDoc INTO @IDB_OBJ_ID
END
CLOSE cursorDoc
DEALLOCATE cursorDoc
CREATE TABLE TBIDB_REFRESH_ON_APPSERVER
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
IDB_OBJ_ID BIGINT NOT NULL,
USR_ID INTEGER NOT NULL,
ACCESSRIGHT INTEGER NOT NULL,
ADDED_WHO BIGINT NOT NULL,
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CONSTRAINT PKTBIDB_REFRESH_ON_APPSERVER_GUID PRIMARY KEY (GUID),
CONSTRAINT FKTBIDB_REFRESH_ON_APPSERVER_IDB_OBJ_ID FOREIGN KEY (IDB_OBJ_ID) REFERENCES TBIDB_OBJECT (IDB_OBJ_ID),
CONSTRAINT FKTBIDB_REFRESH_ON_APPSERVER_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),
CONSTRAINT UQ_TBIDB_REFRESH_ON_APPSERVER UNIQUE(IDB_OBJ_ID,USR_ID)
)
GO
USE [IDB_TEST]
GO
CREATE NONCLUSTERED INDEX IDX_TBIDB_ACCESSRIGHT_USRID
ON [dbo].[TBIDB_ACCESSRIGHT] ([USR_ID])
INCLUDE ([IDB_OBJ_ID])
GO
ALTER VIEW [dbo].[VWIDB_BE_ATTRIBUTE] AS
SELECT
T.[BE_ID]
,T2.TITLE AS BE
,[ATTR_ID]
,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
GO
--CREATE TABLE TBIDB_FILESTORE_CONFIG
--(
-- GUID BIGINT NOT NULL IDENTITY (1, 1),
-- TITLE VARCHAR(100) NOT NULL,
-- STORAGE_PATH VARCHAR(1000) NOT NULL,
-- ACTIVE BIT NOT NULL DEFAULT 0,
-- ADDED_WHO VARCHAR(100),
-- ADDED_WHEN DATETIME DEFAULT GETDATE(),
-- CHANGED_WHO VARCHAR(100),
-- CHANGED_WHEN DATETIME,
-- CONSTRAINT PKTBIDB_FILESTORE_CONFIG_GUID PRIMARY KEY (GUID),
-- CONSTRAINT UQ_TBIDB_FILESTORE_CONFIG_TITLE UNIQUE(TITLE),
-- CONSTRAINT UQ_TBIDB_FILESTORE_CONFIG_STORAGE_PATH UNIQUE(STORAGE_PATH),
--)
--GO
--CREATE TRIGGER [dbo].[TBIDB_FILESTORE_CONFIG_AFT_UPD] ON [dbo].[TBIDB_FILESTORE_CONFIG]
--FOR UPDATE
--AS
-- UPDATE TBIDB_FILESTORE_CONFIG SET CHANGED_WHEN = GETDATE()
-- FROM INSERTED
-- WHERE TBIDB_FILESTORE_CONFIG.GUID = INSERTED.GUID
--GO
--INSERT INTO TBIDB_FILESTORE_CONFIG (TITLE,STORAGE_PATH,ACTIVE,ADDED_WHO) VALUES ('WORK','@WORKFILESTORE',1,'Digital Data');
DROP TABLE TBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES
CREATE TABLE TBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES
(
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_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHO VARCHAR(100),
CHANGED_WHEN DATETIME,
CONSTRAINT PKTBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES_GUID PRIMARY KEY (GUID),
CONSTRAINT UQ_TBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES UNIQUE(ATTRIBUTE_ID),
CONSTRAINT FK_TBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES FOREIGN KEY (ATTRIBUTE_ID) REFERENCES TBIDB_ATTRIBUTE (GUID),
)
GO
INSERT INTO TBIDB_FLOW_SEARCH_CATEGORY_ATTRIBUTES (ATTRIBUTE_ID) VALUES(1);
ALTER VIEW VWIDB_CATEGORIES_PER_OBJECT_AND_LANGUAGE AS
select
MD.IDB_OBJ_ID
,TLANG.LANGUAGE_ID
,TERM.TERM_VALUE
,ATTR.TITLE AS ATTRIBUTE_TITLE
,ATTR.GUID AS ATTRIBUTE_ID
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_FLOW_SEARCH_CATEGORY_ATTRIBUTES CAT_ATTR ON MD.ATTR_ID = CAT_ATTR.ATTRIBUTE_ID
INNER JOIN TBIDB_ATTRIBUTE ATTR ON CAT_ATTR.ATTRIBUTE_ID = ATTR.GUID
WHERE
CAT_ATTR.ACTIVE = 1

View File

@ -1,127 +1,127 @@
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.0.8' where CONFIG_NAME = 'DB_VERSION'
GO
-- =============================================
-- Author: DD MS
-- Creation date: 05.07.2021
-- =============================================
CREATE PROCEDURE [dbo].[PRIDB_GET_VALUE_DT] @IDB_OBJ_ID BIGINT, @LANG_CODE VARCHAR(5)
AS
DECLARE @ATTR_ID INTEGER,@ATTR_TITLE VARCHAR(100), @TYPE_NAME VARCHAR(100)
DECLARE
@TBRESULT TABLE (AttributID INT, AttributTitle VARCHAR(100), AttributType VARCHAR(100),ValueBigInt BIGINT, ValueText Varchar(912), ValueDec Decimal(19,2), ValueDate Date,
ADDED_WHEN DATETIME, CHANGED_WHEN DATETIME)
DECLARE cursorAttributes CURSOR LOCAL FOR
SELECT A.ATTR_ID, B.ATTR_TITLE, B.TYPE_NAME FROM TBIDB_OBJECT_METADATA A INNER JOIN VWIDB_BE_ATTRIBUTE B On A.ATTR_ID = B.ATTR_ID
WHERE A.IDB_OBJ_ID = @IDB_OBJ_ID AND B.LANG_CODE = @LANG_CODE
OPEN cursorAttributes
FETCH NEXT FROM cursorAttributes INTO @ATTR_ID,@ATTR_TITLE,@TYPE_NAME
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT CONVERT(VARCHAR(2),@ATTR_ID) + '#' + @TYPE_NAME + '#' + @ATTR_TITLE
IF @TYPE_NAME IN ('VARCHAR','VECTOR STRING')
INSERT INTO @TBRESULT (AttributID,AttributTitle,AttributType,ValueText,ADDED_WHEN,CHANGED_WHEN)
select
@ATTR_ID,@ATTR_TITLE,@TYPE_NAME,[dbo].[FNIDB_GET_TERM_TEXT] (@IDB_OBJ_ID,@ATTR_ID),T.ADDED_WHEN,T.CHANGED_WHEN
from
TBIDB_OBJECT_METADATA T
WHERE T.IDB_OBJ_ID = @IDB_OBJ_ID AND T.ATTR_ID = @ATTR_ID
ELSE IF @TYPE_NAME IN ('BIT','BIG INTEGER')
INSERT INTO @TBRESULT (AttributID,AttributTitle,AttributType,ValueBigInt,ADDED_WHEN,CHANGED_WHEN)
select
@ATTR_ID,@ATTR_TITLE,@TYPE_NAME,[dbo].[FNIDB_GET_TERM_INTEGER] (@IDB_OBJ_ID,@ATTR_ID),T.ADDED_WHEN,T.CHANGED_WHEN
from
TBIDB_OBJECT_METADATA T
WHERE T.IDB_OBJ_ID = @IDB_OBJ_ID AND T.ATTR_ID = @ATTR_ID
ELSE IF @TYPE_NAME = 'DATE'
INSERT INTO @TBRESULT (AttributID,AttributTitle,AttributType,ValueDate,ADDED_WHEN,CHANGED_WHEN)
select
@ATTR_ID,@ATTR_TITLE,@TYPE_NAME,[dbo].[FNIDB_GET_TERM_DATE] (@IDB_OBJ_ID,@ATTR_ID),T.ADDED_WHEN,T.CHANGED_WHEN
from
TBIDB_OBJECT_METADATA T
WHERE T.IDB_OBJ_ID = @IDB_OBJ_ID AND T.ATTR_ID = @ATTR_ID
ELSE IF @TYPE_NAME = 'DECIMAL'
INSERT INTO @TBRESULT (AttributID,AttributTitle,AttributType,ValueDec,ADDED_WHEN,CHANGED_WHEN)
select
@ATTR_ID,@ATTR_TITLE,@TYPE_NAME,[dbo].[FNIDB_GET_TERM_DECIMAL] (@IDB_OBJ_ID,@ATTR_ID),T.ADDED_WHEN,T.CHANGED_WHEN
from
TBIDB_OBJECT_METADATA T
WHERE T.IDB_OBJ_ID = @IDB_OBJ_ID AND T.ATTR_ID = @ATTR_ID
FETCH NEXT FROM cursorAttributes INTO @ATTR_ID,@ATTR_TITLE,@TYPE_NAME
END
CLOSE cursorAttributes
DEALLOCATE cursorAttributes
SELECT * FROM @TBRESULT order BY AttributID,ADDED_WHEN
GO
ALTER TABLE TBIDB_DOC_INFO ADD FULL_TEXT VARBINARY(MAX)
GO
ALTER TABLE TBIDB_DOC_INFO ADD FILE_SIZE INTEGER
GO
ALTER TABLE TBIDB_FILE_OBJECT ADD FILE_SIZE BIGINT
GO
-- =============================================
-- Author: DD MS 15.03.2021
-- Change: 13.07.2021 Filesize
-- =============================================
ALTER PROCEDURE [dbo].[PRIDB_NEW_IDBFO] @REL_PATH VARCHAR(512),@FILESIZE BIGINT, @WHO VARCHAR(100), @IDB_OBJ_ID BIGINT,@OBJ_ST_ID INT
AS
BEGIN
DECLARE
@FILENAME_EXT VARCHAR(250),
@FILENAME_ONLY VARCHAR(250),
@RELATIVE_PATH VARCHAR(512),
@RELATIVE_PATH_ONLY VARCHAR(512),
@EXT VARCHAR(10)
SET @FILENAME_ONLY = CONVERT(VARCHAR(20),@IDB_OBJ_ID) + '.ddfo'
--PRINT @FILENAME_ONLY
--PRINT @REL_PATH
SELECT @RELATIVE_PATH_ONLY = REPLACE(@REL_PATH,@FILENAME_ONLY,'')
--PRINT 'PRIDB_NEW_IDBFO - @RELATIVE_PATH_ONLY1: ' + @RELATIVE_PATH_ONLY
DECLARE @RELPATH_TERM_ID BIGINT,@EXTENSION_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@RELATIVE_PATH_ONLY,@WHO,@TERM_ID = @RELPATH_TERM_ID OUTPUT;
SELECT @EXT = UPPER([dbo].[FNGetExtension] (@REL_PATH));
EXEC PRIDB_NEW_TERM 'VARCHAR',@EXT,@WHO,@TERM_ID = @EXTENSION_TERM_ID OUTPUT;
--SELECT @FILENAME_EXT = [dbo].[FNGetFileName] (@REL_PATH);
--SELECT @FILENAME_ONLY = [dbo].[FNGetFileNameWithoutExtension] (@REL_PATH);
--SELECT @EXT = UPPER([dbo].[FNGetExtension] (@REL_PATH));
PRINT 'PRIDB_NEW_IDBFO: ' + @REL_PATH
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]
([IDB_OBJ_ID]
,[OBJ_ST_ID]
,EXTENSION_TERM_ID
,RELPATH_TERM_ID
,FILE_SIZE
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@OBJ_ST_ID
,@EXTENSION_TERM_ID
,@RELPATH_TERM_ID
,@FILESIZE
,@WHO)
ELSE
BEGIN
--PRINT 'OBJECT ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' ALREADY EXISTING ---- So ONLY UPDATE WITH NEW FILE PARAMS'
UPDATE TBIDB_FILE_OBJECT SET
EXTENSION_TERM_ID = @EXTENSION_TERM_ID
,RELPATH_TERM_ID = @RELPATH_TERM_ID
,FILE_SIZE = @FILESIZE
,CHANGED_WHO = @WHO
WHERE IDB_OBJ_ID = @IDB_OBJ_ID
IF EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND DELETED = 1)
BEGIN
PRINT 'PRIDB_NEW_IDBFO - IDB_OBJ_ID: ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' DELETED FLAG ACTIVE!!'
UPDATE TBIDB_OBJECT SET DELETED = 0 WHERE IDB_OBJ_ID = @IDB_OBJ_ID
END
END
END
END
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.0.8' where CONFIG_NAME = 'DB_VERSION'
GO
-- =============================================
-- Author: DD MS
-- Creation date: 05.07.2021
-- =============================================
CREATE PROCEDURE [dbo].[PRIDB_GET_VALUE_DT] @IDB_OBJ_ID BIGINT, @LANG_CODE VARCHAR(5)
AS
DECLARE @ATTR_ID INTEGER,@ATTR_TITLE VARCHAR(100), @TYPE_NAME VARCHAR(100)
DECLARE
@TBRESULT TABLE (AttributID INT, AttributTitle VARCHAR(100), AttributType VARCHAR(100),ValueBigInt BIGINT, ValueText Varchar(912), ValueDec Decimal(19,2), ValueDate Date,
ADDED_WHEN DATETIME, CHANGED_WHEN DATETIME)
DECLARE cursorAttributes CURSOR LOCAL FOR
SELECT A.ATTR_ID, B.ATTR_TITLE, B.TYPE_NAME FROM TBIDB_OBJECT_METADATA A INNER JOIN VWIDB_BE_ATTRIBUTE B On A.ATTR_ID = B.ATTR_ID
WHERE A.IDB_OBJ_ID = @IDB_OBJ_ID AND B.LANG_CODE = @LANG_CODE
OPEN cursorAttributes
FETCH NEXT FROM cursorAttributes INTO @ATTR_ID,@ATTR_TITLE,@TYPE_NAME
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT CONVERT(VARCHAR(2),@ATTR_ID) + '#' + @TYPE_NAME + '#' + @ATTR_TITLE
IF @TYPE_NAME IN ('VARCHAR','VECTOR STRING')
INSERT INTO @TBRESULT (AttributID,AttributTitle,AttributType,ValueText,ADDED_WHEN,CHANGED_WHEN)
select
@ATTR_ID,@ATTR_TITLE,@TYPE_NAME,[dbo].[FNIDB_GET_TERM_TEXT] (@IDB_OBJ_ID,@ATTR_ID),T.ADDED_WHEN,T.CHANGED_WHEN
from
TBIDB_OBJECT_METADATA T
WHERE T.IDB_OBJ_ID = @IDB_OBJ_ID AND T.ATTR_ID = @ATTR_ID
ELSE IF @TYPE_NAME IN ('BIT','BIG INTEGER')
INSERT INTO @TBRESULT (AttributID,AttributTitle,AttributType,ValueBigInt,ADDED_WHEN,CHANGED_WHEN)
select
@ATTR_ID,@ATTR_TITLE,@TYPE_NAME,[dbo].[FNIDB_GET_TERM_INTEGER] (@IDB_OBJ_ID,@ATTR_ID),T.ADDED_WHEN,T.CHANGED_WHEN
from
TBIDB_OBJECT_METADATA T
WHERE T.IDB_OBJ_ID = @IDB_OBJ_ID AND T.ATTR_ID = @ATTR_ID
ELSE IF @TYPE_NAME = 'DATE'
INSERT INTO @TBRESULT (AttributID,AttributTitle,AttributType,ValueDate,ADDED_WHEN,CHANGED_WHEN)
select
@ATTR_ID,@ATTR_TITLE,@TYPE_NAME,[dbo].[FNIDB_GET_TERM_DATE] (@IDB_OBJ_ID,@ATTR_ID),T.ADDED_WHEN,T.CHANGED_WHEN
from
TBIDB_OBJECT_METADATA T
WHERE T.IDB_OBJ_ID = @IDB_OBJ_ID AND T.ATTR_ID = @ATTR_ID
ELSE IF @TYPE_NAME = 'DECIMAL'
INSERT INTO @TBRESULT (AttributID,AttributTitle,AttributType,ValueDec,ADDED_WHEN,CHANGED_WHEN)
select
@ATTR_ID,@ATTR_TITLE,@TYPE_NAME,[dbo].[FNIDB_GET_TERM_DECIMAL] (@IDB_OBJ_ID,@ATTR_ID),T.ADDED_WHEN,T.CHANGED_WHEN
from
TBIDB_OBJECT_METADATA T
WHERE T.IDB_OBJ_ID = @IDB_OBJ_ID AND T.ATTR_ID = @ATTR_ID
FETCH NEXT FROM cursorAttributes INTO @ATTR_ID,@ATTR_TITLE,@TYPE_NAME
END
CLOSE cursorAttributes
DEALLOCATE cursorAttributes
SELECT * FROM @TBRESULT order BY AttributID,ADDED_WHEN
GO
ALTER TABLE TBIDB_DOC_INFO ADD FULL_TEXT VARBINARY(MAX)
GO
ALTER TABLE TBIDB_DOC_INFO ADD FILE_SIZE INTEGER
GO
ALTER TABLE TBIDB_FILE_OBJECT ADD FILE_SIZE BIGINT
GO
-- =============================================
-- Author: DD MS 15.03.2021
-- Change: 13.07.2021 Filesize
-- =============================================
ALTER PROCEDURE [dbo].[PRIDB_NEW_IDBFO] @REL_PATH VARCHAR(512),@FILESIZE BIGINT, @WHO VARCHAR(100), @IDB_OBJ_ID BIGINT,@OBJ_ST_ID INT
AS
BEGIN
DECLARE
@FILENAME_EXT VARCHAR(250),
@FILENAME_ONLY VARCHAR(250),
@RELATIVE_PATH VARCHAR(512),
@RELATIVE_PATH_ONLY VARCHAR(512),
@EXT VARCHAR(10)
SET @FILENAME_ONLY = CONVERT(VARCHAR(20),@IDB_OBJ_ID) + '.ddfo'
--PRINT @FILENAME_ONLY
--PRINT @REL_PATH
SELECT @RELATIVE_PATH_ONLY = REPLACE(@REL_PATH,@FILENAME_ONLY,'')
--PRINT 'PRIDB_NEW_IDBFO - @RELATIVE_PATH_ONLY1: ' + @RELATIVE_PATH_ONLY
DECLARE @RELPATH_TERM_ID BIGINT,@EXTENSION_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@RELATIVE_PATH_ONLY,@WHO,@TERM_ID = @RELPATH_TERM_ID OUTPUT;
SELECT @EXT = UPPER([dbo].[FNGetExtension] (@REL_PATH));
EXEC PRIDB_NEW_TERM 'VARCHAR',@EXT,@WHO,@TERM_ID = @EXTENSION_TERM_ID OUTPUT;
--SELECT @FILENAME_EXT = [dbo].[FNGetFileName] (@REL_PATH);
--SELECT @FILENAME_ONLY = [dbo].[FNGetFileNameWithoutExtension] (@REL_PATH);
--SELECT @EXT = UPPER([dbo].[FNGetExtension] (@REL_PATH));
PRINT 'PRIDB_NEW_IDBFO: ' + @REL_PATH
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]
([IDB_OBJ_ID]
,[OBJ_ST_ID]
,EXTENSION_TERM_ID
,RELPATH_TERM_ID
,FILE_SIZE
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@OBJ_ST_ID
,@EXTENSION_TERM_ID
,@RELPATH_TERM_ID
,@FILESIZE
,@WHO)
ELSE
BEGIN
--PRINT 'OBJECT ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' ALREADY EXISTING ---- So ONLY UPDATE WITH NEW FILE PARAMS'
UPDATE TBIDB_FILE_OBJECT SET
EXTENSION_TERM_ID = @EXTENSION_TERM_ID
,RELPATH_TERM_ID = @RELPATH_TERM_ID
,FILE_SIZE = @FILESIZE
,CHANGED_WHO = @WHO
WHERE IDB_OBJ_ID = @IDB_OBJ_ID
IF EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND DELETED = 1)
BEGIN
PRINT 'PRIDB_NEW_IDBFO - IDB_OBJ_ID: ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' DELETED FLAG ACTIVE!!'
UPDATE TBIDB_OBJECT SET DELETED = 0 WHERE IDB_OBJ_ID = @IDB_OBJ_ID
END
END
END
END
GO

View File

@ -1,212 +1,212 @@
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.0.9' where CONFIG_NAME = 'DB_VERSION'
GO
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,
[INT_TERM_ID] BIGINT,
[DEC_TERM_ID] BIGINT,
[FLOAT_TERM_ID] BIGINT,
[DATE_TERM_ID] BIGINT,
[ADDED_WHO] VARCHAR(100),
[ADDED_WHEN] DATETIME NOT NULL,
CONSTRAINT PK_TBDD_GROUPS_USER PRIMARY KEY (GUID),
CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_ATTRID FOREIGN KEY(ATTR_ID) REFERENCES TBIDB_ATTRIBUTE(GUID),
CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_IDBOBJID FOREIGN KEY(IDB_OBJ_ID) REFERENCES TBIDB_OBJECT(IDB_OBJ_ID),
CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_DATETERMID FOREIGN KEY(DATE_TERM_ID) REFERENCES TBIDB_TERM_VALUE_DATE(GUID),
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),
)
GO
ALTER TABLE TBIDB_OBJECT_METADATA_DELETE
ADD ADDED_WHEN DATETIME;
USE [IDB]
GO
--#######################
--Change 06.10.2021 ADDED_WHEN METADATA_DELETE
--#######################
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
@ATTR_ID INTEGER,
@TYP_ID TINYINT,
@TYP_DESCR VARCHAR(100),
@MULTI BIT,
@LANG_ID INT
--IF @ID_ISFOREIGN = 1
-- BEGIN
-- SELECT @IDB_OBJ_ID = IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @IDB_OBJ_ID
-- END
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(T.TITLE) = UPPER(@ATTRIBUTE)
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @LANG_CODE
DECLARE @MY_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM @TYP_DESCR,@TERM,'',@TERM_ID = @MY_TERM_ID OUTPUT;
PRINT '@MY_TERM_ID: ' + CONVERT(VARCHAR(10),@MY_TERM_ID)
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)
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
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)
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
END
ELSE
PRINT 'TERM SEEMS NOT TO EXIST'
END
ELSE IF @TYP_ID IN (2,7,9) --BIGINT
BEGIN
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND INT_TERM_ID = @MY_TERM_ID)
BEGIN
DELETE FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND INT_TERM_ID = @MY_TERM_ID
PRINT 'PRIDB_DEL_TERM_OBJECT_METADATA: DELETED INTEGER ROW!'
INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,INT_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 INT_TERM_ID = @MY_TERM_ID
END
END
ELSE IF @TYP_ID = 3 --FLOAT
BEGIN
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND FLOAT_TERM_ID = @MY_TERM_ID)
BEGIN
DELETE FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND FLOAT_TERM_ID = @MY_TERM_ID
PRINT 'PRIDB_DEL_TERM_OBJECT_METADATA: DELETED FLOAT ROW!'
INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,FLOAT_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 FLOAT_TERM_ID = @MY_TERM_ID
END
END
ELSE IF @TYP_ID = 4 --DECIMAL
BEGIN
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DEC_TERM_ID = @MY_TERM_ID)
BEGIN
DELETE FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DEC_TERM_ID = @MY_TERM_ID
PRINT 'PRIDB_DEL_TERM_OBJECT_METADATA: DELETED DECIMAL ROW!'
INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,DEC_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 DEC_TERM_ID = @MY_TERM_ID
END
END
ELSE IF @TYP_ID = 5 --DATE
BEGIN
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DATE_TERM_ID = @MY_TERM_ID)
BEGIN
DELETE FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DATE_TERM_ID = @MY_TERM_ID
PRINT 'PRIDB_DEL_TERM_OBJECT_METADATA: DELETED DATE ROW!'
INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,DATE_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 DATE_TERM_ID = @MY_TERM_ID
END
END
END
GO
-- =============================================
-- Author: Digital Data, MS
-- Create date: 12.10.2021
-- Description: Löscht User-Zuordnungen wo der USer nicht mehr Teil der Posteingangsgruppe ist
-- =============================================
CREATE PROCEDURE [dbo].[PRIDB_GET_ATTRIBUTE_VALUE] @IDB_OBJ_ID BIGINT,@ATTRIBUTE VARCHAR(100), @LANG_CODE VARCHAR(5), @VALUE VARCHAR(MAX) OUTPUT
AS
BEGIN
DECLARE
@ATTR_ID INTEGER,
@TYP_ID TINYINT,
@TYP_DESCR VARCHAR(100),
@MULTI BIT,
@LANG_ID INT
IF NOT EXISTS(SELECT GUID FROM TBIDB_ATTRIBUTE WHERE UPPER(TITLE) = UPPER(@ATTRIBUTE))
RAISERROR ('NO VALID ATTRIBUTE',16,1)
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(T.TITLE) = UPPER(@ATTRIBUTE)
IF @LANG_CODE = 'de-DE'
SET @LANG_ID = 1
ELSE
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @LANG_CODE
IF @TYP_ID IN (1,8) --VARCHAR
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
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
END
ELSE IF @TYP_ID IN (2,7,9) --BIGINT
BEGIN
select
@VALUE = CONVERT(VARCHAR(20),TERM.TERM_VALUE)
FROM
IDB.dbo.TBIDB_TERM_VALUE_INTEGER TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
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
END
ELSE IF @TYP_ID = 3 --FLOAT
BEGIN
select
@VALUE = CONVERT(VARCHAR(20),TERM.TERM_VALUE)
FROM
IDB.dbo.TBIDB_TERM_VALUE_FLOAT TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
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
END
ELSE IF @TYP_ID = 4 --DECIMAL
BEGIN
select
@VALUE = CONVERT(VARCHAR(20),TERM.TERM_VALUE)
FROM
IDB.dbo.TBIDB_TERM_VALUE_DECIMAL TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
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
END
ELSE IF @TYP_ID = 5 --DATE
BEGIN
select
@VALUE = CONVERT(VARCHAR(20),TERM.TERM_VALUE)
FROM
IDB.dbo.TBIDB_TERM_VALUE_DATE TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
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
END
END
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.0.9' where CONFIG_NAME = 'DB_VERSION'
GO
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,
[INT_TERM_ID] BIGINT,
[DEC_TERM_ID] BIGINT,
[FLOAT_TERM_ID] BIGINT,
[DATE_TERM_ID] BIGINT,
[ADDED_WHO] VARCHAR(100),
[ADDED_WHEN] DATETIME NOT NULL,
CONSTRAINT PK_TBDD_GROUPS_USER PRIMARY KEY (GUID),
CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_ATTRID FOREIGN KEY(ATTR_ID) REFERENCES TBIDB_ATTRIBUTE(GUID),
CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_IDBOBJID FOREIGN KEY(IDB_OBJ_ID) REFERENCES TBIDB_OBJECT(IDB_OBJ_ID),
CONSTRAINT FK_TBIDB_OBJECTMETADATAADD_DATETERMID FOREIGN KEY(DATE_TERM_ID) REFERENCES TBIDB_TERM_VALUE_DATE(GUID),
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),
)
GO
ALTER TABLE TBIDB_OBJECT_METADATA_DELETE
ADD ADDED_WHEN DATETIME;
USE [IDB]
GO
--#######################
--Change 06.10.2021 ADDED_WHEN METADATA_DELETE
--#######################
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
@ATTR_ID INTEGER,
@TYP_ID TINYINT,
@TYP_DESCR VARCHAR(100),
@MULTI BIT,
@LANG_ID INT
--IF @ID_ISFOREIGN = 1
-- BEGIN
-- SELECT @IDB_OBJ_ID = IDB_OBJ_ID FROM TBIDB_OBJECT WHERE REFERENCE_KEY = @IDB_OBJ_ID
-- END
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(T.TITLE) = UPPER(@ATTRIBUTE)
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @LANG_CODE
DECLARE @MY_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM @TYP_DESCR,@TERM,'',@TERM_ID = @MY_TERM_ID OUTPUT;
PRINT '@MY_TERM_ID: ' + CONVERT(VARCHAR(10),@MY_TERM_ID)
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)
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
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)
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
END
ELSE
PRINT 'TERM SEEMS NOT TO EXIST'
END
ELSE IF @TYP_ID IN (2,7,9) --BIGINT
BEGIN
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND INT_TERM_ID = @MY_TERM_ID)
BEGIN
DELETE FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND INT_TERM_ID = @MY_TERM_ID
PRINT 'PRIDB_DEL_TERM_OBJECT_METADATA: DELETED INTEGER ROW!'
INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,INT_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 INT_TERM_ID = @MY_TERM_ID
END
END
ELSE IF @TYP_ID = 3 --FLOAT
BEGIN
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND FLOAT_TERM_ID = @MY_TERM_ID)
BEGIN
DELETE FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND FLOAT_TERM_ID = @MY_TERM_ID
PRINT 'PRIDB_DEL_TERM_OBJECT_METADATA: DELETED FLOAT ROW!'
INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,FLOAT_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 FLOAT_TERM_ID = @MY_TERM_ID
END
END
ELSE IF @TYP_ID = 4 --DECIMAL
BEGIN
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DEC_TERM_ID = @MY_TERM_ID)
BEGIN
DELETE FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DEC_TERM_ID = @MY_TERM_ID
PRINT 'PRIDB_DEL_TERM_OBJECT_METADATA: DELETED DECIMAL ROW!'
INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,DEC_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 DEC_TERM_ID = @MY_TERM_ID
END
END
ELSE IF @TYP_ID = 5 --DATE
BEGIN
IF EXISTS(SELECT GUID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DATE_TERM_ID = @MY_TERM_ID)
BEGIN
DELETE FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND ATTR_ID = @ATTR_ID AND DATE_TERM_ID = @MY_TERM_ID
PRINT 'PRIDB_DEL_TERM_OBJECT_METADATA: DELETED DATE ROW!'
INSERT INTO TBIDB_OBJECT_METADATA_DELETE (IDB_OBJ_ID,ATTR_ID,DATE_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 DATE_TERM_ID = @MY_TERM_ID
END
END
END
GO
-- =============================================
-- Author: Digital Data, MS
-- Create date: 12.10.2021
-- Description: Löscht User-Zuordnungen wo der USer nicht mehr Teil der Posteingangsgruppe ist
-- =============================================
CREATE PROCEDURE [dbo].[PRIDB_GET_ATTRIBUTE_VALUE] @IDB_OBJ_ID BIGINT,@ATTRIBUTE VARCHAR(100), @LANG_CODE VARCHAR(5), @VALUE VARCHAR(MAX) OUTPUT
AS
BEGIN
DECLARE
@ATTR_ID INTEGER,
@TYP_ID TINYINT,
@TYP_DESCR VARCHAR(100),
@MULTI BIT,
@LANG_ID INT
IF NOT EXISTS(SELECT GUID FROM TBIDB_ATTRIBUTE WHERE UPPER(TITLE) = UPPER(@ATTRIBUTE))
RAISERROR ('NO VALID ATTRIBUTE',16,1)
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(T.TITLE) = UPPER(@ATTRIBUTE)
IF @LANG_CODE = 'de-DE'
SET @LANG_ID = 1
ELSE
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @LANG_CODE
IF @TYP_ID IN (1,8) --VARCHAR
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
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
END
ELSE IF @TYP_ID IN (2,7,9) --BIGINT
BEGIN
select
@VALUE = CONVERT(VARCHAR(20),TERM.TERM_VALUE)
FROM
IDB.dbo.TBIDB_TERM_VALUE_INTEGER TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
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
END
ELSE IF @TYP_ID = 3 --FLOAT
BEGIN
select
@VALUE = CONVERT(VARCHAR(20),TERM.TERM_VALUE)
FROM
IDB.dbo.TBIDB_TERM_VALUE_FLOAT TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
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
END
ELSE IF @TYP_ID = 4 --DECIMAL
BEGIN
select
@VALUE = CONVERT(VARCHAR(20),TERM.TERM_VALUE)
FROM
IDB.dbo.TBIDB_TERM_VALUE_DECIMAL TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
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
END
ELSE IF @TYP_ID = 5 --DATE
BEGIN
select
@VALUE = CONVERT(VARCHAR(20),TERM.TERM_VALUE)
FROM
IDB.dbo.TBIDB_TERM_VALUE_DATE TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
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
END
END
GO

View File

@ -1,119 +1,119 @@
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.1.0' where CONFIG_NAME = 'DB_VERSION'
GO
ALTER TABLE TBIDB_DOC_INFO
ADD RELATIVE_PATH_ONLY_TERM BIGINT;
ALTER TABLE TBIDB_DOC_INFO
ADD EXTENSION_TERM BIGINT;
DECLARe @RELPATH VARCHAR(5000),@IDBOBJID BIGINT,@Extens VARCHAR(10)
DECLARE cursor1 CURSOR FOR
Select IDB_OBJ_ID, RELATIVE_PATH_ONLY,EXTENSION from TBIDB_DOC_INFO
OPEN cursor1
FETCH NEXT FROM cursor1 INTO @IDBOBJID,@RELPATH,@Extens
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE @TERMID BIGINT
EXECUTE [dbo].[PRIDB_NEW_TERM] 'Varchar',@RELPATH,'Digital Data', @TERM_ID = @TERMID OUTPUT
DECLARE @TERM_EXTENS BIGINT
EXECUTE [dbo].[PRIDB_NEW_TERM] 'Varchar',@Extens,'Digital Data', @TERM_ID = @TERM_EXTENS OUTPUT
UPDATE TBIDB_DOC_INFO SET RELATIVE_PATH_ONLY_TERM = @TERMID, EXTENSION_TERM = @TERM_EXTENS, CHANGED_WHO = 'Digital Data' WHERE IDB_OBJ_ID = @IDBOBJID
FETCH NEXT FROM cursor1 INTO @IDBOBJID,@RELPATH,@Extens
END
CLOSE cursor1
DEALLOCATE cursor1
GO
ALTER TABLE TBIDB_DOC_INFO ALTER COLUMN RELATIVE_PATH_ONLY_TERM BIGINT NOT NULL;
ALTER TABLE TBIDB_DOC_INFO ALTER COLUMN EXTENSION_TERM BIGINT NOT NULL;
ALTER TABLE TBIDB_DOC_INFO
ADD CONSTRAINT FKTBIDB_DOC_INFO_RELATIVEPATHONLYTERM FOREIGN KEY (RELATIVE_PATH_ONLY_TERM) REFERENCES TBIDB_TERM_VALUE_VARCHAR(GUID);
ALTER TABLE TBIDB_DOC_INFO
ADD CONSTRAINT FKTBIDB_DOC_INFO_EXTENSIONTERM FOREIGN KEY (EXTENSION_TERM) REFERENCES TBIDB_TERM_VALUE_VARCHAR(GUID);
ALTER TABLE TBIDB_DOC_INFO
DROP COLUMN RELATIVE_PATH_ONLY;
ALTER TABLE TBIDB_DOC_INFO
DROP COLUMN EXTENSION;
USE [IDB_TEST]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: DD MS
-- Changed: 01.11.2021 MS TERM_COLUMNS
-- Changed: 10.08.2020 MS Anpassung
-- =============================================
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
@SHARE_PATH VARCHAR(100),
@OBJ_STORE_PATH VARCHAR(250),
@NEW_FULL_PATH VARCHAR(512),
@FILENAME_EXT VARCHAR(250),
@FILENAME_ONLY VARCHAR(250),
@RELATIVE_PATH VARCHAR(512),
@RELATIVE_PATH_ONLY VARCHAR(512),
@EXT VARCHAR(10)
SELECT
@SHARE_PATH = T.CAT_STRING, @OBJ_STORE_PATH = T1.OBJ_PATH
FROM TBIDB_CATALOG T, TBIDB_OBJECT_STORE T1 WHERE T1.CAT_ID = T.GUID AND T1.GUID = @OBJ_ST_ID
SET @NEW_FULL_PATH = UPPER(@SHARE_PATH + '\' + @OBJ_STORE_PATH + '\' + @REL_PATH)
SET @NEW_FULL_PATH = REPLACE(@NEW_FULL_PATH,'\\','')
SET @RELATIVE_PATH = UPPER(@REL_PATH)
PRINT 'PRIDB_NEW_DOCUMENT - @NEW_FULL_PATH: ' + @NEW_FULL_PATH
PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH: ' + @RELATIVE_PATH
--SELECT @RELATIVE_PATH_ONLY = [dbo].[FNGetDirectoryPath] (@NEW_FULL_PATH);
--PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH_ONLY1: ' + @RELATIVE_PATH_ONLY
SELECT @FILENAME_EXT = [dbo].[FNGetFileName] (@NEW_FULL_PATH);
SELECT @FILENAME_ONLY = [dbo].[FNGetFileNameWithoutExtension] (@NEW_FULL_PATH);
SELECT @EXT = UPPER([dbo].[FNGetExtension] (@NEW_FULL_PATH));
SET @RELATIVE_PATH_ONLY = REPLACE(@REL_PATH,'\' + @FILENAME_EXT,'')
PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH_ONLY: ' + @RELATIVE_PATH_ONLY
DECLARE @RELATIVE_PATH_ONLY_TERM BIGINT,@EXTENSION_TERM BIGINT
EXECUTE [dbo].[PRIDB_NEW_TERM] 'Varchar',@RELATIVE_PATH_ONLY,@WHO, @TERM_ID = @RELATIVE_PATH_ONLY_TERM OUTPUT
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;
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)
INSERT INTO [dbo].[TBIDB_DOC_INFO]
([IDB_OBJ_ID]
,[OBJ_ST_ID]
,[FILENAME_ONLY]
,RELATIVE_PATH
,RELATIVE_PATH_ONLY_TERM
,EXTENSION_TERM
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@OBJ_ST_ID
,@FILENAME_ONLY
,@RELATIVE_PATH
,@RELATIVE_PATH_ONLY_TERM
,@EXTENSION_TERM
,@WHO)
ELSE
BEGIN
PRINT 'OBJECT ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' ALREADY EXISTING ---- So ONLY UPDATE WITH NEW FILE PARAMS'
UPDATE [TBIDB_DOC_INFO] SET [FILENAME_EXT] = @FILENAME_EXT,[FILENAME_ONLY] = @FILENAME_ONLY
,@EXTENSION_TERM = @EXTENSION_TERM
,[RELATIVE_PATH] = @RELATIVE_PATH
,RELATIVE_PATH_ONLY_TERM = @RELATIVE_PATH_ONLY_TERM
,CHANGED_WHO = @WHO
WHERE IDB_OBJ_ID = @IDB_OBJ_ID
IF EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND DELETED = 1)
BEGIN
PRINT 'PRIDB_NEW_DOCUMENT - IDB_OBJ_ID: ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' DELETED FLAG ACTIVE!!'
UPDATE TBIDB_OBJECT SET DELETED = 0 WHERE IDB_OBJ_ID = @IDB_OBJ_ID
END
END
END
END
GO
UPDATE TBIDB_BASE SET CONFIG_VALUE = '1.1.0' where CONFIG_NAME = 'DB_VERSION'
GO
ALTER TABLE TBIDB_DOC_INFO
ADD RELATIVE_PATH_ONLY_TERM BIGINT;
ALTER TABLE TBIDB_DOC_INFO
ADD EXTENSION_TERM BIGINT;
DECLARe @RELPATH VARCHAR(5000),@IDBOBJID BIGINT,@Extens VARCHAR(10)
DECLARE cursor1 CURSOR FOR
Select IDB_OBJ_ID, RELATIVE_PATH_ONLY,EXTENSION from TBIDB_DOC_INFO
OPEN cursor1
FETCH NEXT FROM cursor1 INTO @IDBOBJID,@RELPATH,@Extens
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE @TERMID BIGINT
EXECUTE [dbo].[PRIDB_NEW_TERM] 'Varchar',@RELPATH,'Digital Data', @TERM_ID = @TERMID OUTPUT
DECLARE @TERM_EXTENS BIGINT
EXECUTE [dbo].[PRIDB_NEW_TERM] 'Varchar',@Extens,'Digital Data', @TERM_ID = @TERM_EXTENS OUTPUT
UPDATE TBIDB_DOC_INFO SET RELATIVE_PATH_ONLY_TERM = @TERMID, EXTENSION_TERM = @TERM_EXTENS, CHANGED_WHO = 'Digital Data' WHERE IDB_OBJ_ID = @IDBOBJID
FETCH NEXT FROM cursor1 INTO @IDBOBJID,@RELPATH,@Extens
END
CLOSE cursor1
DEALLOCATE cursor1
GO
ALTER TABLE TBIDB_DOC_INFO ALTER COLUMN RELATIVE_PATH_ONLY_TERM BIGINT NOT NULL;
ALTER TABLE TBIDB_DOC_INFO ALTER COLUMN EXTENSION_TERM BIGINT NOT NULL;
ALTER TABLE TBIDB_DOC_INFO
ADD CONSTRAINT FKTBIDB_DOC_INFO_RELATIVEPATHONLYTERM FOREIGN KEY (RELATIVE_PATH_ONLY_TERM) REFERENCES TBIDB_TERM_VALUE_VARCHAR(GUID);
ALTER TABLE TBIDB_DOC_INFO
ADD CONSTRAINT FKTBIDB_DOC_INFO_EXTENSIONTERM FOREIGN KEY (EXTENSION_TERM) REFERENCES TBIDB_TERM_VALUE_VARCHAR(GUID);
ALTER TABLE TBIDB_DOC_INFO
DROP COLUMN RELATIVE_PATH_ONLY;
ALTER TABLE TBIDB_DOC_INFO
DROP COLUMN EXTENSION;
USE [IDB_TEST]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: DD MS
-- Changed: 01.11.2021 MS TERM_COLUMNS
-- Changed: 10.08.2020 MS Anpassung
-- =============================================
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
@SHARE_PATH VARCHAR(100),
@OBJ_STORE_PATH VARCHAR(250),
@NEW_FULL_PATH VARCHAR(512),
@FILENAME_EXT VARCHAR(250),
@FILENAME_ONLY VARCHAR(250),
@RELATIVE_PATH VARCHAR(512),
@RELATIVE_PATH_ONLY VARCHAR(512),
@EXT VARCHAR(10)
SELECT
@SHARE_PATH = T.CAT_STRING, @OBJ_STORE_PATH = T1.OBJ_PATH
FROM TBIDB_CATALOG T, TBIDB_OBJECT_STORE T1 WHERE T1.CAT_ID = T.GUID AND T1.GUID = @OBJ_ST_ID
SET @NEW_FULL_PATH = UPPER(@SHARE_PATH + '\' + @OBJ_STORE_PATH + '\' + @REL_PATH)
SET @NEW_FULL_PATH = REPLACE(@NEW_FULL_PATH,'\\','')
SET @RELATIVE_PATH = UPPER(@REL_PATH)
PRINT 'PRIDB_NEW_DOCUMENT - @NEW_FULL_PATH: ' + @NEW_FULL_PATH
PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH: ' + @RELATIVE_PATH
--SELECT @RELATIVE_PATH_ONLY = [dbo].[FNGetDirectoryPath] (@NEW_FULL_PATH);
--PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH_ONLY1: ' + @RELATIVE_PATH_ONLY
SELECT @FILENAME_EXT = [dbo].[FNGetFileName] (@NEW_FULL_PATH);
SELECT @FILENAME_ONLY = [dbo].[FNGetFileNameWithoutExtension] (@NEW_FULL_PATH);
SELECT @EXT = UPPER([dbo].[FNGetExtension] (@NEW_FULL_PATH));
SET @RELATIVE_PATH_ONLY = REPLACE(@REL_PATH,'\' + @FILENAME_EXT,'')
PRINT 'PRIDB_NEW_DOCUMENT - @RELATIVE_PATH_ONLY: ' + @RELATIVE_PATH_ONLY
DECLARE @RELATIVE_PATH_ONLY_TERM BIGINT,@EXTENSION_TERM BIGINT
EXECUTE [dbo].[PRIDB_NEW_TERM] 'Varchar',@RELATIVE_PATH_ONLY,@WHO, @TERM_ID = @RELATIVE_PATH_ONLY_TERM OUTPUT
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;
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)
INSERT INTO [dbo].[TBIDB_DOC_INFO]
([IDB_OBJ_ID]
,[OBJ_ST_ID]
,[FILENAME_ONLY]
,RELATIVE_PATH
,RELATIVE_PATH_ONLY_TERM
,EXTENSION_TERM
,[ADDED_WHO])
VALUES
(@IDB_OBJ_ID
,@OBJ_ST_ID
,@FILENAME_ONLY
,@RELATIVE_PATH
,@RELATIVE_PATH_ONLY_TERM
,@EXTENSION_TERM
,@WHO)
ELSE
BEGIN
PRINT 'OBJECT ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' ALREADY EXISTING ---- So ONLY UPDATE WITH NEW FILE PARAMS'
UPDATE [TBIDB_DOC_INFO] SET [FILENAME_EXT] = @FILENAME_EXT,[FILENAME_ONLY] = @FILENAME_ONLY
,@EXTENSION_TERM = @EXTENSION_TERM
,[RELATIVE_PATH] = @RELATIVE_PATH
,RELATIVE_PATH_ONLY_TERM = @RELATIVE_PATH_ONLY_TERM
,CHANGED_WHO = @WHO
WHERE IDB_OBJ_ID = @IDB_OBJ_ID
IF EXISTS(SELECT IDB_OBJ_ID FROM TBIDB_OBJECT WHERE IDB_OBJ_ID = @IDB_OBJ_ID AND DELETED = 1)
BEGIN
PRINT 'PRIDB_NEW_DOCUMENT - IDB_OBJ_ID: ' + CONVERT(VARCHAR(20),@IDB_OBJ_ID) + ' DELETED FLAG ACTIVE!!'
UPDATE TBIDB_OBJECT SET DELETED = 0 WHERE IDB_OBJ_ID = @IDB_OBJ_ID
END
END
END
END
GO

View File

@ -1,167 +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
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

View File

@ -1,128 +0,0 @@
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.8'
GO
ALTER TABLE TBDD_USER ADD ACTIVE BIT NOT NULL DEFAULT 1;
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.0.8'
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.1.0'
GO
CREATE TABLE TBDD_USER_REPRESENTATION (
GUID INTEGER NOT NULL IDENTITY(1,1),
USER_ID INTEGER NOT NULL,
REPR_GROUP INTEGER NOT NULL,
RIGHT_GROUP INTEGER 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_USER_REPRESENTATION PRIMARY KEY (GUID),
CONSTRAINT FK_TBDD_USER_REPRESENTATION_USER_ID FOREIGN KEY (USER_ID) REFERENCES TBDD_USER (GUID),
CONSTRAINT FK_TBDD_USER_REPRESENTATION_REPR_GROUP FOREIGN KEY (REPR_GROUP) REFERENCES TBDD_GROUPS (GUID),
CONSTRAINT FK_TBDD_USER_REPRESENTATION_RIGHT_GROUP FOREIGN KEY (RIGHT_GROUP) REFERENCES TBDD_GROUPS (GUID)
)
GO
CREATE TRIGGER TBDD_USER_REPRESENTATION_AFT_UPD ON TBDD_USER_REPRESENTATION
FOR UPDATE
AS
UPDATE TBDD_USER_REPRESENTATION SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBDD_USER_REPRESENTATION.GUID = INSERTED.GUID
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.1.1'
GO
ALTER TABLE TBDD_USER_REPRESENTATION ALTER COLUMN REPR_GROUP INTEGER NULL;
ALTER TABLE TBDD_USER_REPRESENTATION ADD REPR_USER INTEGER;
ALTER TABLE TBDD_USER_REPRESENTATION
ADD CONSTRAINT FK_TBDD_USER_REPRESENTATION_REPR_USER
FOREIGN KEY (REPR_USER)
REFERENCES TBDD_USER (GUID);
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.2.0';
ALTER TABLE TBDD_DOKUMENTART ADD IDB_FILESTORE_ID INTEGER NOT NULL DEFAULT 0;
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.3.0';
CREATE TABLE TBDD_NOTIFICATIONS_SYSTEM
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
TITLE VARCHAR(250) NOT NULL,
MODULE VARCHAR(250) NOT NULL,
DISPLAY_TYPE VARCHAR(100) NOT NULL,
MSG_STRING NVARCHAR(MAX) NOT NULL,
DISPLAY_UNTIL DATE,
VALIDATE_READ BIT NOT NULL DEFAULT 0,
ADDED_WHO VARCHAR(100),
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CHANGED_WHO VARCHAR(100),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBDD_NOTIFICATIONS_SYSTEM PRIMARY KEY (GUID),
)
GO
CREATE TRIGGER TTBDD_NOTIFICATIONS_SYSTEM_AFT_UPD ON TBDD_NOTIFICATIONS_SYSTEM
FOR UPDATE
AS
UPDATE TBDD_NOTIFICATIONS_SYSTEM SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBDD_NOTIFICATIONS_SYSTEM .GUID = INSERTED.GUID
GO
CREATE TABLE TBDD_NOTIFICATIONS_USER_HISTORY
(
GUID INTEGER IDENTITY(1,1),
NOTIFY_ID INT NOT NULL,
USR_ID INT NOT NULL,
ADDED_WHEN DATETIME DEFAULT GETDATE(),
CONSTRAINT PK_TBDD_NOTIFICATIONS_USER_HISTORY PRIMARY KEY (GUID),
CONSTRAINT FK_TBDD_NOTIFICATIONS_USER_HISTORY_NID FOREIGN KEY(NOTIFY_ID) REFERENCES TBDD_NOTIFICATIONS_SYSTEM(GUID),
)
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.4.0';
USE [DD_ECM]
GO
CREATE FUNCTION [dbo].[FNDD_LANGUAGE_PHRASE](@pTITLE VARCHAR(100),@pLANG_CODE VARCHAR(5), @pMODULE VARCHAR(10))
RETURNS VARCHAR(500)
AS
BEGIN
DECLARE @RESULT VARCHAR(250), @CTRL_CONFIG_TITLE VARCHAR(100)
SELECT @RESULT = STRING1 FROM TBDD_GUI_LANGUAGE_PHRASE
WHERE MODULE = @pMODULE AND TITLE = @pTITLE
AND [LANGUAGE] = @pLANG_CODE
IF LEN(@RESULT) > 0
SET @RESULT = @RESULT
ELSE
BEGIN
SELECT @RESULT = STRING1 FROM TBDD_GUI_LANGUAGE_PHRASE
WHERE MODULE = @pMODULE AND TITLE = @pTITLE
AND [LANGUAGE] = 'de-DE'
SET @RESULT = @RESULT + ' (NoLangConf)'
END
RETURN @RESULT
END
GO
CREATE PROCEDURE [dbo].[PRDD_GUI_LANGUAGE_PHRASE] (@pMODULE VARCHAR(10),@pTITLE VARCHAR(100),@pLANG_CODE VARCHAR(5),@pCAPTION_TYPE VARCHAR(50),@pSTRING1 VARCHAR(900),@pSTRING2 VARCHAR(900),@pWHO VARCHAR(100)
,@pOBJ_NAME VARCHAR(100),@pINTERNAL BIT)
AS
If NOT EXISTS(SELECT GUID FROm TBDD_GUI_LANGUAGE_PHRASE WHERE [MODULE] = @pMODULE AND TITLE = @pTITLE AND [LANGUAGE] = @pLANG_CODE)
INSERT INTO [dbo].[TBDD_GUI_LANGUAGE_PHRASE]
([MODULE]
,[TITLE]
,[LANGUAGE]
,[CAPT_TYPE]
,[STRING1]
,STRING2
,[ADDED_WHO]
,[OBJ_NAME],INTERNAL) VALUES
(@pMODULE,@pTITLE,@pLANG_CODE,@pCAPTION_TYPE,@pSTRING1,@pSTRING2,@pWHO,@pOBJ_NAME,@pINTERNAL)
ELSE
UPDATE [dbo].[TBDD_GUI_LANGUAGE_PHRASE] SET [CAPT_TYPE] = @pCAPTION_TYPE
,[STRING1] = @pSTRING1
,STRING2 = @pSTRING2
,CHANGED_WHO = @pWHO
,[OBJ_NAME] = @pOBJ_NAME,INTERNAL = @pINTERNAL WHERE
[MODULE] = @pMODULE AND TITLE = @pTITLE AND [LANGUAGE] = @pLANG_CODE
GO
UPDATE TBDD_BASECONFIG SET DB_VERSION = '1.9.4.1';
ALTER TABLE TBDD_NOTIFICATIONS_SYSTEM ADD LANG_CODE VARCHAR(5) NOT NULL DEFAULT 'ALL'
GO

View File

@ -1,16 +1,16 @@
UPDATE TBDD_MODULES SET DB_VERSION = '1.0.0.1' where NAME = 'Clipboard-Searcher'
GO
ALTER TABLE [dbo].[TBCBS_PROFILES] DROP CONSTRAINT [UQ_TBCBS_PROFILES_REGEX]
GO
CREATE PROCEDURE [dbo].[PRCW_DELETE_PROFILE](@pPROFILE_ID INT)
AS
BEGIN TRY
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
UPDATE TBDD_MODULES SET DB_VERSION = '1.0.0.1' where NAME = 'Clipboard-Searcher'
GO
ALTER TABLE [dbo].[TBCBS_PROFILES] DROP CONSTRAINT [UQ_TBCBS_PROFILES_REGEX]
GO
CREATE PROCEDURE [dbo].[PRCW_DELETE_PROFILE](@pPROFILE_ID INT)
AS
BEGIN TRY
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

View File

@ -1,4 +1,4 @@
UPDATE TBDD_MODULES SET DB_VERSION = '1.0.1.0' where UPPER(NAME) = UPPER('Clipboard-Watcher')
GO
ALTER TABLE TBCW_PROFILES ADD ACTIVE BIT NOT NULL DEFAULT 0
UPDATE TBDD_MODULES SET DB_VERSION = '1.0.1.0' where UPPER(NAME) = UPPER('Clipboard-Watcher')
GO
ALTER TABLE TBCW_PROFILES ADD ACTIVE BIT NOT NULL DEFAULT 0
GO

View File

@ -1,220 +1,220 @@
-- 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
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]
-- 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
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

View File

@ -0,0 +1,66 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.5.2.2' where NAME = 'Global-Indexer'
GO
IF COL_LENGTH('TBGI_FILES_USER','FILE_HASH') IS NOT NULL
PRINT 'Column FILE_HASH Exists';
ELSE
ALTER TABLE TBGI_FILES_USER ADD FILE_HASH VARCHAR(200) DEFAULT ''
GO
USE [DD_ECM_TEST]
GO
ALTER 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

View File

@ -1,9 +1,9 @@
UPDATE TBDD_MODULES SET PRODUCT_VERSION = '1.9.3.1' where NAME = 'Global-Indexer'
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
UPDATE TBDD_MODULES SET PRODUCT_VERSION = '1.9.3.1' where NAME = 'Global-Indexer'
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

View File

@ -1,37 +1,37 @@
UPDATE TBDD_MODULES SET PRODUCT_VERSION = '1.9.8.2' where NAME = 'Global-Indexer'
GO
ALTER VIEW [dbo].[VWGI_DOCTYPE] AS
SELECT DISTINCT
T.GUID AS [USER_ID],
T.USERNAME,
T2.NAME AS GROUP_NAME,
T3.DOCTYPE_ID,
T4.BEZEICHNUNG + ' - ' + T2.NAME AS DOCTYPE,
T4.BEZEICHNUNG AS DOCTYPE_ONLY,
T4.KURZNAME,
T4.ZIEL_PFAD,
T4.AKTIV,
T4.NAMENKONVENTION,
T4.OBJEKTTYP,
T4.SEQUENCE
FROM
TBDD_USER T,
TBDD_GROUPS_USER T1,
TBDD_USER_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) = ('GI')))
GO
UPDATE TBDD_MODULES SET PRODUCT_VERSION = '1.9.8.2' where NAME = 'Global-Indexer'
GO
ALTER VIEW [dbo].[VWGI_DOCTYPE] AS
SELECT DISTINCT
T.GUID AS [USER_ID],
T.USERNAME,
T2.NAME AS GROUP_NAME,
T3.DOCTYPE_ID,
T4.BEZEICHNUNG + ' - ' + T2.NAME AS DOCTYPE,
T4.BEZEICHNUNG AS DOCTYPE_ONLY,
T4.KURZNAME,
T4.ZIEL_PFAD,
T4.AKTIV,
T4.NAMENKONVENTION,
T4.OBJEKTTYP,
T4.SEQUENCE
FROM
TBDD_USER T,
TBDD_GROUPS_USER T1,
TBDD_USER_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) = ('GI')))
GO

View File

@ -1,6 +1,8 @@
UPDATE TBDD_MODULES SET DB_VERSION = '1.9.8.3' where NAME = 'Global-Indexer'
GO
ALTER TABLE TBDD_DOKUMENTART
ADD DUPLICATE_HANDLING VARCHAR(30) NOT NULL DEFAULT 'Default'
UPDATE TBDD_MODULES SET DB_VERSION = '1.9.8.3' where NAME = 'Global-Indexer'
GO
IF COL_LENGTH('TBDD_DOKUMENTART','DUPLICATE_HANDLING') IS NULL
BEGIN
ALTER TABLE TBDD_DOKUMENTART
ADD DUPLICATE_HANDLING VARCHAR(30) NOT NULL DEFAULT 'Default'
END
GO

View File

@ -1,192 +1,192 @@
UPDATE TBDD_MODULES SET DB_VERSION = '1.9.8.4' where NAME = 'Global-Indexer'
GO
ALTER VIEW [dbo].[VWGI_USER_GROUPS_RELATION] AS
SELECT
T.GUID,
T.USER_ID,
T2.USERNAME,
T.GROUP_ID,
T1.NAME,
T.[ADDED_WHO],
T.[ADDED_WHEN],
T.[CHANGED_WHO],
T.[CHANGED_WHEN]
FROM
TBDD_GROUPS_USER T,
TBDD_GROUPS T1,
TBDD_USER T2
WHERE
T.GROUP_ID = T1.GUID AND
T.USER_ID = T2.GUID AND
T1.INTERNAL = 0 AND
T1.ACTIVE = 1
GO
ALTER 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
ALTER VIEW [dbo].[VWGI_DOCTYPE] AS
SELECT DISTINCT
T.GUID AS [USER_ID],
T.USERNAME,
T2.NAME AS GROUP_NAME,
T3.DOCTYPE_ID,
T4.BEZEICHNUNG + ' - ' + T2.NAME AS DOCTYPE,
T4.BEZEICHNUNG AS DOCTYPE_ONLY,
T4.KURZNAME,
T4.ZIEL_PFAD,
T4.AKTIV,
T4.NAMENKONVENTION,
T4.OBJEKTTYP,
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(NAME) = UPPER('Global-Indexer')))
GO
CREATE 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_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),
@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'
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 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_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_RIGHT_FILE_DEL,@IS_IN_MODULE,@IS_ADMIN,@USERCOUNT_LOGGED_IN,@RESULT)
RETURN
END
GO
UPDATE TBDD_MODULES SET DB_VERSION = '1.9.8.4' where NAME = 'Global-Indexer'
GO
ALTER VIEW [dbo].[VWGI_USER_GROUPS_RELATION] AS
SELECT
T.GUID,
T.USER_ID,
T2.USERNAME,
T.GROUP_ID,
T1.NAME,
T.[ADDED_WHO],
T.[ADDED_WHEN],
T.[CHANGED_WHO],
T.[CHANGED_WHEN]
FROM
TBDD_GROUPS_USER T,
TBDD_GROUPS T1,
TBDD_USER T2
WHERE
T.GROUP_ID = T1.GUID AND
T.USER_ID = T2.GUID AND
T1.INTERNAL = 0 AND
T1.ACTIVE = 1
GO
ALTER 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
ALTER VIEW [dbo].[VWGI_DOCTYPE] AS
SELECT DISTINCT
T.GUID AS [USER_ID],
T.USERNAME,
T2.NAME AS GROUP_NAME,
T3.DOCTYPE_ID,
T4.BEZEICHNUNG + ' - ' + T2.NAME AS DOCTYPE,
T4.BEZEICHNUNG AS DOCTYPE_ONLY,
T4.KURZNAME,
T4.ZIEL_PFAD,
T4.AKTIV,
T4.NAMENKONVENTION,
T4.OBJEKTTYP,
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(NAME) = UPPER('Global-Indexer')))
GO
CREATE 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_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),
@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'
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 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_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_RIGHT_FILE_DEL,@IS_IN_MODULE,@IS_ADMIN,@USERCOUNT_LOGGED_IN,@RESULT)
RETURN
END
GO

View File

@ -1,50 +1,50 @@
UPDATE TBDD_MODULES SET DB_VERSION = '1.9.8.5' where NAME = 'Global-Indexer'
GO
ALTER TABLE TBDD_INDEX_MAN ADD MULTISELECT BIT NOT NULL DEFAULT 0
GO
ALTER VIEW [dbo].[VWDDINDEX_MAN]
AS
SELECT TOP 2000
T.GUID,
T.NAME INDEXNAME,
T.WD_INDEX,
T.MULTISELECT,
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
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
IF COL_LENGTH('TBDD_INDEX_MAN','VKT_ADD_ITEM') IS NULL
BEGIN
ALTER TABLE TBDD_INDEX_MAN
ADD [VKT_ADD_ITEM] BIT NOT NULL DEFAULT 0
END
GO
IF COL_LENGTH('TBDD_INDEX_MAN','VKT_PREVENT_MULTIPLE_VALUES') IS NULL
BEGIN
ALTER TABLE TBDD_INDEX_MAN
ADD [VKT_PREVENT_MULTIPLE_VALUES] BIT NOT NULL DEFAULT 1
END
GO
UPDATE TBDD_MODULES SET DB_VERSION = '1.9.8.5' where NAME = 'Global-Indexer'
GO
ALTER TABLE TBDD_INDEX_MAN ADD MULTISELECT BIT NOT NULL DEFAULT 0
GO
ALTER VIEW [dbo].[VWDDINDEX_MAN]
AS
SELECT TOP 2000
T.GUID,
T.NAME INDEXNAME,
T.WD_INDEX,
T.MULTISELECT,
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
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
IF COL_LENGTH('TBDD_INDEX_MAN','VKT_ADD_ITEM') IS NULL
BEGIN
ALTER TABLE TBDD_INDEX_MAN
ADD [VKT_ADD_ITEM] BIT NOT NULL DEFAULT 0
END
GO
IF COL_LENGTH('TBDD_INDEX_MAN','VKT_PREVENT_MULTIPLE_VALUES') IS NULL
BEGIN
ALTER TABLE TBDD_INDEX_MAN
ADD [VKT_PREVENT_MULTIPLE_VALUES] BIT NOT NULL DEFAULT 1
END
GO

View File

@ -1,23 +1,23 @@
UPDATE TBDD_MODULES SET DB_VERSION = '1.9.8.6' where NAME = 'Global-Indexer'
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
ALTER TABLE TBGI_HISTORY ADD ADDED_WHERE VARCHAR(100)
UPDATE TBDD_MODULES SET DB_VERSION = '1.9.8.6' where NAME = 'Global-Indexer'
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
ALTER TABLE TBGI_HISTORY ADD ADDED_WHERE VARCHAR(100)
GO

View File

@ -1,4 +1,4 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.0' where NAME = 'Global-Indexer'
GO
UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.0' where NAME = 'Global-Indexer'
GO

View File

@ -1,52 +1,52 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.1' where NAME = 'Global-Indexer'
GO
ALTER VIEW [dbo].[VWGI_DOCTYPE] AS
SELECT DISTINCT
T.GUID AS [USER_ID],
T.USERNAME,
T3.DOCTYPE_ID,
T4.BEZEICHNUNG AS DOCTYPE,
T4.BEZEICHNUNG AS DOCTYPE_ONLY,
T4.KURZNAME,
T4.ZIEL_PFAD,
T4.AKTIV,
T4.NAMENKONVENTION,
T4.OBJEKTTYP,
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,
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.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
UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.1' where NAME = 'Global-Indexer'
GO
ALTER VIEW [dbo].[VWGI_DOCTYPE] AS
SELECT DISTINCT
T.GUID AS [USER_ID],
T.USERNAME,
T3.DOCTYPE_ID,
T4.BEZEICHNUNG AS DOCTYPE,
T4.BEZEICHNUNG AS DOCTYPE_ONLY,
T4.KURZNAME,
T4.ZIEL_PFAD,
T4.AKTIV,
T4.NAMENKONVENTION,
T4.OBJEKTTYP,
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,
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.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

View File

@ -1,14 +1,14 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.12' where NAME = 'Global-Indexer'
GO
ALTER PROCEDURE [dbo].[PRDD_CHECK_REL_DOCTYPE_MODULE] (@MODULE_SHORT VARCHAR(20),@DOCTYPE_ID INTEGER)
AS
BEGIN
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) VALUES (@DOCTYPE_ID,@MODULEID)
END
GO
UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.12' where NAME = 'Global-Indexer'
GO
ALTER PROCEDURE [dbo].[PRDD_CHECK_REL_DOCTYPE_MODULE] (@MODULE_SHORT VARCHAR(20),@DOCTYPE_ID INTEGER)
AS
BEGIN
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) VALUES (@DOCTYPE_ID,@MODULEID)
END
GO
UPDATE TBDD_MODULES SET STRING1 = '\\windream\objects' WHERE SHORT_NAME = 'GLOBIX' AND STRING1 = 'W'

View File

@ -1,35 +1,35 @@
IF COL_LENGTH('TBDD_MODULES','DB_VERSION') IS NULL
BEGIN
ALTER TABLE TBDD_MODULES
ADD [DB_VERSION] VARCHAR(10) NOT NULL DEFAULT '1.0.0.0'
END
GO
UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.16' where NAME = 'Global-Indexer'
GO
IF OBJECT_ID('TBDD_USER_DOKTYPE', 'U') IS NULL
BEGIN
CREATE TABLE [dbo].[TBDD_USER_DOKTYPE](
[GUID] [int] IDENTITY(1,1) NOT NULL,
[DOCTYPE_ID] [int] NOT NULL,
[USER_ID] [int] NOT NULL,
[ADDED_WHO] [varchar](50) NOT NULL,
[ADDED_WHEN] [datetime] NULL,
[CHANGED_WHEN] [datetime] NULL,
CONSTRAINT [PKTBDD_USER_DOKTYPE] 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]
) ON [PRIMARY];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] ADD DEFAULT ('Digital Data') FOR [ADDED_WHO];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] ADD DEFAULT (getdate()) FOR [ADDED_WHEN];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] WITH CHECK ADD CONSTRAINT [FK_TBDD_USER_DOKTYPE_DOCTYPE_ID] FOREIGN KEY([DOCTYPE_ID])
REFERENCES [dbo].[TBDD_DOKUMENTART] ([GUID]);
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] CHECK CONSTRAINT [FK_TBDD_USER_DOKTYPE_DOCTYPE_ID];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] WITH CHECK ADD CONSTRAINT [FK_TBDD_USER_DOKTYPE_USER_ID] FOREIGN KEY([USER_ID])
REFERENCES [dbo].[TBDD_USER] ([GUID]);
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] CHECK CONSTRAINT [FK_TBDD_USER_DOKTYPE_USER_ID];
END
IF COL_LENGTH('TBDD_MODULES','DB_VERSION') IS NULL
BEGIN
ALTER TABLE TBDD_MODULES
ADD [DB_VERSION] VARCHAR(10) NOT NULL DEFAULT '1.0.0.0'
END
GO
UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.16' where NAME = 'Global-Indexer'
GO
IF OBJECT_ID('TBDD_USER_DOKTYPE', 'U') IS NULL
BEGIN
CREATE TABLE [dbo].[TBDD_USER_DOKTYPE](
[GUID] [int] IDENTITY(1,1) NOT NULL,
[DOCTYPE_ID] [int] NOT NULL,
[USER_ID] [int] NOT NULL,
[ADDED_WHO] [varchar](50) NOT NULL,
[ADDED_WHEN] [datetime] NULL,
[CHANGED_WHEN] [datetime] NULL,
CONSTRAINT [PKTBDD_USER_DOKTYPE] 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]
) ON [PRIMARY];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] ADD DEFAULT ('Digital Data') FOR [ADDED_WHO];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] ADD DEFAULT (getdate()) FOR [ADDED_WHEN];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] WITH CHECK ADD CONSTRAINT [FK_TBDD_USER_DOKTYPE_DOCTYPE_ID] FOREIGN KEY([DOCTYPE_ID])
REFERENCES [dbo].[TBDD_DOKUMENTART] ([GUID]);
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] CHECK CONSTRAINT [FK_TBDD_USER_DOKTYPE_DOCTYPE_ID];
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] WITH CHECK ADD CONSTRAINT [FK_TBDD_USER_DOKTYPE_USER_ID] FOREIGN KEY([USER_ID])
REFERENCES [dbo].[TBDD_USER] ([GUID]);
ALTER TABLE [dbo].[TBDD_USER_DOKTYPE] CHECK CONSTRAINT [FK_TBDD_USER_DOKTYPE_USER_ID];
END

View File

@ -1,20 +1,20 @@
/*
VOR DEM AUSFÜHREN DIESER DATEI MÜSSEN ZUERST DIE EINTRÄGE IN DER TABELLE0 "TBGI_REGEX_DOCTYPE" BEREINIGT WERDEN!
ES MÜSSEN DOPPELTE EINTRÄGE FÜR EIN PROFIL ENTFERNT WERDEN!
*/
IF COL_LENGTH('TBDD_MODULES','DB_VERSION') IS NULL
BEGIN
ALTER TABLE TBDD_MODULES
ADD [DB_VERSION] VARCHAR(10) NOT NULL DEFAULT '1.0.0.0'
END
GO
UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.34' where NAME = 'Global-Indexer'
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);
/*
VOR DEM AUSFÜHREN DIESER DATEI MÜSSEN ZUERST DIE EINTRÄGE IN DER TABELLE0 "TBGI_REGEX_DOCTYPE" BEREINIGT WERDEN!
ES MÜSSEN DOPPELTE EINTRÄGE FÜR EIN PROFIL ENTFERNT WERDEN!
*/
IF COL_LENGTH('TBDD_MODULES','DB_VERSION') IS NULL
BEGIN
ALTER TABLE TBDD_MODULES
ADD [DB_VERSION] VARCHAR(10) NOT NULL DEFAULT '1.0.0.0'
END
GO
UPDATE TBDD_MODULES SET DB_VERSION = '2.0.0.34' where NAME = 'Global-Indexer'
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

View File

@ -1,71 +1,71 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.4.0.0' where NAME = 'Global-Indexer'
GO
ALTER 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
ALTER 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
UPDATE TBDD_MODULES SET DB_VERSION = '2.4.0.0' where NAME = 'Global-Indexer'
GO
ALTER 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
ALTER 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

View File

@ -1,3 +1,3 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.4.0.0' where NAME = 'Global-Indexer'
GO
UPDATE TBDD_MODULES SET DB_VERSION = '2.4.0.0' where NAME = 'Global-Indexer'
GO
ALTER TABLE TBDD_INDEX_AUTOM ADD [SEQUENCE] TINYINT NOT NULL DEFAULT 0;

View File

@ -1,25 +1,25 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.5.0.0' where NAME = 'Global-Indexer'
GO
ALTER TABLE TBGI_HISTORY ADD FILE_HASH VARCHAR(100) NULL
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX1 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX2 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX3 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX4 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX5 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX6 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX7 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX8 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX9 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX10 VARCHAR(250)
GO
UPDATE TBDD_MODULES SET DB_VERSION = '2.5.0.0' where NAME = 'Global-Indexer'
GO
ALTER TABLE TBGI_HISTORY ADD FILE_HASH VARCHAR(100) NULL
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX1 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX2 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX3 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX4 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX5 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX6 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX7 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX8 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX9 VARCHAR(250)
GO
ALTER TABLE TBGI_HISTORY ALTER COLUMN INDEX10 VARCHAR(250)
GO

View File

@ -1,5 +1,9 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.5.0.1' where NAME = 'Global-Indexer'
GO
ALTER TABLE TBGI_HISTORY ADD ADDED_WHERE VARCHAR(100) NULL
UPDATE TBDD_MODULES SET DB_VERSION = '2.5.0.1' where NAME = 'Global-Indexer'
GO
IF COL_LENGTH('TBGI_HISTORY','ADDED_WHERE') IS NULL
BEGIN
ALTER TABLE TBGI_HISTORY ADD ADDED_WHERE VARCHAR(100) NULL
END
ELSE
PRINT 'COL ADDED_WHERE is existing'
GO

View File

@ -1,34 +1,34 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.5.1.0' where NAME = 'Global-Indexer'
GO
ALTER 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
UPDATE TBDD_MODULES SET DB_VERSION = '2.5.1.0' where NAME = 'Global-Indexer'
GO
ALTER 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

View File

@ -1,59 +1,59 @@
UPDATE TBDD_MODULES SET DB_VERSION = '2.5.2.0' where NAME = 'Global-Indexer'
GO
ALTER 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
UPDATE TBDD_MODULES SET DB_VERSION = '2.5.2.0' where NAME = 'Global-Indexer'
GO
ALTER 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

View File

@ -1,13 +1,13 @@
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
IF COL_LENGTH('TBGI_FILES_USER','FILE_HASH') IS NOT NULL
PRINT 'Column Exists';
ELSE
ALTER TABLE TBGI_FILES_USER ADD FILE_HASH VARCHAR(200) DEFAULT ''
GO
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
IF COL_LENGTH('TBGI_FILES_USER','FILE_HASH') IS NOT NULL
PRINT 'Column FILE_HASH Exists';
ELSE
ALTER TABLE TBGI_FILES_USER ADD FILE_HASH VARCHAR(200) DEFAULT ''
GO

View File

@ -1,172 +1,172 @@
# Change Log Record Organizer - All noteable changes to this project will be documented in this file.
###############################################################################################################################
[2.5.0.7] - Handling Record/DocLink, Weitere sichten visible = false if not configured
[2.5.0.6] - Ribbon Design - Icon Changing
[2.5.0.5] - Internal
[2.5.0.4] - Internal
[2.5.0.3] - Internal
### Changed
- Switching Connection-functionality
- Entity Open Check (is open? Maximize)
- Doctype-Adding (bugfix)
[2.5.0.2] - 06.05
Internal Release - Optimization
[2.5.0.1] - 16.01.2019
### Changed
- OfficeFile handling after editing (Replacing internal DocID)
- StructureNodes - Handling edit
[2.5.0.0] - 25.10.2018
### Changed
- Add Linking doc to records (change between entities)
- right click file: reorder items, save layout added
### Changed
Structure Nodes:
- Adding nodes manually
Others:
- Linking doc to records
- Checking file existing vs windream client malfunction
## [2.4.9.8] - 16.07.2018
### Changed
Structure Nodes:
- Adding nodes manually
Others:
- Linking doc to records
- Checking file existing vs windream client malfunction
## [2.4.9.7] - 19.01.2018
### Changed
- Structure Nodes Navigation - Refreshing
- Logging
## [2.4.9.5] - 26.10.2017
### Added
- DB-Procedures Creating Records and Values
- Integrity Check - Displayed Data vs. Database Data
## [2.4.9.4] - 24.10.2017
### Changed
- Bugfixing: Updating Multiple Values
- Checking ECM-Files existing with MasterUser
## [2.4.9.3] - 26.09.2017
### Changed
- RecordView: Changing status without adding a comment. (was required so far)
- DocumentViewer: getting correct DocID, firstrow bugfix
## [2.4.9.2] - 22.09.2017
### Added
- Minimum required version for Addi
### Changed
- bugfix changing RecordView and Workflow-Automatism on proxyservers
- checks for replacing files in version-updating
## [2.4.9.1] - 05.09.2017
### Changed
- bugfix changing doc metadata for multiple linked documents
## [2.4.9.0] - 24.08.2017
### Changed
- DateFormat-User specific in docresults
- Error Multiple rows in docvalues when document is linked multiple times
- Error PMO-Link Emails: Opening DetailView (Views not loaded)
- bugfixing
## [2.4.8.9] - 30.05.2017
### Changed
- Saving Constructor-layout per entity (splitter, Datagrid)
- Adding automated updates for Addons
## [2.4.8.8] - 27.04.2017
### Changed
- Saving Datagrid Records everytime loosing focus
- Proxyserver-login: Adding Proxyserver
- Looging: Adding Now (Datetime) as prefix
## [2.4.8.7] - 25.04.2017
### Changed
- Updating-routines Proxy Server changed
- Positions: Update-Behaviour Proxyserver
- Currency-formatting changed: no currency symbol
- Drag Drop File - Automatic saving and controlling fields required
- internal bugfixing
## [2.4.8.6] - 30.03.2017
### Added
- Functionality Entitytables integrated - SPEED
- Creating and Adding records to Entitytables - Entity-designer
### Changed
- Buttons Administration Level - Names and terms adapted
- Doc-Metadata: Automatism adding defaultvalues
- Removed messages for proxysynchronizing
- internal bugfixing
## [2.4.8.5] - 10.03.2017
### Added
- Automatic Version-Checking and Updating
- Right Manager - Explicit right-checking for records
### Changed
- Renaming Files: Proxy-Update included
- Adding positions
- Bugfix Rightmanagement (all users entity got reading rights)
- Workflow and Tasks - Redesign
## [2.4.8.4] - 06.02.2017
### Changed
- internal bugfixing
## [2.4.8.3] - 24.01.2017
### Added
- Functionality for File-Existing when accessing file
- Right management fully integrated
### Changed
- internal bugfixing
## [2.4.8.3]
### Added
- Right Management User-Entity - Allow Admins to update and add rights
- Information in MainForm ProxyUsed or not
### Changed
Proxy Server Functionality - Adding Views for faster refreshing
- General bugfixing
## [2.4.8.2]
### Added
- Proxy Server Functionality - Add local ProxyServer for speeding up queries
- Right click functionality Docs
- windream - Change Doctype and manual indices
- Fulltextsearch: Searching of ADDI-data included
- Select-Only option for comboboxes
### Changed
Bugfixing:
- General bugfixing
## [2.4.8.1] - 22.12.2016
### Added
- Navigation withGeo-Coordinates -
- Right click functionality Doc
- windream - create new version
- Change Doctype
- Entitysearch right click - Entity-navigation
- Entitywide Search
- Entitysearch below selected node (Only in Node-Navigation)
- Fulltextsearch - seperate window for selection
- only for documents below selected node (Only in Node-Navigation)
### Changed
Bugfixing:
- Doc take in work process. Admin can free the document
- Right Click Resultfiles: Gather all selected files for operations
## [2.4.8.0] - 28.11.2016
### Added
- Personified login for administrators - When hitting ESC during ADDI Splash Screen load
- Form Global Search (fulltext combined with record-search) - Administrators can add users: Administration - Extra Views User.
- Display style Doc Results: Results now can be shown on first tab
Entity-related configuration - Administration - ConstructorDesigner - Configuration file search
- Creating variants: Record-functions
- Right Manager: Functionality "Check or Renew Rights for User" added
- Showing Release Notes in Information dialog
### Changed
- Automatically hiding Navigation Strip of Mainform
- Automatically hide TreeView Navigation in Entityview if Entity is only one
- Locking DocResults: from standard during navigation the docresults now are locked. No changes (deleting, opening) until switchin win work/edit mode.
==> Entity-related configuration - Administration - ConstructorDesigner - Configuration file search
- Drag Drop file - Indexing and refreshing added to sql-procedure (before GUI) relevant to speed issues
# Change Log Record Organizer - All noteable changes to this project will be documented in this file.
###############################################################################################################################
[2.5.0.7] - Handling Record/DocLink, Weitere sichten visible = false if not configured
[2.5.0.6] - Ribbon Design - Icon Changing
[2.5.0.5] - Internal
[2.5.0.4] - Internal
[2.5.0.3] - Internal
### Changed
- Switching Connection-functionality
- Entity Open Check (is open? Maximize)
- Doctype-Adding (bugfix)
[2.5.0.2] - 06.05
Internal Release - Optimization
[2.5.0.1] - 16.01.2019
### Changed
- OfficeFile handling after editing (Replacing internal DocID)
- StructureNodes - Handling edit
[2.5.0.0] - 25.10.2018
### Changed
- Add Linking doc to records (change between entities)
- right click file: reorder items, save layout added
### Changed
Structure Nodes:
- Adding nodes manually
Others:
- Linking doc to records
- Checking file existing vs windream client malfunction
## [2.4.9.8] - 16.07.2018
### Changed
Structure Nodes:
- Adding nodes manually
Others:
- Linking doc to records
- Checking file existing vs windream client malfunction
## [2.4.9.7] - 19.01.2018
### Changed
- Structure Nodes Navigation - Refreshing
- Logging
## [2.4.9.5] - 26.10.2017
### Added
- DB-Procedures Creating Records and Values
- Integrity Check - Displayed Data vs. Database Data
## [2.4.9.4] - 24.10.2017
### Changed
- Bugfixing: Updating Multiple Values
- Checking ECM-Files existing with MasterUser
## [2.4.9.3] - 26.09.2017
### Changed
- RecordView: Changing status without adding a comment. (was required so far)
- DocumentViewer: getting correct DocID, firstrow bugfix
## [2.4.9.2] - 22.09.2017
### Added
- Minimum required version for Addi
### Changed
- bugfix changing RecordView and Workflow-Automatism on proxyservers
- checks for replacing files in version-updating
## [2.4.9.1] - 05.09.2017
### Changed
- bugfix changing doc metadata for multiple linked documents
## [2.4.9.0] - 24.08.2017
### Changed
- DateFormat-User specific in docresults
- Error Multiple rows in docvalues when document is linked multiple times
- Error PMO-Link Emails: Opening DetailView (Views not loaded)
- bugfixing
## [2.4.8.9] - 30.05.2017
### Changed
- Saving Constructor-layout per entity (splitter, Datagrid)
- Adding automated updates for Addons
## [2.4.8.8] - 27.04.2017
### Changed
- Saving Datagrid Records everytime loosing focus
- Proxyserver-login: Adding Proxyserver
- Looging: Adding Now (Datetime) as prefix
## [2.4.8.7] - 25.04.2017
### Changed
- Updating-routines Proxy Server changed
- Positions: Update-Behaviour Proxyserver
- Currency-formatting changed: no currency symbol
- Drag Drop File - Automatic saving and controlling fields required
- internal bugfixing
## [2.4.8.6] - 30.03.2017
### Added
- Functionality Entitytables integrated - SPEED
- Creating and Adding records to Entitytables - Entity-designer
### Changed
- Buttons Administration Level - Names and terms adapted
- Doc-Metadata: Automatism adding defaultvalues
- Removed messages for proxysynchronizing
- internal bugfixing
## [2.4.8.5] - 10.03.2017
### Added
- Automatic Version-Checking and Updating
- Right Manager - Explicit right-checking for records
### Changed
- Renaming Files: Proxy-Update included
- Adding positions
- Bugfix Rightmanagement (all users entity got reading rights)
- Workflow and Tasks - Redesign
## [2.4.8.4] - 06.02.2017
### Changed
- internal bugfixing
## [2.4.8.3] - 24.01.2017
### Added
- Functionality for File-Existing when accessing file
- Right management fully integrated
### Changed
- internal bugfixing
## [2.4.8.3]
### Added
- Right Management User-Entity - Allow Admins to update and add rights
- Information in MainForm ProxyUsed or not
### Changed
Proxy Server Functionality - Adding Views for faster refreshing
- General bugfixing
## [2.4.8.2]
### Added
- Proxy Server Functionality - Add local ProxyServer for speeding up queries
- Right click functionality Docs
- windream - Change Doctype and manual indices
- Fulltextsearch: Searching of ADDI-data included
- Select-Only option for comboboxes
### Changed
Bugfixing:
- General bugfixing
## [2.4.8.1] - 22.12.2016
### Added
- Navigation withGeo-Coordinates -
- Right click functionality Doc
- windream - create new version
- Change Doctype
- Entitysearch right click - Entity-navigation
- Entitywide Search
- Entitysearch below selected node (Only in Node-Navigation)
- Fulltextsearch - seperate window for selection
- only for documents below selected node (Only in Node-Navigation)
### Changed
Bugfixing:
- Doc take in work process. Admin can free the document
- Right Click Resultfiles: Gather all selected files for operations
## [2.4.8.0] - 28.11.2016
### Added
- Personified login for administrators - When hitting ESC during ADDI Splash Screen load
- Form Global Search (fulltext combined with record-search) - Administrators can add users: Administration - Extra Views User.
- Display style Doc Results: Results now can be shown on first tab
Entity-related configuration - Administration - ConstructorDesigner - Configuration file search
- Creating variants: Record-functions
- Right Manager: Functionality "Check or Renew Rights for User" added
- Showing Release Notes in Information dialog
### Changed
- Automatically hiding Navigation Strip of Mainform
- Automatically hide TreeView Navigation in Entityview if Entity is only one
- Locking DocResults: from standard during navigation the docresults now are locked. No changes (deleting, opening) until switchin win work/edit mode.
==> Entity-related configuration - Administration - ConstructorDesigner - Configuration file search
- Drag Drop file - Indexing and refreshing added to sql-procedure (before GUI) relevant to speed issues

View File

Before

Width:  |  Height:  |  Size: 8.9 KiB

After

Width:  |  Height:  |  Size: 8.9 KiB

View File

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 62 KiB

View File

@ -1,5 +1,5 @@
select T.VALUE,
T.RECORD_ID, T.CONTROL_ID,T.CONTROL_COLUMN,T1.FORM_TITLE
from VWPMO_VALUES T, TBPMO_FORM_VIEW T1 where
T.FORM_ID = T1.FORM_ID AND
select T.VALUE,
T.RECORD_ID, T.CONTROL_ID,T.CONTROL_COLUMN,T1.FORM_TITLE
from VWPMO_VALUES T, TBPMO_FORM_VIEW T1 where
T.FORM_ID = T1.FORM_ID AND
T.VALUE LIKE '%den R%' ORDER BY T.VALUE

View File

@ -1,43 +1,43 @@
BEGIN
DECLARE
@GUID INTEGER,
@CONTROL_ID INTEGER,
@RECORD_ID INTEGER,
@VALUE VARCHAR(MAX),
@NEW_VALUE VARCHAR(MAX),
@INDEX INTEGER,
@ADDED_WHO VARCHAR(50)
DECLARE c_Values CURSOR FOR
SELECT GUID,CONTROL_ID,RECORD_ID,VALUE,ADDED_WHO FROM TBPMO_CONTROL_VALUE WHERE VALUE LIKE '%;%' AND CONTROL_ID NOT IN (SELECT GUID FROM TBPMO_CONTROL WHERE CONTROL_TYPE_ID = 2) ORDER BY RECORD_ID,CONTROL_ID
OPEN c_Values
FETCH NEXT FROM c_Values INTO @GUID,@CONTROL_ID,@RECORD_ID,@VALUE,@ADDED_WHO
WHILE @@FETCH_STATUS = 0
BEGIN
SET @INDEX = 0
--#####
DECLARE c_NEWVALUES CURSOR FOR
SELECT Item FROM dbo.FN_SPLIT_STRING(@VALUE, ';')
OPEN c_NEWVALUES
FETCH NEXT FROM c_NEWVALUES INTO @NEW_VALUE
WHILE @@FETCH_STATUS = 0
BEGIN
SET @NEW_VALUE = LTRIM(@NEW_VALUE)
IF @INDEX = 0
UPDATE TBPMO_CONTROL_VALUE SET VALUE = @NEW_VALUE WHERE GUID = @GUID
ELSE
INSERT INTO TBPMO_CONTROL_VALUE (CONTROL_ID,RECORD_ID,VALUE,ADDED_WHO) VALUES
(@CONTROL_ID,@RECORD_ID,@NEW_VALUE,@ADDED_WHO)
PRINT CONVERT(VARCHAR(5),@CONTROL_ID) + '#' + CONVERT(VARCHAR(5),@INDEX) + '-' + @NEW_VALUE
SET @INDEX = @INDEX + 1
FETCH NEXT FROM c_NEWVALUES INTO @NEW_VALUE
END
CLOSE c_NEWVALUES
DEALLOCATE c_NEWVALUES
--#####
FETCH NEXT FROM c_Values INTO @GUID,@CONTROL_ID,@RECORD_ID,@VALUE,@ADDED_WHO
END
CLOSE c_Values
DEALLOCATE c_Values
BEGIN
DECLARE
@GUID INTEGER,
@CONTROL_ID INTEGER,
@RECORD_ID INTEGER,
@VALUE VARCHAR(MAX),
@NEW_VALUE VARCHAR(MAX),
@INDEX INTEGER,
@ADDED_WHO VARCHAR(50)
DECLARE c_Values CURSOR FOR
SELECT GUID,CONTROL_ID,RECORD_ID,VALUE,ADDED_WHO FROM TBPMO_CONTROL_VALUE WHERE VALUE LIKE '%;%' AND CONTROL_ID NOT IN (SELECT GUID FROM TBPMO_CONTROL WHERE CONTROL_TYPE_ID = 2) ORDER BY RECORD_ID,CONTROL_ID
OPEN c_Values
FETCH NEXT FROM c_Values INTO @GUID,@CONTROL_ID,@RECORD_ID,@VALUE,@ADDED_WHO
WHILE @@FETCH_STATUS = 0
BEGIN
SET @INDEX = 0
--#####
DECLARE c_NEWVALUES CURSOR FOR
SELECT Item FROM dbo.FN_SPLIT_STRING(@VALUE, ';')
OPEN c_NEWVALUES
FETCH NEXT FROM c_NEWVALUES INTO @NEW_VALUE
WHILE @@FETCH_STATUS = 0
BEGIN
SET @NEW_VALUE = LTRIM(@NEW_VALUE)
IF @INDEX = 0
UPDATE TBPMO_CONTROL_VALUE SET VALUE = @NEW_VALUE WHERE GUID = @GUID
ELSE
INSERT INTO TBPMO_CONTROL_VALUE (CONTROL_ID,RECORD_ID,VALUE,ADDED_WHO) VALUES
(@CONTROL_ID,@RECORD_ID,@NEW_VALUE,@ADDED_WHO)
PRINT CONVERT(VARCHAR(5),@CONTROL_ID) + '#' + CONVERT(VARCHAR(5),@INDEX) + '-' + @NEW_VALUE
SET @INDEX = @INDEX + 1
FETCH NEXT FROM c_NEWVALUES INTO @NEW_VALUE
END
CLOSE c_NEWVALUES
DEALLOCATE c_NEWVALUES
--#####
FETCH NEXT FROM c_Values INTO @GUID,@CONTROL_ID,@RECORD_ID,@VALUE,@ADDED_WHO
END
CLOSE c_Values
DEALLOCATE c_Values
END

View File

@ -1,43 +1,43 @@
BEGIN
DECLARE
@CONTROL_ID INTEGER,
@RECORD_ID INTEGER,
@ACT_RECORD_ID INTEGER,
@VALUE VARCHAR(MAX),
@NEW_VALUE VARCHAR(MAX),
@INDEX INTEGER
DECLARE c_Control_Values CURSOR FOR
select CONTROL_ID,RECORD_ID FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID IN (SELECT GUID FROM TBPMO_CONTROL WHERE CONTROL_TYPE_ID = 2) GROUP BY CONTROL_ID,RECORD_ID HAVING COUNT(GUID) > 1 ORDER BY RECORD_ID
OPEN c_Control_Values
FETCH NEXT FROM c_Control_Values INTO @CONTROL_ID, @RECORD_ID
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT 'RECORD: ' + CONVERT(VARCHAR(10),@RECORD_ID)
SET @NEW_VALUE = ''
SET @INDEX = 0
DECLARE c_ROWVALUES CURSOR FOR
SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = @CONTROL_ID AND RECORD_ID = @RECORD_ID
OPEN c_ROWVALUES
FETCH NEXT FROM c_ROWVALUES INTO @VALUE
WHILE @@FETCH_STATUS = 0
BEGIN
IF @INDEX = 0
SET @NEW_VALUE = @VALUE
ELSE
SET @NEW_VALUE += ';' + @VALUE
SET @INDEX += 1
FETCH NEXT FROM c_ROWVALUES INTO @VALUE
END
PRINT 'JETZT DAS UPDATE UND DELETE FÜR RECORD: ' + CONVERT(VARCHAR(10),@RECORD_ID)
PRINT '@NEW_VALUE: ' + CONVERT(VARCHAR(500),@NEW_VALUE)
DELETE FROM TBPMO_CONTROL_VALUE WHERE RECORD_ID = @RECORD_ID AND CONTROL_ID = @CONTROL_ID
INSERT INTO TBPMO_CONTROL_VALUE (CONTROL_ID,RECORD_ID,VALUE) VALUES (@CONTROL_ID,@RECORD_ID,@NEW_VALUE)
CLOSE c_ROWVALUES
DEALLOCATE c_ROWVALUES
FETCH NEXT FROM c_Control_Values INTO @CONTROL_ID, @RECORD_ID
END
CLOSE c_Control_Values
DEALLOCATE c_Control_Values
BEGIN
DECLARE
@CONTROL_ID INTEGER,
@RECORD_ID INTEGER,
@ACT_RECORD_ID INTEGER,
@VALUE VARCHAR(MAX),
@NEW_VALUE VARCHAR(MAX),
@INDEX INTEGER
DECLARE c_Control_Values CURSOR FOR
select CONTROL_ID,RECORD_ID FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID IN (SELECT GUID FROM TBPMO_CONTROL WHERE CONTROL_TYPE_ID = 2) GROUP BY CONTROL_ID,RECORD_ID HAVING COUNT(GUID) > 1 ORDER BY RECORD_ID
OPEN c_Control_Values
FETCH NEXT FROM c_Control_Values INTO @CONTROL_ID, @RECORD_ID
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT 'RECORD: ' + CONVERT(VARCHAR(10),@RECORD_ID)
SET @NEW_VALUE = ''
SET @INDEX = 0
DECLARE c_ROWVALUES CURSOR FOR
SELECT VALUE FROM TBPMO_CONTROL_VALUE WHERE CONTROL_ID = @CONTROL_ID AND RECORD_ID = @RECORD_ID
OPEN c_ROWVALUES
FETCH NEXT FROM c_ROWVALUES INTO @VALUE
WHILE @@FETCH_STATUS = 0
BEGIN
IF @INDEX = 0
SET @NEW_VALUE = @VALUE
ELSE
SET @NEW_VALUE += ';' + @VALUE
SET @INDEX += 1
FETCH NEXT FROM c_ROWVALUES INTO @VALUE
END
PRINT 'JETZT DAS UPDATE UND DELETE FÜR RECORD: ' + CONVERT(VARCHAR(10),@RECORD_ID)
PRINT '@NEW_VALUE: ' + CONVERT(VARCHAR(500),@NEW_VALUE)
DELETE FROM TBPMO_CONTROL_VALUE WHERE RECORD_ID = @RECORD_ID AND CONTROL_ID = @CONTROL_ID
INSERT INTO TBPMO_CONTROL_VALUE (CONTROL_ID,RECORD_ID,VALUE) VALUES (@CONTROL_ID,@RECORD_ID,@NEW_VALUE)
CLOSE c_ROWVALUES
DEALLOCATE c_ROWVALUES
FETCH NEXT FROM c_Control_Values INTO @CONTROL_ID, @RECORD_ID
END
CLOSE c_Control_Values
DEALLOCATE c_Control_Values
END

View File

@ -1,12 +1,12 @@
Use master
Go
Alter Database DD_ECM Set Single_User With RollBack Immediate
ALTER DATABASE DD_ECM -- put your database name here
COLLATE Latin1_General_CI_AS
ALTER DATABASE DD_ECM
SET MULTI_USER;
Use master
Go
Alter Database DD_ECM Set Single_User With RollBack Immediate
ALTER DATABASE DD_ECM -- put your database name here
COLLATE Latin1_General_CI_AS
ALTER DATABASE DD_ECM
SET MULTI_USER;
GO

View File

@ -1,111 +1,111 @@
DECLARE
@ENTITY_ID INTEGER,
@CONTROL_ID INTEGER,
@GUID INTEGER,
@VALUE VARCHAR(MAX)
DECLARE c_REDO CURSOR FOR
SELECT FORM_ID FROM TBPMO_FORM_VIEW WHERE DOCUMENT_VIEW = 1
OPEN c_REDO
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
WHILE @@FETCH_STATUS = 0
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Filename' AND HEADER_CAPTION = 'Dateiname')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION) VALUES
(@ENTITY_ID,'Filename','Dateiname')
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Doctype' AND HEADER_CAPTION = 'Dokumentart')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION) VALUES
(@ENTITY_ID,'Doctype','Dokumentart')
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK' AND HEADER_CAPTION = 'in work?')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'IN_WORK','in work?',50)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK_USER' AND HEADER_CAPTION = 'IW_USER')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION,VISIBLE) VALUES
(@ENTITY_ID,'IN_WORK_USER','IW_USER',0)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK_COMMENT' AND HEADER_CAPTION = 'IW_COMMENT')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION,VISIBLE) VALUES
(@ENTITY_ID,'IN_WORK_COMMENT','IW_COMMENT',0)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Creation_DateTime' AND HEADER_CAPTION = 'Erstellt')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'Creation_DateTime','Erstellt',100)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Change_DateTime' AND HEADER_CAPTION = 'Geändert')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'Change_DateTime','Geändert',100)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Filename' AND HEADER_CAPTION = 'Filename')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION) VALUES
(@ENTITY_ID,'en-US','Filename','Filename')
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Doctype' AND HEADER_CAPTION = 'Doctype')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION) VALUES
(@ENTITY_ID,'en-US','Doctype','Doctype')
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK' AND HEADER_CAPTION = 'in work?')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'en-US','IN_WORK','in work?',50)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK_USER' AND HEADER_CAPTION = 'IW_USER')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION,VISIBLE) VALUES
(@ENTITY_ID,'en-US','IN_WORK_USER','IW_USER',0)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK_COMMENT' AND HEADER_CAPTION = 'IW_COMMENT')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION,VISIBLE) VALUES
(@ENTITY_ID,'en-US','IN_WORK_COMMENT','IW_COMMENT',0)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Creation_DateTime' AND HEADER_CAPTION = 'Created')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'en-US','Creation_DateTime','Created',100)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Change_DateTime' AND HEADER_CAPTION = 'Changed')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'en-US','Change_DateTime','Changed',100)
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
END
CLOSE c_REDO
DEALLOCATE c_REDO
GO
DECLARE
@ENTITY_ID INTEGER,
@CONTROL_ID INTEGER,
@GUID INTEGER,
@VALUE VARCHAR(MAX)
DECLARE c_REDO CURSOR FOR
SELECT GUID FROM TBPMO_FORM
OPEN c_REDO
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC [dbo].[PRPMO_CREATE_SQL] @ENTITY_ID
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
END
CLOSE c_REDO
DEALLOCATE c_REDO
EXECUTE [dbo].[PRPMO_CREATE_TEMP_VIEWS]
DECLARE
@ENTITY_ID INTEGER
DECLARE c_REDO CURSOR FOR
SELECT GUID FROM TBPMO_FORM
OPEN c_REDO
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC [dbo].PRPMO_CREATE_ENTITY_TABLE @ENTITY_ID
EXEC [dbo].PRPMO_ENTITY_TABLE_IMPORT_RECORDS @ENTITY_ID
EXEC [dbo].PRPMO_CREATE_ENTITY_TABLE_VIEW @ENTITY_ID
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
END
CLOSE c_REDO
DEALLOCATE c_REDO
DECLARE
@ENTITY_ID INTEGER,
@CONTROL_ID INTEGER,
@GUID INTEGER,
@VALUE VARCHAR(MAX)
DECLARE c_REDO CURSOR FOR
SELECT FORM_ID FROM TBPMO_FORM_VIEW WHERE DOCUMENT_VIEW = 1
OPEN c_REDO
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
WHILE @@FETCH_STATUS = 0
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Filename' AND HEADER_CAPTION = 'Dateiname')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION) VALUES
(@ENTITY_ID,'Filename','Dateiname')
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Doctype' AND HEADER_CAPTION = 'Dokumentart')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION) VALUES
(@ENTITY_ID,'Doctype','Dokumentart')
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK' AND HEADER_CAPTION = 'in work?')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'IN_WORK','in work?',50)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK_USER' AND HEADER_CAPTION = 'IW_USER')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION,VISIBLE) VALUES
(@ENTITY_ID,'IN_WORK_USER','IW_USER',0)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK_COMMENT' AND HEADER_CAPTION = 'IW_COMMENT')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION,VISIBLE) VALUES
(@ENTITY_ID,'IN_WORK_COMMENT','IW_COMMENT',0)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Creation_DateTime' AND HEADER_CAPTION = 'Erstellt')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'Creation_DateTime','Erstellt',100)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'de-DE' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Change_DateTime' AND HEADER_CAPTION = 'Geändert')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'Change_DateTime','Geändert',100)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Filename' AND HEADER_CAPTION = 'Filename')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION) VALUES
(@ENTITY_ID,'en-US','Filename','Filename')
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Doctype' AND HEADER_CAPTION = 'Doctype')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION) VALUES
(@ENTITY_ID,'en-US','Doctype','Doctype')
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK' AND HEADER_CAPTION = 'in work?')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'en-US','IN_WORK','in work?',50)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK_USER' AND HEADER_CAPTION = 'IW_USER')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION,VISIBLE) VALUES
(@ENTITY_ID,'en-US','IN_WORK_USER','IW_USER',0)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'IN_WORK_COMMENT' AND HEADER_CAPTION = 'IW_COMMENT')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION,VISIBLE) VALUES
(@ENTITY_ID,'en-US','IN_WORK_COMMENT','IW_COMMENT',0)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Creation_DateTime' AND HEADER_CAPTION = 'Created')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'en-US','Creation_DateTime','Created',100)
IF NOT EXISTS(SELECT GUID FROM TBPMO_DOCSEARCH_RESULTLIST_CONFIG WHERE LANGUAGE = 'en-US' AND ENTITY_ID = @ENTITY_ID AND
COLUMN_VIEW = 'Change_DateTime' AND HEADER_CAPTION = 'Changed')
INSERT INTO TBPMO_DOCSEARCH_RESULTLIST_CONFIG (ENTITY_ID,LANGUAGE,COLUMN_VIEW,HEADER_CAPTION,WIDTH) VALUES
(@ENTITY_ID,'en-US','Change_DateTime','Changed',100)
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
END
CLOSE c_REDO
DEALLOCATE c_REDO
GO
DECLARE
@ENTITY_ID INTEGER,
@CONTROL_ID INTEGER,
@GUID INTEGER,
@VALUE VARCHAR(MAX)
DECLARE c_REDO CURSOR FOR
SELECT GUID FROM TBPMO_FORM
OPEN c_REDO
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC [dbo].[PRPMO_CREATE_SQL] @ENTITY_ID
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
END
CLOSE c_REDO
DEALLOCATE c_REDO
EXECUTE [dbo].[PRPMO_CREATE_TEMP_VIEWS]
DECLARE
@ENTITY_ID INTEGER
DECLARE c_REDO CURSOR FOR
SELECT GUID FROM TBPMO_FORM
OPEN c_REDO
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC [dbo].PRPMO_CREATE_ENTITY_TABLE @ENTITY_ID
EXEC [dbo].PRPMO_ENTITY_TABLE_IMPORT_RECORDS @ENTITY_ID
EXEC [dbo].PRPMO_CREATE_ENTITY_TABLE_VIEW @ENTITY_ID
FETCH NEXT FROM c_REDO INTO @ENTITY_ID
END
CLOSE c_REDO
DEALLOCATE c_REDO

View File

@ -1,41 +1,41 @@
CREATE VIEW VWEXPORT_CONTRACT AS
SELECT T.[GUID] AS CONTROL_GUID
,T.[FORM_ID] AS CONTROL_FORM_ID
,T.[CONTROL_TYPE_ID] AS CONTROL_TYPE_ID
,T.[NAME] AS CONTROL_NAME
,T.[FORMAT_TYPE] AS CONTROL_FORMAT_TYPE
,T.[SHOW_COLUMN] AS CONTROL_SHOW_COLUMN
,T.[COL_NAME] AS CONTROL_COL_NAME
,T.[REQUIRED] AS CONTROL_REQUIRED
,T.[PARENT_CONTROL_ID] AS CONTROL_PARENT_CONTROL_ID
,T.[MASTER_DATA_ID] AS CONTROL_MASTER_DATA_ID
,T.[MULTILINE] AS CONTROL_MULTILINE
,T.[STATIC_LIST] AS CONTROL_STATIC_LIST
,T.[DEFAULT_VALUE] AS CONTROL_DEFAULT_VALUE
,T.[SQL_COMMAND_1] AS CONTROL_SQL_COMMAND_1
,T.[CONNECTION_ID_1] AS CONTROL_CONNECTION_ID_1
,T.[READ_ONLY] AS CONTROL_READ_ONLY
,T.[VALIDATION] AS CONTROL_VALIDATION
,T.[ADDED_WHO] AS CONTROL_ADDED_WHO
,T.[VISIBLE] AS CONTROL_VISIBLE
,T.[TREE_VIEW] AS CONTROL_TREE_VIEW
,T.[SELECT_ONLY] AS CONTROL_SELECT_ONLY
,T1.[GUID] AS CS_GUID
,T1.[CONTROL_ID] AS CS_CONTROL_ID
,T1.[SCREEN_ID] AS CS_SCREEN_ID
,T1.[CONTROL_TEXT] AS CS_CONTROL_TEXT
,T1.[X_LOC] AS CS_X_LOC
,T1.[Y_LOC] AS CS_Y_LOC
,T1.[HEIGHT] AS CS_HEIGHT
,T1.[WIDTH] AS CS_WIDTH
,T1.[FONT_FAMILY] AS CS_FONT_FAMILY
,T1.[FONT_COLOR] AS CS_FONT_COLOR
,T1.[FONT_SIZE] AS CS_FONT_SIZE
,T1.[FONT_STYLE] AS CS_FONT_STYLE
,T1.[BACK_COLOR] AS CS_BACK_COLOR
,T1.[TAB_INDEX] AS CS_TAB_INDEX
,T1.[TAB_STOP] AS CS_TAB_STOP
FROM [dbo].[TBPMO_CONTROL] T, TBPMO_CONTROL_SCREEN T1 WHERE T.GUID = T1.CONTROL_ID AND T1.SCREEN_ID = 1 AND FORM_ID = 1
GO
CREATE VIEW VWEXPORT_CONTRACT AS
SELECT T.[GUID] AS CONTROL_GUID
,T.[FORM_ID] AS CONTROL_FORM_ID
,T.[CONTROL_TYPE_ID] AS CONTROL_TYPE_ID
,T.[NAME] AS CONTROL_NAME
,T.[FORMAT_TYPE] AS CONTROL_FORMAT_TYPE
,T.[SHOW_COLUMN] AS CONTROL_SHOW_COLUMN
,T.[COL_NAME] AS CONTROL_COL_NAME
,T.[REQUIRED] AS CONTROL_REQUIRED
,T.[PARENT_CONTROL_ID] AS CONTROL_PARENT_CONTROL_ID
,T.[MASTER_DATA_ID] AS CONTROL_MASTER_DATA_ID
,T.[MULTILINE] AS CONTROL_MULTILINE
,T.[STATIC_LIST] AS CONTROL_STATIC_LIST
,T.[DEFAULT_VALUE] AS CONTROL_DEFAULT_VALUE
,T.[SQL_COMMAND_1] AS CONTROL_SQL_COMMAND_1
,T.[CONNECTION_ID_1] AS CONTROL_CONNECTION_ID_1
,T.[READ_ONLY] AS CONTROL_READ_ONLY
,T.[VALIDATION] AS CONTROL_VALIDATION
,T.[ADDED_WHO] AS CONTROL_ADDED_WHO
,T.[VISIBLE] AS CONTROL_VISIBLE
,T.[TREE_VIEW] AS CONTROL_TREE_VIEW
,T.[SELECT_ONLY] AS CONTROL_SELECT_ONLY
,T1.[GUID] AS CS_GUID
,T1.[CONTROL_ID] AS CS_CONTROL_ID
,T1.[SCREEN_ID] AS CS_SCREEN_ID
,T1.[CONTROL_TEXT] AS CS_CONTROL_TEXT
,T1.[X_LOC] AS CS_X_LOC
,T1.[Y_LOC] AS CS_Y_LOC
,T1.[HEIGHT] AS CS_HEIGHT
,T1.[WIDTH] AS CS_WIDTH
,T1.[FONT_FAMILY] AS CS_FONT_FAMILY
,T1.[FONT_COLOR] AS CS_FONT_COLOR
,T1.[FONT_SIZE] AS CS_FONT_SIZE
,T1.[FONT_STYLE] AS CS_FONT_STYLE
,T1.[BACK_COLOR] AS CS_BACK_COLOR
,T1.[TAB_INDEX] AS CS_TAB_INDEX
,T1.[TAB_STOP] AS CS_TAB_STOP
FROM [dbo].[TBPMO_CONTROL] T, TBPMO_CONTROL_SCREEN T1 WHERE T.GUID = T1.CONTROL_ID AND T1.SCREEN_ID = 1 AND FORM_ID = 1
GO

View File

@ -1,52 +1,52 @@
SELECT * FROM sys.fulltext_catalogs
CREATE DATABASE TestDB
GO
USE TestDB
GO
CREATE TABLE [SupportTicketsSummaries] (
ID INT NOT NULL
,[ShortSummary] VARCHAR(200)
,[Description] VARCHAR(200)
,[Problem] VARCHAR(200)
,[Solution] VARCHAR(200)
,[Notes] VARCHAR(200)
,CONSTRAINT PK_SupportTicketsSummaries PRIMARY KEY (ID)
)
GO
IF NOT EXISTS (
SELECT 1
FROM sys.fulltext_catalogs
WHERE [name] = 'SupportTicketsSummariesFT'
)
BEGIN
PRINT 'Creating full-text catalogue SupportTicketsSummariesFT'
CREATE FULLTEXT CATALOG [SupportTicketsSummariesFT]
WITH accent_sensitivity = OFF AUTHORIZATION [dbo]
PRINT 'Adding columns to the full-text catalogue'
CREATE FULLTEXT INDEX ON [dbo].[SupportTicketsSummaries] (
[ShortSummary] LANGUAGE 1033
,[Description] LANGUAGE 1033
,[Problem] LANGUAGE 1033
,[Solution] LANGUAGE 1033
) KEY INDEX PK_SupportTicketsSummaries
ON [SupportTicketsSummariesFT] --catalog
WITH STOPLIST = SYSTEM;
--you can alter the full text index after creating
ALTER FULLTEXT INDEX ON [dbo].[SupportTicketsSummaries] ADD ([Notes] LANGUAGE 1033)
END
GO
USE MASTER
--DROP DATABASE TESTDB
SELECT *
SELECT * FROM sys.fulltext_catalogs
CREATE DATABASE TestDB
GO
USE TestDB
GO
CREATE TABLE [SupportTicketsSummaries] (
ID INT NOT NULL
,[ShortSummary] VARCHAR(200)
,[Description] VARCHAR(200)
,[Problem] VARCHAR(200)
,[Solution] VARCHAR(200)
,[Notes] VARCHAR(200)
,CONSTRAINT PK_SupportTicketsSummaries PRIMARY KEY (ID)
)
GO
IF NOT EXISTS (
SELECT 1
FROM sys.fulltext_catalogs
WHERE [name] = 'SupportTicketsSummariesFT'
)
BEGIN
PRINT 'Creating full-text catalogue SupportTicketsSummariesFT'
CREATE FULLTEXT CATALOG [SupportTicketsSummariesFT]
WITH accent_sensitivity = OFF AUTHORIZATION [dbo]
PRINT 'Adding columns to the full-text catalogue'
CREATE FULLTEXT INDEX ON [dbo].[SupportTicketsSummaries] (
[ShortSummary] LANGUAGE 1033
,[Description] LANGUAGE 1033
,[Problem] LANGUAGE 1033
,[Solution] LANGUAGE 1033
) KEY INDEX PK_SupportTicketsSummaries
ON [SupportTicketsSummariesFT] --catalog
WITH STOPLIST = SYSTEM;
--you can alter the full text index after creating
ALTER FULLTEXT INDEX ON [dbo].[SupportTicketsSummaries] ADD ([Notes] LANGUAGE 1033)
END
GO
USE MASTER
--DROP DATABASE TESTDB
SELECT *
FROM [dbo].[FullText] T WHERE CONTAINS([Text], '*29.04.2010*') AND CONTAINS([Text], '*Ladeliste*')

View File

@ -1,4 +1,4 @@
select *
from sys.objects
where (type = 'TR' or type = 'P')
select *
from sys.objects
where (type = 'TR' or type = 'P')
and modify_date > dateadd(m, -1, getdate()) order by modify_date desc

Some files were not shown because too many files have changed in this diff Show More