32 lines
No EOL
1.4 KiB
Transact-SQL
32 lines
No EOL
1.4 KiB
Transact-SQL
DROP FUNCTION IF EXISTS dbo.fnGetOsztalyCsoportTanuloinakTanugyiAdatai
|
|
GO
|
|
|
|
CREATE FUNCTION dbo.fnGetOsztalyCsoportTanuloinakTanugyiAdatai(
|
|
@pOsztalyCsoportId int
|
|
,@pDatum date = NULL)
|
|
RETURNS @tanugyiAdatok TABLE(TanuloId int,TanugyiAdatokId int)
|
|
AS
|
|
BEGIN
|
|
|
|
DECLARE @defaultKatId int = 7553
|
|
IF @pDatum IS NULL
|
|
SET @pDatum = GETDATE()
|
|
|
|
INSERT INTO @tanugyiAdatok
|
|
SELECT
|
|
t.ID AS TanuloId
|
|
,tta.ID AS TanuloTanugyiAdatokId
|
|
FROM T_TANULO_OSSZES t
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON t.ID = tcs.C_TANULOID AND tcs.C_OSZTALYCSOPORTID = @pOsztalyCsoportId AND tcs.TOROLT = 'F'
|
|
AND tcs.C_BELEPESDATUM <= @pDatum
|
|
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > @pDatum)
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcso ON tcso.C_TANULOID = tcs.C_TANULOID AND tcso.TOROLT='F'
|
|
AND tcso.C_BELEPESDATUM <= @pDatum
|
|
AND (tcso.C_KILEPESDATUM IS NULL OR tcso.C_KILEPESDATUM > @pDatum)
|
|
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = tcso.C_OSZTALYCSOPORTID AND o.TOROLT='F'
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
|
|
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcso.ID AND tta.TOROLT='F'
|
|
WHERE (tcs.C_OSZTALYCSOPORTID = @pOsztalyCsoportId OR ocs.C_FELADATKATEGORIAID = @defaultKatId) AND t.TOROLT = 'F'
|
|
RETURN
|
|
END
|
|
GO |