-- =============================================
-- Description:	<Előszedjük a tanuló osztályát(Jó lenne a jövőben ezt használni egységesen, ezért ésszerűen ezt ki lehet egészíteni, egyelőre csak azzal tér vissza, ami épp most kell)>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

DROP FUNCTION IF EXISTS [dbo].[fnGetTanuloOsztaly]
GO

CREATE FUNCTION [dbo].[fnGetTanuloOsztaly](
	 @pTanuloId			INT
	,@pDatum			DATE = NULL
)
RETURNS @ResultTable TABLE(
	 ID					INT
	,EvfolyamTipusId	INT
)
AS
BEGIN

	IF @pDatum IS NULL
		SET @pDatum = CONVERT(DATE, GETDATE())

	INSERT @ResultTable
	SELECT  /*TODO:Tobb Osztaly*//*OM-1585*/
		 OsztalyCsoport.ID					ID
		,OsztalyCsoport.C_EVFOLYAMTIPUSA	EvfolyamTipusId
	FROM
		T_TANULOCSOPORT_OSSZES TanuloCsoport
	INNER JOIN
		T_OSZTALY_OSSZES Osztaly ON
				Osztaly.ID					= TanuloCsoport.C_OSZTALYCSOPORTID
			AND	Osztaly.TOROLT				= 'F'
	INNER JOIN
		T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON
				OsztalyCsoport.ID			= Osztaly.ID
			AND	OsztalyCsoport.TOROLT		= 'F'
			AND OsztalyCsoport.C_FELADATKATEGORIAID = (SELECT C_DEFAULTFELADATKATEGORIAID FROM T_TANEV WHERE ID = OsztalyCsoport.C_TANEVID)
	WHERE
			TanuloCsoport.C_TANULOID		= @pTanuloId
		AND	TanuloCsoport.TOROLT			= 'F'
		--TODO: Aktuális tanév első napja előtt és utolsó napja után valszeg nem lesz jó!
		AND TanuloCsoport.C_BELEPESDATUM <= @pDatum
		AND (TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM >= @pDatum)

	RETURN

END


GO

