init
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
-- =============================================
|
||||
-- Description: <Előszedjük az osztály/csoport tanulóinak fő osztályait>
|
||||
-- =============================================
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP FUNCTION IF EXISTS [dbo].[fnGetOsztalyCsoportTanuloOsztalyList]
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [dbo].[fnGetOsztalyCsoportTanuloOsztalyList](
|
||||
@pIntezmenyId INT
|
||||
,@pTanevId INT
|
||||
,@pOsztalyCsoportId INT
|
||||
,@pDatum DATE = NULL
|
||||
)
|
||||
RETURNS @ResultTable TABLE(
|
||||
TanuloId INT
|
||||
,OsztalyId INT
|
||||
,EvfolyamTipusId INT
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
IF @pDatum IS NULL
|
||||
SET @pDatum = CONVERT(DATE, GETDATE())
|
||||
|
||||
INSERT @ResultTable
|
||||
--NOTE: Azért kell a DISTINCT, ha ugyanoda ki-/besorolgatják a tanulót!
|
||||
SELECT DISTINCT
|
||||
TanuloCsoport.C_TANULOID TanuloId
|
||||
,OsztalyCsoport.ID OsztalyId
|
||||
,OsztalyCsoport.C_EVFOLYAMTIPUSA EvfolyamTipusId
|
||||
FROM
|
||||
T_TANULOCSOPORT_OSSZES TanuloCsoport
|
||||
INNER JOIN
|
||||
T_TANULOCSOPORT_OSSZES SourceTanuloCsoport ON
|
||||
SourceTanuloCsoport.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID
|
||||
AND SourceTanuloCsoport.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
AND SourceTanuloCsoport.TOROLT = 'F'
|
||||
AND SourceTanuloCsoport.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
INNER JOIN
|
||||
T_OSZTALY_OSSZES Osztaly ON
|
||||
Osztaly.C_ALINTEZMENYID = TanuloCsoport.C_INTEZMENYID
|
||||
AND Osztaly.C_ALTANEVID = TanuloCsoport.C_TANEVID
|
||||
AND Osztaly.TOROLT = 'F'
|
||||
AND Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID
|
||||
INNER JOIN
|
||||
T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON
|
||||
OsztalyCsoport.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID
|
||||
AND OsztalyCsoport.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
AND OsztalyCsoport.TOROLT = 'F'
|
||||
AND OsztalyCsoport.ID = Osztaly.ID
|
||||
WHERE
|
||||
TanuloCsoport.C_INTEZMENYID = @pIntezmenyId
|
||||
AND TanuloCsoport.C_TANEVID = @pTanevId
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
AND TanuloCsoport.C_TANULOID = SourceTanuloCsoport.C_TANULOID
|
||||
AND TanuloCsoport.C_BELEPESDATUM <= @pDatum
|
||||
AND (TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM >= @pDatum)
|
||||
|
||||
RETURN
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
@@ -0,0 +1,53 @@
|
||||
-- =============================================
|
||||
-- Description: <Előszedjük a tanuló osztályát(Jó lenne a jövőben ezt használni egységesen, ezért ésszerűen ezt ki lehet egészíteni, egyelőre csak azzal tér vissza, ami épp most kell)>
|
||||
-- =============================================
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP FUNCTION IF EXISTS [dbo].[fnGetTanuloOsztaly]
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [dbo].[fnGetTanuloOsztaly](
|
||||
@pTanuloId INT
|
||||
,@pDatum DATE = NULL
|
||||
)
|
||||
RETURNS @ResultTable TABLE(
|
||||
ID INT
|
||||
,EvfolyamTipusId INT
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
IF @pDatum IS NULL
|
||||
SET @pDatum = CONVERT(DATE, GETDATE())
|
||||
|
||||
INSERT @ResultTable
|
||||
SELECT TOP 1
|
||||
OsztalyCsoport.ID ID
|
||||
,OsztalyCsoport.C_EVFOLYAMTIPUSA EvfolyamTipusId
|
||||
FROM
|
||||
T_TANULOCSOPORT_OSSZES TanuloCsoport
|
||||
INNER JOIN
|
||||
T_OSZTALY_OSSZES Osztaly ON
|
||||
Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID
|
||||
AND Osztaly.TOROLT = 'F'
|
||||
INNER JOIN
|
||||
T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON
|
||||
OsztalyCsoport.ID = Osztaly.ID
|
||||
AND OsztalyCsoport.TOROLT = 'F'
|
||||
WHERE
|
||||
TanuloCsoport.C_TANULOID = @pTanuloId
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
--TODO: Aktuális tanév első napja előtt és utolsó napja után valszeg nem lesz jó!
|
||||
AND TanuloCsoport.C_BELEPESDATUM <= @pDatum
|
||||
AND (TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM >= @pDatum)
|
||||
|
||||
RETURN
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
Reference in New Issue
Block a user