DROP PROCEDURE IF EXISTS uspGetTanuloTantargyakByOktatasiAzonosito GO CREATE PROCEDURE uspGetTanuloTantargyakByOktatasiAzonosito @pTanuloOktatasiAzonosito NVARCHAR(20) ,@pTanevId INT AS BEGIN SET NOCOUNT ON; SELECT DISTINCT Tantargy.ID AS KretaAzonosito ,Tantargy.C_NEV AS Nev FROM T_TANTARGY_OSSZES Tantargy INNER JOIN T_FOGLALKOZAS_OSSZES Foglalkozas ON Foglalkozas.C_TANTARGYID = Tantargy.ID AND Foglalkozas.TOROLT = 'F' WHERE EXISTS ( SELECT 1 FROM T_OSZTALYCSOPORT_OSSZES OsztalyCsoport INNER JOIN T_TANULOCSOPORT_OSSZES Tanulocsoport ON Tanulocsoport.C_OSZTALYCSOPORTID = OsztalyCsoport.ID AND Tanulocsoport.TOROLT = 'F' AND Tanulocsoport.C_INTEZMENYID = OsztalyCsoport.C_INTEZMENYID AND Tanulocsoport.C_TANEVID = OsztalyCsoport.C_TANEVID 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() ) WHERE EXISTS ( SELECT 1 FROM T_FELHASZNALO_OSSZES Felhasznalo WHERE Felhasznalo.ID = Tanulocsoport.C_TANULOID AND Felhasznalo.TOROLT = 'F' AND Felhasznalo.C_OKTATASIAZONOSITO = @pTanuloOktatasiAzonosito ) AND Foglalkozas.C_OSZTALYCSOPORTID = OsztalyCsoport.ID AND Foglalkozas.TOROLT = 'F' ) AND Tantargy.TOROLT = 'F' AND Tantargy.C_TANEVID = @pTanevId END GO