DROP FUNCTION IF EXISTS fnGetDokumentumKozossegiSzolgalatOsztalyonkent
GO

CREATE FUNCTION fnGetDokumentumKozossegiSzolgalatOsztalyonkent (@tanevId int, @osztalyId int, @idegenNyelvId int)
  RETURNS TABLE
RETURN (
  SELECT 
     tk.ID AS KozossegiSzolgalatId
    ,C_TANULOID AS TanuloId
    ,TanuloCsoportId AS TanuloCsoportId
    ,dbo.fnGetDokumentumDatumFormatum(C_INTERVALLUMKEZDETE) + ' -' + char(13) + char(10) + dbo.fnGetDokumentumDatumFormatum(C_INTERVALLUMVEGE) AS Datum
    ,tk.C_MEGJEGYZES AS Megjegyzes
    ,tkny.C_MEGJEGYZES AS MegjegyzesIdegenNyelven
    ,C_ORASZAM AS Oraszam
    ,tk.C_TELJESITESIHELYE AS TeljesitesHelye
    ,C_NYOMTATASINEV AS FeljegyzoNeve
    ,tipus.C_NAME AS Tipus
    ,C_INTERVALLUMKEZDETE	 AS IntervallumKezdete
    ,C_INTERVALLUMVEGE AS IntervallumVege
    ,tipusNy.C_NAME AS TipusIdegenNyelven
  FROM T_TANULOKOZOSSEGISZOLGALAT_OSSZES tk
    LEFT JOIN T_TANULOKOZOSSEGISZOLGALATNYEL_OSSZES tkny ON tkny.C_TANULOKOZOSSEGISZOLGALATID = tk.ID AND tkny.C_NYELVID = @idegenNyelvId AND tkny.TOROLT = 'F' AND tkny.C_TANEVID = @tanevId
    INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') s ON s.TanuloId = tk.C_TANULOID
    INNER JOIN T_FELHASZNALO_OSSZES f ON f.Id = tk.C_FELJEGYZOID
    INNER JOIN T_DICTIONARYITEMBASE_OSSZES tipus ON tipus.Id = tk.C_KOZOSSEGISZOLGALATTIPUSA AND tipus.C_TANEVID = tk.C_TANEVID
    LEFT JOIN T_DICTIONARYITEMBASENYELV_OSSZES tipusNy ON tipusNy.ID = tk.C_KOZOSSEGISZOLGALATTIPUSA AND tipusNy.C_NYELVID = @idegenNyelvId AND tipusNy.C_TANEVID = @tanevId AND tipusNy.TOROLT = 'F'
  WHERE
    tk.TOROLT = 'F'
)