98 lines
No EOL
2.7 KiB
Transact-SQL
98 lines
No EOL
2.7 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS sp_FollowUpTanterv
|
|
GO
|
|
|
|
CREATE PROCEDURE sp_FollowUpTanterv
|
|
@intezmenyId int,
|
|
@aktTanevId int,
|
|
@kovetkezoTanevId int,
|
|
@tantervId int
|
|
AS
|
|
BEGIN
|
|
|
|
DECLARE
|
|
@kovTantervId int
|
|
,@tantervNev nvarchar(510)=(SELECT C_NEV FROM T_TANTERV_OSSZES WHERE ID = @tantervId)
|
|
|
|
IF EXISTS(SELECT 1 FROM T_TANTERV_OSSZES WHERE C_NEV=@tantervNev AND C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND ISNULL(ELOZOTANEVIREKORDID,0)<>@tantervId)
|
|
BEGIN
|
|
UPDATE T_TANTERV_OSSZES SET ELOZOTANEVIREKORDID=NULL WHERE ELOZOTANEVIREKORDID=@tantervId
|
|
UPDATE T_TANTERV_OSSZES SET ELOZOTANEVIREKORDID=@tantervId WHERE C_NEV=@tantervNev AND C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND ISNULL(ELOZOTANEVIREKORDID,0)<>@tantervId
|
|
END
|
|
|
|
SELECT @kovTantervId = ID FROM T_TANTERV_OSSZES WHERE ELOZOTANEVIREKORDID = @tantervId
|
|
|
|
IF (SELECT TOROLT FROM T_TANTERV_OSSZES WHERE ID = @tantervId) = 'T' OR (SELECT TOROLT FROM T_TANTERV_OSSZES WHERE ID = @kovTantervId) = 'T' BEGIN
|
|
RETURN
|
|
END
|
|
|
|
IF (@kovTantervId IS NULL)
|
|
BEGIN
|
|
|
|
IF (SELECT C_VEDETT FROM T_TANTERV_OSSZES WHERE ID = @tantervId) = 'T' BEGIN
|
|
UPDATE T_TANTERV_OSSZES
|
|
SET C_VEDETT = 'F'
|
|
WHERE TOROLT='F' AND C_TANEVID = @kovetkezoTanevId
|
|
END
|
|
|
|
INSERT INTO T_TANTERV_OSSZES (
|
|
C_CSOPORTTIPUSA
|
|
,C_EVFOLYAMTOL
|
|
,C_EVFOLYAMIG
|
|
,C_KERETTANTERVREEPULO
|
|
,C_NEV
|
|
,C_MEGJEGYZES
|
|
,C_INTEZMENYID
|
|
,C_TANEVID
|
|
,SERIAL
|
|
,LASTCHANGED
|
|
,CREATED
|
|
,MODIFIER
|
|
,CREATOR
|
|
,ELOZOTANEVIREKORDID
|
|
,C_VEDETT
|
|
) SELECT
|
|
t.C_CSOPORTTIPUSA AS C_CSOPORTTIPUSA
|
|
,t.C_EVFOLYAMTOL AS C_EVFOLYAMTOL
|
|
,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
|
|
,0 AS SERIAL
|
|
,LASTCHANGED AS LASTCHANGED
|
|
,LASTCHANGED AS CREATED
|
|
,MODIFIER AS MODIFIER
|
|
,MODIFIER AS CREATOR
|
|
,t.ID AS ELOZOTANEVIREKORDID
|
|
,t.C_VEDETT
|
|
FROM T_TANTERV_OSSZES t
|
|
WHERE t.ID=@tantervId
|
|
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
|
|
IF (SELECT C_VEDETT FROM T_TANTERV_OSSZES WHERE ID = @tantervId) = 'T' BEGIN
|
|
UPDATE T_TANTERV_OSSZES
|
|
SET C_VEDETT = 'F'
|
|
WHERE TOROLT='F' AND C_TANEVID = @kovetkezoTanevId
|
|
END
|
|
|
|
UPDATE kovetkezo SET
|
|
kovetkezo.C_CSOPORTTIPUSA = aktiv.C_CSOPORTTIPUSA
|
|
,kovetkezo.C_EVFOLYAMTOL = aktiv.C_EVFOLYAMTOL
|
|
,kovetkezo.C_EVFOLYAMIG = aktiv.C_EVFOLYAMIG
|
|
,kovetkezo.C_KERETTANTERVREEPULO = aktiv.C_KERETTANTERVREEPULO
|
|
,kovetkezo.C_NEV = aktiv.C_NEV
|
|
,kovetkezo.C_MEGJEGYZES = aktiv.C_MEGJEGYZES
|
|
,kovetkezo.C_VEDETT = aktiv.C_VEDETT
|
|
,SERIAL += 1
|
|
,LASTCHANGED = aktiv.LASTCHANGED
|
|
,MODIFIER = aktiv.MODIFIER
|
|
FROM T_TANTERV_OSSZES kovetkezo
|
|
INNER JOIN T_TANTERV_OSSZES aktiv ON aktiv.ID=@tantervId AND aktiv.ID=kovetkezo.ELOZOTANEVIREKORDID
|
|
|
|
END
|
|
END
|
|
GO |