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')