﻿DROP PROCEDURE IF EXISTS uspGetTanevRendjeOraszamUtkozes
GO

CREATE PROCEDURE uspGetTanevRendjeOraszamUtkozes
	@osztalyCsoportId		INT
	,@napDatuma				DATETIME
	,@tanevId				INT
AS BEGIN

DECLARE @maxOra INT

	SET @maxOra =
		(SELECT MAX(csro.C_ORASZAM) FROM T_TANEVRENDJE_OSSZES tr
			INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON ocstr.C_TANEVRENDJEID = tr.ID AND ocstr.C_OSZTALYCSOPORTID = @osztalyCsoportID
			INNER JOIN T_CSENGETESIREND_OSSZES csr On csr.ID = tr.C_CSENGETESIRENDID
			INNER JOIN T_CSENGETESIRENDORA_OSSZES csro ON csro.C_CSENGETESIRENDID = csr.ID
			WHERE tr.C_DATUM = @napDatuma AND tr.C_OSSZESCSOPORTRAVONATKOZIK = 'F' AND tr.TOROLT = 'F' AND tr.C_TANEVID = @tanevId)
		IF @maxOra IS NULL
		BEGIN
			SET @maxOra =
				(SELECT MAX(csro.C_ORASZAM) FROM T_TANEVRENDJE_OSSZES tr
					INNER JOIN T_CSENGETESIREND_OSSZES csr On csr.ID = tr.C_CSENGETESIRENDID
					INNER JOIN T_CSENGETESIRENDORA_OSSZES csro ON csro.C_CSENGETESIRENDID = csr.ID
					WHERE tr.C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND tr.C_DATUM = @napDatuma AND tr.TOROLT = 'F' AND tr.C_TANEVID = @tanevId)
				IF @maxOra IS NULL
				BEGIN
					SET @maxOra =
						(SELECT MAX(csro.C_ORASZAM) FROM T_CSENGETESIREND_OSSZES csr
							INNER JOIN T_CSENGETESIRENDORA_OSSZES csro ON csro.C_CSENGETESIRENDID = csr.ID
							WHERE csr.C_AKTIV = 'T' AND csr.C_TANEVID = @tanevId)
				END
		END

	SELECT ISNULL(@maxOra,0) as MaxOra

END
GO