49 lines
1.7 KiB
Transact-SQL
49 lines
1.7 KiB
Transact-SQL
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
|
|
|
|
|