53 lines
1.7 KiB
Transact-SQL
53 lines
1.7 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS uspGetOsztalyCsoportokLetszama
|
|
GO
|
|
|
|
CREATE PROCEDURE uspGetOsztalyCsoportokLetszama
|
|
@pIntezmenyId INT
|
|
,@pTanevId INT
|
|
|
|
AS BEGIN
|
|
SET NOCOUNT ON
|
|
|
|
DECLARE @sql NVARCHAR(2000)
|
|
|
|
SET @sql = N'
|
|
SELECT osztalyCsoport.ID ID
|
|
,osztalyCsoport.C_NEV Nev
|
|
,osztalyCsoport.C_EVFOLYAMTIPUSA Evfolyam
|
|
,IIF(csoport.ID IS NOT NULL, ''Csoport'', ''Osztály'') Tipus
|
|
,csoport.C_TIPUSA CsoportTipus
|
|
,osztalybontas.C_Nev Osztalybontas
|
|
,COUNT(tanuloCsoport.ID) TanulokSzama
|
|
FROM T_OSZTALYCSOPORT_OSSZES osztalyCsoport
|
|
LEFT JOIN T_CSOPORT_OSSZES csoport
|
|
ON csoport.ID = osztalyCsoport.ID AND csoport.TOROLT = ''F''
|
|
LEFT JOIN T_OSZTALYCSOPORT_OSSZES osztalybontas
|
|
ON osztalybontas.ID = csoport.C_OSZTALYBONTASID AND osztalybontas.TOROLT = ''F''
|
|
LEFT JOIN T_OSZTALY_OSSZES osztaly
|
|
ON osztaly.ID = osztalyCsoport.ID AND osztaly.TOROLT = ''F''
|
|
LEFT JOIN T_TANULOCSOPORT_OSSZES tanuloCsoport
|
|
ON tanuloCsoport.C_OSZTALYCSOPORTID = osztalyCsoport.ID
|
|
AND tanuloCsoport.TOROLT = ''F''
|
|
AND tanuloCsoport.C_BELEPESDATUM <= GETDATE()
|
|
AND (tanuloCsoport.C_KILEPESDATUM IS NULL OR tanuloCsoport.C_KILEPESDATUM >= GETDATE())
|
|
WHERE
|
|
osztalyCsoport.TOROLT = ''F''
|
|
AND osztalyCsoport.C_INTEZMENYID = @pIntezmenyId
|
|
AND osztalyCsoport.C_TANEVID = @pTanevId
|
|
GROUP BY
|
|
osztalyCsoport.ID,
|
|
csoport.ID,
|
|
osztalyCsoport.C_NEV,
|
|
osztalyCsoport.C_EVFOLYAMTIPUSA,
|
|
csoport.C_TIPUSA,
|
|
csoport.C_OSZTALYBONTASID,
|
|
osztalybontas.C_NEV'
|
|
|
|
EXEC sys.Sp_executesql @sql, N'
|
|
@pIntezmenyId int
|
|
,@pTanevId int'
|
|
,@pIntezmenyId
|
|
,@pTanevId
|
|
|
|
END
|
|
GO
|