127 lines
5.1 KiB
Transact-SQL

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