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

35 lines
1.8 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS uspGetTanuloOsztalyDataSetByOsztalyCsoportId
GO
CREATE PROCEDURE uspGetTanuloOsztalyDataSetByOsztalyCsoportId
@pTanevId int
,@pOsztalyCsoportId int
AS BEGIN
SET NOCOUNT ON;
SELECT
fh.ID AS TanuloId
,ocs.ID AS OsztalyCsoportId
,ocs.C_NEV AS OsztalyCsoportNev
,ocs.C_EVFOLYAMTIPUSA AS OsztalyCsoportEvfolyamTipusId
,oocs.ID AS TanuloOsztalyId
,oocs.C_NEV AS TanuloOsztalyNev
,oocs.C_EVFOLYAMTIPUSA AS TanuloOsztalyEvfolyamTipusId
--NOTE: Előszedjük a bejövő osztalycsoport-hoz tartozó tanulókat!
FROM T_FELHASZNALO_OSSZES fh
INNER JOIN T_TANULO_OSSZES dk ON dk.ID = fh.ID AND dk.C_ALTANEVID = fh.C_TANEVID AND dk.TOROLT = 'F'
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = @pOsztalyCsoportId AND tcs.C_TANULOID = dk.ID AND tcs.C_TANEVID = fh.C_TANEVID AND tcs.TOROLT = 'F'
AND (tcs.C_BELEPESDATUM <= GETDATE() AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE()))
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.C_TANEVID = fh.C_TANEVID AND ocs.TOROLT = 'F'
--NOTE: Előszedjük a tanulókhoz tartozó aktuális osztályukat!
INNER JOIN T_TANULOCSOPORT_OSSZES otcs ON otcs.C_TANULOID = dk.ID AND otcs.C_TANEVID = fh.C_TANEVID AND otcs.TOROLT = 'F'
AND otcs.C_BELEPESDATUM <= GETDATE() AND (otcs.C_KILEPESDATUM IS NULL OR otcs.C_KILEPESDATUM > GETDATE())
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = otcs.C_OSZTALYCSOPORTID AND o.C_ALTANEVID = otcs.C_TANEVID AND o.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT_OSSZES oocs ON oocs.ID = o.ID AND oocs.C_TANEVID = otcs.C_TANEVID AND oocs.TOROLT = 'F'
AND (oocs.C_FELADATKATEGORIAID = ocs.C_FELADATKATEGORIAID)
WHERE fh.TOROLT = 'F'
AND fh.C_TANEVID = @pTanevId
END
GO