27 lines
		
	
	
		
			989 B
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			989 B
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
IF OBJECT_ID('dbo.fnGetOsztalyVegzosTanitasiNap') IS NOT NULL BEGIN
 | 
						|
  DROP FUNCTION dbo.fnGetOsztalyVegzosTanitasiNap
 | 
						|
END
 | 
						|
GO
 | 
						|
 | 
						|
CREATE FUNCTION dbo.fnGetOsztalyVegzosTanitasiNap (@osztalyId INT, @intezmenyId INT, @tanevId INT)
 | 
						|
  RETURNS datetime
 | 
						|
BEGIN
 | 
						|
 | 
						|
	DECLARE @Global DATETIME = (SELECT C_DATUM FROM T_TANEVRENDJE where C_NAPTIPUSA = 1402 AND C_INTEZMENYID = @intezmenyId AND C_TANEVID = @tanevId);
 | 
						|
	DECLARE @result DATETIME = @Global;
 | 
						|
	DECLARE @isVegzos CHAR(1) = (SELECT C_VEGZOSEVFOLYAM FROM T_OSZTALYCSOPORT WHERE ID = @osztalyId AND TOROLT = 'F');
 | 
						|
 | 
						|
	IF(@isVegzos = 'T')
 | 
						|
	BEGIN
 | 
						|
		SET @result =
 | 
						|
		(SELECT TOP(1) C_DATUM FROM (
 | 
						|
			SELECT C_DATUM FROM T_TANEVRENDJE tr
 | 
						|
				LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE otr ON tr.ID = otr.C_TANEVRENDJEID AND otr.C_OSZTALYCSOPORTID = @osztalyId
 | 
						|
			WHERE
 | 
						|
				C_NAPTIPUSA IN (7600,7601,7602,7603) AND C_INTEZMENYID = @intezmenyId AND C_TANEVID = @tanevId AND tr.TOROLT = 'F'
 | 
						|
		) x ORDER BY C_DATUM)
 | 
						|
	END
 | 
						|
	RETURN ISNULL(@result, @Global)
 | 
						|
 | 
						|
END;
 | 
						|
GO |