﻿DROP FUNCTION IF EXISTS fnGetDokumentumTanulokFeljegyzesei
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION fnGetDokumentumTanulokFeljegyzesei (@tanevId int, @osztalyId int, @idegenNyelvId int)
  RETURNS TABLE
RETURN (
  SELECT 
     tte.C_TANULOID AS TanuloId
    ,te.ID AS EsemenyId
    ,te.C_TARTALOM AS Tartalom
    ,te.C_TIPUS AS Tipusa
    ,feljegyezo.C_NYOMTATASINEV AS FeljegyzoNeve
    ,feljegyezo.ID AS FeljegyzoId
    ,te.C_ESEMENYDATUMA AS Datum
    ,te.C_MEGJEGYZES AS Megjegyzes
    ,teny.C_TARTALOM AS BejegyzesIdegenNyelven
    ,te.C_ROGZITESKORIOSZTALYID AS RogziteskoriOsztalyId
  FROM T_TANULO_TANULOESEMENY tte
    INNER JOIN T_TANULOESEMENY_OSSZES te ON te.ID = tte.C_TANULOESEMENYID
    LEFT JOIN T_TANULOESEMENYNYELV_OSSZES teny ON teny.C_TANULOESEMENYID = te.ID AND teny.C_NYELVID = @idegenNyelvId AND teny.TOROLT = 'F'
    INNER JOIN T_FELHASZNALO_OSSZES feljegyezo ON feljegyezo.ID = te.C_FELJEGYZOID
  WHERE
    C_TANULOID IN (SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T'))
    AND te.TOROLT = 'F'
    AND ((te.C_TIPUS NOT IN (1542, 6324, 6325)) AND (te.C_TIPUS <> 1536 OR te.C_TANITASIORAID IS NULL)) 
)