41 lines
1.3 KiB
Transact-SQL
41 lines
1.3 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS uspGetMulasztasokSzama
|
|
GO
|
|
|
|
CREATE PROCEDURE uspGetMulasztasokSzama
|
|
@pTanevId int
|
|
,@pTanarId int
|
|
,@pDarab int
|
|
,@pMulasztasTipusKeses int
|
|
,@pMulasztasTipusHianyzas int
|
|
AS BEGIN
|
|
SET NOCOUNT ON;
|
|
|
|
SELECT TOP (@pDarab)
|
|
tn.C_DATUM AS MulasztasDatuma
|
|
,FORMAT(tn.C_DATUM, 'dddd', 'hu-HU') AS MulasztasNapja
|
|
,COUNT(tcs.C_TANULOID) AS MulasztasokSzama
|
|
FROM T_TANULOCSOPORT_OSSZES tcs
|
|
INNER JOIN T_TANULOMULASZTAS_OSSZES tm ON tm.C_ORATANULOIID = tcs.C_TANULOID
|
|
AND tm.TOROLT = 'F'
|
|
AND tm.C_IGAZOLT IS NOT NULL
|
|
AND tm.C_TIPUS BETWEEN @pMulasztasTipusKeses AND @pMulasztasTipusHianyzas
|
|
INNER JOIN T_TANITASIORA_OSSZES tn ON tn.ID = tm.C_TANITASIORAKID
|
|
AND tn.TOROLT = 'F'
|
|
AND tcs.C_BELEPESDATUM <= tn.C_DATUM AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > tn.C_DATUM)
|
|
LEFT JOIN T_OSZTALY_OSSZES o ON o.ID = tcs.C_OSZTALYCSOPORTID
|
|
AND o.TOROLT = 'F'
|
|
AND (o.C_OSZTALYFONOKID = @pTanarId OR o.C_OFOHELYETTESID = @pTanarId)
|
|
LEFT JOIN T_CSOPORT_OSSZES cs ON cs.ID = tcs.C_OSZTALYCSOPORTID
|
|
AND cs.TOROLT = 'F'
|
|
AND cs.C_CSOPORTVEZETOID = @pTanarId
|
|
WHERE tn.TOROLT = 'F'
|
|
AND tn.C_TANEVID = @pTanevId
|
|
AND COALESCE(o.ID, cs.ID) IS NOT NULL
|
|
GROUP BY
|
|
tn.C_DATUM
|
|
ORDER BY
|
|
tn.C_DATUM DESC
|
|
|
|
END
|
|
GO
|