117 lines
No EOL
5.9 KiB
Transact-SQL
117 lines
No EOL
5.9 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), Torolni char(1))
|
|
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
|
|
----- 8827 ----- Felnőttképzési jogviszony munkarend nélkül -----
|
|
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE, Torolni)
|
|
SELECT DIB.ID, 8827, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE, 'F'
|
|
FROM T_DICTIONARYITEMBASE DIB
|
|
WHERE DIB.C_DICTIONARYTYPEID = 27 AND DIB.C_NAME = N'Felnőttképzési jogviszony munkarend nélkül' AND DIB.TOROLT = 'F'
|
|
UPDATE DIB SET
|
|
DIB.TOROLT = 'T'
|
|
FROM T_DICTIONARYITEMBASE DIB
|
|
WHERE DIB.C_DICTIONARYTYPEID = 27 AND DIB.C_NAME = N'Felnőttképzési jogviszony munkarend nélkül' AND DIB.TOROLT = 'F'
|
|
END
|
|
|
|
IF @TEMP_EnvironmentName = 'NSZFH'
|
|
BEGIN
|
|
----- 8827 ----- Felnőttképzési jogviszony munkarend nélkül -----
|
|
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE, Torolni)
|
|
SELECT DIB.ID, 8827, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE, 'F'
|
|
FROM T_DICTIONARYITEMBASE DIB
|
|
WHERE DIB.C_DICTIONARYTYPEID = 27 AND DIB.C_NAME = N'Felnőttképzési jogviszony munkarend nélkül' AND DIB.TOROLT = 'F'
|
|
UPDATE DIB SET
|
|
DIB.TOROLT = 'T'
|
|
FROM T_DICTIONARYITEMBASE DIB
|
|
WHERE DIB.C_DICTIONARYTYPEID = 27 AND DIB.C_NAME = N'Felnőttképzési jogviszony munkarend nélkül' AND DIB.TOROLT = 'F'
|
|
END
|
|
|
|
IF @TEMP_EnvironmentName = 'HOI'
|
|
BEGIN
|
|
----- 8827 ----- Felnőttképzési jogviszony munkarend nélkül -----
|
|
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE, Torolni)
|
|
SELECT DIB.ID, 8827, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE, 'F'
|
|
FROM T_DICTIONARYITEMBASE DIB
|
|
WHERE DIB.C_DICTIONARYTYPEID = 27 AND DIB.C_NAME = N'Felnőttképzési jogviszony munkarend nélkül' AND DIB.TOROLT = 'F'
|
|
UPDATE DIB SET
|
|
DIB.TOROLT = 'T'
|
|
FROM T_DICTIONARYITEMBASE DIB
|
|
WHERE DIB.C_DICTIONARYTYPEID = 27 AND DIB.C_NAME = N'Felnőttképzési jogviszony munkarend nélkül' AND DIB.TOROLT = 'F'
|
|
END
|
|
|
|
IF @TEMP_EnvironmentName = 'AZURE'
|
|
BEGIN
|
|
----- 8827 ----- Felnőttképzési jogviszony munkarend nélkül -----
|
|
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE, Torolni)
|
|
SELECT DIB.ID, 8827, DIB.C_TANEVID, DIB.C_NAME, DIB.C_TYPE, 'F'
|
|
FROM T_DICTIONARYITEMBASE DIB
|
|
WHERE DIB.C_DICTIONARYTYPEID = 27 AND DIB.C_NAME = N'Felnőttképzési jogviszony munkarend nélkül' AND DIB.TOROLT = 'F'
|
|
UPDATE DIB SET
|
|
DIB.TOROLT = 'T'
|
|
FROM T_DICTIONARYITEMBASE DIB
|
|
WHERE DIB.C_DICTIONARYTYPEID = 27 AND DIB.C_NAME = N'Felnőttképzési jogviszony munkarend nélkül' 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;
|
|
|
|
|
|
UPDATE DIB SET
|
|
DIB.TOROLT = 'T'
|
|
,DIB.C_VISIBLE = 'F'
|
|
FROM T_DICTIONARYITEMBASE_OSSZES DIB
|
|
INNER JOIN T_TANEV_OSSZES t ON DIB.C_TANEVID = t.ID AND t.TOROLT = 'F'
|
|
INNER JOIN T_INTEZMENYADATOK_OSSZES ia ON ia.C_INTEZMENYID = t.C_INTEZMENYID AND ia.TOROLT = 'F' AND ia.C_TANEVID = t.ID
|
|
WHERE DIB.C_DICTIONARYTYPEID = 27 AND DIB.ID = 8827 AND DIB.TOROLT = 'F'
|
|
AND (t.C_SORSZAM < 42 OR ia.C_ISSZAKKEPZO = 'F') --2021/2022 tanevelottieket es a nem szakkepzokben toroltre allitani
|
|
|
|
-- (1095) 'Na' erteket csereje 8827-re --
|
|
DROP TABLE IF EXISTS tmpForSwitchDictionaryItemBase
|
|
CREATE TABLE tmpForSwitchDictionaryItemBase(RegiID int, UjID int, TanevID int, C_NAME nvarchar(500), C_TYPE nvarchar(64), Torolni char(1))
|
|
DECLARE intezmenytanevekCursor CURSOR LOCAL FOR
|
|
SELECT
|
|
ia.C_INTEZMENYID
|
|
,ia.C_TANEVID
|
|
FROM T_INTEZMENYADATOK ia
|
|
JOIN T_TANEV t ON t.ID = ia.C_TANEVID AND t.TOROLT = 'F'
|
|
JOIN T_INTEZMENY i ON i.ID = ia.C_INTEZMENYID AND i.TOROLT = 'F'
|
|
WHERE ia.TOROLT = 'F'
|
|
DECLARE @intezmenyId int, @tanevId int
|
|
|
|
OPEN intezmenytanevekCursor
|
|
FETCH NEXT FROM intezmenytanevekCursor INTO @intezmenyId, @tanevId
|
|
WHILE @@FETCH_STATUS = 0
|
|
BEGIN
|
|
IF (SELECT COUNT(1) FROM T_TANEVRENDJE_OSSZES WHERE C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID AND TOROLT = 'F') > 1
|
|
BEGIN
|
|
IF (EXISTS(SELECT ID FROM T_INTEZMENYADATOK_OSSZES WHERE C_INTEZMENYID = @intezmenyId AND C_ISSZAKKEPZO = 'T' AND TOROLT = 'F' AND C_TANEVID = @tanevID)
|
|
AND EXISTS(SELECT ID FROM T_TANEV_OSSZES WHERE TOROLT = 'F' AND C_SORSZAM > 40 AND ID = @tanevID))
|
|
BEGIN
|
|
INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE, Torolni)VALUES
|
|
(1095, 8827,@tanevId, N'Felnőttképzési jogviszony munkarend nélkül', 'TanterviJelleg', 'F')
|
|
END
|
|
END
|
|
FETCH NEXT FROM intezmenytanevekCursor INTO @intezmenyId, @tanevId
|
|
END
|
|
CLOSE intezmenytanevekCursor
|
|
DEALLOCATE intezmenytanevekCursor
|
|
EXEC [dev].uspSwitchDictionaryItemBaseFromTmp;
|
|
|
|
-- (1095) 'Na' erteket lathatatlannak allitani--
|
|
UPDATE DIB SET
|
|
DIB.C_VISIBLE = 'F'
|
|
FROM T_DICTIONARYITEMBASE_OSSZES DIB
|
|
INNER JOIN T_TANEV_OSSZES t ON DIB.C_TANEVID = t.ID AND t.TOROLT = 'F'
|
|
INNER JOIN T_INTEZMENYADATOK_OSSZES ia ON ia.C_INTEZMENYID = t.C_INTEZMENYID AND ia.TOROLT = 'F' AND ia.C_TANEVID = t.ID
|
|
WHERE DIB.C_DICTIONARYTYPEID = 27 AND DIB.ID = 1095 AND DIB.TOROLT = 'F'
|
|
AND (t.C_SORSZAM > 40 AND ia.C_ISSZAKKEPZO = 'T') |