kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20190329092345_DB_419_01/sp_FollowUpTanuloFelmentes.sql
2024-03-13 00:33:46 +01:00

85 lines
2.5 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS sp_FollowUpTanuloFelmentes
GO
CREATE PROCEDURE sp_FollowUpTanuloFelmentes
@intezmenyId int,
@aktTanevId int,
@kovTanevId int,
@felmentesId int
AS
BEGIN
DECLARE @kovFelmentesId int = (SELECT ID FROM T_TANULOMENTESSEG_OSSZES WHERE ELOZOTANEVIREKORDID=@felmentesId AND TOROLT='F')
DECLARE @tanevElsoNapja datetime = (select C_DATUM from T_TANEVRENDJE WHERE C_TANEVID=@kovTanevId AND C_NAPTIPUSA=1394)
IF (SELECT TOROLT FROM T_TANULOMENTESSEG_OSSZES WHERE ID = @felmentesId)='T' BEGIN
RETURN
END
IF @kovFelmentesId IS NULL
BEGIN
INSERT INTO T_TANULOMENTESSEG_OSSZES (
C_ERTEKELESMENTESITES
,C_KEZDETE
,C_MENTESSEGOKA
,C_ORAMENTESITES
,C_VEGE
,C_SZOVEGESENERTEKELHETO
,C_TANTARGYID
,C_TANULOID
,C_INTEZMENYID
,C_TANEVID
,SERIAL
,LASTCHANGED
,CREATED
,MODIFIER
,CREATOR
,ELOZOTANEVIREKORDID
) SELECT
C_ERTEKELESMENTESITES
,C_KEZDETE
,C_MENTESSEGOKA
,C_ORAMENTESITES
,C_VEGE
,C_SZOVEGESENERTEKELHETO
,tgy.ID
,tKov.ID
,tm.C_INTEZMENYID
,@kovTanevId
,0
,tm.LASTCHANGED
,tm.LASTCHANGED
,tm.MODIFIER
,tm.MODIFIER
,tm.ID
FROM T_TANULOMENTESSEG_OSSZES tm
INNER JOIN T_FELHASZNALO_OSSZES t ON t.ID = tm.C_TANULOID
INNER JOIN T_FELHASZNALO_OSSZES tKov ON tKov.C_OKTATASIAZONOSITO = t.C_OKTATASIAZONOSITO AND tKov.C_TANEVID = @kovTanevId AND tKov.TOROLT='F'
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ELOZOTANEVIREKORDID=tm.C_TANTARGYID AND tgy.TOROLT='F'
WHERE tm.ID=@felmentesId AND ISNULL(tm.C_VEGE,'2200-01-01')>@tanevElsoNapja
END
ELSE
BEGIN
IF (SELECT C_VEGE FROM T_TANULOMENTESSEG_OSSZES WHERE ID = @felmentesId)<=@tanevElsoNapja
UPDATE T_TANULOMENTESSEG_OSSZES SET
TOROLT='T'
WHERE ELOZOTANEVIREKORDID=@felmentesId AND TOROLT='F'
ELSE
BEGIN
UPDATE kovetkezo SET
C_ERTEKELESMENTESITES = regi.C_ERTEKELESMENTESITES
,C_KEZDETE = regi.C_KEZDETE
,C_MENTESSEGOKA = regi.C_MENTESSEGOKA
,C_ORAMENTESITES = regi.C_ORAMENTESITES
,C_VEGE = regi.C_VEGE
,C_SZOVEGESENERTEKELHETO = regi.C_SZOVEGESENERTEKELHETO
,C_TANTARGYID = tgy.ID
,SERIAL += 1
,LASTCHANGED = regi.LASTCHANGED
,MODIFIER = regi.MODIFIER
FROM T_TANULOMENTESSEG_OSSZES kovetkezo
INNER JOIN T_TANULOMENTESSEG_OSSZES regi ON regi.ID=kovetkezo.ELOZOTANEVIREKORDID AND regi.TOROLT='F' AND regi.ID=@felmentesId
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ELOZOTANEVIREKORDID=regi.C_TANTARGYID AND tgy.TOROLT='F'
END
END
END
GO