This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,45 @@
 DROP TABLE IF EXISTS tmpForSwitchDictionaryItemBase CREATE TABLE tmpForSwitchDictionaryItemBase(RegiID int, UjID int, TanevID int, C_NAME nvarchar(500), C_TYPE nvarchar(64))
---------------- könyvtárostanár -----------------
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE)
SELECT DIB.ID, 7772, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE
FROM T_DICTIONARYITEMBASE DIB
INNER JOIN T_TANEV t ON t.ID = DIB.C_TANEVID AND t.TOROLT = 'F' AND t.C_NEV = '2019/2020'
WHERE DIB.C_TYPE = N'MunkakorTipus' AND DIB.C_NAME = N'könyvtárostanár' AND DIB.TOROLT = 'F'
UPDATE DIB SET
DIB.TOROLT = 'T'
FROM T_DICTIONARYITEMBASE DIB
INNER JOIN T_TANEV t ON t.ID = DIB.C_TANEVID AND t.TOROLT = 'F' AND t.C_NEV = '2019/2020'
WHERE DIB.C_TYPE = N'MunkakorTipus' AND DIB.C_NAME = N'könyvtárostanár'
---------------- könyvtárostanító -----------------
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE)
SELECT DIB.ID, 7773, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE
FROM T_DICTIONARYITEMBASE DIB
INNER JOIN T_TANEV t ON t.ID = DIB.C_TANEVID AND t.TOROLT = 'F' AND t.C_NEV = '2019/2020'
WHERE DIB.C_TYPE = N'MunkakorTipus' AND DIB.C_NAME = N'könyvtárostanító' AND DIB.TOROLT = 'F'
UPDATE DIB SET
DIB.TOROLT = 'T'
FROM T_DICTIONARYITEMBASE DIB
INNER JOIN T_TANEV t ON t.ID = DIB.C_TANEVID AND t.TOROLT = 'F' AND t.C_NEV = '2019/2020'
WHERE DIB.C_TYPE = N'MunkakorTipus' AND DIB.C_NAME = N'könyvtárostanító'
---------------- utazó gyógypedagógus -----------------
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE)
SELECT DIB.ID, 7774, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE
FROM T_DICTIONARYITEMBASE DIB
INNER JOIN T_TANEV t ON t.ID = DIB.C_TANEVID AND t.TOROLT = 'F' AND t.C_NEV = '2019/2020'
WHERE DIB.C_TYPE = N'MunkakorTipus' AND DIB.C_NAME = N'utazó gyógypedagógus' AND DIB.TOROLT = 'F'
UPDATE DIB SET
DIB.TOROLT = 'T'
FROM T_DICTIONARYITEMBASE DIB
INNER JOIN T_TANEV t ON t.ID = DIB.C_TANEVID AND t.TOROLT = 'F' AND t.C_NEV = '2019/2020'
WHERE DIB.C_TYPE = N'MunkakorTipus' AND DIB.C_NAME = N'utazó gyógypedagógus'
---------------- utazó konduktor -----------------
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE)
SELECT DIB.ID, 7775, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE
FROM T_DICTIONARYITEMBASE DIB
INNER JOIN T_TANEV t ON t.ID = DIB.C_TANEVID AND t.TOROLT = 'F' AND t.C_NEV = '2019/2020'
WHERE DIB.C_TYPE = N'MunkakorTipus' AND DIB.C_NAME = N'utazó konduktor' AND DIB.TOROLT = 'F'
UPDATE DIB SET
DIB.TOROLT = 'T'
FROM T_DICTIONARYITEMBASE DIB
INNER JOIN T_TANEV t ON t.ID = DIB.C_TANEVID AND t.TOROLT = 'F' AND t.C_NEV = '2019/2020'
WHERE DIB.C_TYPE = N'MunkakorTipus' AND DIB.C_NAME = N'utazó konduktor'

View file

@ -0,0 +1,3 @@
EXEC [dev].[uspCreateDictionaryItems] NULL, '2019/2020'
EXEC [dev].uspSwitchDictionaryItemBaseFromTmp

View file

@ -0,0 +1,29 @@
-- =============================================
-- Description: Szótár elemeketet updatelő script
-- =============================================
DROP PROCEDURE IF EXISTS [dev].uspSwitchDictionaryItemBaseFromTmp
GO
CREATE PROCEDURE [dev].uspSwitchDictionaryItemBaseFromTmp
AS
BEGIN
SET NOCOUNT ON;
IF (EXISTS (SELECT 1 FROM sys.tables WHERE name = 'tmpForSwitchDictionaryItemBase'))
BEGIN
DECLARE @sql nvarchar(max) = N''
SELECT @sql += N'
UPDATE ' + rt.name + ' SET ' + rc.name + ' = '+ CAST(tmp.UjID AS nvarchar(10)) + N'
WHERE '+ rc.name +' = ' + CAST(tmp.RegiID as nvarchar(10)) + N'
AND ' + ctanevId.name + ' = ' + CAST(tmp.TanevID as nvarchar(10))
FROM sys.foreign_keys fk
INNER JOIN sys.foreign_key_columns fkc ON fkc.constraint_object_id = fk.object_id
INNER JOIN sys.tables rt ON fkc.parent_object_id = rt.object_id
INNER JOIN sys.columns rc ON rc.column_id = fkc.parent_column_id AND rc.object_id = rt.object_id
INNER JOIN sys.columns c ON c.column_id = fkc.referenced_column_id AND c.object_id = fkc.referenced_object_id
INNER JOIN sys.tables fkt ON fkt.object_id = fkc.referenced_object_id
INNER JOIN tmpForSwitchDictionaryItemBase tmp ON fkt.name = 'T_'+ tmp.C_TYPE
INNER JOIN sys.columns ctanevId ON ctanevId.object_id = rt.object_id AND ctanevId.name IN (N'C_ALTANEVID',N'C_TANEVID')
WHERE rc.name NOT IN (N'C_ALINTEZMENYID', N'C_INTEZMENYID',N'C_ALTANEVID',N'C_TANEVID', 'ID')
EXEC sp_executesql @sql
DROP TABLE IF EXISTS tmpForSwitchDictionaryItemBase
END
END