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

62 lines
2.1 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS uspGetGondviseloGyerekAdatok
GO
CREATE PROCEDURE uspGetGondviseloGyerekAdatok
@pGondviseloAzonosito 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 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.TOROLT = 'F'
)
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()
)
AND TanuloCsoport.TOROLT = 'F'
) TanuloOsztaly ON TanuloOsztaly.TanuloId = Felhasznalo.ID
WHERE Felhasznalo.TOROLT = 'F'
AND EXISTS (
SELECT 1
FROM T_GONDVISELO_OSSZES Gondviselo
WHERE Gondviselo.TOROLT = 'F'
AND Gondviselo.ID = @pGondviseloAzonosito
AND Gondviselo.C_TANULOID = Felhasznalo.ID
)
END
GO