kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20180514150133_KRETA_5673/sp_FollowUpAlkalmazottTovabbiMunkaugy.sql
2024-03-13 00:33:46 +01:00

115 lines
4.1 KiB
Transact-SQL

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