79 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			2.3 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
 | 
						|
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
 | 
						|
    ) 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
 | 
						|
    FROM T_TANTERV_OSSZES t WHERE t.ID=@tantervId
 | 
						|
 | 
						|
END
 | 
						|
ELSE
 | 
						|
BEGIN
 | 
						|
	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
 | 
						|
		,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 |