DROP PROCEDURE IF EXISTS dev.uspSetModulSzakkepzo GO CREATE PROCEDURE dev.uspSetModulSzakkepzo @pIsSzakkepzo char(1) ,@pTanevIds nvarchar(max) -- tanévIdk vesszővel elválasztva: '29,64' AS BEGIN DECLARE @EnvironmentName nvarchar(1000) = (SELECT [Value] FROM dev.EnvironmentInfo WHERE [Key] = 'Dictionary') IF (@EnvironmentName IS NULL OR @EnvironmentName NOT IN ('KK','NSZFH','HOI','AZURE')) BEGIN RAISERROR('Nincs Dictionary ertek a dev.EnvironmentInfo tablaban', 16, 1, @EnvironmentName) RETURN; END -- ======================= -- T_INTEZMENYADATOK-ban szakképző ki-bekapcsolás -- ======================= UPDATE ia SET ia.C_ISSZAKKEPZO = @pIsSzakkepzo FROM T_INTEZMENYADATOK_OSSZES ia INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON t.value = ia.C_TANEVID -- ======================= -- T_ALKALMAZOTT-ban szakképző kikapcsolás esetén C_ISDUALISKEPZOHELYIOKTATO is 'F' -- ======================= IF(@pIsSzakkepzo = 'F') BEGIN UPDATE alkalmazott SET alkalmazott.C_ISDUALISKEPZOHELYIOKTATO = @pIsSzakkepzo FROM T_ALKALMAZOTT_OSSZES alkalmazott INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON t.value = alkalmazott.C_ALTANEVID WHERE alkalmazott.TOROLT = 'F' END -- ======================= -- TanterviJellegek beállítása @pIsSzakkepzo -- ======================= UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 8827 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','T','F') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 1095 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)) INSERT INTO tmpForSwitchDictionaryItemBase(RegiID, UjID, TanevID, C_NAME, C_TYPE, Torolni) SELECT IIF(@pIsSzakkepzo = 'T',1095,8827) ,IIF(@pIsSzakkepzo = 'T',8827,1095) ,value ,N'Felnőttképzési jogviszony munkarend nélkül' ,'TanterviJelleg' ,'F' FROM STRING_SPLIT(@pTanevIds,',') EXEC [dev].uspSwitchDictionaryItemBaseFromTmp; UPDATE dib SET dib.C_NAME = IIF(@pIsSzakkepzo = 'T' OR @EnvironmentName NOT IN ('NSZFH','HOI'), N'Nappali rendszerű iskolai oktatás',N'Nappali rendszerű iskolai oktatás (*)') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 1096 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 1097 UPDATE dib SET dib.C_NAME = IIF(@pIsSzakkepzo = 'T',N'Kollégiumi nevelés',IIF(@EnvironmentName IN ('NSZFH'),N'Kollégiumi nevelés (*)',N'Bentlakásos intézményi ellátás')) FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 1099 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 1103 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 1101 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 1102 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 1104 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 5448 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 1100 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 1105 UPDATE dib SET dib.C_NAME = IIF(@pIsSzakkepzo = 'T',N'Felnőttoktatás esti rendszerű OKJ vagy köznevelés',IIF(@EnvironmentName IN ('NSZFH','HOI'),N'Felnőttoktatás esti rendszerű (*)',N'Felnőttoktatás esti rendszerű')) ,dib.C_NAME_1 = IIF(@pIsSzakkepzo = 'T',N'Felnőttoktatás esti rendszerű OKJ vagy köznevelés',IIF(@EnvironmentName IN ('NSZFH','HOI'),N'Felnőttoktatás esti rendszerű (*)',N'Felnőttoktatás esti rendszerű')) FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 5446 UPDATE dib SET dib.C_NAME = IIF(@pIsSzakkepzo = 'T',N'Felnőttoktatás levelező rendszerű OKJ vagy köznevelés',IIF(@EnvironmentName IN ('NSZFH','HOI'),N'Felnőttoktatás levelező rendszerű (*)',N'Felnőttoktatás levelező rendszerű')) ,dib.C_NAME_1 = IIF(@pIsSzakkepzo = 'T',N'Felnőttoktatás levelező rendszerű OKJ vagy köznevelés',IIF(@EnvironmentName IN ('NSZFH','HOI'),N'Felnőttoktatás levelező rendszerű (*)',N'Felnőttoktatás levelező rendszerű')) FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 5447 UPDATE dib SET dib.C_NAME = IIF(@pIsSzakkepzo = 'T',N'Felnőttoktatás nappali rendszerű OKJ vagy köznevelés',IIF(@EnvironmentName IN ('NSZFH','HOI'),N'Felnőttoktatás nappali rendszerű (*)',N'Felnőttoktatás nappali rendszerű')) ,dib.C_NAME_1 = IIF(@pIsSzakkepzo = 'T',N'Felnőttoktatás nappali rendszerű OKJ vagy köznevelés',IIF(@EnvironmentName IN ('NSZFH','HOI'),N'Felnőttoktatás nappali rendszerű (*)',N'Felnőttoktatás nappali rendszerű')) FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 5445 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 8831 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.C_DICTIONARYTYPEID IN (180,181) UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID IN(8999,9000) DELETE fhszk FROM T_FELHASZNALO_SZEREPKOR fhszk INNER JOIN T_SZEREPKOR_OSSZES szk ON szk.ID = fhszk.C_SZEREPKORID AND szk.TOROLT = 'F' AND szk.C_SZEREPKORTIPUS = 9001 UPDATE T_SZEREPKOR_OSSZES SET TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') WHERE C_SZEREPKORTIPUS = 9001 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID = 9001 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID BETWEEN 9072 AND 9076 UPDATE dib SET dib.TOROLT = IIF(@pIsSzakkepzo = 'T','F','T') FROM T_DICTIONARYITEMBASE_OSSZES dib INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON CAST(t.value AS INT) = dib.C_TANEVID WHERE dib.ID IN (9078 ,9079) -- ======================= -- T_OSZTALYCSOPORT C_KEPZESIFORMA mező értékeinek másolása a megfelelő T_TANULOTANUGYIADATOK C_TANTERVIJELLEGID mezőkbe -- ======================= IF(@pIsSzakkepzo = 'T') BEGIN UPDATE tta SET tta.C_TANTERVIJELLEGID = IIF(ocs.C_KEPZESIFORMA IN (1103,1101,1102,1104,5448,1100,1105), 8827, ocs.C_KEPZESIFORMA) FROM T_TANULOTANUGYIADATOK tta INNER JOIN T_TANULOCSOPORT tcs ON tcs.ID = tta.C_TANULOCSOPORTID INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID INNER JOIN STRING_SPLIT(@pTanevIds,',') t ON t.value = tta.C_TANEVID WHERE tta.TOROLT = 'F' END END GO