IF OBJECT_ID('sp_FollowUpAlkalmazottTovabbiMunkaugy') IS NOT NULL BEGIN DROP PROCEDURE sp_FollowUpAlkalmazottTovabbiMunkaugy END; GO CREATE PROCEDURE sp_FollowUpAlkalmazottTovabbiMunkaugy @intezmenyId int, @aktTanevId int, @kovetkezoTanevId int, @alkalmazottId int AS BEGIN DECLARE @kovTanevAlkalmazottId int SELECT @kovTanevAlkalmazottId=ID FROM T_FELHASZNALO_OSSZES WHERE ELOZOTANEVIREKORDID=@alkalmazottId AND TOROLT='F' AND C_TANEVID=@kovetkezoTanevId DECLARE @tMunkaugyiId int DECLARE tMunkaugyiCur CURSOR FOR SELECT ID FROM T_TOVABBIMUNKAUGYIADATOK_OSSZES WHERE C_ALKALMAZOTTID=@alkalmazottId AND C_TANEVID=@aktTanevId AND C_INTEZMENYID=@intezmenyId OPEN tMunkaugyiCur FETCH NEXT FROM tMunkaugyiCur INTO @tMunkaugyiId WHILE @@FETCH_STATUS=0 BEGIN IF NOT EXISTS(SELECT TOP 1 1 FROM T_TOVABBIMUNKAUGYIADATOK_OSSZES WHERE C_TANEVID=@kovetkezoTanevId AND C_ALKALMAZOTTID=@kovTanevAlkalmazottId AND ELOZOTANEVIREKORDID=@tMunkaugyiId AND TOROLT='F') BEGIN INSERT INTO T_TOVABBIMUNKAUGYIADATOK( C_ALKALMAZASKEZDETE ,C_ALKALMAZASMEGSZUNESE ,C_ALKALMAZOTTID ,C_BESOROLASIFOKOZAT ,C_FELADATELLATASIHELYID ,C_FOGLALKOZTATASTIPUS ,C_INTEZMENYID ,C_KOTELEZOORASZAM ,C_MUNKAIDOKEDVEZMENYOKA ,C_MUNKAIDOKEDVEZMENYOKASZOVEG ,C_MUNKAIDOKEDVEZMENYORASZAM ,C_MUNKAKORTIPUSA ,C_MUNKAVISZONYTIPUSA ,C_NYUGDIJAS ,C_RESZMUNKAIDOSZAZALEK ,C_VEZETOIORASZAMOK ,C_TANEVID ,TOROLT ,SERIAL ,LASTCHANGED ,CREATED ,MODIFIER ,CREATOR ,NNID ,ELOZOTANEVIREKORDID ) SELECT C_ALKALMAZASKEZDETE AS C_ALKALMAZASKEZDETE ,C_ALKALMAZASMEGSZUNESE AS C_ALKALMAZASMEGSZUNESE ,fh.ID AS C_ALKALMAZOTTID ,t.C_BESOROLASIFOKOZAT AS C_BESOROLASIFOKOZAT ,t.C_FELADATELLATASIHELYID AS C_FELADATELLATASIHELYID ,t.C_FOGLALKOZTATASTIPUS AS C_FOGLALKOZTATASTIPUS ,@intezmenyId AS C_INTEZMENYID ,C_KOTELEZOORASZAM AS C_KOTELEZOORASZAM ,t.C_MUNKAIDOKEDVEZMENYOKA AS C_MUNKAIDOKEDVEZMENYOKA ,t.C_MUNKAIDOKEDVEZMENYOKASZOVEG AS C_MUNKAIDOKEDVEZMENYOKASZOVEG ,t.C_MUNKAIDOKEDVEZMENYORASZAM AS C_MUNKAIDOKEDVEZMENYORASZAM ,t.C_MUNKAKORTIPUSA AS C_MUNKAKORTIPUSA ,t.C_MUNKAVISZONYTIPUSA AS C_MUNKAVISZONYTIPUSA ,t.C_NYUGDIJAS AS C_NYUGDIJAS ,t.C_RESZMUNKAIDOSZAZALEK AS C_RESZMUNKAIDOSZAZALEK ,t.C_VEZETOIORASZAMOK AS C_VEZETOIORASZAMOK ,@kovetkezoTanevId AS C_TANEVID ,t.TOROLT AS TOROLT ,0 AS SERIAL ,GETDATE() AS LASTCHANGED ,GETDATE() AS CREATED ,t.MODIFIER AS MODIFIER ,t.MODIFIER AS CREATOR ,t.NNID AS NNID ,t.ID AS ELOZOTANEVIREKORDID FROM T_TOVABBIMUNKAUGYIADATOK_OSSZES t INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ELOZOTANEVIREKORDID=t.C_ALKALMAZOTTID AND fh.TOROLT='F' AND fh.C_TANEVID=@kovetkezoTanevId AND fh.C_INTEZMENYID=@intezmenyId WHERE t.C_TANEVID = @aktTanevId AND t.C_INTEZMENYID = @intezmenyId AND t.C_ALKALMAZOTTID=@alkalmazottId AND t.TOROLT='F' AND t.ID=@tMunkaugyiId END ELSE BEGIN UPDATE t SET C_ALKALMAZASKEZDETE=old.C_ALKALMAZASKEZDETE ,C_ALKALMAZASMEGSZUNESE=old.C_ALKALMAZASMEGSZUNESE ,C_BESOROLASIFOKOZAT=old.C_BESOROLASIFOKOZAT ,C_FELADATELLATASIHELYID=old.C_FELADATELLATASIHELYID ,C_FOGLALKOZTATASTIPUS=old.C_FOGLALKOZTATASTIPUS ,C_INTEZMENYID=@intezmenyId ,C_KOTELEZOORASZAM=old.C_KOTELEZOORASZAM ,C_MUNKAIDOKEDVEZMENYOKA=old.C_MUNKAIDOKEDVEZMENYOKA ,C_MUNKAIDOKEDVEZMENYOKASZOVEG=old.C_MUNKAIDOKEDVEZMENYOKASZOVEG ,C_MUNKAIDOKEDVEZMENYORASZAM=old.C_MUNKAIDOKEDVEZMENYORASZAM ,C_MUNKAKORTIPUSA=old.C_MUNKAKORTIPUSA ,C_MUNKAVISZONYTIPUSA=old.C_MUNKAVISZONYTIPUSA ,C_NYUGDIJAS=old.C_NYUGDIJAS ,C_RESZMUNKAIDOSZAZALEK=old.C_RESZMUNKAIDOSZAZALEK ,C_VEZETOIORASZAMOK =old.C_VEZETOIORASZAMOK ,C_TANEVID=@kovetkezoTanevId ,TOROLT=old.TOROLT ,SERIAL=t.SERIAL+1 ,MODIFIER=old.MODIFIER FROM T_TOVABBIMUNKAUGYIADATOK_OSSZES t INNER JOIN T_TOVABBIMUNKAUGYIADATOK_OSSZES old ON t.ELOZOTANEVIREKORDID=old.ID AND old.C_TANEVID=@aktTanevId AND old.C_INTEZMENYID=@intezmenyId AND old.ID=@tMunkaugyiId WHERE t.TOROLT='F' AND t.C_ALKALMAZOTTID=@kovTanevAlkalmazottId AND t.C_TANEVID=@kovetkezoTanevId AND t.C_INTEZMENYID=@intezmenyId END FETCH NEXT FROM tMunkaugyiCur INTO @tMunkaugyiId END CLOSE tMunkaugyiCur DEALLOCATE tMunkaugyiCur END GO