DROP PROCEDURE IF EXISTS uspGetOsztalyTanuloiByMunkarend
GO

CREATE PROCEDURE uspGetOsztalyTanuloiByMunkarend
   @pOsztalycsoportId int
  ,@pHasMunkarend bit
  ,@pIsAktivTanev bit

AS BEGIN
  SET NOCOUNT ON;
    SELECT 
       C_NYOMTATASINEV TanuloNev
      ,C_SZULETESIDATUM SzuletesiDatum
      ,C_OKTATASIAZONOSITO OktatasiAzonosito
      ,munkarend.C_NAME Munkarend
    FROM T_TANULOCSOPORT_OSSZES tcs
      INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tcs.ID = tta.C_TANULOCSOPORTID AND tta.TOROLT = 'F'
      INNER JOIN T_FELHASZNALO_OSSZES tanulo ON tanulo.ID = tcs.C_TANULOID AND tanulo.TOROLT = 'F'
      LEFT JOIN T_DICTIONARYITEMBASE_OSSZES munkarend ON munkarend.ID = tta.C_TANTERVIJELLEGID AND munkarend.TOROLT = 'F' AND munkarend.C_TANEVID = tcs.C_TANEVID
    WHERE
      tcs.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
      AND tcs.TOROLT = 'F'
      AND (@pIsAktivTanev = 0 OR tcs.C_BELEPESDATUM <= GETDATE())
      AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE())
      AND ((@pHasMunkarend = 1 AND tta.C_TANTERVIJELLEGID IS NOT NULL) OR (@pHasMunkarend = 0 AND tta.C_TANTERVIJELLEGID IS NULL))
END
GO
