init
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
DECLARE intezmenyCur CURSOR FOR
|
||||
SELECT ID FROM T_INTEZMENY i
|
||||
WHERE i.TOROLT='F'
|
||||
|
||||
DECLARE @intezmenyId int
|
||||
|
||||
OPEN intezmenyCur
|
||||
FETCH NEXT FROM intezmenyCur INTO @intezmenyId
|
||||
WHILE @@FETCH_STATUS=0
|
||||
BEGIN
|
||||
EXEC dev.uspGenerateTanevAdatokFromExistingTanev
|
||||
@intezmenyId = @intezmenyId
|
||||
,@tanevNeveNew = '2019/2020'
|
||||
,@tanevNeveSource = '2018/2019'
|
||||
,@kovetkezoTanev = 1
|
||||
FETCH NEXT FROM intezmenyCur INTO @intezmenyId
|
||||
END
|
||||
CLOSE intezmenyCur
|
||||
DEALLOCATE intezmenyCur
|
@@ -0,0 +1,196 @@
|
||||
DROP PROCEDURE IF EXISTS sp_FollowUpDictionaryItemBase
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_FollowUpDictionaryItemBase
|
||||
@pItemId int
|
||||
,@pCurrentTanevId int
|
||||
,@pNextTanevId int
|
||||
,@pIntezmenyId int
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE
|
||||
@typeName nvarchar(64)
|
||||
,@sql nvarchar(max)
|
||||
,@kovItemId int
|
||||
,@isItemTorolt char(1)
|
||||
,@isKovItemTorolt char(1)
|
||||
,@columnList nvarchar(max)
|
||||
,@columnListInsert nvarchar(max)
|
||||
|
||||
SELECT
|
||||
@typeName = d.C_TYPE
|
||||
,@isItemTorolt = d.TOROLT
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES d
|
||||
WHERE d.ID = @pItemId
|
||||
AND d.C_INTEZMENYID = @pIntezmenyId
|
||||
AND d.C_TANEVID = @pCurrentTanevId
|
||||
|
||||
SELECT
|
||||
@kovItemId = d.ID
|
||||
,@isKovItemTorolt = d.TOROLT
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES d
|
||||
WHERE d.C_INTEZMENYID = @pIntezmenyId
|
||||
AND d.C_TANEVID = @pNextTanevId
|
||||
AND d.ELOZOTANEVIREKORDID = @pItemId
|
||||
|
||||
|
||||
IF @isItemTorolt = 'T' OR @isKovItemTorolt = 'T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF @kovItemId IS NULL BEGIN
|
||||
INSERT INTO T_DICTIONARYITEMBASE (
|
||||
C_VALUE
|
||||
,C_NAME
|
||||
,C_NAME_1
|
||||
,C_NAME_2
|
||||
,C_NAME_3
|
||||
,C_NAME_4
|
||||
,C_VISIBLE
|
||||
,C_CODE
|
||||
,C_TYPE
|
||||
,C_PROTECTED
|
||||
,C_COLOR
|
||||
,C_ORDER
|
||||
,C_BGCOLOR
|
||||
,C_DESCRIPTION
|
||||
,C_ISACTIVE
|
||||
,C_SHORTNAME
|
||||
,C_DICTIONARYTYPEID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,TOROLT
|
||||
,SERIAL
|
||||
,LASTCHANGED
|
||||
,CREATED
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,ELOZOTANEVIREKORDID
|
||||
,NNID
|
||||
) SELECT
|
||||
C_VALUE AS C_VALUE -- C_VALUE - int
|
||||
,C_NAME AS C_NAME -- C_NAME - nvarchar(250)
|
||||
,C_NAME_1 AS C_NAME_1 -- C_NAME_1 - nvarchar(250)
|
||||
,C_NAME_2 AS C_NAME_2 -- C_NAME_2 - nvarchar(250)
|
||||
,C_NAME_3 AS C_NAME_3 -- C_NAME_3 - nvarchar(250)
|
||||
,C_NAME_4 AS C_NAME_4 -- C_NAME_4 - nvarchar(250)
|
||||
,C_VISIBLE AS C_VISIBLE -- C_VISIBLE - char(1)
|
||||
,C_CODE AS C_CODE -- C_CODE - nvarchar(20)
|
||||
,C_TYPE AS C_TYPE -- C_TYPE - nvarchar(32)
|
||||
,C_PROTECTED AS C_PROTECTED -- C_PROTECTED - char(1)
|
||||
,C_COLOR AS C_COLOR -- C_COLOR - nvarchar(6)
|
||||
,C_ORDER AS C_ORDER -- C_ORDER - int
|
||||
,C_BGCOLOR AS C_BGCOLOR -- C_BGCOLOR - nvarchar(6)
|
||||
,C_DESCRIPTION AS C_DESCRIPTION -- C_DESCRIPTION - nvarchar(255)
|
||||
,C_ISACTIVE AS C_ISACTIVE -- C_ISACTIVE - char(1)
|
||||
,C_SHORTNAME AS C_SHORTNAME -- C_SHORTNAME - nvarchar(30)
|
||||
,C_DICTIONARYTYPEID AS C_DICTIONARYTYPEID -- C_DICTIONARYTYPEID - int
|
||||
,C_INTEZMENYID AS C_INTEZMENYID -- C_INTEZMENYID - int
|
||||
,@pNextTanevId AS C_TANEVID -- C_TANEVID - int
|
||||
,TOROLT AS TOROLT -- TOROLT - char(1)
|
||||
,0 AS SERIAL -- SERIAL - int
|
||||
,GETDATE() AS LASTCHANGED -- LASTCHANGED - datetime
|
||||
,GETDATE() AS CREATED -- CREATED - datetime
|
||||
,MODIFIER AS MODIFIER -- MODIFIER - int
|
||||
,MODIFIER AS CREATOR -- CREATOR - int
|
||||
,ID AS ELOZOTANEVIREKORDID -- ELOZOTANEVIREKORDID - int
|
||||
,NULL AS NNID -- NNID - int
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES d
|
||||
WHERE d.ID = @pItemId
|
||||
AND d.C_INTEZMENYID = @pIntezmenyId
|
||||
AND d.C_TANEVID = @pCurrentTanevId
|
||||
|
||||
SET @kovItemId = SCOPE_IDENTITY()
|
||||
|
||||
SELECT @columnList = ISNULL(@columnList + ', ', '') + COLUMN_NAME
|
||||
FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE TABLE_NAME = 'T_' + @typeName
|
||||
AND TABLE_SCHEMA = 'dbo'
|
||||
ORDER BY ORDINAL_POSITION
|
||||
|
||||
SET @columnListInsert = REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(STUFF(@columnList, 1, 2, '@kovItemId'), 'CREATOR', 'MODIFIER'), 'C_ALTANEVID', '@pNextTanevId'), 'ELOZOTANEVIREKORDIDA', 'ID'), 'ELOZOTANEVIREKORDID', 'ID'), 'LASTCHANGED', 'GETDATE()')
|
||||
|
||||
SET @sql = N'
|
||||
INSERT INTO T_' + @typeName + ' (' + @columnList + ')
|
||||
SELECT ' + @columnListInsert + '
|
||||
FROM T_' + @typeName + '_OSSZES
|
||||
WHERE ID = @pItemId
|
||||
AND C_ALTANEVID = @pCurrentTanevId
|
||||
AND C_ALINTEZMENYID = @pIntezmenyId
|
||||
'
|
||||
|
||||
EXEC sys.sp_executesql @sql, N'
|
||||
@kovItemId int
|
||||
,@pItemId int
|
||||
,@pCurrentTanevId int
|
||||
,@pNextTanevId int
|
||||
,@pIntezmenyId int'
|
||||
,@kovItemId = @kovItemId
|
||||
,@pItemId = @pItemId
|
||||
,@pCurrentTanevId = @pCurrentTanevId
|
||||
,@pNextTanevId = @pNextTanevId
|
||||
,@pIntezmenyId = @pIntezmenyId
|
||||
END
|
||||
ELSE BEGIN
|
||||
UPDATE kov SET
|
||||
kov.C_VALUE = akt.c_VALUE
|
||||
,kov.C_NAME = akt.C_NAME
|
||||
,kov.C_NAME_1 = akt.C_NAME_1
|
||||
,kov.C_NAME_2 = akt.C_NAME_2
|
||||
,kov.C_NAME_3 = akt.C_NAME_3
|
||||
,kov.C_NAME_4 = akt.C_NAME_4
|
||||
,kov.C_VISIBLE = akt.C_VISIBLE
|
||||
,kov.C_CODE = akt.C_CODE
|
||||
,kov.C_PROTECTED = akt.C_PROTECTED
|
||||
,kov.C_COLOR = akt.C_COLOR
|
||||
,kov.C_ORDER = akt.C_ORDER
|
||||
,kov.C_BGCOLOR = akt.C_BGCOLOR
|
||||
,kov.C_DESCRIPTION = akt.C_DESCRIPTION
|
||||
,kov.C_ISACTIVE = akt.C_ISACTIVE
|
||||
,kov.C_SHORTNAME = akt.C_SHORTNAME
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES kov
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES akt ON akt.ID = kov.ELOZOTANEVIREKORDID
|
||||
WHERE akt.ID = @pItemId
|
||||
AND kov.ID = @kovItemId
|
||||
AND akt.C_TANEVID = @pCurrentTanevId
|
||||
AND kov.C_TANEVID = @pNextTanevId
|
||||
AND akt.C_INTEZMENYID = @pIntezmenyId
|
||||
AND kov.C_INTEZMENYID = @pIntezmenyId
|
||||
|
||||
SET @columnList = ''
|
||||
SELECT @columnList += 'kov.' + COLUMN_NAME + ' = akt.' + COLUMN_NAME + ', '
|
||||
FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE TABLE_NAME = 'T_' + @typeName
|
||||
AND TABLE_SCHEMA = 'dbo'
|
||||
AND COLUMN_NAME NOT IN ('ID', 'C_ALINTEZMENYID', 'C_ALTANEVID', 'TOROLT', 'ELOZOTANEVIREKORDID', 'ELOZOTANEVIREKORDIDA', 'NNID', 'LASTCHANGED', 'CREATOR', 'CREATED')
|
||||
ORDER BY ORDINAL_POSITION
|
||||
|
||||
SET @columnList += 'kov.LASTCHANGED = GETDATE()'
|
||||
|
||||
SET @sql = N'
|
||||
UPDATE kov SET
|
||||
' + @columnList + '
|
||||
FROM T_' + @typeName + '_OSSZES kov
|
||||
INNER JOIN T_' + @typeName + '_OSSZES akt ON akt.ID = kov.ELOZOTANEVIREKORDID
|
||||
WHERE akt.ID = @pItemId
|
||||
AND kov.ID = @kovItemId
|
||||
AND akt.C_ALTANEVID = @pCurrentTanevId
|
||||
AND kov.C_ALTANEVID = @pNextTanevId
|
||||
AND akt.C_ALINTEZMENYID = @pIntezmenyId
|
||||
AND kov.C_ALINTEZMENYID = @pIntezmenyId
|
||||
'
|
||||
EXEC sys.sp_executesql @sql, N'
|
||||
@kovItemId int
|
||||
,@pItemId int
|
||||
,@pCurrentTanevId int
|
||||
,@pNextTanevId int
|
||||
,@pIntezmenyId int'
|
||||
,@kovItemId = @kovItemId
|
||||
,@pItemId = @pItemId
|
||||
,@pCurrentTanevId = @pCurrentTanevId
|
||||
,@pNextTanevId = @pNextTanevId
|
||||
,@pIntezmenyId = @pIntezmenyId
|
||||
END
|
||||
END
|
||||
GO
|
||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user