This commit is contained in:
SchreiberM 2022-02-25 14:56:45 +01:00
parent 483bb0c108
commit 7df6439f40
6 changed files with 729 additions and 241 deletions

View File

@ -32,6 +32,40 @@ AS
GO
INSERT INTO TBDD_BASECONFIG (GUID,WD_UNICODE,DB_VERSION) VALUES (1,1,'1.9.0.0')
GO
CREATE TABLE [dbo].[TBDD_3RD_PARTY_MODULES](
[GUID] [int] IDENTITY(1,1) NOT NULL,
[ACTIVE] [bit] NOT NULL,
[NAME] [varchar](50) NOT NULL,
[DESCRIPTION] [varchar](500) NULL,
[LICENSE] [varchar](max) NOT NULL,
[VERSION] [varchar](20) NOT NULL,
[STRING1] [varchar](100) NULL,
[STRING2] [varchar](100) NULL,
[STRING3] [varchar](100) NULL,
[STRING4] [varchar](100) NULL,
[STRING5] [varchar](100) NULL,
[STRING6] [varchar](100) NULL,
[STRING7] [varchar](100) NULL,
[STRING8] [varchar](100) NULL,
[STRING9] [varchar](100) NULL,
[STRING10] [varchar](100) NULL,
[ADDED_WHO] [varchar](50) NULL,
[ADDED_WHEN] [datetime] NULL,
[CHANGED_WHO] [varchar](50) NULL,
[CHANGED_WHEN] [datetime] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
ALTER TABLE [dbo].[TBDD_3RD_PARTY_MODULES] ADD CONSTRAINT [DF_TBDD_3RD_PARTY_MODULES_ACTIVE] DEFAULT ((0)) FOR [ACTIVE]
GO
ALTER TABLE [dbo].[TBDD_3RD_PARTY_MODULES] ADD CONSTRAINT [DF_TBDD_3RD_PARTY_MODULES_VERSION] DEFAULT ('1.0.0.0') FOR [VERSION]
GO
INSERT INTO TBDD_3RD_PARTY_MODULES (ACTIVE,NAME,LICENSE) VALUES (1,'GDPICTURE','21182889975216572111813147150675976632')
GO
CREATE TABLE TBDD_SERV_EXT_PROGRAMS
(
GUID TINYINT,
@ -486,7 +520,7 @@ CONSTRAINT FK_TBDD_VERSION_USER_UPDATE_UPDATE_ID FOREIGN KEY (UPDATE_ID) REFE
GO
CREATE TRIGGER [dbo].[TBDD_USER_AFT_INS] ON [dbo].[TBDD_USER]
CREATE OR ALTER TRIGGER [dbo].[TBDD_USER_AFT_INS] ON [dbo].[TBDD_USER]
WITH EXECUTE AS CALLER
FOR INSERT
AS
@ -512,8 +546,8 @@ BEGIN TRY
UPDATE TBDD_USER SET USERID_FK_INT_ECM = @ECM_USR_ID
FROM INSERTED
WHERE TBDD_USER.GUID = INSERTED.GUID
-- SELECT @CLIENT_COUNT = COUNT(*) FROM TBDD_CLIENT
EXEC IDB.dbo.PRIDB_NEW_CATALOG_USER @USER_ID;
-- SELECT @CLIENT_COUNT = COUNT(*) FROM TBDD_CLIENT
-- IF @CLIENT_COUNT = 1
-- BEGIN
-- SELECT @CLIENT_COUNT = GUID FROM TBDD_CLIENT

View File

@ -37,6 +37,52 @@ CREATE TABLE TBIDB_CATALOG
CONSTRAINT UQ_TBIDB_CATALOG_TITLE UNIQUE (CAT_TITLE)
)
GO
CREATE TABLE TBIDB_CATALOG_USER
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
USR_ID INTEGER NOT NULL,
CAT_TITLE VARCHAR(100) NOT NULL,
CAT_STRING VARCHAR(900) NOT NULL,
ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'SYSTEM',
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
CHANGED_WHO VARCHAR(30),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBIDB_CATALOG_USER PRIMARY KEY (GUID),
CONSTRAINT UQ_TBIDB_CATALOG_USER UNIQUE (USR_ID,CAT_TITLE)
)
GO
CREATE TRIGGER TBIDB_CATALOG_USER_AFT_UPD ON TBIDB_CATALOG_USER
FOR UPDATE
AS
UPDATE TBIDB_CATALOG_USER SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBIDB_CATALOG_USER.GUID = INSERTED.GUID
GO
CREATE TABLE TBIDB_FULLTEXT_OBJECT
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
OBJECT_ID BIGINT NOT NULL,
FULL_TEXT NVARCHAR(MAX) NOT NULL,
CAT_ID INTEGER NOT NULL,
ADDED_WHO BIGINT,
ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
CHANGED_WHO BIGINT,
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBIDB_FULLTEXT_OBJECT PRIMARY KEY (GUID),
CONSTRAINT UN_TBIDB_FULLTEXT_OBJECT UNIQUE(OBJECT_ID,CAT_ID),
CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_CAT_ID FOREIGN KEY (CAT_ID) REFERENCES TBIDB_CATALOG (GUID),
CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),
CONSTRAINT FK_TBIDB_FULLTEXT_OBJECT_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),)
GO
CREATE TRIGGER TBIDB_FULLTEXT_OBJECT_AFT_UPD ON TBIDB_FULLTEXT_OBJECT
FOR UPDATE
AS
UPDATE TBIDB_FULLTEXT_OBJECT SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBIDB_FULLTEXT_OBJECT.GUID = INSERTED.GUID
GO
INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DB_VERSION','1.0.4.1')
GO
INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('FILESTORE_PRAEFIX','\\IDB\OBJECTS')
@ -47,11 +93,20 @@ INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DOCTYPE_CHANGED1','QUE
GO
INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('DOCTYPE_CHANGED2','AUTO VERSION')
GO
INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('FULLTEXT_OCR','EXTRACTED FULLTEXT')
GO
INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('FULLTEXT_MANUAL1','MANUAL FULLTEXT1')
GO
INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('FULLTEXT_MANUAL2','MANUAL FULLTEXT2')
GO
--INSERT INTO [TBIDB_CATALOG] ([CAT_TITLE],[CAT_STRING]) VALUES ('APPSERV1','172.24.12.39')
--GO
INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('GHOST_SELECT','
SELECT T.USERNAME,T.NAME, T.[PRENAME],T.EMAIL FROM @MY_DD_ECM_DB.dbo.TBDD_USER T ORDER BY USERNAME')
GO
INSERT INTO TBIDB_CATALOG (CAT_TITLE,CAT_STRING) VALUES ('AD_GROUP_ADMIN1','NONE')
GO
CREATE TRIGGER TBIDB_CATALOG_AFT_UPD ON TBIDB_CATALOG
FOR UPDATE
AS
@ -111,6 +166,8 @@ AS
FROM INSERTED
WHERE TBIDB_DOCTYPE_OBJECT_STORE.GUID = INSERTED.GUID
GO
CREATE TABLE TBIDB_DOCTYPE_HANDLING
(
GUID INT NOT NULL IDENTITY (1, 1),
@ -138,12 +195,14 @@ CREATE TABLE TBIDB_TERM_VALUE_VARCHAR
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
TERM_VALUE VARCHAR(900) NOT NULL,
TERM_VALUE_REVERSE VARCHAR(900),
ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'Digital Data',
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
CHANGED_WHO VARCHAR(100),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBIDB_TERM_VALUE_VARCHAR PRIMARY KEY (GUID),
CONSTRAINT UQ_TBIDB_TERM_VALUE_VARCHAR UNIQUE (TERM_VALUE)
CONSTRAINT UQ_TBIDB_TERM_VALUE_VARCHAR UNIQUE (TERM_VALUE),
CONSTRAINT UQ_TBIDB_TERM_VALUE_VARCHAR UNIQUE (TERM_VALUE_REVERSE)
)
GO
CREATE TRIGGER TBIDB_TERM_VALUE_VARCHAR_AFT_UPD ON TBIDB_TERM_VALUE_VARCHAR
@ -153,6 +212,13 @@ AS
FROM INSERTED
WHERE TBIDB_TERM_VALUE_VARCHAR.GUID = INSERTED.GUID
GO
CREATE TRIGGER [dbo].[TBIDB_TERM_VALUE_VARCHAR_AFT_INS] ON [dbo].[TBIDB_TERM_VALUE_VARCHAR]
FOR INSERT
AS
UPDATE TBIDB_TERM_VALUE_VARCHAR SET TBIDB_TERM_VALUE_VARCHAR.TERM_VALUE_REVERSE = REVERSE(INSERTED.TERM_VALUE)
FROM INSERTED
WHERE TBIDB_TERM_VALUE_VARCHAR.GUID = INSERTED.GUID
GO
CREATE TABLE TBIDB_TERM_VALUE_INTEGER
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
@ -587,6 +653,58 @@ AS
FROM INSERTED
WHERE TBIDB_BE_ATTRIBUTE.GUID = INSERTED.GUID
GO
CREATE OR ALTER TRIGGER [dbo].[TBIDB_BE_ATTRIBUTE_AFT_INS] ON [dbo].[TBIDB_BE_ATTRIBUTE]
FOR INSERT
AS
DECLARE
@ATTRIBUTE_ID INTEGER,
@TYP_ID INTEGER,
@ADDED_WHO VARCHAR(50),
@TITLE VARCHAR(100),
@ADD_DEFAULT BIT,
@LANG_ID INTEGER,
@LANG_CODE VARCHAR(5)
SELECT
@ATTRIBUTE_ID = ATTR_ID
FROM INSERTED
DECLARE c_TBIDB_ATTRIBUTE_AFT_INS CURSOR FOR
select GUID,LANG_CODE from TBIDB_LANGUAGE where CREATE_DEFAULT_ENTRY = 1
OPEN c_TBIDB_ATTRIBUTE_AFT_INS
FETCH NEXT FROM c_TBIDB_ATTRIBUTE_AFT_INS INTO @LANG_ID,@LANG_CODE
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE,'DEFAULT';
EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE,'DOCRESULT';
FETCH NEXT FROM c_TBIDB_ATTRIBUTE_AFT_INS INTO @LANG_ID,@LANG_CODE
END
CLOSE c_TBIDB_ATTRIBUTE_AFT_INS
DEALLOCATE c_TBIDB_ATTRIBUTE_AFT_INS
GO
CREATE OR ALTER TRIGGER [dbo].[TBIDB_BE_ATTRIBUTE_AFT_DEL] ON [dbo].[TBIDB_BE_ATTRIBUTE]
FOR DELETE
AS
DECLARE
@LANG_ID INTEGER,
@LANG_CODE VARCHAR(5)
DECLARE c_TBIDB_ATTRIBUTE_AFT_DEL CURSOR FOR
select GUID,LANG_CODE from TBIDB_LANGUAGE where CREATE_DEFAULT_ENTRY = 1
OPEN c_TBIDB_ATTRIBUTE_AFT_DEL
FETCH NEXT FROM c_TBIDB_ATTRIBUTE_AFT_DEL INTO @LANG_ID,@LANG_CODE
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE,'DEFAULT';
EXEC PRIDB_CREATE_VIEW_DOC_DATA @LANG_CODE,'DOCRESULT';
FETCH NEXT FROM c_TBIDB_ATTRIBUTE_AFT_DEL INTO @LANG_ID,@LANG_CODE
END
CLOSE c_TBIDB_ATTRIBUTE_AFT_DEL
DEALLOCATE c_TBIDB_ATTRIBUTE_AFT_DEL
GO
CREATE TABLE TBIDB_LANGUAGE_TERM
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
@ -605,6 +723,10 @@ CREATE TABLE TBIDB_LANGUAGE_TERM
CONSTRAINT FK_TBIDB_LANGUAGE_TERM_ADDED_WHO_T_ID FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),
CONSTRAINT FK_TBIDB_LANGUAGE_TERM_CHANGED_WHO_T_ID FOREIGN KEY (CHANGED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),)
GO
CREATE NONCLUSTERED INDEX [IDXTBIDB_LANGUAGE_TERM_LANGID_OID_TERMID]
ON [dbo].[TBIDB_LANGUAGE_TERM] ([LANG_ID])
INCLUDE ([OBJECT_ID],[TERM_ID])
GO
CREATE OR ALTER TRIGGER [dbo].[TBIDB_LANGUAGE_TERM_AFT_UPD] ON [dbo].[TBIDB_LANGUAGE_TERM]
FOR UPDATE
AS
@ -627,7 +749,7 @@ AS
FROM INSERTED INS INNER JOIN TBIDB_OBJECT_METADATA MD ON INS.[OBJECT_ID] = MD.GUID
IF @IDB_OBJ_ID IS NOT NULL
IF @IDB_OBJ_ID IS NOT NULL AND @CHANGED_WHO IS NOT NULL
INSERT INTO TBIDB_OBJECT_METADATA_CHANGE (
IDB_OBJ_ID,
ATTR_ID,
@ -923,7 +1045,7 @@ from
INNER JOIN TBIDB_ATTRIBUTE_TYPE ATY ON ATTR.TYP_ID = ATY.GUID
GO
CREATE VIEW [dbo].[VWIDB_BE_ATTRIBUTE] AS
CREATE OR ALTER VIEW [dbo].[VWIDB_BE_ATTRIBUTE] AS
SELECT
COALESCE(T.GUID,0) as GUID,
COALESCE(T.[BE_ID],0) BE_ID
@ -934,8 +1056,10 @@ SELECT
,T1.TYP_ID AS [TYPE_ID]
,T3.NAME_TYPE AS [TYPE_NAME]
,T1.VIEW_VISIBLE
,T1.MULTI_CONTEXT
,T1.VIEW_SEQUENCE
,T1.SYS_ATTRIBUTE
,T.DEFAULT_SEARCH_ATTRIBUTE
,T5.GUID AS LANG_ID
,T5.LANG_CODE
,T1.ADDED_WHEN
@ -1102,9 +1226,49 @@ CREATE TABLE TBIDB_COMMON_SQL
)
GO
INSERT INTO [dbo].[TBIDB_COMMON_SQL]
([TITLE]
,[SQL_COMMAND]
,[ADDED_WHO])
VALUES
('FLOW_SEARCH_SQL_BASE'
,'SELECT
DOC.*
FROM
TBIDB_SEARCH_RESULT_USER RES INNER JOIN VWIDB_LANGUAGE_TERM VWLTERM ON RES.MD_GUID = VWLTERM.MD_ID
INNER JOIN VWIDB_DOCRESULT_DE DOC ON VWLTERM.IDB_OBJ_ID = DOC.DocID
WHERE
RES.USR_ID = @USER_ID AND VWLTERM.LANG_CODE = ''@LANG_CODE''','SYSTEM')
GO
CREATE TABLE TBIDB_SEARCH_RESULT_USER
(
GUID BIGINT NOT NULL IDENTITY (1, 1),
MD_GUID BIGINT
,USR_ID INTEGER
CONSTRAINT FK_TBIDB_SEARCH_RESULT_USER_MD_GUID FOREIGN KEY (MD_GUID) REFERENCES TBIDB_OBJECT_METADATA (GUID)
)
GO
CREATE TABLE TBIDB_SEARCH_DATE_VALUE_USER
(
USR_ID INTEGER
,DATE_FROM DATE NOT NULL
,DATE_TILL DATE
CONSTRAINT PK_TBIDB_SEARCH_DATE_VALUE_USER PRIMARY KEY (USR_ID)
)
GO
CREATE PROCEDURE PRIDB_SEARCH_ADD_USR_DATE @USERID INT,@DATE1 DATE, @DATE2 DATE
AS
BEGIN
DELETE FROM TBIDB_SEARCH_DATE_VALUE_USER WHERE USR_ID = @USERID;
INSERT INTO TBIDB_SEARCH_DATE_VALUE_USER (USR_ID,DATE_FROM,DATE_TILL) VALUES
(@USERID,@DATE1,@DATE2);
END
GO
--DROP TABLE TBIDB_SEARCH_PROFILE
DROP TABLE TBIDB_SEARCH_LANGUAGE_SQL_RESULT
DROP TABLE TBIDB_SEARCH_PROFILE_USER_GROUP
@ -1130,20 +1294,20 @@ AS
WHERE TBIDB_SEARCH_PROFILE.GUID = INSERTED.GUID
GO
--CREATE TABLE TBIDB_SEARCH_RESULT_ATTRIBUTES
--(
-- GUID INTEGER NOT NULL IDENTITY (1, 1),
-- SEARCH_PROFIL_ID INTEGER NOT NULL,
-- ATTRIBUTE_ID INTEGER NOT NULL,
-- SEQUENCE INTEGER DEFAULT 0,
-- ADDED_WHO BIGINT,
-- ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
-- CONSTRAINT PK_TBIDB_SEARCH_RESULT_ATTRIBUTES_GUID PRIMARY KEY (GUID),
-- CONSTRAINT FK_TBIDB_SEARCH_RESULT_ATTRIBUTES_SPID FOREIGN KEY (SEARCH_PROFIL_ID) REFERENCES TBIDB_SEARCH_PROFILE (GUID),
-- CONSTRAINT FK_TBIDB_SEARCH_RESULT_ATTRIBUTES_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),
-- CONSTRAINT UQ_TBIDB_SEARCH_RESULT_ATTRIBUTES UNIQUE(SEARCH_PROFIL_ID,ATTRIBUTE_ID)
--)
--GO
CREATE TABLE TBIDB_SEARCH_RESULT_ATTRIBUTES
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
SEARCH_PROFIL_ID INTEGER NOT NULL,
ATTRIBUTE_ID INTEGER NOT NULL,
SEQUENCE INTEGER DEFAULT 0,
ADDED_WHO BIGINT,
ADDED_WHEN DATETIME NOT NULL DEFAULT GETDATE(),
CONSTRAINT PK_TBIDB_SEARCH_RESULT_ATTRIBUTES_GUID PRIMARY KEY (GUID),
CONSTRAINT FK_TBIDB_SEARCH_RESULT_ATTRIBUTES_SPID FOREIGN KEY (SEARCH_PROFIL_ID) REFERENCES TBIDB_SEARCH_PROFILE (GUID),
CONSTRAINT FK_TBIDB_SEARCH_RESULT_ATTRIBUTES_ADDED_WHO FOREIGN KEY (ADDED_WHO) REFERENCES TBIDB_TERM_VALUE_VARCHAR (GUID),
CONSTRAINT UQ_TBIDB_SEARCH_RESULT_ATTRIBUTES UNIQUE(SEARCH_PROFIL_ID,ATTRIBUTE_ID)
)
GO
CREATE TABLE TBIDB_SEARCH_LANGUAGE_SQL_RESULT
@ -1538,7 +1702,6 @@ GO
--ALTER TABLE [TBIDB_FILE_OBJECT]
--ADD [FILE_HASH] VARCHAR(500) NOT NULL
--GO
CREATE TABLE TBIDB_FILE_OBJECT
(
IDB_OBJ_ID BIGINT NOT NULL,
@ -1548,6 +1711,7 @@ CREATE TABLE TBIDB_FILE_OBJECT
FILENAME_TERM_ID BIGINT NOT NULL,
FILE_SIZE BIGINT,
FILE_HASH VARCHAR(500) NOT NULL,
FULLTEXT_CREATED DATETIME,
ADDED_WHO VARCHAR(30) NOT NULL DEFAULT 'Digital Data',
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
CHANGED_WHO VARCHAR(30),
@ -1910,15 +2074,15 @@ AS
BEGIN
DECLARE @TERM_ID BIGINT, @RESULT_SING VARCHAR(900), @RESULT VARCHAR(5000)
SEt @RESULT = ''
DECLARE c_REDO CURSOR FOR
DECLARE c_FNIDB_GET_TERM_TEXT_VECTOR CURSOR FOR
SELECT T1.TERM_ID FROM TBIDB_OBJECT_METADATA T INNER JOIN TBIDB_LANGUAGE_TERM T1 ON T.GUID = T1.[OBJECT_ID]
INNER JOIN TBIDB_LANGUAGE LANG ON T1.LANG_ID = LANG.GUID
INNER JOIN TBIDB_OBJECT OBJ ON T.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
WHERE
T.IDB_OBJ_ID = @IDB_OBJ_ID and T.ATTR_ID = @ATTR_ID
AND OBJ.ACTIVE = 1 AND LANG.LANG_CODE = @LANG_CODE
OPEN c_REDO
FETCH NEXT FROM c_REDO INTO @TERM_ID
OPEN c_FNIDB_GET_TERM_TEXT_VECTOR
FETCH NEXT FROM c_FNIDB_GET_TERM_TEXT_VECTOR INTO @TERM_ID
WHILE @@FETCH_STATUS = 0
BEGIN
SELECT @RESULT_SING = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @TERM_ID
@ -1926,23 +2090,23 @@ BEGIN
SET @RESULT = @RESULT_SING
ELSE
SET @RESULT += '; ' + @RESULT_SING
FETCH NEXT FROM c_REDO INTO @TERM_ID
FETCH NEXT FROM c_FNIDB_GET_TERM_TEXT_VECTOR INTO @TERM_ID
END
CLOSE c_REDO
DEALLOCATE c_REDO
CLOSE c_FNIDB_GET_TERM_TEXT_VECTOR
DEALLOCATE c_FNIDB_GET_TERM_TEXT_VECTOR
RETURN @RESULT
END
GO
CREATE FUNCTION FNIDB_GET_TERM_INTEGER_VECTOR (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER)
CREATE OR ALTER FUNCTION FNIDB_GET_TERM_INTEGER_VECTOR (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER)
RETURNS VARCHAR(5000)
AS
BEGIN
DECLARE @TERM_ID BIGINT, @RESULT_SING VARCHAR(900), @RESULT VARCHAR(5000)
SEt @RESULT = ''
DECLARE c_REDO CURSOR FOR
DECLARE c_FNIDB_GET_TERM_INTEGER_VECTOR CURSOR FOR
SELECT INT_TERM_ID FROM TBIDB_OBJECT_METADATA WHERE IDB_OBJ_ID = @IDB_OBJ_ID and ATTR_ID = @ATTR_ID
OPEN c_REDO
FETCH NEXT FROM c_REDO INTO @TERM_ID
OPEN c_FNIDB_GET_TERM_INTEGER_VECTOR
FETCH NEXT FROM c_FNIDB_GET_TERM_INTEGER_VECTOR INTO @TERM_ID
WHILE @@FETCH_STATUS = 0
BEGIN
SELECT @RESULT_SING = TERM_VALUE FROM TBIDB_TERM_VALUE_INTEGER WHERE GUID = @TERM_ID
@ -1950,10 +2114,10 @@ BEGIN
SET @RESULT = @RESULT_SING
ELSE
SET @RESULT += '; ' + @RESULT_SING
FETCH NEXT FROM c_REDO INTO @TERM_ID
FETCH NEXT FROM c_FNIDB_GET_TERM_INTEGER_VECTOR INTO @TERM_ID
END
CLOSE c_REDO
DEALLOCATE c_REDO
CLOSE c_FNIDB_GET_TERM_INTEGER_VECTOR
DEALLOCATE c_FNIDB_GET_TERM_INTEGER_VECTOR
RETURN @RESULT
END
GO
@ -1997,6 +2161,19 @@ BEGIN
RETURN @RESULT
END
GO
CREATE OR ALTER FUNCTION FNIDB_GET_TERM_DATE_TIME (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER)
RETURNS DATE
AS
BEGIN
DECLARE @RESULT DATE
SELECT @RESULT = TERM_VALUE
FROM
TBIDB_OBJECT_METADATA MD INNER JOIN TBIDB_TERM_VALUE_DATETIME DT ON MD.DATETIME_TERM_ID = DT.GUID
WHERE
MD.IDB_OBJ_ID = @IDB_OBJ_ID and MD.ATTR_ID = @ATTR_ID
RETURN @RESULT
END
GO
CREATE FUNCTION FNIDB_GET_TERM_DECIMAL (@IDB_OBJ_ID BIGINT,@ATTR_ID INTEGER)
RETURNS DECIMAL(19,0)
AS
@ -2994,10 +3171,28 @@ WHERE
GROUP BY
TERM.TERM_VALUE
GO
CREATE OR ALTER VIEW VWIDB_LANGUAGE_TERM AS
SELECT
MD.GUID as MD_ID
,MD.IDB_OBJ_ID
,MD.ATTR_ID
,TERM.TERM_VALUE
,LTERM.LANG_ID
,LANG.LANG_CODE
,MD.ADDED_WHEN [Added When]
,MD.ADDED_WHO [Added Who]
,MD.CHANGED_WHEN [Changed When]
,MD.CHANGED_WHO [Changed Who]
FROM
TBIDB_OBJECT_METADATA MD
INNER JOIN TBIDB_LANGUAGE_TERM LTERM ON MD.GUID = LTERM.OBJECT_ID
INNER JOIN TBIDB_LANGUAGE LANG ON LTERM.LANG_ID = LANG.GUID
INNER JOIN TBIDB_TERM_VALUE_VARCHAR TERM ON LTERM.TERM_ID = TERM.GUID
/*###########################################
############## PROCEDURES ###################
#############################################*/
GO
CREATE PROCEDURE [dbo].[PRIDB_NEW_STATE_OBJECT] @pIDB_OBJ_ID BIGINT, @pSYSSTATE VARCHAR(100),@pWHO VARCHAR(100)
AS
BEGIN
@ -3654,7 +3849,9 @@ BEGIN
END
GO
CREATE PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5)
CREATE OR ALTER PROCEDURE [dbo].[PRIDB_CREATE_VIEW_DOC_DATA] @pLANGCODE VARCHAR(5) ,@pVar VARCHAR(15) = 'DEFAULT'
AS
DECLARE
@ATTR_ID INT,
@ -3666,13 +3863,24 @@ DECLARE
@Integer24 Varchar(20),
@Float Varchar(20),
@RELPATH Varchar(200),
@SEQUENCE Integer
@SEQUENCE Integer,
@NAME_VIEW VARCHAR(20)
SET @SQL1 = 'CREATE VIEW VWIDB_DOC_DATA_' + UPPER(LEFT(@pLANGCODE,2)) + ' AS '+ char(10) + 'SELECT ' + char(10) + ' T.IDB_OBJ_ID' + char(10)
IF @pVar = 'DEFAULT'
SET @NAME_VIEW = 'VWIDB_DOC_DATA_'
ELSE
SET @NAME_VIEW = 'VWIDB_DOCRESULT_'
SET @SQL1 = 'CREATE VIEW ' + @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2)) + ' AS '+ char(10) + 'SELECT ' + char(10) + char(9)
IF @pVar = 'DEFAULT'
SET @SQL1 += +'T.IDB_OBJ_ID' + char(10)
ELSE
SET @SQL1 += +'T.IDB_OBJ_ID as DocID' + char(10)
BEGIN
DECLARE c_PRIDB_CREATE_VIEW_DOC_DATA CURSOR FOR
SELECT DISTINCT ATTR_ID,ATTR_TITLE,TYPE_ID,VIEW_SEQUENCE
FROM VWIDB_BE_ATTRIBUTE WHERE VIEW_VISIBLE = 1 AND LANG_CODE = @pLANGCODE AND ATTR_ID IS NOT NULL
AND SYS_ATTRIBUTE = 0
ORDER BY VIEW_SEQUENCE
OPEN c_PRIDB_CREATE_VIEW_DOC_DATA
@ -3680,9 +3888,17 @@ BEGIN
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE @FN_COMMAND as VARCHAR(100), @FN_TYP as VARCHAR(50)
SET @FN_COMMAND = '(SELECT [dbo].[FNIDB_GET_TERM_@TYPE] (@OBJ_ID,@ATTR_ID))'
IF @TYPID IN (1,8)
BEGIN
SET @FN_COMMAND = '(SELECT [dbo].[FNIDB_GET_TERM_@TYPE] (@OBJ_ID,@ATTR_ID,''@LANG_CODE''))'
SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@LANG_CODE',@pLANGCODE)
END
ELSE
SET @FN_COMMAND = '(SELECT [dbo].[FNIDB_GET_TERM_@TYPE] (@OBJ_ID,@ATTR_ID))'
SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@OBJ_ID','T.IDB_OBJ_ID')
SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@ATTR_ID',@ATTR_ID)
IF @TYPID = 1
SET @FN_TYP = 'TEXT'
ELSE IF @TYPID = 2
@ -3693,6 +3909,8 @@ BEGIN
SET @FN_TYP = 'DECIMAL'
ELSE IF @TYPID = 5
SET @FN_TYP = 'DATE'
ELSE IF @TYPID = 6
SET @FN_TYP = 'DATE_TIME'
ELSE IF @TYPID = 7
SET @FN_TYP = 'BIT'
ELSE IF @TYPID = 8
@ -3701,38 +3919,51 @@ BEGIN
SET @FN_TYP = 'INTEGER_VECTOR'
SET @FN_COMMAND = REPLACE(@FN_COMMAND,'@TYPE',@FN_TYP)
PRINT @FN_COMMAND
--PRINT '@FN_COMMAND: ' + @FN_COMMAND
SET @SQL1 += char(9) + ',' + @FN_COMMAND + char(9) + char(9) + ' AS ''' + @TITLE + '''' + char(10)
--PRINT @SQL1
FETCH NEXT FROM c_PRIDB_CREATE_VIEW_DOC_DATA INTO @ATTR_ID,@TITLE,@TYPID,@SEQUENCE
END
CLOSE c_PRIDB_CREATE_VIEW_DOC_DATA
DEALLOCATE c_PRIDB_CREATE_VIEW_DOC_DATA
SET @SQL1 += char(9) + ',T5.TERM_VALUE AS DocExtension' + char(10)
+ char(9) + ',T5.TERM_VALUE AS DocName' + char(10)
+ char(9) + ',CONCAT(T4.TERM_VALUE,''\'',T5.TERM_VALUE) AS DocRelativePath' + char(10)
+ char(9) + ',T4.TERM_VALUE AS DocRelativePathOnly' + char(10)
+ char(9) + ',T2.ADDED_WHEN' + char(10)
+ char(9) + ',T2.ADDED_WHO' + char(10)
+ char(9) + ',T2.CHANGED_WHO' + char(10)
+ char(9) + ',T2.CHANGED_WHEN' + char(10)
+ 'FROM' + char(10)
+ char(9) + 'TBIDB_OBJECT T INNER JOIN TBIDB_FILE_OBJECT T2 ON T.IDB_OBJ_ID = T2.IDB_OBJ_ID' + char(10)
IF @pVar = 'DEFAULT'
BEGIN
SET @SQL1 += char(9) + ',T5.TERM_VALUE AS DocExtension' + char(10)
+ char(9) + ',T5.TERM_VALUE AS DocName' + char(10)
+ char(9) + ',CONCAT(T4.TERM_VALUE,''\'',T5.TERM_VALUE) AS DocRelativePath' + char(10)
+ char(9) + ',T4.TERM_VALUE AS DocRelativePathOnly' + char(10)
END
SET @SQL1 += char(9) + ',T.ADDED_WHEN AS [Added when]' + char(10)
+ char(9) + ',T.ADDED_WHO AS [Added who]' + char(10)
+ char(9) + ',T.CHANGED_WHEN AS [Changed when]' + char(10)
+ char(9) + ',T.CHANGED_WHO AS [Changed who]' + char(10)
SET @SQL1 += 'FROM' + char(10)
IF @pVar = 'DEFAULT'
SET @SQL1 += char(9)+'TBIDB_OBJECT T INNER JOIN TBIDB_FILE_OBJECT T2 ON T.IDB_OBJ_ID = T2.IDB_OBJ_ID' + char(10)
+ char(9) + 'INNER JOIN TBIDB_OBJECT_STORE T3 ON T2.OBJ_ST_ID = T3.GUID' + char(10)
+ char(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR T4 ON T2.RELPATH_TERM_ID = T4.GUID' + char(10)
+ char(9) + 'INNER JOIN TBIDB_TERM_VALUE_VARCHAR T5 ON T2.FILENAME_TERM_ID = T5.GUID' + char(10)
+ 'WHERE KIND_TYPE_ID = 1 AND DELETED = 0 AND ACTIVE = 1'
ELSE
SET @SQL1 += char(9) + 'TBIDB_OBJECT T ' + char(10)
SET @SQL1 += 'WHERE ' + char(10) + char(9) + 'T.KIND_TYPE_ID = 1 AND T.DELETED = 0 AND T.ACTIVE = 1'
PRINT @SQL1
IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = 'VWIDB_DOC_DATA_' + UPPER(LEFT(@pLANGCODE,2)))
IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2)))
BEGIN
DECLARE @DELETE NVARCHAR(100)
SET @DELETE = 'DROP VIEW [dbo].[VWIDB_DOC_DATA_' + UPPER(LEFT(@pLANGCODE,2)) + ']'
SET @DELETE = 'DROP VIEW [dbo].[' + @NAME_VIEW + UPPER(LEFT(@pLANGCODE,2)) + ']'
EXEC sp_executesql @DELETE
END
EXEC sp_executesql @SQL1
END
GO
GO
--EXEC PRIDB_CREATE_VIEW_DOC_DATA 'de-DE','DEFAULT'
--GO
--EXEC PRIDB_CREATE_VIEW_DOC_DATA 'de-DE',''
--GO
CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_TERM_OBJECT_METADATA] @IDB_OBJ_ID BIGINT, @ATTRIBUTE VARCHAR(100), @TERM VARCHAR(900), @WHO VARCHAR(100),@LANG_CODE VARCHAR(5) = 'de-DE',@ID_ISFOREIGN as BIT = False
AS
BEGIN
@ -3821,12 +4052,12 @@ BEGIN
END
GO
CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE] @ATTRIBUTE VARCHAR(100), @WHO VARCHAR(100)
CREATE OR ALTER PROCEDURE [dbo].[PRIDB_DELETE_ATTRIBUTE] @ATTR_ID INTEGER, @WHO VARCHAR(100)
AS
BEGIN
DECLARE
@ATTR_ID INTEGER,
@ATTR_TYP_ID TINYINT,
@ATTRIBUTE VARCHAR(100),
@IDB_OBJ_ID BIGINT,
@TYP_DESCR VARCHAR(100),
@MULTI BIT,
@ -3834,9 +4065,9 @@ BEGIN
@USER_DELETE_ID INTEGER,
@ERROR as BIT
SET @ERROR = 0
SELECT @USER_DELETE_ID = COALESCE(MAX(USER_DELETE_ID),0) + 1 FROM TBIDB_OBJECT_METADATA_DELETE WHERE UPPER(DELETED_WHO) = UPPER(@WHO)
SELECT @USER_DELETE_ID = GUID FROM DD_ECM.dbo.TBDD_USER WHERE USERNAME = @WHO
SELECT @ATTR_ID = T.GUID,@ATTR_TYP_ID = T.TYP_ID FROM TBIDB_ATTRIBUTE T WHERE UPPER(T.TITLE) = UPPER(@ATTRIBUTE)
SELECT @ATTR_TYP_ID = T.TYP_ID, @ATTRIBUTE = TITLE FROM TBIDB_ATTRIBUTE T WHERE GUID = @ATTR_ID;
IF @ATTR_TYP_ID IN (1,8) --VARCHAR
BEGIN TRY
@ -4141,92 +4372,83 @@ BEGIN
SELECT * FROM @TBTYPE_RESULT
END
GO
--CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_RESULT_ATTRIBUTE] @pSEARCHID INTEGER,@pATTRIBUTE_ID INTEGER,@pWHO_TERM_ID BIGINT,@pSequence INTEGER = 0
--AS
--BEGIN
-- IF @pSequence = 0
-- SELECT @pSEQUENCE = COALESCE(MAX([SEQUENCE]),0) + 1 FROM TBIDB_SEARCH_RESULT_ATTRIBUTES
-- WHERE SEARCH_PROFIL_ID = @pSEARCHID
-- IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_RESULT_ATTRIBUTES WHERE ATTRIBUTE_ID = @pATTRIBUTE_ID AND SEARCH_PROFIL_ID = @pSEARCHID)
-- BEGIN
-- INSERT INTO TBIDB_SEARCH_RESULT_ATTRIBUTES (SEARCH_PROFIL_ID,ATTRIBUTE_ID,SEQUENCE,ADDED_WHO) VALUES (@pSEARCHID,@pATTRIBUTE_ID,@pSequence, @pWHO_TERM_ID)
-- EXEC [dbo].[PRIDB_NEW_SEARCH_ATTRIBUTE] @pSEARCHID,@pATTRIBUTE_ID,@pWHO_TERM_ID,0
-- END
CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_RESULT_ATTRIBUTE] @pSEARCHID INTEGER,@pATTRIBUTE_ID INTEGER,@pWHO_TERM_ID BIGINT,@pSequence INTEGER = 0
AS
BEGIN
IF @pSequence = 0
SELECT @pSEQUENCE = COALESCE(MAX([SEQUENCE]),0) + 1 FROM TBIDB_SEARCH_RESULT_ATTRIBUTES
WHERE SEARCH_PROFIL_ID = @pSEARCHID
IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_RESULT_ATTRIBUTES WHERE ATTRIBUTE_ID = @pATTRIBUTE_ID AND SEARCH_PROFIL_ID = @pSEARCHID)
BEGIN
INSERT INTO TBIDB_SEARCH_RESULT_ATTRIBUTES (SEARCH_PROFIL_ID,ATTRIBUTE_ID,SEQUENCE,ADDED_WHO) VALUES (@pSEARCHID,@pATTRIBUTE_ID,@pSequence, @pWHO_TERM_ID)
EXEC [dbo].[PRIDB_NEW_SEARCH_ATTRIBUTE] @pSEARCHID,@pATTRIBUTE_ID,@pWHO_TERM_ID,0
END
-- ELSE
-- UPDATE TBIDB_SEARCH_RESULT_ATTRIBUTES SET SEQUENCE = @pSequence
-- WHERE ATTRIBUTE_ID = @pATTRIBUTE_ID AND SEARCH_PROFIL_ID = @pSEARCHID
-- --SELECT
-- -- T.GUID,
-- -- T.ATTRIBUTE_ID,
-- -- T1.TITLE
-- -- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.ADDED_WHO) AS ADDED_WHO
-- -- ,T.ADDED_WHEN
-- --FROM TBIDB_SEARCH_RESULT_ATTRIBUTES T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTRIBUTE_ID = T1.GUID
-- --WHERE SEARCH_PROFIL_ID = @pSEARCHID
--END
--GO
ELSE
UPDATE TBIDB_SEARCH_RESULT_ATTRIBUTES SET SEQUENCE = @pSequence
WHERE ATTRIBUTE_ID = @pATTRIBUTE_ID AND SEARCH_PROFIL_ID = @pSEARCHID
--SELECT
-- T.GUID,
-- T.ATTRIBUTE_ID,
-- T1.TITLE
-- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.ADDED_WHO) AS ADDED_WHO
-- ,T.ADDED_WHEN
--FROM TBIDB_SEARCH_RESULT_ATTRIBUTES T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTRIBUTE_ID = T1.GUID
--WHERE SEARCH_PROFIL_ID = @pSEARCHID
END
GO
--CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_PROFILE] @BE_ID INT, @pTITLE VARCHAR(512),@pWHO_TERMID BIGINT,@pCOMMENT VARCHAR(900) = NULL, @pLANG_CODE VARCHAR(5) = 'de-DE'
--AS
--BEGIN
-- DECLARE
-- @LANG_ID INTEGER, @SQL_RESULT VARCHAR(912),
-- @SEARCH_ID INTEGER,
-- @WHO_TERM VARCHAR(100)
-- SELECT @WHO_TERM = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @pWHO_TERMID
CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_PROFILE] @BE_ID INT, @pTITLE VARCHAR(512),@pWHO VARCHAR(100),@pCOMMENT VARCHAR(900) = NULL, @pLANG_CODE VARCHAR(5) = 'de-DE'
AS
BEGIN
DECLARE
@LANG_ID INTEGER, @SQL_RESULT VARCHAR(912),
@SEARCH_ID INTEGER,
@WHO_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@pWHO,@pWHO,@TERM_ID = @WHO_TERM_ID OUTPUT;
-- SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE
-- DECLARE @MY_TITLE_TERM_ID BIGINT,@MY_LANG_TERM_ID BIGINT,@oLANGUAGE_TERM_METADATA_GUID BIGINT,@MY_RESULT_SQL_TERM_ID BIGINT
-- EXEC PRIDB_NEW_TERM 'VARCHAR',@pTITLE,@WHO_TERM,@TERM_ID = @MY_TITLE_TERM_ID OUTPUT;
-- EXEC PRIDB_NEW_TERM_LANGUAGE @LANG_ID,@MY_TITLE_TERM_ID,@WHO_TERM,@TERM_LANGUAGE_GUID = @MY_LANG_TERM_ID OUTPUT
-- EXEC PRIDB_NEW_LANGUAGE_TERM_METADATA_GUID @MY_LANG_TERM_ID,@pWHO_TERMID,@oLANG_TERM_GUID = @oLANGUAGE_TERM_METADATA_GUID OUTPUT
SELECT @LANG_ID = GUID FROM TBIDB_LANGUAGE WHERE LANG_CODE = @pLANG_CODE
DECLARE @MY_TITLE_TERM_ID BIGINT,@MY_LANG_TERM_ID BIGINT,@MY_RESULT_SQL_TERM_ID BIGINT
EXEC PRIDB_NEW_TERM 'VARCHAR',@pTITLE,@pWHO,@TERM_ID = @MY_TITLE_TERM_ID OUTPUT;
-- IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_PROFILE WHERE TITLE_ID = @oLANGUAGE_TERM_METADATA_GUID)
-- INSERT INTO TBIDB_SEARCH_PROFILE (TITLE_ID,ADDED_WHO,COMMENT) VALUES (@oLANGUAGE_TERM_METADATA_GUID,@pWHO_TERMID,@pCOMMENT)
-- ELSE
-- UPDATE TBIDB_SEARCH_PROFILE SET
-- COMMENT = @pCOMMENT,CHANGED_WHO = @pWHO_TERMID WHERE TITLE_ID = @oLANGUAGE_TERM_METADATA_GUID AND COMMENT <> @pCOMMENT
IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_PROFILE WHERE COMMENT = @pCOMMENT)
INSERT INTO TBIDB_SEARCH_PROFILE (ADDED_WHO,COMMENT) VALUES (@WHO_TERM_ID,@pCOMMENT)
-- SELECT @SEARCH_ID = MAX(GUID) FROM TBIDB_SEARCH_PROFILE T
-- WHERE T.TITLE_ID = @oLANGUAGE_TERM_METADATA_GUID
SELECT @SEARCH_ID = MAX(GUID) FROM TBIDB_SEARCH_PROFILE T
WHERE COMMENT = @pCOMMENT
-- SET @SQL_RESULT = 'SELECT T.IDB_OBJ_ID as DocID, [dbo].[FNIDB_GET_FILE_PATH] (T.IDB_OBJ_ID) as FULL_FILENAME, T.DocName as Filename, * FROM VWIDB_DOC_DATA WHERE '
-- DECLARE @ATTR_ID INT,@SEQUENCE TINYINT
-- SET @SEQUENCE = 0
DECLARE @VIEW_LANG VARCHAR(50)
-- DECLARE cursorDefaultAttributes CURSOR FOR
-- SELECT
-- T1.GUID
-- FROM TBIDB_ATTRIBUTE T1 INNER JOIN TBIDB_BE_ATTRIBUTE T2 ON T1.GUID = T2.ATTR_ID
-- WHERE T2.BE_ID = @BE_ID AND DEFAULT_SEARCH_ATTRIBUTE = 1
-- ORDER BY T1.VIEW_SEQUENCE
-- OPEN cursorDefaultAttributes
-- FETCH NEXT FROM cursorDefaultAttributes INTO @ATTR_ID
-- WHILE @@FETCH_STATUS = 0
-- BEGIN
-- IF NOT EXISTS (SELECT GUID FROM TBIDB_SEARCH_RESULT_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @SEARCH_ID AND ATTRIBUTE_ID = @ATTR_ID)
-- EXEC PRIDB_NEW_SEARCH_RESULT_ATTRIBUTE @SEARCH_ID,@ATTR_ID,@pWHO_TERMID,@SEQUENCE
-- SET @SEQUENCE += 1
-- FETCH NEXT FROM cursorDefaultAttributes INTO @ATTR_ID
-- END
-- CLOSE cursorDefaultAttributes
-- DEALLOCATE cursorDefaultAttributes
IF @pLANG_CODE = 'de-DE'
SET @VIEW_LANG = 'VWIDB_DOC_DATA_DE'
ELSE
SET @VIEW_LANG = 'VWIDB_DOC_DATA_EN'
-- SELECT
-- T.GUID,T.TITLE_ID
-- ,dbo.[FNIDB_GET_TERM_FOR_LANGUAGE_TERM_METADATA_GUID ] (T.TITLE_ID,@pLANG_CODE) AS TITLE
-- --,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.RESULT_SQL) AS RESULT_SQL
-- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.ADDED_WHO) AS ADDED_WHO
-- ,T.ADDED_WHEN
-- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.CHANGED_WHO) AS CHANGED_WHO
-- ,T.CHANGED_WHEN
-- FROM TBIDB_SEARCH_PROFILE T
-- WHERE GUID = @SEARCH_ID
--END
--GO
SET @SQL_RESULT = 'SELECT T.IDB_OBJ_ID as DocID, [dbo].[FNIDB_GET_FILE_PATH] (T.IDB_OBJ_ID) as FULL_FILENAME, T.DocName as Filename, * FROM ' + @VIEW_LANG + ' WHERE '
DECLARE @ATTR_ID INT,@SEQUENCE TINYINT
SET @SEQUENCE = 0
DECLARE cursorDefaultAttributes CURSOR FOR
SELECT
T1.GUID
FROM TBIDB_ATTRIBUTE T1 INNER JOIN TBIDB_BE_ATTRIBUTE T2 ON T1.GUID = T2.ATTR_ID
WHERE T2.BE_ID = @BE_ID AND DEFAULT_SEARCH_ATTRIBUTE = 1
ORDER BY T1.VIEW_SEQUENCE
OPEN cursorDefaultAttributes
FETCH NEXT FROM cursorDefaultAttributes INTO @ATTR_ID
WHILE @@FETCH_STATUS = 0
BEGIN
IF NOT EXISTS (SELECT GUID FROM TBIDB_SEARCH_RESULT_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @SEARCH_ID AND ATTRIBUTE_ID = @ATTR_ID)
EXEC PRIDB_NEW_SEARCH_RESULT_ATTRIBUTE @SEARCH_ID,@ATTR_ID,@pWHO_TERMID,@SEQUENCE
SET @SEQUENCE += 1
FETCH NEXT FROM cursorDefaultAttributes INTO @ATTR_ID
END
CLOSE cursorDefaultAttributes
DEALLOCATE cursorDefaultAttributes
END
GO
GO
--CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_SQL_RESULT] @SEARCH_ID INT,@pWHO_TERMID BIGINT
--AS
--BEGIN
@ -4306,113 +4528,113 @@ GO
--END
--GO
--CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_ATTRIBUTE] @pSEARCH_PROFIL_ID INTEGER,@pATTRIBUTE_ID INTEGER,@MULTISELECT BIT, @WHO_TERM_ID INTEGER, @pSEQUENCE INTEGER,@pHEIGHT SMALLINT = 0,@pWIDTH SMALLINT = 0
--AS
--BEGIN
-- DECLARE @pWHO_USERNAME VARCHAR(100),@USER_LANGUAGE VARCHAR(5),@USER_LANGUAGE_ID INT, @ATTRTYPE as VARCHAR(20)--,@USER_ID INTEGER
-- SELECT @pWHO_USERNAME = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @WHO_TERM_ID
-- SELECT @USER_LANGUAGE = LANGUAGE,@USER_LANGUAGE_ID = T1.GUID FROM @MY_DD_ECM_DB.dbo.TBDD_USER T INNER JOIN IDB.dbo.TBIDB_LANGUAGE T1 ON T.LANGUAGE = T1.LANG_CODE WHERE UPPER(USERNAME) = UPPER(@pWHO_USERNAME)
CREATE PROCEDURE [dbo].[PRIDB_NEW_SEARCH_ATTRIBUTE] @pSEARCH_PROFIL_ID INTEGER,@pATTRIBUTE_ID INTEGER,@MULTISELECT BIT, @WHO_TERM_ID INTEGER, @pSEQUENCE INTEGER,@pHEIGHT SMALLINT = 0,@pWIDTH SMALLINT = 0
AS
BEGIN
DECLARE @pWHO_USERNAME VARCHAR(100),@USER_LANGUAGE VARCHAR(5),@USER_LANGUAGE_ID INT, @ATTRTYPE as VARCHAR(20)--,@USER_ID INTEGER
SELECT @pWHO_USERNAME = TERM_VALUE FROM TBIDB_TERM_VALUE_VARCHAR WHERE GUID = @WHO_TERM_ID
SELECT @USER_LANGUAGE = LANGUAGE,@USER_LANGUAGE_ID = T1.GUID FROM DD_ECM.dbo.TBDD_USER T INNER JOIN IDB.dbo.TBIDB_LANGUAGE T1 ON T.LANGUAGE = T1.LANG_CODE WHERE UPPER(USERNAME) = UPPER(@pWHO_USERNAME)
-- SELECT @ATTRTYPE = T1.NAME_TYPE FROM TBIDB_ATTRIBUTE T INNER JOIN TBIDB_ATTRIBUTE_TYPE T1 ON T.TYP_ID = T1.GUID WHERE T.GUID = @pATTRIBUTE_ID
SELECT @ATTRTYPE = T1.NAME_TYPE FROM TBIDB_ATTRIBUTE T INNER JOIN TBIDB_ATTRIBUTE_TYPE T1 ON T.TYP_ID = T1.GUID WHERE T.GUID = @pATTRIBUTE_ID
-- IF @ATTRTYPE IN ('VARCHAR','BIG INTEGER')
-- BEGIN
-- IF @pHEIGHT = 0
-- SET @pHEIGHT = 200
-- IF @pWIDTH = 0
-- SET @pWIDTH = 200
-- END
-- ELSE IF @ATTRTYPE ='DATE'
-- BEGIN
-- IF @pHEIGHT = 0
-- SET @pHEIGHT = 20
-- IF @pWIDTH = 0
-- SET @pWIDTH = 100
-- END
-- ELSE IF @ATTRTYPE ='BIT'
-- BEGIN
-- IF @pHEIGHT = 0
-- SET @pHEIGHT = 20
-- IF @pWIDTH = 0
-- SET @pWIDTH = 200
-- END
IF @ATTRTYPE IN ('VARCHAR','BIG INTEGER')
BEGIN
IF @pHEIGHT = 0
SET @pHEIGHT = 200
IF @pWIDTH = 0
SET @pWIDTH = 200
END
ELSE IF @ATTRTYPE ='DATE'
BEGIN
IF @pHEIGHT = 0
SET @pHEIGHT = 20
IF @pWIDTH = 0
SET @pWIDTH = 100
END
ELSE IF @ATTRTYPE ='BIT'
BEGIN
IF @pHEIGHT = 0
SET @pHEIGHT = 20
IF @pWIDTH = 0
SET @pWIDTH = 200
END
-- DECLARE @SOURCE_TERM_ID BIGINT,@SOURCE_DEFAULT_SQL VARCHAR(900)
-- SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE
-- FROM
-- TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_TERM_LANGUAGE TLANG ON TERM.GUID = TLANG.TEXT_TERM_ID
-- INNER JOIN TBIDB_LANGUAGE_TERM_METADATA T1 ON TLANG.GUID = T1.LANG_TERM_ID
-- INNER JOIN TBIDB_OBJECT_METADATA MD ON T1.GUID = MD.TEXT_TERM_LANG_ID
-- INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
-- WHERE
-- MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + ' AND TLANG.LANGUAGE_ID = ' + CONVERT(VARCHAR(3),@USER_LANGUAGE_ID) + '
-- AND OBJ.DELETED = 0 AND ACTIVE = 1'
DECLARE @SOURCE_TERM_ID BIGINT,@SOURCE_DEFAULT_SQL VARCHAR(900)
SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE
FROM
TBIDB_TERM_VALUE_VARCHAR TERM INNER JOIN TBIDB_TERM_LANGUAGE TLANG ON TERM.GUID = TLANG.TEXT_TERM_ID
INNER JOIN TBIDB_LANGUAGE_TERM_METADATA T1 ON TLANG.GUID = T1.LANG_TERM_ID
INNER JOIN TBIDB_OBJECT_METADATA MD ON T1.GUID = MD.TEXT_TERM_LANG_ID
INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
WHERE
MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + ' AND TLANG.LANGUAGE_ID = ' + CONVERT(VARCHAR(3),@USER_LANGUAGE_ID) + '
AND OBJ.DELETED = 0 AND ACTIVE = 1'
-- --IF @pDEPENDING_ATTRIBUTE1 <> 0
-- -- SET @SOURCE_DEFAULT_SQL = REPLACE(@SOURCE_DEFAULT_SQL,'@pUSER_ID) ','@pUSER_ID) where IDB_OBJECT_ID = @DEPENDING_IDB_OBJECT ')
-- --ELSE
-- -- SET @SOURCE_DEFAULT_SQL = REPLACE(@SOURCE_DEFAULT_SQL,'@JOIN ','')
-- IF @ATTRTYPE = 'DATE'
-- SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE
-- FROM
-- TBIDB_TERM_VALUE_DATE TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.DATE_TERM_ID
-- INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
-- WHERE
-- MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + '
-- AND OBJ.DELETED = 0 AND ACTIVE = 1'
-- ELSE IF @ATTRTYPE = 'BIG INTEGER'
-- SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE
-- FROM
-- TBIDB_TERM_VALUE_INTEGER TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
-- INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
-- WHERE
-- MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + '
-- AND OBJ.DELETED = 0 AND ACTIVE = 1'
-- ELSE IF @ATTRTYPE = 'BIT'
-- SET @SOURCE_DEFAULT_SQL = 'select DISTINCT CONVERT(BIT,TERM.TERM_VALUE) AS @RESULT_TITLE
-- FROM
-- TBIDB_TERM_VALUE_INTEGER TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
-- INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
-- WHERE
-- MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + '
-- AND OBJ.DELETED = 0 AND ACTIVE = 1'
-- EXEC PRIDB_NEW_TERM 'VARCHAR',@SOURCE_DEFAULT_SQL,@pWHO_USERNAME,@TERM_ID = @SOURCE_TERM_ID OUTPUT;
-- IF @pSEQUENCE = 0
-- SELECT @pSEQUENCE = COALESCE(MAX([SEQUENCE]),0) + 1 FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID
-- IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID AND ATTRIBUTE_ID = @pATTRIBUTE_ID)
-- INSERT INTO TBIDB_SEARCH_PROFILE_ATTRIBUTES (SEARCH_PROFIL_ID,ATTRIBUTE_ID,SOURCE_SQL, [SEQUENCE], ADDED_WHO,HEIGHT,WIDTH,MULTISELECT)
-- VALUES (@pSEARCH_PROFIL_ID,@pATTRIBUTE_ID,@SOURCE_TERM_ID,@pSEQUENCE, @WHO_TERM_ID,@pHEIGHT,@pWIDTH,@MULTISELECT)
-- ELSE
-- BEGIN
--IF @pDEPENDING_ATTRIBUTE1 <> 0
-- SET @SOURCE_DEFAULT_SQL = REPLACE(@SOURCE_DEFAULT_SQL,'@pUSER_ID) ','@pUSER_ID) where IDB_OBJECT_ID = @DEPENDING_IDB_OBJECT ')
--ELSE
-- SET @SOURCE_DEFAULT_SQL = REPLACE(@SOURCE_DEFAULT_SQL,'@JOIN ','')
IF @ATTRTYPE = 'DATE'
SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE
FROM
TBIDB_TERM_VALUE_DATE TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.DATE_TERM_ID
INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
WHERE
MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + '
AND OBJ.DELETED = 0 AND ACTIVE = 1'
ELSE IF @ATTRTYPE = 'BIG INTEGER'
SET @SOURCE_DEFAULT_SQL = 'select DISTINCT TERM.TERM_VALUE AS @RESULT_TITLE
FROM
TBIDB_TERM_VALUE_INTEGER TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
WHERE
MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + '
AND OBJ.DELETED = 0 AND ACTIVE = 1'
ELSE IF @ATTRTYPE = 'BIT'
SET @SOURCE_DEFAULT_SQL = 'select DISTINCT CONVERT(BIT,TERM.TERM_VALUE) AS @RESULT_TITLE
FROM
TBIDB_TERM_VALUE_INTEGER TERM INNER JOIN TBIDB_OBJECT_METADATA MD ON TERM.GUID = MD.INT_TERM_ID
INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
WHERE
MD.ATTR_ID = ' + CONVERT(VARCHAR(3),@pATTRIBUTE_ID) + '
AND OBJ.DELETED = 0 AND ACTIVE = 1'
EXEC PRIDB_NEW_TERM 'VARCHAR',@SOURCE_DEFAULT_SQL,@pWHO_USERNAME,@TERM_ID = @SOURCE_TERM_ID OUTPUT;
IF @pSEQUENCE = 0
SELECT @pSEQUENCE = COALESCE(MAX([SEQUENCE]),0) + 1 FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID
IF NOT EXISTS(SELECT GUID FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID AND ATTRIBUTE_ID = @pATTRIBUTE_ID)
INSERT INTO TBIDB_SEARCH_PROFILE_ATTRIBUTES (SEARCH_PROFIL_ID,ATTRIBUTE_ID,SOURCE_SQL, [SEQUENCE], ADDED_WHO,HEIGHT,WIDTH,MULTISELECT)
VALUES (@pSEARCH_PROFIL_ID,@pATTRIBUTE_ID,@SOURCE_TERM_ID,@pSEQUENCE, @WHO_TERM_ID,@pHEIGHT,@pWIDTH,@MULTISELECT)
ELSE
BEGIN
-- UPDATE TBIDB_SEARCH_PROFILE_ATTRIBUTES SET
-- SOURCE_SQL = @SOURCE_TERM_ID
-- ,[SEQUENCE] = @pSEQUENCE
-- ,HEIGHT = @pHEIGHT
-- ,WIDTH = @pWIDTH
-- ,MULTISELECT = @MULTISELECT
-- WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID AND ATTRIBUTE_ID = @pATTRIBUTE_ID
-- END
-- SELECT
-- T.SEARCH_PROFIL_ID,
-- T.GUID,
-- T.ATTRIBUTE_ID,
-- T1.TITLE AS ATTRIBUTE_TITLE,
-- T.MULTISELECT,
-- T.HEIGHT,
-- T.WIDTH,
-- T2.NAME_TYPE AS ATTRIBUTE_TYPE
-- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.SOURCE_SQL) AS SOURCE_SQL
-- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.ADDED_WHO) AS ADDED_WHO
-- ,T.ADDED_WHEN
-- ,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.CHANGED_WHO) AS CHANGED_WHO
-- ,T.CHANGED_WHEN
-- FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTRIBUTE_ID = T1.GUID
-- INNER JOIN TBIDB_ATTRIBUTE_TYPE T2 ON T1.TYP_ID = T2.GUID
-- WHERE T.SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID --AND ATTRIBUTE_ID = @pATTRIBUTE_ID
-- ORDER BY [SEQUENCE]
--END
--GO
UPDATE TBIDB_SEARCH_PROFILE_ATTRIBUTES SET
SOURCE_SQL = @SOURCE_TERM_ID
,[SEQUENCE] = @pSEQUENCE
,HEIGHT = @pHEIGHT
,WIDTH = @pWIDTH
,MULTISELECT = @MULTISELECT
WHERE SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID AND ATTRIBUTE_ID = @pATTRIBUTE_ID
END
SELECT
T.SEARCH_PROFIL_ID,
T.GUID,
T.ATTRIBUTE_ID,
T1.TITLE AS ATTRIBUTE_TITLE,
T.MULTISELECT,
T.HEIGHT,
T.WIDTH,
T2.NAME_TYPE AS ATTRIBUTE_TYPE
,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.SOURCE_SQL) AS SOURCE_SQL
,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.ADDED_WHO) AS ADDED_WHO
,T.ADDED_WHEN
,[dbo].[FNIDB_GET_TERM_FOR_TERM_ID] (T.CHANGED_WHO) AS CHANGED_WHO
,T.CHANGED_WHEN
FROM TBIDB_SEARCH_PROFILE_ATTRIBUTES T INNER JOIN TBIDB_ATTRIBUTE T1 ON T.ATTRIBUTE_ID = T1.GUID
INNER JOIN TBIDB_ATTRIBUTE_TYPE T2 ON T1.TYP_ID = T2.GUID
WHERE T.SEARCH_PROFIL_ID = @pSEARCH_PROFIL_ID --AND ATTRIBUTE_ID = @pATTRIBUTE_ID
ORDER BY [SEQUENCE]
END
GO
-- =============================================
-- Author: DD MS
-- Create date 05.11.2020
@ -5060,6 +5282,10 @@ BEGIN
END
GO
INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('Doctype',1,1);
INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginFileName',1,1);
INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('OriginCreationDatetime',6,1);
@ -5072,12 +5298,30 @@ INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailSubject',
INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailFrom',1,1);
INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE) VALUES ('EmailDate',5,1);
INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('PM-LOGGING',8,0,1);
INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('ObjectEvents',1,1,1);
--INSERT INTO TBIDB_ATTRIBUTE (TITLE,TYP_ID,SYS_ATTRIBUTE,MULTI_CONTEXT) VALUES ('ObjectEvents',1,1,1);
INSERT INTO TBIDB_BE_ATTRIBUTE (BE_ID,ATTR_ID,DEFAULT_SEARCH_ATTRIBUTE) SELECT 1,GUID, 1 FROM TBIDB_ATTRIBUTE WHERE TITLE NOT IN ('PM-LOGGING','ObjectEvents') ;
INSERT INTO TBIDB_BE_ATTRIBUTE (BE_ID,ATTR_ID,DEFAULT_SEARCH_ATTRIBUTE) SELECT 1,GUID, 0 FROM TBIDB_ATTRIBUTE where TITLE IN ('PM-LOGGING','ObjectEvents') ;
GO
CREATE OR ALTER PROCEDURE PRIDB_NEW_CATALOG_USER @USRID INTEGER
AS
BEGIN
IF NOT EXISTS(SELECT GUID FROM TBIDB_CATALOG_USER WHERE USR_ID = @USRID AND CAT_TITLE = 'QUICKSEARCH1_TITLE')
INSERT INTO TBIDB_CATALOG_USER (USR_ID,CAT_TITLE,CAT_STRING,ADDED_WHO) VALUES (
@USRID,'QUICKSEARCH1_TITLE','Schnellsuche1','System');
IF NOT EXISTS(SELECT GUID FROM TBIDB_CATALOG_USER WHERE USR_ID = @USRID AND CAT_TITLE = 'QUICKSEARCH1_POS')
INSERT INTO TBIDB_CATALOG_USER (USR_ID,CAT_TITLE,CAT_STRING,ADDED_WHO) VALUES (
@USRID,'QUICKSEARCH1_POS','Top','System');
IF NOT EXISTS(SELECT GUID FROM TBIDB_CATALOG_USER WHERE USR_ID = @USRID AND CAT_TITLE = 'APPLICATION_THEME')
INSERT INTO TBIDB_CATALOG_USER (USR_ID,CAT_TITLE,CAT_STRING,ADDED_WHO) VALUES (
@USRID,'APPLICATION_THEME','DEFAULT','System');
IF NOT EXISTS(SELECT GUID FROM TBIDB_CATALOG_USER WHERE USR_ID = @USRID AND CAT_TITLE = 'GLOBIX_DROPAREA')
INSERT INTO TBIDB_CATALOG_USER (USR_ID,CAT_TITLE,CAT_STRING,ADDED_WHO) VALUES (
@USRID,'GLOBIX_DROPAREA','PROGRESSIVE','System');
END
GO
CREATE VIEW [dbo].[VWGI_ADMIN_OVERVIEW] AS
SELECT
T3.GUID as ID,
@ -5123,5 +5367,17 @@ WHERE
T4.IDB_OBJECT_STORE_ID = T5.GUID AND
T4.GUID in (SELECT DOKART_ID FROM DD_ECM.dbo.TBDD_DOKUMENTART_MODULE WHERE MODULE_ID = (SELECT GUID FROM DD_ECM.dbo.TBDD_MODULES WHERE UPPER(SHORT_NAME) = ('GLOBIX')))
GO
DECLARE @USR_GUID INTEGER
DECLARE c_CATALOG_USR CURSOR FOR
select GUID FROM DD_ECM.dbo.TBDD_USER
OPEN c_CATALOG_USR
FETCH NEXT FROM c_CATALOG_USR INTO @USR_GUID
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC PRIDB_NEW_CATALOG_USER @USR_GUID;
FETCH NEXT FROM c_CATALOG_USR INTO @USR_GUID
END
CLOSE c_CATALOG_USR
DEALLOCATE c_CATALOG_USR

View File

@ -0,0 +1,117 @@
CREATE OR ALTER PROCEDURE PRIDB_SEARCH_TEXT_GET_RESULTS (@pUSR_ID as INTEGER,@pSEARCH_TERM as VARCHAR(900),@pDATE_RESTRICTION VARCHAR(500), @pLANG_CODE as VARCHAR(5) = 'de-DE')
AS
BEGIN
DECLARE @SRCH_VAR VARCHAR(900), @SQL NVARCHAR(MAX),@DateStr VARCHAR(100)
IF @pSEARCH_TERM like '%*%'
SET @SRCH_VAR = ' "' + @pSEARCH_TERM + '" '
ELSE
SET @SRCH_VAR = @pSEARCH_TERM
PRINT '@SRCH_VAR [' + @SRCH_VAR + ']'
DELETE FROM TBIDB_SEARCH_RESULT_USER WHERE USR_ID = @pUSR_ID;
IF LEN(@pDATE_RESTRICTION) > 0
BEGIN
PRINT '@pDATE_RESTRICTION....'
DECLARE @IDX TINYINT, @ATTR_ID VARCHAR(100)
SET @IDX = CHARINDEX('~',@pDATE_RESTRICTION)
PRINT '@IDX: ' + CONVERT(VARCHAR(10),@IDX)
SET @ATTR_ID = LEFT(@pDATE_RESTRICTION,@IDX-1)
PRINT CONVERT(VARCHAR(10),@ATTR_ID)
SET @DateStr = SUBSTRING(@pDATE_RESTRICTION,@IDX + 1,LEN(@pDATE_RESTRICTION)-@IDX)
PRINT @DateStr
END
SET @SQL = 'INSERT INTO TBIDB_SEARCH_RESULT_USER(MD_GUID,USR_ID)
select MD.GUID,' + CONVERT(VARCHAR(10),@pUSR_ID) + char(10) +
'FROM TBIDB_TERM_VALUE_VARCHAR TERM
INNER JOIN TBIDB_LANGUAGE_TERM TLANG ON TERM.GUID = TLANG.TERM_ID
INNER JOIN TBIDB_LANGUAGE LANG ON TLANG.LANG_ID = LANG.GUID
INNER JOIN TBIDB_OBJECT_METADATA MD ON TLANG.OBJECT_ID = MD.GUID
INNER JOIN TBIDB_OBJECT OBJ ON MD.IDB_OBJ_ID = OBJ.IDB_OBJ_ID
WHERE
OBJ.ACTIVE = 1' + char(10)
IF @DateStr = 'DATEPART'
BEGIN
DECLARE @DATE1 DATE,@DATE2 DATE
SELECT @DATE1 = DATE_FROM ,@DATE2 = DATE_TILL FROM TBIDB_SEARCH_DATE_VALUE_USER WHERE USR_ID = @pUSR_ID;
SET @SQL += 'AND CONVERT(DATE,OBJ.ADDED_WHEN) >= CONVERT(DATE,''' + CONVERT(VARCHAR(10),@DATE1) + ''') AND CONVERT(DATE,OBJ.ADDED_WHEN) <= CONVERT(DATE,''' + CONVERT(VARCHAR(10),@DATE2) + ''')' + char(10)
END
ELSE IF @DateStr = 'ECM_CREATED_TODAY'
SET @SQL += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) = 0' + char(10)
ELSE IF @DateStr = 'ECM_CREATED_YESTERDAY'
SET @SQL += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) = 1' + char(10)
ELSE IF @DateStr = 'ECM_CREATED_LAST7DAYS'
SET @SQL += 'AND DATEDIFF(DAY,OBJ.ADDED_WHEN,GETDATE()) <= 7' + char(10)
ELSE IF @DateStr = 'ECM_YEAR_CURRENT'
SET @SQL += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10)
ELSE IF @DateStr = 'ECM_YEAR_LAST'
SET @SQL += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())-1' + char(10)
ELSE IF @DateStr = 'ECM_CREATED_MONTH_CURRENT'
BEGIN
SET @SQL += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10)
SET @SQL += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = DATEPART(MONTH,GETDATE())' + char(10)
END
ELSE IF @DateStr = 'ECM_CREATED_MONTH_LAST'
BEGIN
IF DATEPART(MONTH,GETDATE()) = 1
BEGIN
SET @SQL += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())-1' + char(10)
SET @SQL += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = 12' + char(10)
END
ELSE
BEGIN
SET @SQL += 'AND DATEPART(YEAR,OBJ.ADDED_WHEN) = DATEPART(YEAR,GETDATE())' + char(10)
SET @SQL += 'AND DATEPART(MONTH,OBJ.ADDED_WHEN) = DATEPART(MONTH,GETDATE())-1' + char(10)
END
END
IF LEN(@SRCH_VAR) > 0
BEGIN
IF @pSEARCH_TERM like '%*%'
SET @SQL += 'AND CONTAINS(TERM.TERM_VALUE,''' + @SRCH_VAR + ''')' + char(10)
ELSE
SET @SQL += 'AND TERM.TERM_VALUE = ''' + @SRCH_VAR + '''' + char(10)
END
SET @SQL += 'AND LANG.LANG_CODE = ''' + @pLANG_CODE + ''''
PRINT @SQL
EXEC sp_executesql @SQL
END
GO
EXEC PRIDB_SEARCH_TEXT_GET_RESULTS 1,'strun*','' --doct*
GO
SELECT
DOC.*
FROM
TBIDB_SEARCH_RESULT_USER RES INNER JOIN VWIDB_LANGUAGE_TERM VWLTERM ON RES.MD_GUID = VWLTERM.MD_ID
INNER JOIN VWIDB_DOCRESULT_DE DOC ON VWLTERM.IDB_OBJ_ID = DOC.DocID
WHERE
RES.USR_ID = 1 AND VWLTERM.LANG_CODE = '@LANG_CODE'
--' "doct*"
EXEC PRIDB_SEARCH_TEXT_GET_RESULTS 1,'','ADDED_WHEN~ECM_CREATED_MONTH_CURRENT'
select * from TBIDB_OBJECT order by IDB_OBJ_ID desc
CREATE TABLE TBIDB_SEARCH_DATE_VALUE_USER
(
USR_ID INTEGER
,DATE_FROM DATE NOT NULL
,DATE_TILL DATE
CONSTRAINT PK_TBIDB_SEARCH_DATE_VALUE_USER PRIMARY KEY (USR_ID)
)
GO
CREATE PROCEDURE PRIDB_SEARCH_ADD_USR_DATE @USERID INT,@DATE1 DATE, @DATE2 DATE
AS
BEGIN
DELETE FROM TBIDB_SEARCH_DATE_VALUE_USER WHERE USR_ID = @USERID;
INSERT INTO TBIDB_SEARCH_DATE_VALUE_USER (USR_ID,DATE_FROM,DATE_TILL) VALUES
(@USERID,@DATE1,@DATE2);
END

19
00_IDB/Fulltext.sql Normal file
View File

@ -0,0 +1,19 @@
--Prüfung Volltext is enabled
SELECT name as [DBName], is_fulltext_enabled
FROM sys.databases
--volltextcatalog vorhanden
SELECT * FROM sys.fulltext_catalogs;
--Prüfen wieviele Tabellen enthalten
EXEC sp_help_fulltext_catalogs;
--###### SUCHEN #####
--SUCHEN NACH GANZEN WORTEN
select * from TBIDB_FULLTEXT_OBJECT A
WHERE CONTAINS(FULL_TEXT,'Kabel')
--SUCHEN NACH Teilen
--BEGINNEND MIT
select * from TBIDB_FULLTEXT_OBJECT A
WHERE CONTAINS(FULL_TEXT,' "do*" ')
--ENDEND MIT
select * from TBIDB_FULLTEXT_OBJECT A
WHERE CONTAINS(FULL_TEXT,' "*ut" ')

View File

@ -256,6 +256,13 @@ INSERT INTO [dbo].[TBAPPSERV_CRON_DETAIL](
CRON_ID, CON_ID, TITLE ,DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES (
3, 2, 'VWIDB_DOCTYPE_HANDLING', 'VWIDB_DOCTYPE_HANDLING', 1,'SELECT * FROM VWIDB_DOCTYPE_HANDLING');
GO
INSERT INTO [dbo].[TBAPPSERV_CRON_DETAIL](
CRON_ID, CON_ID, TITLE ,DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES (
3, 2, 'TBIDB_CATALOG_USER', 'TBIDB_CATALOG_USER', 1,'SELECT * FROM TBIDB_CATALOG_USER');
GO
--Insert Into TBAPPSERV_CRON_DETAIL (
--CRON_ID, CON_ID, TITLE, DT_NAME, RUN_ON_STARTUP, COMMAND) VALUES (
--2, 2, 'TBIDB_DOC_INFO', 'TBIDB_DOC_INFO', 1,

View File

@ -0,0 +1,55 @@
DROP TABLE TBMON_PROFILE_PARAM;
DROP TABLE TBMON_PROFILE;
CREATE TABLE TBMON_PROFILE
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
TITLE VARCHAR(250) NOT NULL,
CAPTION VARCHAR(250),
EXEC_SQL NVARCHAR(MAX),
RETURN_TYPE VARCHAR(100) NOT NULL,
COMMENT VARCHAR(500),
ACTIVE BIT NOT NULL DEFAULT 1,
ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'System',
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
CHANGED_WHO VARCHAR(100),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBMON_PROFILE PRIMARY KEY (GUID),
--CONSTRAINT FK_OS_CAT_ID FOREIGN KEY (CAT_ID) REFERENCES TBIDB_CATALOG (GUID) ,
CONSTRAINT UQ1_TBMON_PROFILE UNIQUE (TITLE),
)
GO
CREATE TRIGGER TBIDB_OBJECT_STORE_AFT_UPD ON TBMON_PROFILE
FOR UPDATE
AS
UPDATE TBMON_PROFILE SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBMON_PROFILE.GUID = INSERTED.GUID
GO
CREATE TABLE TBMON_PROFILE_PARAM
(
GUID INTEGER NOT NULL IDENTITY (1, 1),
PROFILE_ID INTEGER NOT NULL,
CAPTION VARCHAR(250) NOT NULL,
P_TYPE VARCHAR(50) NOT NULL DEFAULT 'TEXT',
ITEMS NVARCHAR(MAX),
SEQUENCE TINYINT NOT NULL DEFAULT 0,
OPTIONAL BIT NOT NULL DEFAULT 0,
COMMENT VARCHAR(500),
ACTIVE BIT NOT NULL DEFAULT 1,
ADDED_WHO VARCHAR(100) NOT NULL DEFAULT 'System',
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
CHANGED_WHO VARCHAR(100),
CHANGED_WHEN DATETIME,
CONSTRAINT PK_TBMON_PROFILE_PARAM PRIMARY KEY (GUID),
CONSTRAINT FK_TBMON_PROFILE_PARAM_OID FOREIGN KEY (PROFILE_ID) REFERENCES TBMON_PROFILE (GUID) ,
CONSTRAINT UQ1_TBMON_PROFILE_PARAM UNIQUE (CAPTION),
)
GO
CREATE TRIGGER TBMON_PROFILE_PARAM_AFT_UPD ON TBMON_PROFILE_PARAM
FOR UPDATE
AS
UPDATE TBMON_PROFILE_PARAM SET CHANGED_WHEN = GETDATE()
FROM INSERTED
WHERE TBMON_PROFILE_PARAM.GUID = INSERTED.GUID
GO