-- ============================================= -- Author: Bata-Kovács Gábor -- Create date: 2017.06.03. -- Description: A Tanterv adatainak frissítése a következő tanévre -- ============================================= IF OBJECT_ID('sp_FollowUpTanterv') IS NOT NULL BEGIN DROP PROCEDURE sp_FollowUpTanterv END; GO CREATE PROCEDURE sp_FollowUpTanterv @intezmenyId int, @aktTanevId int, @kovetkezoTanevId int, @tantervId int AS BEGIN IF (@tantervId = 0) BEGIN INSERT INTO T_TANTERV ( C_CSOPORTTIPUSA ,C_EVFOLYAMTOL ,C_EVFOLYAMIG ,C_KERETTANTERVREEPULO ,C_NEV ,C_MEGJEGYZES ,C_INTEZMENYID ,C_TANEVID ,TOROLT ,SERIAL ,LASTCHANGED ,CREATED ,MODIFIER ,CREATOR ,NNID ,ELOZOTANEVIREKORDID ) SELECT IIF((SELECT COUNT(1) FROM T_CSOPORTTIPUS WHERE C_ALTANEVID = @kovetkezoTanevId AND ID = t.C_CSOPORTTIPUSA) = 0,1031,t.C_CSOPORTTIPUSA) AS C_CSOPORTTIPUSA ,IIF((SELECT COUNT(1) FROM T_EVFOLYAMTIPUS WHERE C_ALTANEVID = @kovetkezoTanevId AND ID = t.C_EVFOLYAMTOL) = 0,1296,t.C_EVFOLYAMTOL) AS C_EVFOLYAMTOL ,IIF((SELECT COUNT(1) FROM T_EVFOLYAMTIPUS WHERE C_ALTANEVID = @kovetkezoTanevId AND ID = t.C_EVFOLYAMIG) = 0,1296,t.C_EVFOLYAMIG) AS C_EVFOLYAMIG ,C_KERETTANTERVREEPULO AS C_KERETTANTERVREEPULO ,C_NEV AS C_NEV ,C_MEGJEGYZES AS C_MEGJEGYZES ,@intezmenyID AS C_INTEZMENYID ,@kovetkezoTanevId AS C_TANEVID ,TOROLT AS TOROLT ,0 AS SERIAL ,GETDATE() AS LASTCHANGED ,GETDATE() AS CREATED ,MODIFIER AS MODIFIER ,MODIFIER AS CREATOR ,NULL AS NNID ,t.ID AS ELOZOTANEVIREKORDID FROM T_TANTERV t WHERE C_TANEVID = @aktTanevId AND C_INTEZMENYID = @intezmenyId AND 0 = (SELECT COUNT(1) FROM T_TANTERV WHERE C_TANEVID = @kovetkezoTanevId AND C_INTEZMENYID = @intezmenyId AND ELOZOTANEVIREKORDID = t.ID) END ELSE BEGIN UPDATE kovetkezo SET kovetkezo.C_CSOPORTTIPUSA = IIF((SELECT COUNT(1) FROM T_CSOPORTTIPUS WHERE C_ALTANEVID = @kovetkezoTanevId AND ID = aktiv.C_CSOPORTTIPUSA) = 0, 1031, aktiv.C_CSOPORTTIPUSA) ,kovetkezo.C_EVFOLYAMTOL = IIF((SELECT COUNT(1) FROM T_EVFOLYAMTIPUS WHERE C_ALTANEVID = @kovetkezoTanevId AND ID = aktiv.C_EVFOLYAMTOL) = 0, 1296, aktiv.C_EVFOLYAMTOL) ,kovetkezo.C_EVFOLYAMIG = IIF((SELECT COUNT(1) FROM T_EVFOLYAMTIPUS WHERE C_ALTANEVID = @kovetkezoTanevId AND ID = aktiv.C_EVFOLYAMIG) = 0, 1296, aktiv.C_EVFOLYAMIG) ,kovetkezo.C_KERETTANTERVREEPULO = aktiv.C_KERETTANTERVREEPULO ,kovetkezo.C_NEV = aktiv.C_NEV ,kovetkezo.C_MEGJEGYZES = aktiv.C_MEGJEGYZES ,kovetkezo.TOROLT = aktiv.TOROLT FROM T_TANTERV kovetkezo INNER JOIN T_TANTERV aktiv ON aktiv.C_INTEZMENYID = kovetkezo.C_INTEZMENYID AND aktiv.C_TANEVID = @aktTanevId AND aktiv.ID = @tantervId WHERE kovetkezo.C_INTEZMENYID = @intezmenyId AND kovetkezo.C_TANEVID = @kovetkezoTanevId AND kovetkezo.ELOZOTANEVIREKORDID = @tantervId END END GO