37 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
IF OBJECT_ID('fnGetDokumentumTanuloMentessegei') IS NOT NULL BEGIN
 | 
						|
 DROP FUNCTION fnGetDokumentumTanuloMentessegei
 | 
						|
END
 | 
						|
GO
 | 
						|
 | 
						|
SET ANSI_NULLS ON
 | 
						|
GO
 | 
						|
SET QUOTED_IDENTIFIER ON
 | 
						|
GO
 | 
						|
 | 
						|
CREATE FUNCTION fnGetDokumentumTanuloMentessegei (@tanevId INT, @osztalyId INT)
 | 
						|
  RETURNS TABLE
 | 
						|
RETURN (
 | 
						|
 | 
						|
		SELECT 
 | 
						|
			 OsztalyTanuloi.TanuloId		TanuloId 
 | 
						|
			,OsztalyTanuloi.TanuloCsoportId	TanuloCsoportId
 | 
						|
			,mentesseg.mentessegOka			MentessegOka
 | 
						|
			,mentesseg.tantargyNev + ' ' + ISNULL(IIF(mentesseg = '', '', '(' +  LEFT(mentesseg, LEN(mentesseg)- 1) + ')'),' ') TantargyNev
 | 
						|
			,C_KEZDETE						Kezdete
 | 
						|
		FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T')  OsztalyTanuloi
 | 
						|
			INNER JOIN  (SELECT DISTINCT 
 | 
						|
							 mentesseg.C_TANULOID tanuloId
 | 
						|
							,s.TanuloCsoportId
 | 
						|
							,IIF(t.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + t.C_NEV + ')', t.C_NEV) tantargyNev
 | 
						|
							,mentesseg.C_MENTESSEGOKA  + ' ' + ISNULL('(' + FORMAT(C_KEZDETE, 'yyyy.MM.dd.') + ' - ' + FORMAT(C_VEGE, 'yyyy.MM.dd.') + ')', '' ) mentessegOka
 | 
						|
							,IIF(mentesseg.C_ERTEKELESMENTESITES = 'T', 'Értékelésmentesség, ', '') + IIF(mentesseg.C_ORAMENTESITES = 'T', 'Óramentesség, ', '') as mentesseg 
 | 
						|
							,mentesseg.C_KEZDETE
 | 
						|
						FROM T_TANULOMENTESSEG_OSSZES mentesseg
 | 
						|
							INNER JOIN T_TANTARGY_OSSZES t on t.ID = mentesseg.C_TANTARGYID
 | 
						|
							INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') s ON s.TanuloId = mentesseg.C_TANULOID
 | 
						|
						WHERE 
 | 
						|
							mentesseg.TOROLT='F' 
 | 
						|
							AND BelepesDatum <= C_KEZDETE
 | 
						|
							AND (KilepesDatum IS NULL OR KilepesDatum >= C_VEGE)
 | 
						|
						) mentesseg ON OsztalyTanuloi.TanuloId = mentesseg.TANULOID AND OsztalyTanuloi.TanuloCsoportId = mentesseg.TanuloCsoportId
 | 
						|
) |