init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,283 @@
|
|||
DROP PROCEDURE IF EXISTS sp_GetDokumentumMulasztasok
|
||||
GO
|
||||
|
||||
-- ===========================================================================
|
||||
-- Description: Dokumentumokban használt mulasztás összesítő osztály alapján
|
||||
-- ===========================================================================
|
||||
CREATE PROCEDURE sp_GetDokumentumMulasztasok
|
||||
@osztalyId int
|
||||
,@tanevId int
|
||||
,@elmeletiOraPercben int = 45
|
||||
,@gyakorlatiOraPercben int = 45
|
||||
,@ertekelesTipus int
|
||||
,@iskolaErdekuSzamit bit
|
||||
,@isMuveszetOktatasi bit = 0
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
CREATE TABLE #Tanulo (
|
||||
TanuloId int
|
||||
,TanuloCsoportId int
|
||||
,BelepesDatum date
|
||||
,KilepesDatum date
|
||||
,PRIMARY KEY (TanuloId, BelepesDatum)
|
||||
)
|
||||
|
||||
INSERT INTO #Tanulo
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T')
|
||||
|
||||
DECLARE
|
||||
@Idoszak int
|
||||
,@IdoszakElsoNap int
|
||||
,@IdoszakKezdete date
|
||||
,@IdoszakVege date
|
||||
|
||||
SET @Idoszak =
|
||||
CASE @ertekelesTipus
|
||||
WHEN 1519 THEN 1400 --félévi
|
||||
WHEN 1520 THEN 1395 --év végi
|
||||
WHEN 1522 THEN 1403 --I. negyedévi
|
||||
WHEN 1524 THEN 1400 --II. negyedévi
|
||||
WHEN 1523 THEN 1404 --III. negyedévi
|
||||
END
|
||||
|
||||
SET @IdoszakElsoNap =
|
||||
CASE @ertekelesTipus
|
||||
WHEN 1519 THEN 1394 --félévi
|
||||
WHEN 1520 THEN 1394 --év végi
|
||||
WHEN 1522 THEN 1394 --I. negyedévi
|
||||
WHEN 1524 THEN 1403 --II. negyedévi
|
||||
WHEN 1523 THEN 1400 --III. negyedévi
|
||||
END
|
||||
|
||||
CREATE TABLE #SzurtCsoportTipus (
|
||||
CsoportTipusId int PRIMARY KEY
|
||||
)
|
||||
|
||||
IF @isMuveszetOktatasi = 0 BEGIN
|
||||
INSERT INTO #SzurtCsoportTipus
|
||||
SELECT ID
|
||||
FROM fnGetTanoraiCeluCsoportTipusok(@tanevId)
|
||||
END
|
||||
ELSE BEGIN
|
||||
INSERT INTO #SzurtCsoportTipus (CsoportTipusId) VALUES
|
||||
(1067) -- Alapf. müv. okt. zeneművészeti csoport - egyéni főtanszak
|
||||
,(1068) -- Alapf. müv. okt. zeneművészeti csoport - csoportos főtanszak
|
||||
,(1069) -- Alapf. müv. okt. képző- és iparművészeti csoport
|
||||
,(1070) -- Alapf. müv. okt. táncművészeti csoport
|
||||
,(1071) -- Alapf. müv. okt. szín- és bábművészeti csoport
|
||||
,(6756) -- Alapf. műv. okt. zeneművészeti csoport - csoportos kötelezően választható
|
||||
,(6757) -- Alapf. műv. okt. zeneművészeti csoport - egyéni kötelezően választható
|
||||
,(6758) -- Alapf. műv. okt. zeneművészeti csoport - csoportos kötelező
|
||||
,(6759) -- Alapf. műv. okt. zeneművészeti csoport - egyéni kötelező
|
||||
,(6760) -- Alapf. műv. okt. zeneművészeti csoport - csoportos választható
|
||||
,(6761) -- Alapf. műv. okt. zeneművészeti csoport - egyéni választható
|
||||
END
|
||||
|
||||
SET @IdoszakKezdete = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = @IdoszakElsoNap AND C_TANEVID = @tanevId AND TOROLT='F')
|
||||
SET @IdoszakVege = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = @Idoszak AND C_TANEVID = @tanevId AND TOROLT='F')
|
||||
|
||||
SELECT
|
||||
t.TANULOID tanuloid
|
||||
,t.TanuloCsoportId tanulocsoportid
|
||||
,ISNULL(mu.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(mu.[hianyzasIgazoltTanoraiGyakorlati], 0)
|
||||
+ ISNULL(kp.kesesIgazoltElmeletiOraban,0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0)
|
||||
+ IIF(t.BelepesDatum <= @IdoszakVege , ISNULL(ta.C_HOZOTTIGAZOLTHIANYZAS, 0),0)
|
||||
AS Igazolt
|
||||
,ISNULL(mu.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(mu.[hianyzasIgazolatlanTanoraiGyakorlati], 0)
|
||||
+ ISNULL(kp.kesesIgazolatlanElmeletiOraban,0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0)
|
||||
+ IIF(t.BelepesDatum <= @IdoszakVege , ISNULL(ta.C_HOZOTTIGAZOLATLANHIANYZAS, 0),0)
|
||||
AS Igazolatlan
|
||||
,ISNULL(mu.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(kp.kesesIgazoltElmeletiOraban,0)
|
||||
+ IIF(t.BelepesDatum <= @IdoszakVege , ISNULL(ta.C_HOZOTTIGAZOLTHIANYZAS, 0),0)
|
||||
AS ElmeletIgazolt
|
||||
,ISNULL(mu.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(kp.kesesIgazolatlanElmeletiOraban,0)
|
||||
+ IIF(t.BelepesDatum <= @IdoszakVege , ISNULL(ta.C_HOZOTTIGAZOLATLANHIANYZAS, 0),0)
|
||||
AS ElmeletIgazolatlan
|
||||
,ISNULL(mu.[hianyzasIgazoltTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0)
|
||||
AS GyakorlatiIgazolt
|
||||
,ISNULL(mu.[hianyzasIgazolatlanTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0)
|
||||
AS GyakorlatiIgazolatlan
|
||||
,ISNULL(mu.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(kp.kesesIgazoltElmeletiOraban,0)
|
||||
+ ISNULL(mu.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(kp.kesesIgazolatlanElmeletiOraban,0)
|
||||
+ IIF(t.BelepesDatum <= @IdoszakVege , ISNULL(ta.C_HOZOTTIGAZOLTHIANYZAS, 0),0)
|
||||
+ IIF(t.BelepesDatum <= @IdoszakVege , ISNULL(ta.C_HOZOTTIGAZOLATLANHIANYZAS, 0),0)
|
||||
AS ElmeletOsszes
|
||||
,ISNULL(mu.[hianyzasIgazoltTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0)
|
||||
+ ISNULL(mu.[hianyzasIgazolatlanTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0)
|
||||
AS GyakorlatOsszes
|
||||
,ISNULL(mu.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(mu.[hianyzasIgazoltTanoraiGyakorlati], 0)
|
||||
+ ISNULL(kp.kesesIgazoltElmeletiOraban,0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0)
|
||||
+ ISNULL(mu.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(mu.[hianyzasIgazolatlanTanoraiGyakorlati], 0)
|
||||
+ ISNULL(kp.kesesIgazolatlanElmeletiOraban,0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0)
|
||||
+ IIF(t.BelepesDatum <= @IdoszakVege , ISNULL(ta.C_HOZOTTIGAZOLTHIANYZAS, 0),0)
|
||||
+ IIF(t.BelepesDatum <= @IdoszakVege , ISNULL(ta.C_HOZOTTIGAZOLATLANHIANYZAS, 0),0)
|
||||
AS Osszes
|
||||
FROM #Tanulo t
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tanuloId
|
||||
,tanulocsoportid
|
||||
,[hianyzasIgazoltTanoraiElmeleti]
|
||||
,[hianyzasIgazoltTanoraiGyakorlati]
|
||||
,[hianyzasIgazolatlanTanoraiElmeleti]
|
||||
,[hianyzasIgazolatlanTanoraiGyakorlati]
|
||||
FROM (
|
||||
SELECT
|
||||
x.tanuloId, x.tanulocsoportid
|
||||
,'Hianyzas' +
|
||||
CASE isIgazolt WHEN 'T' THEN 'Igazolt' WHEN 'F' THEN 'Igazolatlan' END +
|
||||
CASE isTanorai WHEN 'T' THEN 'Tanorai' WHEN 'F' THEN 'TanoranKivuli' END +
|
||||
CASE isGyakorlati WHEN 'T' THEN 'Gyakorlati' WHEN 'F' THEN 'Elmeleti' END
|
||||
AS piv
|
||||
,cnt
|
||||
FROM (
|
||||
SELECT
|
||||
mu.C_ORATANULOIID AS tanuloId
|
||||
,tanulok.TanuloCsoportId
|
||||
,mu.C_TIPUS mulasztasTipus
|
||||
,mu.C_IGAZOLT isIgazolt
|
||||
,IIF((@isMuveszetOktatasi = 0 AND cs.ID IS NULL), 'T', IIF((@isMuveszetOktatasi = 1 AND csmuv.ID IS NOT NULL),'T','F')) AS isTanorai
|
||||
,IIF(t.C_GYAKORLATI='T', 'T', 'F') as isGyakorlati
|
||||
,COUNT(1) AS cnt
|
||||
FROM T_TANULOMULASZTAS_OSSZES mu
|
||||
INNER JOIN #Tanulo tanulok ON tanulok.TanuloId = mu.C_ORATANULOIID
|
||||
INNER JOIN T_TANITASIORA_OSSZES tn ON tn.ID = mu.C_TANITASIORAKID
|
||||
INNER JOIN T_TANTARGY_OSSZES t on t.id=tn.C_TANTARGYID
|
||||
LEFT JOIN (
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
INNER JOIN T_CSOPORTTIPUS_OSSZES cst On cst.ID = cs.C_TIPUSA AND cst.C_ALTANEVID = cs.C_ALTANEVID AND cst.C_ISTANORAICELU = 'F'
|
||||
WHERE cs.C_ALTANEVID = @tanevId
|
||||
) cs ON tn.C_OSZTALYCSOPORTID = cs.ID
|
||||
LEFT JOIN (
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
INNER JOIN #SzurtCsoportTipus cst On cst.CsoportTipusId = cs.C_TIPUSA
|
||||
WHERE cs.C_ALTANEVID = @tanevId
|
||||
) csmuv ON tn.C_OSZTALYCSOPORTID = csmuv.ID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = tn.C_OSZTALYCSOPORTID AND tanulok.TanuloId = tcs.C_TANULOID AND tcs.TOROLT = 'F'
|
||||
WHERE tn.C_DATUM BETWEEN @IdoszakKezdete AND @IdoszakVege
|
||||
AND mu.C_TANEVID = @tanevId
|
||||
AND mu.Torolt ='F'
|
||||
AND tn.Torolt ='F'
|
||||
AND mu.C_IGAZOLT IS NOT NULL
|
||||
AND tn.C_TANEVID = @tanevId
|
||||
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA <> 1533 OR C_IGAZOLASTIPUSA IS NULL))
|
||||
AND tcs.C_BELEPESDATUM <= tn.C_DATUM
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= tn.C_DATUM)
|
||||
AND tanulok.BelepesDatum <= tn.C_DATUM
|
||||
AND (tanulok.KilepesDatum IS NULL OR tanulok.KilepesDatum >= tn.C_DATUM)
|
||||
AND mu.C_TIPUS = 1500
|
||||
AND (
|
||||
(@isMuveszetOktatasi = 0)
|
||||
OR
|
||||
(@isMuveszetOktatasi = 1 AND csmuv.ID IS NOT NULL)
|
||||
)
|
||||
GROUP BY mu.C_ORATANULOIID, tanulok.TanuloCsoportId, mu.C_TIPUS, mu.C_IGAZOLT, IIF((@isMuveszetOktatasi = 0 AND cs.ID IS NULL), 'T', IIF((@isMuveszetOktatasi = 1 AND csmuv.ID IS NOT NULL),'T','F')), t.C_GYAKORLATI
|
||||
) x
|
||||
) p
|
||||
PIVOT (
|
||||
MAX(cnt)
|
||||
FOR piv IN (
|
||||
[hianyzasIgazoltTanoraiElmeleti], [hianyzasIgazoltTanoraiGyakorlati],
|
||||
[hianyzasIgazolatlanTanoraiElmeleti], [hianyzasIgazolatlanTanoraiGyakorlati]
|
||||
)
|
||||
) AS pvt
|
||||
) mu on mu.tanuloId = t.tanuloId and mu.TanuloCsoportId = t.TanuloCsoportId
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tanuloId
|
||||
,tanulocsoportid
|
||||
,SUM(kesesIgazolandoTanoraiPluszOra) AS kesesIgazolandoTanoraiPluszOra
|
||||
,SUM(kesesIgazoltTanoraiPluszOra) AS kesesIgazoltTanoraiPluszOra
|
||||
,SUM(kesesIgazolatlanTanoraiPluszOra) AS kesesIgazolatlanTanoraiPluszOra
|
||||
,SUM(kesesIgazoltElmeletiOraban) AS kesesIgazoltElmeletiOraban
|
||||
,SUM(kesesIgazolatlanElmeletiOraban) AS kesesIgazolatlanElmeletiOraban
|
||||
,SUM(kesesIgazoltGyakorlatiOraban) AS kesesIgazoltGyakorlatiOraban
|
||||
,SUM(kesesIgazolatlanGyakorlatiOraban) AS kesesIgazolatlanGyakorlatiOraban
|
||||
FROM (
|
||||
SELECT
|
||||
x.tanuloId
|
||||
,x.tanulocsoportid
|
||||
,'Keses' +
|
||||
CASE
|
||||
WHEN isIgazolt IS NULL THEN 'Igazolando'
|
||||
WHEN isIgazolt = 'T' THEN 'Igazolt'
|
||||
WHEN isIgazolt = 'F' THEN 'Igazolatlan'
|
||||
END + 'TanoraiPluszOra' AS piv
|
||||
,kesesOraban
|
||||
,kesesIgazoltElmeletiOraban
|
||||
,kesesIgazolatlanElmeletiOraban
|
||||
,kesesIgazoltGyakorlatiOraban
|
||||
,kesesIgazolatlanGyakorlatiOraban
|
||||
FROM (
|
||||
SELECT
|
||||
xx.tanuloId
|
||||
,xx.tanulocsoportid
|
||||
,xx.isIgazolt
|
||||
,SUM(xx.keses / (CASE WHEN isGyakorlati = 'F' THEN @elmeletiOraPercben ELSE @gyakorlatiOraPercben END)) AS kesesOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'F' AND isIgazolt='T' THEN xx.keses / @elmeletiOraPercben ELSE 0 END) AS kesesIgazoltElmeletiOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'F' AND isIgazolt='F' THEN xx.keses / @elmeletiOraPercben ELSE 0 END) AS kesesIgazolatlanElmeletiOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'T' AND isIgazolt='T' THEN xx.keses / @gyakorlatiOraPercben ELSE 0 END) AS kesesIgazoltGyakorlatiOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'T' AND isIgazolt='F' THEN xx.keses / @gyakorlatiOraPercben ELSE 0 END) AS kesesIgazolatlanGyakorlatiOraban
|
||||
FROM (
|
||||
SELECT
|
||||
mu.C_ORATANULOIID AS tanuloId
|
||||
,tanulok.tanulocsoportid
|
||||
,mu.C_IGAZOLT isIgazolt
|
||||
,t.C_GYAKORLATI AS isGyakorlati
|
||||
,SUM(mu.C_KESESPERCBEN) AS keses
|
||||
FROM T_TANULOMULASZTAS_OSSZES mu
|
||||
INNER JOIN #Tanulo tanulok ON tanulok.TanuloId = mu.C_ORATANULOIID
|
||||
INNER JOIN T_TANITASIORA_OSSZES tn ON tn.ID = mu.C_TANITASIORAKID
|
||||
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = tn.C_TANTARGYID
|
||||
LEFT JOIN (
|
||||
SELECT cs.ID, cs.C_TIPUSA
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
INNER JOIN T_CSOPORTTIPUS_OSSZES cst On cst.ID = cs.C_TIPUSA AND cst.C_ALTANEVID = cs.C_ALTANEVID AND cst.C_ISTANORAICELU = 'F'
|
||||
) cs ON tn.C_OSZTALYCSOPORTID = cs.ID
|
||||
LEFT JOIN (
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
INNER JOIN #SzurtCsoportTipus cst On cst.CsoportTipusId = cs.C_TIPUSA
|
||||
) csmuv ON tn.C_OSZTALYCSOPORTID = csmuv.ID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = tn.C_OSZTALYCSOPORTID and tanulok.TanuloId = tcs.C_TANULOID AND tcs.TOROLT = 'F'
|
||||
WHERE mu.C_TANEVID = @tanevId
|
||||
AND (
|
||||
(@isMuveszetOktatasi = 0 AND (cs.ID IS NULL OR cs.C_TIPUSA IN (SELECT CsoportTipusId FROM #SzurtCsoportTipus)))
|
||||
OR
|
||||
(@isMuveszetOktatasi = 1 AND csmuv.ID IS NOT NULL)
|
||||
)
|
||||
AND mu.C_TIPUS = 1499
|
||||
AND mu.TOROLT = 'F'
|
||||
AND tn.Torolt ='F'
|
||||
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA <> 1533 OR C_IGAZOLASTIPUSA IS NULL))
|
||||
AND tcs.C_BELEPESDATUM <= tn.C_DATUM
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= tn.C_DATUM)
|
||||
AND tanulok.BelepesDatum <= tn.C_DATUM
|
||||
AND (tanulok.KilepesDatum IS NULL OR tanulok.KilepesDatum >= tn.C_DATUM)
|
||||
AND tn.C_DATUM BETWEEN @IdoszakKezdete AND @IdoszakVege
|
||||
GROUP BY mu.C_ORATANULOIID, tanulok.TanuloCsoportId, mu.C_IGAZOLT, t.C_GYAKORLATI
|
||||
) xx
|
||||
GROUP BY tanuloId, TanuloCsoportId, xx.isIgazolt
|
||||
) x
|
||||
) p
|
||||
PIVOT (
|
||||
MAX(kesesOraban)
|
||||
FOR piv IN (
|
||||
kesesIgazolandoTanoraiPluszOra, kesesIgazoltTanoraiPluszOra, kesesIgazolatlanTanoraiPluszOra
|
||||
)
|
||||
) AS pvt
|
||||
GROUP BY tanuloId, TanuloCsoportId
|
||||
) kp ON t.tanuloId = kp.tanuloId AND kp.TanuloCsoportId = t.TanuloCsoportId
|
||||
LEFT join T_TANULOTANUGYIADATOK ta on t.TanuloCsoportId = ta.C_TANULOCSOPORTID
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,371 @@
|
|||
DROP PROCEDURE IF EXISTS sp_GetDokumentumMulasztasokIdoszakonkent
|
||||
GO
|
||||
|
||||
|
||||
CREATE PROCEDURE sp_GetDokumentumMulasztasokIdoszakonkent
|
||||
@tanevId int
|
||||
,@osztalyCsoportId int
|
||||
,@iskolaErdekuSzamit int
|
||||
,@isReszletesMulasztasok int
|
||||
,@elmeletiOraPercben int = 45
|
||||
,@gyakorlatiOraPercben int = 45
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @MulasztasElmeletGyakorlat NVARCHAR(MAX)
|
||||
SELECT @MulasztasElmeletGyakorlat = ISNULL(@MulasztasElmeletGyakorlat + ', ', '') + '[' + ElmeletGyakorlat + ']'
|
||||
FROM ( SELECT
|
||||
CAST(Honap AS VARCHAR(3)) + Tipus ElmeletGyakorlat
|
||||
FROM (VALUES (9), (10), (11), (12), (1), (2), (3), (4), (5), (6), (7), (8)) HonapTmp(Honap)
|
||||
CROSS JOIN (VALUES ('E'), ('G')) TantargyTipus(Tipus)
|
||||
) temp
|
||||
|
||||
SELECT 'T' IgazoltE, ID TanuloId, TanuloCsoportId, Tipus INTO #Mulasztasok FROM #studentsWithTanuloCsoport
|
||||
CROSS JOIN (SELECT DISTINCT Id FROM T_DICTIONARYITEMBASE_OSSZES WHERE C_TANEVID = @tanevId AND C_TYPE LIKE 'igazolastipus' AND (@iskolaErdekuSzamit = 1 OR Id <> 1533) ) Tipus (Tipus)
|
||||
|
||||
--hiányzás
|
||||
DECLARE @FelevVege DATE = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES tr WHERE C_NAPTIPUSA = 1400 AND C_TANEVID=@tanevId AND TOROLT = 'F')
|
||||
CREATE TABLE #MulasztasokTemp ( TanuloId int,TanuloCsoportId int,Tipus nvarchar(max),[9E] int,[9G] int,[10E] int,[10G] int,[11E] int,[11G] int,[12E] int,[12G] int,
|
||||
[1E] int,[1G] int,[2E] int,[2G] int,[3E] int,[3G] int,[4E] int,[4G] int,[5E] int,[5G] int,[6E] int,[6G] int,FelevE int,FelevG int ,OsszesenE int,OsszesenG int,Rendez int);
|
||||
CREATE TABLE #MulasztasVegleges ( TanuloId int,TanuloCsoportId int,Tipus nvarchar(max),[9E] int,[9G] int,[10E] int,[10G] int,[11E] int,[11G] int,[12E] int,[12G] int,
|
||||
[1E] int,[1G] int,[2E] int,[2G] int,[3E] int,[3G] int,[4E] int,[4G] int,[5E] int,[5G] int,[6E] int,[6G] int,FelevE int,FelevG int ,OsszesenE int,OsszesenG int,Rendez int);
|
||||
|
||||
--igazolt mulasztás (start) tempbe mert beleszámoljuk az összegezettbe
|
||||
INSERT INTO #MulasztasokTemp (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT
|
||||
s.id
|
||||
,s.TanuloCsoportId
|
||||
,'igazolt'
|
||||
,ni.[9E], ni.[9G]
|
||||
,ni.[10E],ni.[10G]
|
||||
,ni.[11E],ni.[11G]
|
||||
,ni.[12E],ni.[12G]
|
||||
,ni.[1E],ni.[1G]
|
||||
,ni.[2E],ni.[2G]
|
||||
,ni.[3E],ni.[3G]
|
||||
,ni.[4E],ni.[4G]
|
||||
,ni.[5E],ni.[5G]
|
||||
,ni.[6E],ni.[6G]
|
||||
,FelevE
|
||||
,FelevG
|
||||
,[9E]+[10E]+[11E]+[12E]+[1E]+[2E]+[3E]+[4E]+[5E]+[6E]
|
||||
,[9G]+[10G]+[11G]+[12G]+[1G]+[2G]+[3G]+[4G]+[5G]+[6G]
|
||||
,2 Rendez
|
||||
FROM #studentsWithTanuloCsoport s
|
||||
LEFT JOIN (SELECT * FROM (SELECT Id, ElmeletGyakorlat, TanuloId, TanuloCsoportId, IgazoltE, Tipus FROM #mulasztasTmp) a PIVOT (COUNT(ID) FOR ElmeletGyakorlat IN ([9E], [10E], [11E], [12E], [1E], [2E], [3E], [4E], [5E], [6E],
|
||||
[9G], [10G], [11G], [12G], [1G], [2G], [3G], [4G], [5G], [6G]))piv WHERE IgazoltE = 'T' AND Tipus = 1500 )ni on ni.TanuloId=s.Id AND ni.TanuloCsoportId = s.TanuloCsoportId
|
||||
LEFT JOIN (SELECT COUNT(Id) FelevG, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE Tipus = 1500 AND IgazoltE = 'T' AND Datum <= @FelevVege AND isGyakorlat = 'T' GROUP BY TanuloId, TanuloCsoportId) felevG ON felevG.TanuloId=s.id AND felevG.TanuloCsoportId = s.TanuloCsoportId
|
||||
LEFT JOIN (SELECT COUNT(Id) FelevE, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE Tipus = 1500 AND IgazoltE = 'T' AND Datum <= @FelevVege AND isGyakorlat = 'F' GROUP BY TanuloId, TanuloCsoportId) felevE ON felevE.TanuloId=s.id AND felevE.TanuloCsoportId = s.TanuloCsoportId
|
||||
--Igazolt mulasztás (end)
|
||||
|
||||
--Igazolatlan mulasztás (start) tempbe mert beleszámoljuk az összegezettbe
|
||||
INSERT INTO #MulasztasokTemp (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT
|
||||
s.id
|
||||
,s.TanuloCsoportId
|
||||
,'igazolatlan'
|
||||
,ni.[9E], ni.[9G]
|
||||
,ni.[10E],ni.[10G]
|
||||
,ni.[11E],ni.[11G]
|
||||
,ni.[12E],ni.[12G]
|
||||
,ni.[1E],ni.[1G]
|
||||
,ni.[2E],ni.[2G]
|
||||
,ni.[3E],ni.[3G]
|
||||
,ni.[4E],ni.[4G]
|
||||
,ni.[5E],ni.[5G]
|
||||
,ni.[6E],ni.[6G]
|
||||
,FelevE
|
||||
,FelevG
|
||||
,[9E]+[10E]+[11E]+[12E]+[1E]+[2E]+[3E]+[4E]+[5E]+[6E] OsszesenE
|
||||
,[9G]+[10G]+[11G]+[12G]+[1G]+[2G]+[3G]+[4G]+[5G]+[6G] OsszesenG
|
||||
,2 Rendez
|
||||
FROM #studentsWithTanuloCsoport s
|
||||
LEFT JOIN (SELECT * FROM (SELECT Id, ElmeletGyakorlat, TanuloId, TanuloCsoportId, IgazoltE, Tipus FROM #mulasztasTmp) a PIVOT (COUNT(ID) FOR ElmeletGyakorlat IN ([9E], [10E], [11E], [12E], [1E], [2E], [3E], [4E], [5E], [6E],
|
||||
[9G], [10G], [11G], [12G], [1G], [2G], [3G], [4G], [5G], [6G]))piv WHERE IgazoltE = 'F' AND Tipus = 1500 )ni on ni.TanuloId=s.Id AND ni.TanuloCsoportId = s.TanuloCsoportId
|
||||
LEFT JOIN (SELECT COUNT(Id) FelevG, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE Tipus = 1500 AND IgazoltE = 'F' AND Datum <= @FelevVege AND isGyakorlat = 'T' GROUP BY TanuloId, TanuloCsoportId) felevG ON felevG.TanuloId=s.id AND felevG.TanuloCsoportId = s.TanuloCsoportId
|
||||
LEFT JOIN (SELECT COUNT(Id) FelevE, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE Tipus = 1500 AND IgazoltE = 'F' AND Datum <= @FelevVege AND isGyakorlat = 'F' GROUP BY TanuloId, TanuloCsoportId) felevE ON felevE.TanuloId=s.id AND felevE.TanuloCsoportId = s.TanuloCsoportId
|
||||
--Igazolatlan mulasztás (end)
|
||||
|
||||
--Különbözo igazolás típusok (start)
|
||||
IF @isReszletesMulasztasok = 1
|
||||
BEGIN
|
||||
INSERT INTO #MulasztasVegleges (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT
|
||||
m.TanuloId
|
||||
,m.TanuloCsoportId
|
||||
,'-' + IgazolasTipus.C_NAME
|
||||
,ni.[9E], ni.[9G]
|
||||
,ni.[10E],ni.[10G]
|
||||
,ni.[11E],ni.[11G]
|
||||
,ni.[12E],ni.[12G]
|
||||
,ni.[1E],ni.[1G]
|
||||
,ni.[2E],ni.[2G]
|
||||
,ni.[3E],ni.[3G]
|
||||
,ni.[4E],ni.[4G]
|
||||
,ni.[5E],ni.[5G]
|
||||
,ni.[6E],ni.[6G]
|
||||
,FelevE
|
||||
,FelevG
|
||||
,[9E]+[10E]+[11E]+[12E]+[1E]+[2E]+[3E]+[4E]+[5E]+[6E] OsszesenE
|
||||
,[9G]+[10G]+[11G]+[12G]+[1G]+[2G]+[3G]+[4G]+[5G]+[6G] OsszesenG
|
||||
,IgazolasTipus.Id
|
||||
FROM #Mulasztasok m
|
||||
LEFT JOIN (SELECT * FROM (SELECT TanuloId, TanuloCsoportId, ElmeletGyakorlat, Id, IgazolasTipus, IgazoltE FROM #mulasztasTmp WHERE Tipus = 1500) a PIVOT (COUNT(ID) FOR ElmeletGyakorlat IN ([9E], [10E], [11E], [12E], [1E], [2E], [3E], [4E], [5E], [6E],
|
||||
[9G], [10G], [11G], [12G], [1G], [2G], [3G], [4G], [5G], [6G]))piv
|
||||
)ni ON ni.TanuloId = m.TanuloId AND ni.IgazolasTipus = m.Tipus AND m.TanuloCsoportId = ni.TanuloCsoportId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES IgazolasTipus ON IgazolasTipus.id = m.Tipus AND IgazolasTipus.TOROLT = 'F' AND IgazolasTipus.C_TANEVID = @tanevId
|
||||
LEFT JOIN (SELECT COUNT(Id) FelevE, TanuloId Tanulo, TanuloCsoportId, IgazolasTipus FROM #mulasztasTmp WHERE Datum <= @FelevVege AND Tipus = 1500 AND isGyakorlat = 'F' GROUP BY IgazoltE, TanuloId, TanuloCsoportId, IgazolasTipus
|
||||
)felevE ON felevE.tanulo = m.TanuloId AND felevE.IgazolasTipus = m.Tipus AND felevE.TanuloCsoportId = m.TanuloCsoportId
|
||||
LEFT JOIN (SELECT COUNT(Id) FelevG, TanuloId Tanulo, TanuloCsoportId, IgazolasTipus FROM #mulasztasTmp WHERE Datum <= @FelevVege AND Tipus = 1500 AND isGyakorlat = 'T' GROUP BY IgazoltE, TanuloId, TanuloCsoportId, IgazolasTipus
|
||||
)felevG ON felevG.tanulo = m.TanuloId AND felevG.IgazolasTipus = m.Tipus AND felevG.TanuloCsoportId = m.TanuloCsoportId
|
||||
END
|
||||
--Különbözo igazolás típusok (end)
|
||||
|
||||
--Összesített késés (p) (start)
|
||||
INSERT INTO #MulasztasVegleges (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT
|
||||
s.id
|
||||
,s.TanuloCsoportId
|
||||
,'késés (p)'
|
||||
,ni.[9E], ni.[9G]
|
||||
,ni.[10E],ni.[10G]
|
||||
,ni.[11E],ni.[11G]
|
||||
,ni.[12E],ni.[12G]
|
||||
,ni.[1E],ni.[1G]
|
||||
,ni.[2E],ni.[2G]
|
||||
,ni.[3E],ni.[3G]
|
||||
,ni.[4E],ni.[4G]
|
||||
,ni.[5E],ni.[5G]
|
||||
,ni.[6E],ni.[6G]
|
||||
,FelevE
|
||||
,FelevG
|
||||
,ISNULL([9E],0)+ISNULL([10E],0)+ISNULL([11E],0)+ISNULL([12E],0)+ISNULL([1E],0)+ISNULL([2E],0)+ISNULL([3E],0)+ISNULL([4E],0)+ISNULL([5E],0)+ISNULL([6E],0) OsszesenE
|
||||
,ISNULL([9G],0)+ISNULL([10G],0)+ISNULL([11G],0)+ISNULL([12G],0)+ISNULL([1G],0)+ISNULL([2G],0)+ISNULL([3G],0)+ISNULL([4G],0)+ISNULL([5G],0)+ISNULL([6G],0) OsszesenG
|
||||
,50000 Rendez
|
||||
FROM #studentsWithTanuloCsoport s
|
||||
LEFT JOIN (SELECT * FROM (SELECT KesesPercben, ElmeletGyakorlat, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE Tipus = 1499) a PIVOT (SUM(KesesPercben) FOR ElmeletGyakorlat IN ([9E], [10E], [11E], [12E], [1E], [2E], [3E], [4E], [5E], [6E],
|
||||
[9G], [10G], [11G], [12G], [1G], [2G], [3G], [4G], [5G], [6G]))piv)ni on ni.TanuloId=s.Id AND ni.TanuloCsoportId = s.TanuloCsoportId
|
||||
LEFT JOIN (SELECT SUM(KesesPercben) FelevE, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE Tipus = 1499 AND Datum <= @FelevVege AND isGyakorlat = 'F' GROUP BY TanuloId, TanuloCsoportId) felevE on felevE.TanuloId=s.id AND felevE.TanuloCsoportId = s.TanuloCsoportId
|
||||
LEFT JOIN (SELECT SUM(KesesPercben) FelevG, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE Tipus = 1499 AND Datum <= @FelevVege AND isGyakorlat = 'T' GROUP BY TanuloId, TanuloCsoportId) felevG on felevG.TanuloId=s.id AND felevG.TanuloCsoportId = s.TanuloCsoportId
|
||||
--Összesített késés (p) (end)
|
||||
|
||||
--Igazolt késés (p) (start)
|
||||
INSERT INTO #MulasztasVegleges (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT
|
||||
s.id
|
||||
,s.TanuloCsoportId
|
||||
,'* igazolt (p)'
|
||||
,ni.[9E], ni.[9G]
|
||||
,ni.[10E],ni.[10G]
|
||||
,ni.[11E],ni.[11G]
|
||||
,ni.[12E],ni.[12G]
|
||||
,ni.[1E],ni.[1G]
|
||||
,ni.[2E],ni.[2G]
|
||||
,ni.[3E],ni.[3G]
|
||||
,ni.[4E],ni.[4G]
|
||||
,ni.[5E],ni.[5G]
|
||||
,ni.[6E],ni.[6G]
|
||||
,FelevE
|
||||
,FelevG
|
||||
,ISNULL([9E],0)+ISNULL([10E],0)+ISNULL([11E],0)+ISNULL([12E],0)+ISNULL([1E],0)+ISNULL([2E],0)+ISNULL([3E],0)+ISNULL([4E],0)+ISNULL([5E],0)+ISNULL([6E],0) OsszesenE
|
||||
,ISNULL([9G],0)+ISNULL([10G],0)+ISNULL([11G],0)+ISNULL([12G],0)+ISNULL([1G],0)+ISNULL([2G],0)+ISNULL([3G],0)+ISNULL([4G],0)+ISNULL([5G],0)+ISNULL([6G],0) OsszesenG
|
||||
,50001 Rendez
|
||||
FROM #studentsWithTanuloCsoport s
|
||||
LEFT JOIN (SELECT * FROM (SELECT KesesPercben, ElmeletGyakorlat, TanuloId, TanuloCsoportId, IgazoltE, Tipus FROM #mulasztasTmp) a PIVOT (SUM(KesesPercben) FOR ElmeletGyakorlat IN ([9E], [10E], [11E], [12E], [1E], [2E], [3E], [4E], [5E], [6E],
|
||||
[9G], [10G], [11G], [12G], [1G], [2G], [3G], [4G], [5G], [6G]))piv WHERE IgazoltE = 'T' AND Tipus = 1499)ni on ni.TanuloId=s.Id AND ni.TanuloCsoportId = s.TanuloCsoportId
|
||||
LEFT JOIN (SELECT SUM(KesesPercben) FelevE, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE IgazoltE = 'T' AND Tipus = 1499 AND Datum <= @FelevVege AND isGyakorlat = 'F' GROUP BY TanuloId, TanuloCsoportId) felevE ON felevE.TanuloId=s.id AND felevE.TanuloCsoportId = s.TanuloCsoportId
|
||||
LEFT JOIN (SELECT SUM(KesesPercben) FelevG, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE IgazoltE = 'T' AND Tipus = 1499 AND Datum <= @FelevVege AND isGyakorlat = 'T' GROUP BY TanuloId, TanuloCsoportId ) felevG ON felevG.TanuloId=s.id AND felevG.TanuloCsoportId = s.TanuloCsoportId
|
||||
--Igazolt késés (p) (end)
|
||||
|
||||
--Igazolatlan késés (p) (start)
|
||||
INSERT INTO #MulasztasVegleges (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT
|
||||
s.id
|
||||
,s.TanuloCsoportId
|
||||
,'* igazolatlan (p)'
|
||||
,ni.[9E], ni.[9G]
|
||||
,ni.[10E],ni.[10G]
|
||||
,ni.[11E],ni.[11G]
|
||||
,ni.[12E],ni.[12G]
|
||||
,ni.[1E],ni.[1G]
|
||||
,ni.[2E],ni.[2G]
|
||||
,ni.[3E],ni.[3G]
|
||||
,ni.[4E],ni.[4G]
|
||||
,ni.[5E],ni.[5G]
|
||||
,ni.[6E],ni.[6G]
|
||||
,FelevE
|
||||
,FelevG
|
||||
,ISNULL([9E],0)+ISNULL([10E],0)+ISNULL([11E],0)+ISNULL([12E],0)+ISNULL([1E],0)+ISNULL([2E],0)+ISNULL([3E],0)+ISNULL([4E],0)+ISNULL([5E],0)+ISNULL([6E],0) OsszesenE
|
||||
,ISNULL([9G],0)+ISNULL([10G],0)+ISNULL([11G],0)+ISNULL([12G],0)+ISNULL([1G],0)+ISNULL([2G],0)+ISNULL([3G],0)+ISNULL([4G],0)+ISNULL([5G],0)+ISNULL([6G],0) OsszesenG
|
||||
,50002 Rendez
|
||||
FROM #studentsWithTanuloCsoport s
|
||||
LEFT JOIN (SELECT * FROM (SELECT KesesPercben, ElmeletGyakorlat, TanuloId, TanuloCsoportId, IgazoltE, Tipus FROM #mulasztasTmp) a PIVOT (SUM(KesesPercben) FOR ElmeletGyakorlat IN ([9E], [10E], [11E], [12E], [1E], [2E], [3E], [4E], [5E], [6E],
|
||||
[9G], [10G], [11G], [12G], [1G], [2G], [3G], [4G], [5G], [6G]))piv WHERE IgazoltE = 'F' AND Tipus = 1499)ni on ni.TanuloId=s.Id AND ni.TanuloCsoportId = s.TanuloCsoportId
|
||||
LEFT JOIN (SELECT SUM(KesesPercben) FelevE, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE IgazoltE = 'F' AND Tipus = 1499 AND Datum <= @FelevVege AND isGyakorlat = 'F' GROUP BY TanuloId, TanuloCsoportId) felevE ON felevE.TanuloId=s.id AND felevE.TanuloCsoportId = s.TanuloCsoportId
|
||||
LEFT JOIN (SELECT SUM(KesesPercben) FelevG, TanuloId, TanuloCsoportId FROM #mulasztasTmp WHERE IgazoltE = 'F' AND Tipus = 1499 AND Datum <= @FelevVege AND isGyakorlat = 'T' GROUP BY TanuloId, TanuloCsoportId) felevG ON felevG.TanuloId=s.id AND felevG.TanuloCsoportId = s.TanuloCsoportId
|
||||
--Igazolatlan késés (p) (end)
|
||||
|
||||
--Mindkét fajta késés (ó) (start) tempbe mert beleszámoljuk az összegezettbe
|
||||
INSERT INTO #MulasztasokTemp (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,REPLACE(Tipus,'(p)','(ó)')
|
||||
,CAST(ISNULL([9E],0)/@elmeletiOraPercben AS int),CAST(ISNULL([9G],0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL([10E],0)/@elmeletiOraPercben AS int),CAST(ISNULL([10G],0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL([11E],0)/@elmeletiOraPercben AS int),CAST(ISNULL([11G],0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL([12E],0)/@elmeletiOraPercben AS int),CAST(ISNULL([12G],0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL([1E],0)/@elmeletiOraPercben AS int),CAST(ISNULL([1G],0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL([2E],0)/@elmeletiOraPercben AS int),CAST(ISNULL([2G],0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL([3E],0)/@elmeletiOraPercben AS int),CAST(ISNULL([3G],0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL([4E],0)/@elmeletiOraPercben AS int),CAST(ISNULL([4G],0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL([5E],0)/@elmeletiOraPercben AS int),CAST(ISNULL([5G],0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL([6E],0)/@elmeletiOraPercben AS int),CAST(ISNULL([6G],0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL(FelevE,0)/@elmeletiOraPercben AS int)
|
||||
,CAST(ISNULL(FelevG,0)/@gyakorlatiOraPercben AS int)
|
||||
,CAST(ISNULL(OsszesenE,0)/@elmeletiOraPercben AS int)
|
||||
,CAST(ISNULL(OsszesenG,0)/@gyakorlatiOraPercben AS int)
|
||||
,Rendez+3
|
||||
FROM #MulasztasVegleges
|
||||
WHERE Tipus LIKE '%*%(p)%'
|
||||
--Mindkét fajta késés (ó) (end)
|
||||
|
||||
--Igazolt hozott (start) tempbe mert beleszámoljuk az összegezettbe
|
||||
INSERT INTO #MulasztasokTemp (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT
|
||||
s.id
|
||||
,s.TanuloCsoportId
|
||||
,'hozott igazolt mulasztás'
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,IIF(@FelevVege > s.BelepesDatum, ISNULL(tta.C_HOZOTTIGAZOLTHIANYZAS,0),0)
|
||||
,0
|
||||
,ISNULL(tta.C_HOZOTTIGAZOLTHIANYZAS,0)
|
||||
,0
|
||||
,50005 Rendez
|
||||
FROM #studentsWithTanuloCsoport s
|
||||
LEFT JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = s.TanuloCsoportId
|
||||
--Igazolt hozott (end)
|
||||
|
||||
--Igazolatlan hozott (start) tempbe mert beleszámoljuk az összegezettbe
|
||||
INSERT INTO #MulasztasokTemp (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT
|
||||
s.id
|
||||
,s.TanuloCsoportId
|
||||
,'hozott igazolatlan mulasztás'
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,0,0
|
||||
,IIF(@FelevVege > s.BelepesDatum, ISNULL(tta.C_HOZOTTIGAZOLATLANHIANYZAS,0),0)
|
||||
,0
|
||||
,ISNULL(tta.C_HOZOTTIGAZOLATLANHIANYZAS,0)
|
||||
,0
|
||||
,50006 Rendez
|
||||
FROM #studentsWithTanuloCsoport s
|
||||
LEFT JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = s.TanuloCsoportId
|
||||
--Igazolatlan hozott (end)
|
||||
|
||||
|
||||
-- beszurni a veglegestablaba a temp osszegezve
|
||||
--Összesített mulasztás (start)
|
||||
INSERT INTO #MulasztasVegleges (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT
|
||||
mb.TanuloId
|
||||
,mb.TanuloCsoportId
|
||||
,CAST('mulasztás' AS NVARCHAR(MAX)) Tipus
|
||||
,SUM(ISNULL(mb.[9E],0))
|
||||
,SUM(ISNULL(mb.[9G],0))
|
||||
,SUM(ISNULL(mb.[10E],0))
|
||||
,SUM(ISNULL(mb.[10G],0))
|
||||
,SUM(ISNULL(mb.[11E],0))
|
||||
,SUM(ISNULL(mb.[11G],0))
|
||||
,SUM(ISNULL(mb.[12E],0))
|
||||
,SUM(ISNULL(mb.[12G],0))
|
||||
,SUM(ISNULL(mb.[1E],0))
|
||||
,SUM(ISNULL(mb.[1G],0))
|
||||
,SUM(ISNULL(mb.[2E],0))
|
||||
,SUM(ISNULL(mb.[2G],0))
|
||||
,SUM(ISNULL(mb.[3E],0))
|
||||
,SUM(ISNULL(mb.[3G],0))
|
||||
,SUM(ISNULL(mb.[4E],0))
|
||||
,SUM(ISNULL(mb.[4G],0))
|
||||
,SUM(ISNULL(mb.[5E],0))
|
||||
,SUM(ISNULL(mb.[5G],0))
|
||||
,SUM(ISNULL(mb.[6E],0))
|
||||
,SUM(ISNULL(mb.[6G],0))
|
||||
,SUM(ISNULL(mb.FelevE,0))
|
||||
,SUM(ISNULL(mb.FelevG,0))
|
||||
,SUM(ISNULL(mb.OsszesenE,0))
|
||||
,SUM(ISNULL(mb.OsszesenG,0))
|
||||
,1 Rendez
|
||||
FROM #MulasztasokTemp mb
|
||||
GROUP BY mb.TanuloId,mb.TanuloCsoportId
|
||||
--Összesített mulasztás (end)
|
||||
|
||||
-- beszurni a veglegestablaba a temp-bol
|
||||
INSERT INTO #MulasztasVegleges (TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez)
|
||||
SELECT TanuloId, TanuloCsoportId, Tipus, [9E],[9G],[10E],[10G],[11E],[11G],[12E],[12G],[1E],[1G],
|
||||
[2E],[2G],[3E],[3G],[4E],[4G],[5E],[5G],[6E],[6G], FelevE, FelevG, OsszesenE, OsszesenG, Rendez
|
||||
FROM #MulasztasokTemp
|
||||
|
||||
SELECT
|
||||
Tanuloid
|
||||
,TanuloCsoportId
|
||||
,Tipus
|
||||
,ISNULL([9E], 0) [9E], ISNULL([9G], 0) [9G]
|
||||
,ISNULL([10E], 0)[10E], ISNULL([10G], 0)[10G]
|
||||
,ISNULL([11E], 0)[11E], ISNULL([11G], 0)[11G]
|
||||
,ISNULL([12E], 0)[12E], ISNULL([12G], 0)[12G]
|
||||
,ISNULL([1E], 0) [1E], ISNULL([1G], 0) [1G]
|
||||
,ISNULL([2E], 0) [2E], ISNULL([2G], 0) [2G]
|
||||
,ISNULL([3E], 0) [3E], ISNULL([3G], 0) [3G]
|
||||
,ISNULL([4E], 0) [4E], ISNULL([4G], 0) [4G]
|
||||
,ISNULL([5E], 0) [5E], ISNULL([5G], 0) [5G]
|
||||
,ISNULL([6E], 0) [6E], ISNULL([6G], 0) [6G]
|
||||
,ISNULL(FelevE, 0) FelevE
|
||||
,ISNULL(FelevG, 0) FelevG
|
||||
,ISNULL(OsszesenE, 0) OsszesenE
|
||||
,ISNULL(OsszesenG, 0) OsszesenG
|
||||
,ISNULL([9E], 0) + ISNULL([9G], 0) [9Ossz]
|
||||
,ISNULL([10E], 0) + ISNULL([10G], 0)[10Ossz]
|
||||
,ISNULL([11E], 0) + ISNULL([11G], 0)[11Ossz]
|
||||
,ISNULL([12E], 0) + ISNULL([12G], 0)[12Ossz]
|
||||
,ISNULL([1E], 0) + ISNULL([1G], 0) [1Ossz]
|
||||
,ISNULL([2E], 0) + ISNULL([2G], 0) [2Ossz]
|
||||
,ISNULL([3E], 0) + ISNULL([3G], 0) [3Ossz]
|
||||
,ISNULL([4E], 0) + ISNULL([4G], 0) [4Ossz]
|
||||
,ISNULL([5E], 0) + ISNULL([5G], 0) [5Ossz]
|
||||
,ISNULL([6E], 0) + ISNULL([6G], 0) [6Ossz]
|
||||
,ISNULL(FelevE, 0) + ISNULL(FelevG, 0) FelevOssz
|
||||
,ISNULL(OsszesenE, 0) + ISNULL(OsszesenG, 0) OsszesenOssz
|
||||
FROM #MulasztasVegleges
|
||||
ORDER BY Rendez
|
||||
END
|
Loading…
Add table
Add a link
Reference in a new issue