kreta/Kreta.DataAccess.Migrations/Scripts/20210726153446_KRETA2_9365/KRETA2_9365_InsertScripts.sql
2024-03-13 00:33:46 +01:00

90 lines
4.1 KiB
Transact-SQL

DROP TABLE IF EXISTS tmpForSwitchDictionaryItemBase
CREATE TABLE tmpForSwitchDictionaryItemBase(RegiID int, UjID int, TanevID int, C_NAME nvarchar(500), C_TYPE nvarchar(64))
DECLARE @TEMP_EnvironmentName nvarchar(1000), @LastTanevSorszam int
SET @LastTanevSorszam = (SELECT MAX(C_SORSZAM) FROM T_TANEV WHERE TOROLT = 'F' AND (C_KOVETKEZO = 'T' OR C_AKTIV = 'T'))
SET @TEMP_EnvironmentName = (SELECT [Value]
FROM dev.EnvironmentInfo WHERE [Key] = 'Dictionary')
IF (@TEMP_EnvironmentName IS NULL OR @TEMP_EnvironmentName NOT IN ('KK','NSZFH','HOI','AZURE'))
BEGIN INSERT INTO T_DICTIONARYITEMBASE(C_VALUE) VALUES('Nincs Dictionary ertek a dev.EnvironmentInfo tablaban') END -- elszall a migracio ha nincs
IF @TEMP_EnvironmentName = 'KK'
BEGIN
----- 8755 ----- KRÉTA Leltározásban érintett -----
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE)
SELECT DIB.ID, 8755, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE
FROM T_DICTIONARYITEMBASE DIB
WHERE DIB.C_DICTIONARYTYPEID = 67 AND DIB.C_NAME = N'KRÉTA Leltározásban érintett' AND DIB.TOROLT = 'F'
UPDATE DIB SET
DIB.TOROLT = 'T'
FROM T_DICTIONARYITEMBASE DIB
WHERE DIB.C_DICTIONARYTYPEID = 67 AND DIB.C_NAME = N'KRÉTA Leltározásban érintett' AND DIB.TOROLT = 'F'
END
IF @TEMP_EnvironmentName = 'NSZFH'
BEGIN
----- 8755 ----- KRÉTA Leltározásban érintett -----
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE)
SELECT DIB.ID, 8755, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE
FROM T_DICTIONARYITEMBASE DIB
WHERE DIB.C_DICTIONARYTYPEID = 67 AND DIB.C_NAME = N'KRÉTA Leltározásban érintett' AND DIB.TOROLT = 'F'
UPDATE DIB SET
DIB.TOROLT = 'T'
FROM T_DICTIONARYITEMBASE DIB
WHERE DIB.C_DICTIONARYTYPEID = 67 AND DIB.C_NAME = N'KRÉTA Leltározásban érintett' AND DIB.TOROLT = 'F'
END
IF @TEMP_EnvironmentName = 'HOI'
BEGIN
----- 8755 ----- KRÉTA Leltározásban érintett -----
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE)
SELECT DIB.ID, 8755, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE
FROM T_DICTIONARYITEMBASE DIB
WHERE DIB.C_DICTIONARYTYPEID = 67 AND DIB.C_NAME = N'KRÉTA Leltározásban érintett' AND DIB.TOROLT = 'F'
UPDATE DIB SET
DIB.TOROLT = 'T'
FROM T_DICTIONARYITEMBASE DIB
WHERE DIB.C_DICTIONARYTYPEID = 67 AND DIB.C_NAME = N'KRÉTA Leltározásban érintett' AND DIB.TOROLT = 'F'
END
IF @TEMP_EnvironmentName = 'AZURE'
BEGIN
----- 8755 ----- KRÉTA Leltározásban érintett -----
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE)
SELECT DIB.ID, 8755, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE
FROM T_DICTIONARYITEMBASE DIB
WHERE DIB.C_DICTIONARYTYPEID = 67 AND DIB.C_NAME = N'KRÉTA Leltározásban érintett' AND DIB.TOROLT = 'F'
UPDATE DIB SET
DIB.TOROLT = 'T'
FROM T_DICTIONARYITEMBASE DIB
WHERE DIB.C_DICTIONARYTYPEID = 67 AND DIB.C_NAME = N'KRÉTA Leltározásban érintett' AND DIB.TOROLT = 'F'
END
;
DISABLE TRIGGER ALL ON T_DICTIONARYITEMBASE;
EXEC [dev].[uspCreateDictionaryItems] NULL, NULL;
ENABLE TRIGGER ALL ON T_DICTIONARYITEMBASE;
EXEC [dev].uspSwitchDictionaryItemBaseFromTmp;
-- ================================================================================================================
-- Ezekhez az újonnan felvett dictionary elemek felvételekor más táblákba is
-- szükséges lehet kapcsolódó rekordokat beszúrni
-- dev.uspSetDictionaryProperties SP-be felejtsd el berakni, ez kell az új intézmény létrehozásához
-- ================================================================================================================
-- 8755 - KRÉTA Leltározásban érintett
INSERT INTO T_SZEREPKOR (
C_SZEREPKORTIPUS
,C_INTEZMENYID
,C_TANEVID
,TOROLT
,SERIAL
,LASTCHANGED
,CREATED
,MODIFIER
,CREATOR
)
SELECT 8755, i.ID, tv.ID, 'F', 0, GETDATE(), GETDATE(), NULL, NULL
FROM T_INTEZMENY i
INNER JOIN T_TANEV tv ON tv.C_INTEZMENYID = i.ID
WHERE tv.TOROLT = 'F' AND i.TOROLT = 'F' AND tv.C_AKTIV = 'T'