DROP PROCEDURE  IF EXISTS uspGetTanulokByTanoraiCsoportEugyintezes 
GO

CREATE PROCEDURE uspGetTanulokByTanoraiCsoportEugyintezes
  @pOsztalyCsoportId INT
AS
BEGIN
  SET NOCOUNT ON;

  SELECT Felhasznalo.ID AS KretaAzonosito
    ,Felhasznalo.C_VEZETEKNEV AS VezetekNev
    ,Felhasznalo.C_UTONEV AS KeresztNev
    ,Felhasznalo.C_OKTATASIAZONOSITO AS OktatasiAzonosito
    ,ISNULL(Felhasznalo.C_ELOTAG, '') AS Elotag
    ,OsztalyCsoport.C_NEV AS Osztaly
    ,Felhasznalo.C_SZULETESIDATUM AS SzuletesiIdo
    ,Felhasznalo.C_EGYEDIAZONOSITO AS EgyediAzonosito
    ,Felhasznalo.C_IDPEGYEDIAZONOSITO AS IdpEgyediAzonosito
  FROM T_OSZTALYCSOPORT_OSSZES OsztalyCsoport
  INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON TanuloCsoport.C_OSZTALYCSOPORTID = OsztalyCsoport.ID
    AND TanuloCsoport.C_BELEPESDATUM <= (
      SELECT IIF(GETDATE() < C_ELSOTANITASINAP, C_ELSOTANITASINAP, GETDATE())
      FROM T_TANEV_OSSZES
      WHERE C_AKTIV = 'T'
        AND TOROLT = 'F'
        AND C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID
      )
    AND (
      TanuloCsoport.C_KILEPESDATUM IS NULL
      OR TanuloCsoport.C_KILEPESDATUM > GETDATE()
      )
  INNER JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Felhasznalo.ID = TanuloCsoport.C_TANULOID
  WHERE OsztalyCsoport.ID = @pOsztalyCsoportId
    AND Felhasznalo.TOROLT = 'F'
    AND TanuloCsoport.TOROLT = 'F'
    AND OsztalyCsoport.TOROLT = 'F'
END
GO


