﻿IF OBJECT_ID('fnGetDokumentumOsztalyokCsoportokTanuloi') IS NOT NULL BEGIN
  DROP FUNCTION fnGetDokumentumOsztalyokCsoportokTanuloi
END
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE FUNCTION fnGetDokumentumOsztalyokCsoportokTanuloi (@tanevId INT, @osztalyId INT, @isKilepettTanulokMegjelenjenek NVARCHAR(1))
  RETURNS TABLE
RETURN (
	SELECT DISTINCT 
		C_TANULOID					TanuloId
		,MAX(C_BELEPESDATUM)		BelepesDatum
		,CASE WHEN MAX(CASE WHEN C_KILEPESDATUM IS NULL THEN 1 ELSE 0 END) = 0 THEN MAX(C_KILEPESDATUM) END	KilepesDatum
	FROM 
		T_TANULOCSOPORT_OSSZES
	WHERE 
		C_OSZTALYCSOPORTID = @osztalyId	
		AND C_TANEVID =  @tanevId
		AND TOROLT = 'F'
		AND (@isKilepettTanulokMegjelenjenek = 'T' OR C_KILEPESDATUM IS NULL)
	GROUP BY C_TANULOID
)