﻿SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

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

CREATE FUNCTION fnGetDokumentumMegtartottOrak (@pOsztalyCsoportId INT, @pTanevId INT)
  RETURNS TABLE
RETURN (

 SELECT 
		 tao.Id						      TanitasioraId
		,tao.C_DATUM				    Datum
		,tao.C_ORASZAM				  Oraszam
		,pedagogus.ID				    PedagogusId
		,IIF(C_MEGTARTOTT = 'T', pedagogus.C_NYOMTATASINEV, '-')	PedagogusNev
		,IIF(C_MEGTARTOTT = 'T', REPLACE(REPLACE(C_TEMA, CHAR(0x0007),''), CHAR(0x000B), ''), 'Elmaradt') 
			+ IIF(C_HELYETTESITESTIPUSA = 1496, ' (Óraösszevonás: ' + helyettesito.C_NYOMTATASINEV +')', '')
			+ IIF(C_HELYETTESITESTIPUSA IN (1494, 1495), '(Helyettesitve: ' + helyettesito.C_NYOMTATASINEV +') ', '' )	Tema
		,tao.C_HETNAPJA				  HetNapja
		,nh.C_HETSORSZAMA			  HetSorszama
		,C_MEGTARTOTT				    Megtartott
		,tao.C_TANTARGYID				TantargyId	
		,IIF(tantargy.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + tantargy.C_NEV + ')', tantargy.C_NEV)	Tantargynev
		,tao.C_OSZTALYCSOPORTID			OsztalyCsoportId
		,C_NAPSORSZAMA				      NapSorszama
		,IIF(tantargy.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, 
			IIF(LEN(C_NEVNYOMTATVANYBAN) + LEN(tantargy.C_NEV) < 90, 
					C_NEVNYOMTATVANYBAN + ' (' + tantargy.C_NEV + ')',		
					C_NEVNYOMTATVANYBAN), tantargy.C_NEV) + '-' + CHAR(13) + CHAR(10) 
					+ IIF(C_MEGTARTOTT = 'T', REPLACE(REPLACE(ISNULL(pedagogus.C_NYOMTATASINEV, ''), '[', ''), ']', ''), 'Elmaradt') TantargyPedagogussal
	FROM T_TANITASIORA_OSSZES tao 
		LEFT JOIN T_FELHASZNALO_OSSZES pedagogus ON pedagogus.Id = tao.C_TANARID
		LEFT JOIN T_FELHASZNALO_OSSZES helyettesito ON helyettesito.Id = tao.C_HELYETTESITOTANARID
		INNER JOIN T_TANTARGY_OSSZES tantargy ON tantargy.Id = tao.C_TANTARGYID
		INNER JOIN T_NAPTARIHET_OSSZES nh ON tao.C_DATUM BETWEEN nh.C_HETKEZDONAPJA AND nh.C_HETUTOLSONAPJA AND nh.C_TANEVID = @pTanevId AND nh.TOROLT='F' 
	WHERE 
		tao.C_OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyCsoportId, @pTanevId))
		AND tao.TOROLT = 'F'
)
GO