init
This commit is contained in:
@@ -0,0 +1,126 @@
|
||||
IF OBJECT_ID('dbo.sp_GetMulasztasokNaploNezetData') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE dbo.sp_GetMulasztasokNaploNezetData
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE dbo.sp_GetMulasztasokNaploNezetData
|
||||
@pOsztalyCsoportId INT
|
||||
,@pDatum DATE
|
||||
,@pCsoportTipusTanoraiCeluId INT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @tempTable TABLE(
|
||||
TanitasiOraId INT NOT NULL,
|
||||
OsztalyCsoportId INT NOT NULL,
|
||||
OsztalyCsoportNev NVARCHAR(255) NOT NULL,
|
||||
OsztalyNev NVARCHAR(255) NOT NULL,
|
||||
IsOsztalyOraja BIT NOT NULL,
|
||||
IsTanoraiCelu BIT NOT NULL,
|
||||
IsTanoraiCelunakJelolt BIT NOT NULL,
|
||||
TantargyId INT NOT NULL,
|
||||
TantargyNev NVARCHAR(255) NOT NULL,
|
||||
TanarId INT NOT NULL,
|
||||
TanarNev NVARCHAR(255) NOT NULL,
|
||||
OraSorszam INT NULL,
|
||||
OraKezdete DATETIME NULL
|
||||
);
|
||||
|
||||
INSERT INTO @tempTable
|
||||
SELECT
|
||||
tn.ID AS TanitasiOraId
|
||||
,ocs.ID AS OsztalyCsoportId
|
||||
,ocs.C_NEV AS OsztalyCsoportNev
|
||||
,o.C_NEV AS OsztalyNev
|
||||
,IIF(ocs.ID = @pOsztalyCsoportId, 1, 0) AS IsOsztalyOraja
|
||||
,IIF(cst.ID = @pCsoportTipusTanoraiCeluId, 1, 0) AS IsTanoraiCelu
|
||||
,IIF(cst.C_ISTANORAICELU = 'T', 1, 0) AS IsTanoraiCelunakJelolt
|
||||
,tt.ID AS TantargyId
|
||||
,tt.C_NEV AS TantargyNev
|
||||
,fa.ID AS TanarId
|
||||
,fa.C_NYOMTATASINEV AS TanarNev
|
||||
,IIF(tn.C_CSENGETESIRENDORAID IS NOT NULL, tn.C_ORASZAM, NULL) AS OraSorszam
|
||||
,IIF(tn.C_CSENGETESIRENDORAID IS NULL, tn.C_ORAKEZDETE, NULL) AS OraKezdete
|
||||
FROM
|
||||
T_TANITASIORA tn
|
||||
INNER JOIN dbo.fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyCsoportId, @pDatum, @pDatum) kocs ON kocs.ID = tn.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY tt ON tt.ID = tn.C_TANTARGYID AND tt.TOROLT = 'F'
|
||||
INNER JOIN T_FELHASZNALO fa ON fa.ID = tn.C_ORATULAJDONOSID AND fa.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = kocs.ID AND ocs.TOROLT = 'F'
|
||||
LEFT JOIN T_CSOPORT cs ON cs.ID = kocs.ID AND cs.TOROLT = 'F'
|
||||
LEFT JOIN T_CSOPORTTIPUS cst ON cst.ID = cs.C_TIPUSA AND cst.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT o ON o.ID = @pOsztalyCsoportId AND o.TOROLT = 'F'
|
||||
WHERE
|
||||
CAST(tn.C_DATUM AS DATE) = CAST(@pDatum AS DATE)
|
||||
AND tn.C_MEGTARTOTT = 'T'
|
||||
AND tn.TOROLT = 'F'
|
||||
|
||||
SELECT
|
||||
tcs.C_TANULOID AS TanuloId
|
||||
,ft.C_NYOMTATASINEV AS TanuloNev
|
||||
,ft.C_ANYJANEVE AS AnyjaNeve
|
||||
,ft.C_SZULETESIDATUM AS SzuletesiIdo
|
||||
,tbl.OsztalyCsoportId
|
||||
,tbl.OsztalyCsoportNev
|
||||
,tbl.OsztalyNev
|
||||
,tbl.IsOsztalyOraja
|
||||
,tbl.IsTanoraiCelu
|
||||
,tbl.IsTanoraiCelunakJelolt
|
||||
,tbl.TantargyId
|
||||
,tbl.TantargyNev
|
||||
,tbl.TanarId
|
||||
,tbl.TanarNev
|
||||
,tbl.OraSorszam
|
||||
,tbl.OraKezdete
|
||||
,tbl.TanitasiOraId
|
||||
,tm.ID AS MulasztasId
|
||||
,tm.C_TIPUS AS MulasztasTipus
|
||||
,tm.C_IGAZOLT AS IsIgazolt
|
||||
,tm.C_IGAZOLASTIPUSA AS IgazolasTipus
|
||||
,tm.C_MEGJEGYZES AS Megjegyzes
|
||||
,tm.C_KESESPERCBEN AS KesesPercben
|
||||
FROM (
|
||||
SELECT
|
||||
C_TANULOID, C_OSZTALYCSOPORTID
|
||||
FROM
|
||||
T_TANULOCSOPORT
|
||||
WHERE
|
||||
C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND C_BELEPESDATUM <= @pDatum
|
||||
AND (C_KILEPESDATUM > @pDatum OR C_KILEPESDATUM IS NULL)
|
||||
AND TOROLT = 'F'
|
||||
AND C_TANULOID IN (
|
||||
SELECT C_TANULOID
|
||||
FROM T_TANULOCSOPORT
|
||||
WHERE
|
||||
T_TANULOCSOPORT.C_OSZTALYCSOPORTID IN (SELECT OsztalyCsoportId FROM @tempTable)
|
||||
AND T_TANULOCSOPORT.C_BELEPESDATUM <= @pDatum
|
||||
AND (T_TANULOCSOPORT.C_KILEPESDATUM > @pDatum OR T_TANULOCSOPORT.C_KILEPESDATUM IS NULL)
|
||||
)
|
||||
) tcs
|
||||
CROSS JOIN @tempTable tbl
|
||||
INNER JOIN T_FELHASZNALO ft ON
|
||||
tcs.C_TANULOID = ft.ID
|
||||
AND ft.TOROLT = 'F'
|
||||
LEFT JOIN T_TANULOMULASZTAS tm ON
|
||||
tcs.C_TANULOID = tm.C_ORATANULOIID
|
||||
AND tm.C_TANITASIORAKID = tbl.TanitasiOraId
|
||||
AND tm.TOROLT = 'F'
|
||||
WHERE
|
||||
tcs.C_TANULOID IN (
|
||||
SELECT C_TANULOID
|
||||
FROM T_TANULOCSOPORT
|
||||
WHERE
|
||||
tbl.OsztalyCsoportId = T_TANULOCSOPORT.C_OSZTALYCSOPORTID
|
||||
AND T_TANULOCSOPORT.C_BELEPESDATUM <= @pDatum
|
||||
AND (T_TANULOCSOPORT.C_KILEPESDATUM > @pDatum OR T_TANULOCSOPORT.C_KILEPESDATUM IS NULL)
|
||||
)
|
||||
AND (tm.C_TIPUS IS NULL OR tm.C_TIPUS <> 1817)
|
||||
ORDER BY
|
||||
ft.C_NYOMTATASINEV
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
Reference in New Issue
Block a user