DROP FUNCTION IF EXISTS fnGetDokumentumTanuloZaradekai
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE FUNCTION fnGetDokumentumTanuloZaradekai (@tanevId INT, @osztalyId INT, @isKellVegzaradek BIT)
  RETURNS TABLE
RETURN (
	SELECT DISTINCT
		 OsztalyTanuloi.TanuloId			TanuloId
		,OsztalyTanuloi.TanuloCsoportId		TanuloCsoportId
		,tcs.C_ZARADEK						Bejegyzes
	FROM T_TANULOCSOPORT_OSSZES tcs
		INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') OsztalyTanuloi ON OsztalyTanuloi.TanuloId = tcs.C_TANULOID AND OsztalyTanuloi.TanuloCsoportId = tcs.ID
	WHERE 		
		C_ZARADEK IS NOT NULL 
		AND LEN(C_ZARADEK) > 0

	UNION 

	SELECT DISTINCT
		 OsztalyTanuloi.TanuloId			TanuloId
		,OsztalyTanuloi.TanuloCsoportId		TanuloCsoportId
		,tcs.C_VEGZARADEK					Bejegyzes
	FROM T_TANULOCSOPORT_OSSZES tcs
		INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') OsztalyTanuloi ON OsztalyTanuloi.TanuloId = tcs.C_TANULOID AND OsztalyTanuloi.TanuloCsoportId = tcs.ID
	WHERE 		
		C_VEGZARADEK IS NOT NULL 
		AND LEN(C_VEGZARADEK) > 0
        AND @isKellVegzaradek = 1
        )