kreta/Kreta.DataAccess.Migrations/DBScripts/Database/dbo/Stored procedures/uspGetGondviseloGyerekAdatokNextYearEugyintezes.sql
2024-03-13 00:33:46 +01:00

67 lines
2.4 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS uspGetGondviseloGyerekAdatokNextYearEugyintezes
GO
CREATE PROCEDURE uspGetGondviseloGyerekAdatokNextYearEugyintezes
@pTanevId INT
,@pGondviseloId 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
,TanuloOsztaly.OsztalyKretaAzonosito
,TanuloOsztaly.Osztaly
,Felhasznalo.C_SZULETESIDATUM AS SzuletesiIdo
,Felhasznalo.C_EGYEDIAZONOSITO AS EgyediAzonosito
,Felhasznalo.C_IDPEGYEDIAZONOSITO AS IdpEgyediAzonosito
FROM T_FELHASZNALO_OSSZES Felhasznalo
INNER JOIN T_TANULO_OSSZES Tanulo ON Tanulo.ID = Felhasznalo.ID
AND Tanulo.TOROLT = 'F'
LEFT JOIN (
SELECT TanuloCsoport.C_TANULOID AS TanuloId
,OsztalyCsoport.ID AS OsztalyKretaAzonosito
,OsztalyCsoport.C_NEV AS Osztaly
FROM T_TANULOCSOPORT_OSSZES TanuloCsoport
INNER JOIN T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON OsztalyCsoport.ID = TanuloCsoport.C_OSZTALYCSOPORTID
AND OsztalyCsoport.TOROLT = 'F'
WHERE EXISTS (
SELECT 1
FROM T_OSZTALY_OSSZES Osztaly
INNER JOIN T_OSZTALYCSOPORT_OSSZES InnerOsztalyCsoport ON InnerOsztalyCsoport.ID = Osztaly.ID
AND InnerOsztalyCsoport.TOROLT = 'F'
WHERE Osztaly.ID = OsztalyCsoport.ID
AND Osztaly.C_ALTANEVID = @pTanevId
AND Osztaly.TOROLT = 'F'
)
AND TanuloCsoport.C_TANEVID = @pTanevId
AND TanuloCsoport.TOROLT = 'F'
AND TanuloCsoport.C_BELEPESDATUM <= (
SELECT IIF(GETDATE() < C_ELSOTANITASINAP, C_ELSOTANITASINAP, GETDATE())
FROM T_TANEV
WHERE ID = @pTanevId
AND TOROLT = 'F'
)
AND (
TanuloCsoport.C_KILEPESDATUM IS NULL
OR TanuloCsoport.C_KILEPESDATUM > GETDATE()
)
) TanuloOsztaly ON TanuloOsztaly.TanuloId = Felhasznalo.ID
WHERE Felhasznalo.TOROLT = 'F'
AND Felhasznalo.C_TANEVID = @pTanevId
AND EXISTS (
SELECT 1
FROM T_GONDVISELO_OSSZES Gondviselo
INNER JOIN T_FELHASZNALO_OSSZES Tanulo ON Tanulo.ID = Gondviselo.C_TANULOID
AND Tanulo.TOROLT = 'F'
WHERE Gondviselo.TOROLT = 'F'
AND Gondviselo.ID = @pGondviseloId
AND Tanulo.C_OKTATASIAZONOSITO = Felhasznalo.C_OKTATASIAZONOSITO
)
END
GO