init
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
DROP PROCEDURE IF EXISTS sp_FollowUpTanuloFelmentes
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_FollowUpTanuloFelmentes
|
||||
@intezmenyId int,
|
||||
@aktTanevId int,
|
||||
@kovTanevId int,
|
||||
@felmentesId int
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE @kovFelmentesId int = (SELECT ID FROM T_TANULOMENTESSEG_OSSZES WHERE ELOZOTANEVIREKORDID=@felmentesId AND TOROLT='F')
|
||||
DECLARE @elsoNap datetime = (select C_KEZDONAP from T_TANEV_OSSZES WHERE ID = @kovTanevId)
|
||||
|
||||
IF (SELECT TOROLT FROM T_TANULOMENTESSEG_OSSZES WHERE ID = @felmentesId)='T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF @kovFelmentesId IS NULL
|
||||
BEGIN
|
||||
INSERT INTO T_TANULOMENTESSEG_OSSZES (
|
||||
C_ERTEKELESMENTESITES
|
||||
,C_KEZDETE
|
||||
,C_MENTESSEGOKA
|
||||
,C_ORAMENTESITES
|
||||
,C_VEGE
|
||||
,C_SZOVEGESENERTEKELHETO
|
||||
,C_TANTARGYID
|
||||
,C_TANULOID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,SERIAL
|
||||
,LASTCHANGED
|
||||
,CREATED
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,ELOZOTANEVIREKORDID
|
||||
) SELECT
|
||||
C_ERTEKELESMENTESITES
|
||||
,C_KEZDETE
|
||||
,C_MENTESSEGOKA
|
||||
,C_ORAMENTESITES
|
||||
,C_VEGE
|
||||
,C_SZOVEGESENERTEKELHETO
|
||||
,tgy.ID
|
||||
,tKov.ID
|
||||
,tm.C_INTEZMENYID
|
||||
,@kovTanevId
|
||||
,0
|
||||
,tm.LASTCHANGED
|
||||
,tm.LASTCHANGED
|
||||
,tm.MODIFIER
|
||||
,tm.MODIFIER
|
||||
,tm.ID
|
||||
FROM T_TANULOMENTESSEG_OSSZES tm
|
||||
INNER JOIN T_FELHASZNALO_OSSZES t ON t.ID = tm.C_TANULOID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES tKov ON tKov.C_OKTATASIAZONOSITO = t.C_OKTATASIAZONOSITO AND tKov.C_TANEVID = @kovTanevId AND tKov.TOROLT='F'
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ELOZOTANEVIREKORDID=tm.C_TANTARGYID AND tgy.TOROLT='F'
|
||||
WHERE tm.ID=@felmentesId AND ISNULL(tm.C_VEGE,'2200-01-01')>@elsoNap
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
IF (SELECT C_VEGE FROM T_TANULOMENTESSEG_OSSZES WHERE ID = @felmentesId)<=@elsoNap
|
||||
UPDATE T_TANULOMENTESSEG_OSSZES SET
|
||||
TOROLT='T'
|
||||
WHERE ELOZOTANEVIREKORDID=@felmentesId AND TOROLT='F'
|
||||
ELSE
|
||||
BEGIN
|
||||
UPDATE kovetkezo SET
|
||||
C_ERTEKELESMENTESITES = regi.C_ERTEKELESMENTESITES
|
||||
,C_KEZDETE = regi.C_KEZDETE
|
||||
,C_MENTESSEGOKA = regi.C_MENTESSEGOKA
|
||||
,C_ORAMENTESITES = regi.C_ORAMENTESITES
|
||||
,C_VEGE = regi.C_VEGE
|
||||
,C_SZOVEGESENERTEKELHETO = regi.C_SZOVEGESENERTEKELHETO
|
||||
,C_TANTARGYID = tgy.ID
|
||||
,SERIAL += 1
|
||||
,LASTCHANGED = regi.LASTCHANGED
|
||||
,MODIFIER = regi.MODIFIER
|
||||
FROM T_TANULOMENTESSEG_OSSZES kovetkezo
|
||||
INNER JOIN T_TANULOMENTESSEG_OSSZES regi ON regi.ID=kovetkezo.ELOZOTANEVIREKORDID AND regi.TOROLT='F' AND regi.ID=@felmentesId
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ELOZOTANEVIREKORDID=regi.C_TANTARGYID AND tgy.TOROLT='F'
|
||||
END
|
||||
END
|
||||
END
|
||||
GO
|
@@ -0,0 +1,262 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP PROCEDURE IF EXISTS sp_GetDokumentumTanuloOrarend
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_GetDokumentumTanuloOrarend
|
||||
@tanevId INT,
|
||||
@tanuloId INT,
|
||||
@aktivTanevId INT,
|
||||
@isEgyebFoglalkozasok BIT,
|
||||
@orarendErvenyessegiDatum DATE,
|
||||
@feladatKategoriaId INT = NULL
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @UtolsoNap DATE = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1395 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
,@ElsoNap DATE = (SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @tanevId AND TOROLT = 'F')
|
||||
,@VizsgaltNap DATE
|
||||
,@tanuloNev NVARCHAR(MAX) = (SELECT C_NYOMTATASINEV FROM T_FELHASZNALO_OSSZES WHERE ID = @tanuloId)
|
||||
|
||||
IF (@tanevId = @aktivTanevId AND @orarendErvenyessegiDatum <= @UtolsoNap)
|
||||
BEGIN
|
||||
IF (@orarendErvenyessegiDatum <= @ElsoNap)
|
||||
BEGIN
|
||||
SET @VizsgaltNap = (SELECT TOP 1 C_HETKEZDONAPJA FROM T_NAPTARIHET_OSSZES WHERE C_HETSORSZAMA = 1 AND TOROLT = 'F' AND C_TANEVID = @tanevId)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @VizsgaltNap = CONVERT(DATE, @orarendErvenyessegiDatum)
|
||||
END
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @VizsgaltNap = @UtolsoNap
|
||||
END
|
||||
|
||||
SELECT
|
||||
C_ORASZAM OraSzam
|
||||
,CONVERT(VARCHAR(5), C_KEZDETE, 108) Kezdete
|
||||
,CONVERT(VARCHAR(5), C_VEGE, 108) Vege
|
||||
INTO #CsengetesiRendAdatok
|
||||
FROM T_CSENGETESIRENDORA_OSSZES CsengetesiRendOra
|
||||
INNER JOIN T_CSENGETESIREND_OSSZES CsengetesiRend ON CsengetesiRend.Id = CsengetesiRendOra.C_CSENGETESIRENDID
|
||||
WHERE
|
||||
CsengetesiRendOra.C_TANEVID = @tanevId
|
||||
AND CsengetesiRendOra.TOROLT = 'F'
|
||||
AND CsengetesiRend.TOROLT = 'F'
|
||||
AND CsengetesiRend.C_AKTIV = 'T'
|
||||
|
||||
DECLARE @MinCsengetesiRendOraKezdet NVARCHAR(10) = (SELECT MIN(Kezdete) FROM #CsengetesiRendAdatok)
|
||||
DECLARE @MinCsengetesiRendOraszam INT = (SELECT MIN(OraSzam) FROM #CsengetesiRendAdatok)
|
||||
|
||||
SELECT
|
||||
OrarendiOra.C_HETIREND HetirendId
|
||||
,OrarendiOra.C_HETNAPJA HetnapjaId
|
||||
,CsengetesiRendOra.C_ORASZAM OraSzam
|
||||
,CONVERT(VARCHAR(5), OrarendiOra.C_ORAKEZDETE, 108) Kezdete
|
||||
,CONVERT(VARCHAR(5), OrarendiOra.C_ORAVEGE, 108) Vege
|
||||
,ISNULL(Tantargy.C_ROVIDNEV, Tantargy.C_NEV) TantargyNev
|
||||
,Pedagogus.C_NYOMTATASINEV PedagogusNev
|
||||
,Terem.C_NEV TeremNev
|
||||
,ocs.C_NEV OsztalyCsoportNev
|
||||
INTO #OrarendiOrak
|
||||
FROM T_ORARENDIORA_OSSZES OrarendiOra
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON
|
||||
TanuloCsoport.C_TANULOID = @tanuloId
|
||||
AND TanuloCsoport.C_OSZTALYCSOPORTID = OrarendiOra.C_OSZTALYCSOPORTID
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
AND @VizsgaltNap BETWEEN C_BELEPESDATUM AND ISNULL(C_KILEPESDATUM, @UtolsoNap)
|
||||
INNER JOIN T_TANTARGY_OSSZES Tantargy ON Tantargy.Id = OrarendiOra.C_TANTARGYID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES Pedagogus ON Pedagogus.Id = OrarendiOra.C_TANARID
|
||||
INNER JOIN T_TEREM_OSSZES Terem ON Terem.Id = OrarendiOra.C_TEREMID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = OrarendiOra.C_OSZTALYCSOPORTID AND (ocs.C_FELADATKATEGORIAID = @feladatKategoriaId OR @feladatKategoriaId IS NULL)
|
||||
LEFT JOIN T_CSENGETESIRENDORA_OSSZES CsengetesiRendOra ON CsengetesiRendOra.Id = OrarendiOra.C_CSENGETESIRENDORAID
|
||||
LEFT JOIN T_CSOPORT_OSSZES Csoport ON Csoport.Id = OrarendiOra.C_OSZTALYCSOPORTID
|
||||
WHERE
|
||||
OrarendiOra.Torolt = 'F'
|
||||
AND @VizsgaltNap BETWEEN OrarendiOra.C_ORAERVENYESSEGKEZDETE AND OrarendiOra.C_ORAERVENYESSEGVEGE
|
||||
AND (@isEgyebFoglalkozasok = 1 OR (Csoport.C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@tanevId)) OR Csoport.C_TIPUSA IS NULL))
|
||||
SELECT
|
||||
OraSzam
|
||||
,HetirendId
|
||||
,HetnapjaId
|
||||
,OsztalyCsoportNev
|
||||
,PedagogusNev
|
||||
,TantargyNev
|
||||
,TeremNev
|
||||
,Kezdete
|
||||
,Vege
|
||||
INTO #OrarendTEMP
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
MAX(CsengetesiRendAdatok.OraSzam) OraSzam
|
||||
,OrarendiOrak.HetirendId HetirendId
|
||||
,OrarendiOrak.HetnapjaId HetnapjaId
|
||||
,OrarendiOrak.OsztalyCsoportNev OsztalyCsoportNev
|
||||
,OrarendiOrak.PedagogusNev PedagogusNev
|
||||
,OrarendiOrak.TantargyNev TantargyNev
|
||||
,OrarendiOrak.TeremNev TeremNev
|
||||
,OrarendiOrak.Kezdete Kezdete
|
||||
,OrarendiOrak.Vege Vege
|
||||
FROM #CsengetesiRendAdatok CsengetesiRendAdatok
|
||||
LEFT JOIN #OrarendiOrak OrarendiOrak ON OrarendiOrak.Kezdete >= CsengetesiRendAdatok.Kezdete
|
||||
WHERE
|
||||
OrarendiOrak.OraSzam IS NULL
|
||||
GROUP BY
|
||||
OrarendiOrak.HetirendId
|
||||
,OrarendiOrak.HetnapjaId
|
||||
,OrarendiOrak.OsztalyCsoportNev
|
||||
,OrarendiOrak.PedagogusNev
|
||||
,OrarendiOrak.TantargyNev
|
||||
,OrarendiOrak.TeremNev
|
||||
,OrarendiOrak.Kezdete
|
||||
,OrarendiOrak.Vege
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
MAX(CsengetesiRendAdatok.OraSzam) OraSzam
|
||||
,OrarendiOrak.HetirendId HetirendId
|
||||
,OrarendiOrak.HetnapjaId HetnapjaId
|
||||
,OrarendiOrak.OsztalyCsoportNev OsztalyCsoportNev
|
||||
,OrarendiOrak.PedagogusNev PedagogusNev
|
||||
,OrarendiOrak.TantargyNev TantargyNev
|
||||
,OrarendiOrak.TeremNev TeremNev
|
||||
,OrarendiOrak.Kezdete Kezdete
|
||||
,OrarendiOrak.Vege Vege
|
||||
FROM #CsengetesiRendAdatok CsengetesiRendAdatok
|
||||
LEFT JOIN #OrarendiOrak OrarendiOrak ON OrarendiOrak.OraSzam = CsengetesiRendAdatok.OraSzam
|
||||
WHERE
|
||||
OrarendiOrak.OraSzam IS NOT NULL
|
||||
GROUP BY
|
||||
OrarendiOrak.HetirendId
|
||||
,OrarendiOrak.HetnapjaId
|
||||
,OrarendiOrak.OsztalyCsoportNev
|
||||
,OrarendiOrak.PedagogusNev
|
||||
,OrarendiOrak.TantargyNev
|
||||
,OrarendiOrak.TeremNev
|
||||
,OrarendiOrak.Kezdete
|
||||
,OrarendiOrak.Vege
|
||||
)OrarendioraOraszammal
|
||||
|
||||
INSERT INTO #OrarendTEMP
|
||||
SELECT
|
||||
@MinCsengetesiRendOraszam
|
||||
,OrarendiOrak.HetirendId HetirendId
|
||||
,OrarendiOrak.HetnapjaId HetnapjaId
|
||||
,OrarendiOrak.OsztalyCsoportNev OsztalyCsoportNev
|
||||
,OrarendiOrak.PedagogusNev PedagogusNev
|
||||
,OrarendiOrak.TantargyNev TantargyNev
|
||||
,OrarendiOrak.TeremNev TeremNev
|
||||
,OrarendiOrak.Kezdete Kezdete
|
||||
,OrarendiOrak.Vege Vege
|
||||
FROM #orarendiorak OrarendiOrak
|
||||
WHERE
|
||||
Kezdete < @MinCsengetesiRendOraKezdet
|
||||
|
||||
SELECT
|
||||
Orarend.OraSzam
|
||||
,HetirendId
|
||||
,HetnapjaId
|
||||
,OsztalyCsoportNev
|
||||
,PedagogusNev
|
||||
,TantargyNev
|
||||
,TeremNev
|
||||
,IIF(Orarend.Kezdete != CsengetesiRendAdatok.Kezdete OR Orarend.Vege != CsengetesiRendAdatok.Vege, Orarend.Kezdete + ' - ' + Orarend.Vege, '') KezdesVegeIdopont
|
||||
INTO #Orarend
|
||||
FROM #OrarendTEMP Orarend
|
||||
INNER JOIN #CsengetesiRendAdatok CsengetesiRendAdatok on CsengetesiRendAdatok.Oraszam = Orarend.OraSzam
|
||||
|
||||
DECLARE @Hetirendek TABLE (Id INT)
|
||||
DECLARE @HetirendCount INT = (SELECT COUNT(DISTINCT oo.C_HETIREND) FROM T_ORARENDIORA_OSSZES oo WHERE oo.TOROLT='F' AND oo.C_TANEVID=@tanevId)
|
||||
|
||||
IF (@HetirendCount=1)
|
||||
BEGIN
|
||||
INSERT INTO @Hetirendek
|
||||
SELECT DISTINCT oo.c_hetirend FROM T_ORARENDIORA_OSSZES oo WHERE oo.TOROLT='F' AND oo.C_TANEVID = @tanevId
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @Hetirendek
|
||||
SELECT DISTINCT oo.C_HETIREND from T_ORARENDIORA_OSSZES oo WHERE oo.TOROLT='F' AND oo.C_TANEVID=@tanevId AND oo.C_HETIREND <> 1554
|
||||
END
|
||||
|
||||
DECLARE @Orakezdetek TABLE (Ora INT)
|
||||
INSERT INTO @orakezdetek
|
||||
SELECT DISTINCT OraSzam from #CsengetesiRendAdatok
|
||||
|
||||
DECLARE @OsszesOra TABLE (Hetirend INT, Nap INT, Oraszam nvarchar(20))
|
||||
INSERT INTO @OsszesOra
|
||||
SELECT DISTINCT oo.Id, Nap , OraSzam FROM @Hetirendek oo
|
||||
CROSS JOIN (SELECT Ora FROM @Orakezdetek) OraSzam (OraSzam)
|
||||
CROSS JOIN (VALUES (1408),(1409),(1410),(1411),(1412), (1413)) Nap (Nap)
|
||||
|
||||
DECLARE @TenylegesOra TABLE (Hetirend INT, Nap INT, OraSzam NVARCHAR(20), Foglalkozas NVARCHAR(MAX))
|
||||
DECLARE @Orarend TABLE (TanuloId INT, Ora int, Hetirend INT, Nap INT, Foglalkozas NVARCHAR(MAX))
|
||||
|
||||
DECLARE kur CURSOR FOR
|
||||
SELECT Id FROM @Hetirendek
|
||||
|
||||
DECLARE @HetirendId int
|
||||
|
||||
OPEN kur
|
||||
FETCH NEXT FROM kur INTO @HetirendId
|
||||
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
INSERT INTO @TenylegesOra
|
||||
SELECT DISTINCT
|
||||
@HetirendId
|
||||
,veg.HetnapjaId
|
||||
,veg.Oraszam
|
||||
,STUFF((SELECT DISTINCT
|
||||
CAST('<b>' + bveg.TantargyNev + '</b>' + CHAR(13) + CHAR(10)
|
||||
+ IIF(LEN(KezdesVegeIdopont) > 0, ' (' + KezdesVegeIdopont +')' + CHAR(13) + CHAR(10), '')
|
||||
+ bveg.OsztalyCsoportNev + CHAR(13) + CHAR(10)
|
||||
+ bveg.PedagogusNev + CHAR(13) + CHAR(10)
|
||||
+ bveg.TeremNev + CHAR(13) + CHAR(10) AS VARCHAR(max))
|
||||
FROM #Orarend bveg
|
||||
WHERE bveg.HetnapjaId = veg.HetnapjaId
|
||||
AND bveg.Oraszam = veg.Oraszam
|
||||
AND (bveg.HetirendId = @HetirendId OR bveg.HetirendId = 1554)
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Foglalkozasok
|
||||
FROM #Orarend veg
|
||||
FETCH NEXT FROM kur INTO @HetirendId
|
||||
END
|
||||
CLOSE kur
|
||||
DEALLOCATE kur
|
||||
|
||||
/*V<EFBFBD>gleges <20>rarend*/
|
||||
INSERT INTO @Orarend
|
||||
SELECT @tanuloId
|
||||
, OsszesOra.Oraszam
|
||||
, OsszesOra.Hetirend
|
||||
, OsszesOra.Nap
|
||||
, TenylegesOra.Foglalkozas
|
||||
FROM @OsszesOra OsszesOra
|
||||
LEFT JOIN @TenylegesOra TenylegesOra ON OsszesOra.Hetirend = TenylegesOra.Hetirend AND OsszesOra.Nap = TenylegesOra.Nap AND OsszesOra.Oraszam = TenylegesOra.Oraszam
|
||||
ORDER BY OsszesOra.Hetirend, OsszesOra.Nap, OsszesOra.Oraszam
|
||||
|
||||
SELECT
|
||||
pv.*
|
||||
, dic.C_NAME HETIREND_DNAME
|
||||
,@tanuloNev TanuloNev
|
||||
FROM @Orarend
|
||||
PIVOT (MAX(Foglalkozas) FOR Nap IN ([1408],[1409],[1410],[1411],[1412],[1413]))pv
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dic ON dic.id=Hetirend AND dic.C_TANEVID = @tanevId
|
||||
INNER JOIN @Orakezdetek ok ON ok.Ora = pv.Ora
|
||||
ORDER BY Ora
|
||||
END
|
||||
|
||||
DROP TABLE #CsengetesiRendAdatok
|
||||
DROP TABLE #Orarend
|
||||
DROP TABLE #OrarendiOrak
|
||||
GO
|
@@ -0,0 +1,266 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('sp_GetOrarendOsztalyonkent') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_GetOrarendOsztalyonkent
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_GetOrarendOsztalyonkent
|
||||
@intezmenyId INT,
|
||||
@tanevId INT,
|
||||
@osztalyId INT,
|
||||
@aktivTanevId INT,
|
||||
@isEgyebFoglalkozasok BIT,
|
||||
@orarendErvenyessegiDatum DATE
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @UtolsoNap DATE = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1395 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
,@ElsoNap DATE = (SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @tanevId AND TOROLT = 'F')
|
||||
,@VizsgaltNap DATE
|
||||
,@isVegzos VARCHAR(1) = (SELECT TOP 1 C_VEGZOSEVFOLYAM FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyId)
|
||||
,@VegzosUtolsoNap DATE = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_TANEVID = @tanevId AND C_NAPTIPUSA = 1402 AND TOROLT = 'F')
|
||||
,@osztalyNev NVARCHAR(MAX) = (SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyId)
|
||||
|
||||
SET @UtolsoNap = (SELECT IIF(@isVegzos = 'T', @VegzosUtolsoNap, @UtolsoNap))
|
||||
|
||||
IF (@tanevId = @aktivTanevId AND @orarendErvenyessegiDatum <= @UtolsoNap)
|
||||
BEGIN
|
||||
IF (@orarendErvenyessegiDatum <= @ElsoNap)
|
||||
BEGIN
|
||||
SET @VizsgaltNap = (SELECT TOP 1 C_HETKEZDONAPJA FROM T_NAPTARIHET_OSSZES WHERE C_HETSORSZAMA = 1 AND TOROLT = 'F' AND C_TANEVID = @tanevId)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @VizsgaltNap = CONVERT(DATE, @orarendErvenyessegiDatum)
|
||||
END
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @VizsgaltNap = @UtolsoNap
|
||||
END
|
||||
|
||||
SELECT
|
||||
C_ORASZAM OraSzam
|
||||
,CONVERT(VARCHAR(5), C_KEZDETE, 108) Kezdete
|
||||
,CONVERT(VARCHAR(5), C_VEGE, 108) Vege
|
||||
INTO #CsengetesiRendAdatok
|
||||
FROM T_CSENGETESIRENDORA_OSSZES CsengetesiRendOra
|
||||
INNER JOIN T_CSENGETESIREND_OSSZES CsengetesiRend ON CsengetesiRend.Id = CsengetesiRendOra.C_CSENGETESIRENDID
|
||||
WHERE
|
||||
CsengetesiRendOra.C_TANEVID = @tanevId
|
||||
AND CsengetesiRendOra.TOROLT = 'F'
|
||||
AND CsengetesiRend.TOROLT = 'F'
|
||||
AND CsengetesiRend.C_AKTIV = 'T'
|
||||
|
||||
DECLARE @MinCsengetesiRendOraKezdet NVARCHAR(10) = (SELECT MIN(Kezdete) FROM #CsengetesiRendAdatok)
|
||||
DECLARE @MinCsengetesiRendOraszam INT = (SELECT MIN(OraSzam) FROM #CsengetesiRendAdatok)
|
||||
|
||||
SELECT
|
||||
OrarendiOra.C_HETIREND HetirendId
|
||||
,OrarendiOra.C_HETNAPJA HetnapjaId
|
||||
,CsengetesiRendOra.C_ORASZAM OraSzam
|
||||
,CONVERT(VARCHAR(5), OrarendiOra.C_ORAKEZDETE, 108) Kezdete
|
||||
,CONVERT(VARCHAR(5), OrarendiOra.C_ORAVEGE, 108) Vege
|
||||
,ISNULL(Tantargy.C_NEVNYOMTATVANYBAN, Tantargy.C_NEV) TantargyNev
|
||||
,Pedagogus.C_NYOMTATASINEV PedagogusNev
|
||||
,Terem.C_NEV TeremNev
|
||||
,ocs.C_NEV OsztalyCsoportNev
|
||||
INTO #OrarendiOrak
|
||||
FROM T_ORARENDIORA_OSSZES OrarendiOra
|
||||
INNER JOIN fnGetKapcsolodoOsztalycsoportokByDate(@osztalyId, @VizsgaltNap, @VizsgaltNap) Kapcsolodo ON Kapcsolodo.Id = OrarendiOra.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES Tantargy ON Tantargy.Id = OrarendiOra.C_TANTARGYID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES Pedagogus ON Pedagogus.Id = OrarendiOra.C_TANARID
|
||||
INNER JOIN T_TEREM_OSSZES Terem ON Terem.Id = OrarendiOra.C_TEREMID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = OrarendiOra.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_CSENGETESIRENDORA_OSSZES CsengetesiRendOra ON CsengetesiRendOra.Id = OrarendiOra.C_CSENGETESIRENDORAID
|
||||
LEFT JOIN T_CSOPORT_OSSZES Csoport ON Csoport.Id = Kapcsolodo.Id
|
||||
WHERE
|
||||
OrarendiOra.Torolt = 'F'
|
||||
AND @VizsgaltNap BETWEEN OrarendiOra.C_ORAERVENYESSEGKEZDETE AND OrarendiOra.C_ORAERVENYESSEGVEGE
|
||||
AND (@isEgyebFoglalkozasok = 1 OR (Csoport.C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@tanevId)) OR Csoport.C_TIPUSA IS NULL))
|
||||
|
||||
SELECT
|
||||
OraSzam
|
||||
,HetirendId
|
||||
,HetnapjaId
|
||||
,OsztalyCsoportNev
|
||||
,PedagogusNev
|
||||
,TantargyNev
|
||||
,TeremNev
|
||||
,Kezdete
|
||||
,Vege
|
||||
INTO #OrarendTEMP
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
MAX(CsengetesiRendAdatok.OraSzam) OraSzam
|
||||
,OrarendiOrak.HetirendId HetirendId
|
||||
,OrarendiOrak.HetnapjaId HetnapjaId
|
||||
,OrarendiOrak.OsztalyCsoportNev OsztalyCsoportNev
|
||||
,OrarendiOrak.PedagogusNev PedagogusNev
|
||||
,OrarendiOrak.TantargyNev TantargyNev
|
||||
,OrarendiOrak.TeremNev TeremNev
|
||||
,OrarendiOrak.Kezdete Kezdete
|
||||
,OrarendiOrak.Vege Vege
|
||||
FROM #CsengetesiRendAdatok CsengetesiRendAdatok
|
||||
LEFT JOIN #OrarendiOrak OrarendiOrak ON OrarendiOrak.Kezdete >= CsengetesiRendAdatok.Kezdete
|
||||
WHERE
|
||||
OrarendiOrak.OraSzam IS NULL
|
||||
GROUP BY
|
||||
OrarendiOrak.HetirendId
|
||||
,OrarendiOrak.HetnapjaId
|
||||
,OrarendiOrak.OsztalyCsoportNev
|
||||
,OrarendiOrak.PedagogusNev
|
||||
,OrarendiOrak.TantargyNev
|
||||
,OrarendiOrak.TeremNev
|
||||
,OrarendiOrak.Kezdete
|
||||
,OrarendiOrak.Vege
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
MAX(CsengetesiRendAdatok.OraSzam) OraSzam
|
||||
,OrarendiOrak.HetirendId HetirendId
|
||||
,OrarendiOrak.HetnapjaId HetnapjaId
|
||||
,OrarendiOrak.OsztalyCsoportNev OsztalyCsoportNev
|
||||
,OrarendiOrak.PedagogusNev PedagogusNev
|
||||
,OrarendiOrak.TantargyNev TantargyNev
|
||||
,OrarendiOrak.TeremNev TeremNev
|
||||
,OrarendiOrak.Kezdete Kezdete
|
||||
,OrarendiOrak.Vege Vege
|
||||
FROM #CsengetesiRendAdatok CsengetesiRendAdatok
|
||||
LEFT JOIN #OrarendiOrak OrarendiOrak ON OrarendiOrak.OraSzam = CsengetesiRendAdatok.OraSzam
|
||||
WHERE
|
||||
OrarendiOrak.OraSzam IS NOT NULL
|
||||
GROUP BY
|
||||
OrarendiOrak.HetirendId
|
||||
,OrarendiOrak.HetnapjaId
|
||||
,OrarendiOrak.OsztalyCsoportNev
|
||||
,OrarendiOrak.PedagogusNev
|
||||
,OrarendiOrak.TantargyNev
|
||||
,OrarendiOrak.TeremNev
|
||||
,OrarendiOrak.Kezdete
|
||||
,OrarendiOrak.Vege
|
||||
)OrarendioraOraszammal
|
||||
|
||||
INSERT INTO #OrarendTEMP
|
||||
SELECT
|
||||
@MinCsengetesiRendOraszam
|
||||
,OrarendiOrak.HetirendId HetirendId
|
||||
,OrarendiOrak.HetnapjaId HetnapjaId
|
||||
,OrarendiOrak.OsztalyCsoportNev OsztalyCsoportNev
|
||||
,OrarendiOrak.PedagogusNev PedagogusNev
|
||||
,OrarendiOrak.TantargyNev TantargyNev
|
||||
,OrarendiOrak.TeremNev TeremNev
|
||||
,OrarendiOrak.Kezdete Kezdete
|
||||
,OrarendiOrak.Vege Vege
|
||||
FROM #orarendiorak OrarendiOrak
|
||||
WHERE
|
||||
Kezdete < @MinCsengetesiRendOraKezdet
|
||||
|
||||
SELECT
|
||||
Orarend.OraSzam
|
||||
,HetirendId
|
||||
,HetnapjaId
|
||||
,OsztalyCsoportNev
|
||||
,PedagogusNev
|
||||
,TantargyNev
|
||||
,TeremNev
|
||||
,IIF(Orarend.Kezdete != CsengetesiRendAdatok.Kezdete OR Orarend.Vege != CsengetesiRendAdatok.Vege, Orarend.Kezdete + ' - ' + Orarend.Vege, '') KezdesVegeIdopont
|
||||
INTO #Orarend
|
||||
FROM #OrarendTEMP Orarend
|
||||
INNER JOIN #CsengetesiRendAdatok CsengetesiRendAdatok on CsengetesiRendAdatok.Oraszam = Orarend.OraSzam
|
||||
|
||||
DECLARE @Hetirendek TABLE (Id INT)
|
||||
DECLARE @HetirendCount INT = (SELECT COUNT(DISTINCT oo.C_HETIREND) FROM T_ORARENDIORA_OSSZES oo WHERE oo.TOROLT='F' AND oo.C_TANEVID=@tanevId)
|
||||
|
||||
IF (@HetirendCount=1)
|
||||
BEGIN
|
||||
INSERT INTO @Hetirendek
|
||||
SELECT DISTINCT oo.c_hetirend FROM T_ORARENDIORA_OSSZES oo WHERE oo.TOROLT='F' AND oo.C_TANEVID = @tanevId
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @Hetirendek
|
||||
SELECT DISTINCT oo.C_HETIREND from T_ORARENDIORA_OSSZES oo WHERE oo.TOROLT='F' AND oo.C_TANEVID=@tanevId AND oo.C_HETIREND <> 1554
|
||||
END
|
||||
|
||||
DECLARE @Orakezdetek TABLE (Ora INT)
|
||||
INSERT INTO @orakezdetek
|
||||
SELECT DISTINCT OraSzam from #CsengetesiRendAdatok
|
||||
|
||||
DECLARE @OsszesOra TABLE (Hetirend INT, Nap INT, Oraszam nvarchar(20))
|
||||
INSERT INTO @OsszesOra
|
||||
SELECT DISTINCT oo.Id, Nap , OraSzam FROM @Hetirendek oo
|
||||
CROSS JOIN (SELECT Ora FROM @Orakezdetek) OraSzam (OraSzam)
|
||||
CROSS JOIN (VALUES (1408),(1409),(1410),(1411),(1412), (1413),(1414)) Nap (Nap)
|
||||
|
||||
DECLARE @TenylegesOra TABLE (Hetirend INT, Nap INT, OraSzam NVARCHAR(20), Foglalkozas NVARCHAR(MAX))
|
||||
DECLARE @Orarend TABLE (osztalyId INT, Ora int, Hetirend INT, Nap INT, Foglalkozas NVARCHAR(MAX))
|
||||
|
||||
DECLARE kur CURSOR FOR
|
||||
SELECT Id FROM @Hetirendek
|
||||
|
||||
DECLARE @HetirendId int
|
||||
|
||||
OPEN kur
|
||||
FETCH NEXT FROM kur INTO @HetirendId
|
||||
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
INSERT INTO @TenylegesOra
|
||||
SELECT DISTINCT
|
||||
@HetirendId
|
||||
,veg.HetnapjaId
|
||||
,veg.Oraszam
|
||||
,STUFF((SELECT DISTINCT
|
||||
CAST('<b>' + bveg.TantargyNev + '</b>' + CHAR(13) + CHAR(10)
|
||||
+ IIF(LEN(KezdesVegeIdopont) > 0, ' (' + KezdesVegeIdopont +')' + CHAR(13) + CHAR(10), '')
|
||||
+ IIF(bveg.OsztalyCsoportNev <> @osztalyNev, bveg.OsztalyCsoportNev + CHAR(13) + CHAR(10), '')
|
||||
+ bveg.PedagogusNev + CHAR(13) + CHAR(10)
|
||||
+ bveg.TeremNev + CHAR(13) + CHAR(10) AS VARCHAR(max))
|
||||
FROM #Orarend bveg
|
||||
WHERE bveg.HetnapjaId = veg.HetnapjaId
|
||||
AND bveg.Oraszam = veg.Oraszam
|
||||
AND (bveg.HetirendId = @HetirendId OR bveg.HetirendId = 1554)
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Foglalkozasok
|
||||
FROM #Orarend veg
|
||||
FETCH NEXT FROM kur INTO @HetirendId
|
||||
END
|
||||
CLOSE kur
|
||||
DEALLOCATE kur
|
||||
|
||||
/*Végleges órarend*/
|
||||
INSERT INTO @Orarend
|
||||
SELECT @osztalyId
|
||||
, OsszesOra.Oraszam
|
||||
, OsszesOra.Hetirend
|
||||
, OsszesOra.Nap
|
||||
, TenylegesOra.Foglalkozas
|
||||
FROM @OsszesOra OsszesOra
|
||||
LEFT JOIN @TenylegesOra TenylegesOra ON OsszesOra.Hetirend = TenylegesOra.Hetirend AND OsszesOra.Nap = TenylegesOra.Nap AND OsszesOra.Oraszam = TenylegesOra.Oraszam
|
||||
ORDER BY OsszesOra.Hetirend, OsszesOra.Nap, OsszesOra.Oraszam
|
||||
|
||||
SELECT
|
||||
pv.*
|
||||
, dic.C_NAME HETIREND_DNAME
|
||||
,@osztalyNev OsztalyNev
|
||||
FROM @Orarend
|
||||
PIVOT (MAX(Foglalkozas) FOR Nap IN ([1408],[1409],[1410],[1411],[1412],[1413],[1414]))pv
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dic ON dic.id=Hetirend AND dic.C_TANEVID = @tanevId
|
||||
INNER JOIN @Orakezdetek ok ON ok.Ora = pv.Ora
|
||||
ORDER BY Ora
|
||||
END
|
||||
|
||||
DROP TABLE #CsengetesiRendAdatok
|
||||
DROP TABLE #Orarend
|
||||
DROP TABLE #OrarendiOrak
|
||||
GO
|
@@ -0,0 +1,394 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje_honapra]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje_honapra]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje_honapra]
|
||||
@pTanevId INT,
|
||||
@pIntezmenyId INT,
|
||||
@pOsztalyId INT,
|
||||
@pHonap INT,
|
||||
@pElmeletgyakorlat BIT = 0,
|
||||
@pMulasztandoOrakszamaTeljesNaposMulasztashoz INT = 3
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE @idoszakEleje DATE = (SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId);
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, @pIntezmenyId, @pTanevId);
|
||||
DECLARE @pAtsoroltTanuloAdatok INT = 1;
|
||||
DECLARE @pMulasztasTipusIdKeses INT = 1499;
|
||||
DECLARE @pMulasztasTipusIdHianyzas INT = 1500;
|
||||
--Osztály tanulói
|
||||
CREATE TABLE #tanulo (Id INT)
|
||||
INSERT INTO #tanulo
|
||||
SELECT DISTINCT tcs.c_tanuloid AS Id
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.id = tcs.c_tanuloid
|
||||
WHERE tcs.torolt='F' AND f.torolt='F' AND tcs.c_tanevid=@pTanevId AND tcs.c_intezmenyid=@pIntezmenyId AND tcs.c_osztalycsoportid=@pOsztalyId;
|
||||
|
||||
--Igazolástípusok
|
||||
CREATE TABLE #igazolastipus (Id INT, Nev NVARCHAR(MAX), Sorrend INT);
|
||||
INSERT INTO #igazolastipus
|
||||
SELECT T_IGAZOLASTIPUS_OSSZES.ID AS Id, C_NAME AS Nev, C_ORDER AS Sorrrend
|
||||
FROM T_IGAZOLASTIPUS_OSSZES
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES ON T_IGAZOLASTIPUS_OSSZES.ID = T_DICTIONARYITEMBASE_OSSZES.ID
|
||||
WHERE T_DICTIONARYITEMBASE_OSSZES.C_INTEZMENYID = @pIntezmenyId AND T_DICTIONARYITEMBASE_OSSZES.C_TANEVID = @pTanevId AND T_IGAZOLASTIPUS_OSSZES.C_ALINTEZMENYID = @pIntezmenyId AND T_IGAZOLASTIPUS_OSSZES.C_ALTANEVID = @pTanevId
|
||||
AND T_IGAZOLASTIPUS_OSSZES.TOROLT = 'F' AND T_DICTIONARYITEMBASE_OSSZES.TOROLT = 'F'
|
||||
ORDER BY C_ORDER, C_NAME;
|
||||
|
||||
--Igazolások és típusai
|
||||
CREATE TABLE #igazolas (Tanulo INT, IgazoltE NVARCHAR(1), IgazolasTipus INT, Gyakorlati CHAR(1), HianyzasErtek FLOAT, KesettPerc FLOAT)
|
||||
INSERT INTO #igazolas
|
||||
SELECT TanuloId AS Tanulo, Igazolt AS IgazoltE, IgazolasTipusa AS IgazolasTipus, IIF(@pElmeletgyakorlat=0, 'F', Gyakorlati) AS Gyakorlati,
|
||||
SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses,CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS HianyzasErtek, KesesPercben AS KesettPerc
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, 0, IIF(@pAtsoroltTanuloAdatok > 0, 1, 0), @idoszakEleje, GETDATE(), DEFAULT) AS MULASZTASOK
|
||||
WHERE (CAST(MONTH(Datum) AS VARCHAR)) = @pHonap AND Tipusa IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
GROUP BY IIF(@pElmeletgyakorlat=0, 'F', Gyakorlati), TanuloId, Igazolt, IgazolasTipusa, KesesPercben;
|
||||
|
||||
--Mulasztások
|
||||
CREATE TABLE #mulasztas (Nap NVARCHAR(5), Tanulo INT, Osztaly INT, HianyzasErtek FLOAT)
|
||||
INSERT INTO #mulasztas
|
||||
SELECT CAST(CAST(DAY(Datum) AS INT) AS NVARCHAR) + (IIF(@pElmeletgyakorlat=0, '', IIF(Gyakorlati = 'T', '_GY', '_E'))) AS Nap, TanuloId AS Tanulo, OsztalyCsoportId AS Osztaly,
|
||||
SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses, CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS HianyzasErtek
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, 0, IIF(@pAtsoroltTanuloAdatok > 0, 1, 0), @idoszakEleje, GETDATE(), DEFAULT) AS MULASZTASOK
|
||||
WHERE (CAST(MONTH(Datum) AS VARCHAR)) = @pHonap AND Tipusa IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
GROUP BY CAST(DAY(Datum) AS INT), Gyakorlati, TanuloId, OsztalyCsoportId;
|
||||
|
||||
--Teljes napos mulasztások száma
|
||||
CREATE TABLE #teljesnaposmul (Tanulo INT, HianyzasErtek INT)
|
||||
INSERT INTO #teljesnaposmul
|
||||
SELECT Tanulo, SUM(TeljesNapiMul) AS HianyzasErtek
|
||||
FROM (
|
||||
SELECT Tanulo, Nap, IIF(SUM(HianyzasErtek) >= @pMulasztandoOrakszamaTeljesNaposMulasztashoz, 1, 0) AS TeljesNapiMul
|
||||
FROM #mulasztas
|
||||
GROUP BY Tanulo, Nap
|
||||
) AS TeljesNapiMulasztasok
|
||||
GROUP BY Tanulo
|
||||
DECLARE @query AS NVARCHAR(MAX);
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
DECLARE @colsHeader AS NVARCHAR(MAX);
|
||||
DECLARE @cols AS NVARCHAR(MAX);
|
||||
DECLARE @colsSum AS NVARCHAR(MAX);
|
||||
SELECT @colsHeader = ISNULL(@colsHeader + ', ', '') + QUOTENAME(Id) + ' AS ' + QUOTENAME(Nev),
|
||||
@cols = ISNULL(@cols + ', ', '') + QUOTENAME(Id),
|
||||
@colsSum = ISNULL(@colsSum + ', ', '') + 'SUM( [' + CAST(Id as nvarchar(max)) + '] ) AS ' + QUOTENAME(Id)
|
||||
FROM #igazolastipus AS Igazolastipus
|
||||
ORDER BY Sorrend, Nev;
|
||||
PRINT @cols;
|
||||
PRINT @colsSum;
|
||||
PRINT @colsHeader;
|
||||
SET @query =
|
||||
'SELECT
|
||||
f.c_nyomtatasinev AS COLUMN108,
|
||||
f.C_OKTATASIAZONOSITO AS COLUMN109,
|
||||
IIF(m.[1]=0, NULL, FLOOR(m.[1])) AS [1],
|
||||
IIF(m.[2]=0, NULL, FLOOR(m.[2])) AS [2],
|
||||
IIF(m.[3]=0, NULL, FLOOR(m.[3])) AS [3],
|
||||
IIF(m.[4]=0, NULL, FLOOR(m.[4])) AS [4],
|
||||
IIF(m.[5]=0, NULL, FLOOR(m.[5])) AS [5],
|
||||
IIF(m.[6]=0, NULL, FLOOR(m.[6])) AS [6],
|
||||
IIF(m.[7]=0, NULL, FLOOR(m.[7])) AS [7],
|
||||
IIF(m.[8]=0, NULL, FLOOR(m.[8])) AS [8],
|
||||
IIF(m.[9]=0, NULL, FLOOR(m.[9])) AS [9],
|
||||
IIF(m.[10]=0, NULL, FLOOR(m.[10])) AS [10],
|
||||
IIF(m.[11]=0, NULL, FLOOR(m.[11])) AS [11],
|
||||
IIF(m.[12]=0, NULL, FLOOR(m.[12])) AS [12],
|
||||
IIF(m.[13]=0, NULL, FLOOR(m.[13])) AS [13],
|
||||
IIF(m.[14]=0, NULL, FLOOR(m.[14])) AS [14],
|
||||
IIF(m.[15]=0, NULL, FLOOR(m.[15])) AS [15],
|
||||
IIF(m.[16]=0, NULL, FLOOR(m.[16])) AS [16],
|
||||
IIF(m.[17]=0, NULL, FLOOR(m.[17])) AS [17],
|
||||
IIF(m.[18]=0, NULL, FLOOR(m.[18])) AS [18],
|
||||
IIF(m.[19]=0, NULL, FLOOR(m.[19])) AS [19],
|
||||
IIF(m.[20]=0, NULL, FLOOR(m.[20])) AS [20],
|
||||
IIF(m.[21]=0, NULL, FLOOR(m.[21])) AS [21],
|
||||
IIF(m.[22]=0, NULL, FLOOR(m.[22])) AS [22],
|
||||
IIF(m.[23]=0, NULL, FLOOR(m.[23])) AS [23],
|
||||
IIF(m.[24]=0, NULL, FLOOR(m.[24])) AS [24],
|
||||
IIF(m.[25]=0, NULL, FLOOR(m.[25])) AS [25],
|
||||
IIF(m.[26]=0, NULL, FLOOR(m.[26])) AS [26],
|
||||
IIF(m.[27]=0, NULL, FLOOR(m.[27])) AS [27],
|
||||
IIF(m.[28]=0, NULL, FLOOR(m.[28])) AS [28],
|
||||
IIF(m.[29]=0, NULL, FLOOR(m.[29])) AS [29],
|
||||
IIF(m.[30]=0, NULL, FLOOR(m.[30])) AS [30],
|
||||
IIF(m.[31]=0, NULL, FLOOR(m.[31])) AS [31],
|
||||
FLOOR(OSSZES.MULASZTASOKSZAMA) AS COLUMN2672,
|
||||
FLOOR(IGAZOLT.IGAZOLTSZAMA) AS COLUMN2568, ' + @colsHeader + ',
|
||||
FLOOR(IGAZOLATLAN.IGAZOLATLANSZAMA) AS COLUMN1911,
|
||||
TELJESNAPOSMULASZTAS.HianyzasErtek AS COLUMNTELJESNAPOSMULASZTASOK,
|
||||
IGAZOLTKESES.IGAZOLTPERC AS COLUMNIGAZOLTKESESPERCBEN,
|
||||
IGAZOLATLANKESES.IGAZOLATLANPERC AS COLUMNIGAZOLATLANKESESPERCBEN
|
||||
FROM #tanulo AS tanulok
|
||||
LEFT JOIN (
|
||||
SELECT Tanulo, ' + @colsSum + '
|
||||
FROM #igazolas AS igazolasok
|
||||
PIVOT (SUM(HianyzasErtek) FOR IgazolasTipus IN (' + @cols + ')) AS PIVOTTABLE
|
||||
GROUP BY Tanulo
|
||||
) AS IGAZOLASTIPUSOKSZERINT ON IGAZOLASTIPUSOKSZERINT.Tanulo = tanulok.Id
|
||||
LEFT JOIN (
|
||||
SELECT Tanulo, HianyzasErtek
|
||||
FROM #teljesnaposmul AS teljesnaposmul
|
||||
) AS TELJESNAPOSMULASZTAS ON TELJESNAPOSMULASZTAS.Tanulo = tanulok.Id
|
||||
LEFT JOIN (
|
||||
SELECT Tanulo,
|
||||
SUM([1]) AS [1],
|
||||
SUM([2]) AS [2],
|
||||
SUM([3]) AS [3],
|
||||
SUM([4]) AS [4],
|
||||
SUM([5]) AS [5],
|
||||
SUM([6]) AS [6],
|
||||
SUM([7]) AS [7],
|
||||
SUM([8]) AS [8],
|
||||
SUM([9]) AS [9],
|
||||
SUM([10]) AS [10],
|
||||
SUM([11]) AS [11],
|
||||
SUM([12]) AS [12],
|
||||
SUM([13]) AS [13],
|
||||
SUM([14]) AS [14],
|
||||
SUM([15]) AS [15],
|
||||
SUM([16]) AS [16],
|
||||
SUM([17]) AS [17],
|
||||
SUM([18]) AS [18],
|
||||
SUM([19]) AS [19],
|
||||
SUM([20]) AS [20],
|
||||
SUM([21]) AS [21],
|
||||
SUM([22]) AS [22],
|
||||
SUM([23]) AS [23],
|
||||
SUM([24]) AS [24],
|
||||
SUM([25]) AS [25],
|
||||
SUM([26]) AS [26],
|
||||
SUM([27]) AS [27],
|
||||
SUM([28]) AS [28],
|
||||
SUM([29]) AS [29],
|
||||
SUM([30]) AS [30],
|
||||
SUM([31]) AS [31]
|
||||
FROM #mulasztas AS mulasztas
|
||||
PIVOT (SUM(mulasztas.HianyzasErtek) for Nap in ([1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [17], [18], [19], [20], [21], [22], [23], [24], [25], [26], [27], [28], [29], [30], [31])) pv
|
||||
GROUP BY Tanulo
|
||||
) m ON m.Tanulo = tanulok.id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(HianyzasErtek) AS MULASZTASOKSZAMA FROM #igazolas GROUP BY Tanulo) AS OSSZES ON OSSZES.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(HianyzasErtek) AS IGAZOLTSZAMA FROM #igazolas i WHERE i.IgazoltE=''T'' GROUP BY Tanulo) AS IGAZOLT ON IGAZOLT.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(HianyzasErtek) AS IGAZOLATLANSZAMA FROM #igazolas i WHERE i.IgazoltE=''F'' GROUP BY Tanulo) AS IGAZOLATLAN ON IGAZOLATLAN.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(KesettPerc) AS IGAZOLTPERC FROM #igazolas i WHERE i.IgazoltE=''T'' GROUP BY Tanulo) AS IGAZOLTKESES ON IGAZOLTKESES.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(KesettPerc) AS IGAZOLATLANPERC FROM #igazolas i WHERE (i.IgazoltE=''F'' OR i.IgazoltE IS NULL) GROUP BY Tanulo) AS IGAZOLATLANKESES ON IGAZOLATLANKESES.Tanulo = tanulok.Id
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.id = tanulok.Id
|
||||
--GROUP BY f.c_nyomtatasinev, tanulok.Id, f.id
|
||||
ORDER BY f.c_nyomtatasinev';
|
||||
exec sp_executesql @query;
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
DECLARE @colsHeader_E AS NVARCHAR(MAX);
|
||||
DECLARE @colsHeader_GY AS NVARCHAR(MAX);
|
||||
DECLARE @cols_E AS NVARCHAR(MAX);
|
||||
DECLARE @cols_GY AS NVARCHAR(MAX);
|
||||
DECLARE @colsSum_E AS NVARCHAR(MAX);
|
||||
DECLARE @colsSum_GY AS NVARCHAR(MAX);
|
||||
SELECT @colsHeader_E = ISNULL(@colsHeader_E + ', ', '') + QUOTENAME(Id) + ' AS ' + QUOTENAME(Nev + ' (elméleti)'),
|
||||
@colsHeader_GY = ISNULL(@colsHeader_GY + ', ', '') + QUOTENAME(-Id) + ' AS ' + QUOTENAME(Nev + ' (gyakorlati)'),
|
||||
@cols_E = ISNULL(@cols_E + ', ', '') + QUOTENAME(Id),
|
||||
@cols_GY = ISNULL(@cols_GY + ', ', '') + QUOTENAME(-Id),
|
||||
@colsSum_E = ISNULL(@colsSum_E + ', ', '') + 'SUM( [' + CAST(Id as nvarchar(max)) + '] ) AS ' + QUOTENAME(Id),
|
||||
@colsSum_GY = ISNULL(@colsSum_GY + ', ', '') + 'SUM( [' + CAST(-Id as nvarchar(max)) + '] ) AS ' + QUOTENAME(-Id)
|
||||
FROM #igazolastipus AS Igazolastipus
|
||||
ORDER BY Sorrend, Nev;
|
||||
|
||||
SET @query =
|
||||
'SELECT f.c_nyomtatasinev AS COLUMN108,
|
||||
f.C_OKTATASIAZONOSITO AS COLUMN109,
|
||||
IIF(m.[1_E]=0, NULL, FLOOR(m.[1_E])) AS [1 E],
|
||||
IIF(m.[1_GY]=0, NULL, FLOOR(m.[1_GY])) AS [1 GY],
|
||||
IIF(m.[2_E]=0, NULL, FLOOR(m.[2_E])) AS [2 E],
|
||||
IIF(m.[2_GY]=0, NULL, FLOOR(m.[2_GY])) AS [2 GY],
|
||||
IIF(m.[3_E]=0, NULL, FLOOR(m.[3_E])) AS [3 E],
|
||||
IIF(m.[3_GY]=0, NULL, FLOOR(m.[3_GY])) AS [3 GY],
|
||||
IIF(m.[4_E]=0, NULL, FLOOR(m.[4_E])) AS [4 E],
|
||||
IIF(m.[4_GY]=0, NULL, FLOOR(m.[4_GY])) AS [4 GY],
|
||||
IIF(m.[5_E]=0, NULL, FLOOR(m.[5_E])) AS [5 E],
|
||||
IIF(m.[5_GY]=0, NULL, FLOOR(m.[5_GY])) AS [5 GY],
|
||||
IIF(m.[6_E]=0, NULL, FLOOR(m.[6_E])) AS [6 E],
|
||||
IIF(m.[6_GY]=0, NULL, FLOOR(m.[6_GY])) AS [6 GY],
|
||||
IIF(m.[7_E]=0, NULL, FLOOR(m.[7_E])) AS [7 E],
|
||||
IIF(m.[7_GY]=0, NULL, FLOOR(m.[7_GY])) AS [7 GY],
|
||||
IIF(m.[8_E]=0, NULL, FLOOR(m.[8_E])) AS [8 E],
|
||||
IIF(m.[8_GY]=0, NULL, FLOOR(m.[8_GY])) AS [8 GY],
|
||||
IIF(m.[9_E]=0, NULL, FLOOR(m.[9_E])) AS [9 E],
|
||||
IIF(m.[9_GY]=0, NULL, FLOOR(m.[9_GY])) AS [9 GY],
|
||||
IIF(m.[10_E]=0, NULL, FLOOR(m.[10_E])) AS [10 E],
|
||||
IIF(m.[10_GY]=0, NULL, FLOOR(m.[10_GY])) AS [10 GY],
|
||||
IIF(m.[11_E]=0, NULL, FLOOR(m.[11_E])) AS [11 E],
|
||||
IIF(m.[11_GY]=0, NULL, FLOOR(m.[11_GY])) AS [11 GY],
|
||||
IIF(m.[12_E]=0, NULL, FLOOR(m.[12_E])) AS [12 E],
|
||||
IIF(m.[12_GY]=0, NULL, FLOOR(m.[12_GY])) AS [12 GY],
|
||||
IIF(m.[13_E]=0, NULL, FLOOR(m.[13_E])) AS [13 E],
|
||||
IIF(m.[13_GY]=0, NULL, FLOOR(m.[13_GY])) AS [13 GY],
|
||||
IIF(m.[14_E]=0, NULL, FLOOR(m.[14_E])) AS [14 E],
|
||||
IIF(m.[14_GY]=0, NULL, FLOOR(m.[14_GY])) AS [14 GY],
|
||||
IIF(m.[15_E]=0, NULL, FLOOR(m.[15_E])) AS [15 E],
|
||||
IIF(m.[15_GY]=0, NULL, FLOOR(m.[15_GY])) AS [15 GY],
|
||||
IIF(m.[16_E]=0, NULL, FLOOR(m.[16_E])) AS [16 E],
|
||||
IIF(m.[16_GY]=0, NULL, FLOOR(m.[16_GY])) AS [16 GY],
|
||||
IIF(m.[17_E]=0, NULL, FLOOR(m.[17_E])) AS [17 E],
|
||||
IIF(m.[17_GY]=0, NULL, FLOOR(m.[17_GY])) AS [17 GY],
|
||||
IIF(m.[18_E]=0, NULL, FLOOR(m.[18_E])) AS [18 E],
|
||||
IIF(m.[18_GY]=0, NULL, FLOOR(m.[18_GY])) AS [18 GY],
|
||||
IIF(m.[19_E]=0, NULL, FLOOR(m.[19_E])) AS [19 E],
|
||||
IIF(m.[19_GY]=0, NULL, FLOOR(m.[19_GY])) AS [19 GY],
|
||||
IIF(m.[20_E]=0, NULL, FLOOR(m.[20_E])) AS [20 E],
|
||||
IIF(m.[20_GY]=0, NULL, FLOOR(m.[20_GY])) AS [20 GY],
|
||||
IIF(m.[21_E]=0, NULL, FLOOR(m.[21_E])) AS [21 E],
|
||||
IIF(m.[21_GY]=0, NULL, FLOOR(m.[21_GY])) AS [21 GY],
|
||||
IIF(m.[22_E]=0, NULL, FLOOR(m.[22_E])) AS [22 E],
|
||||
IIF(m.[22_GY]=0, NULL, FLOOR(m.[22_GY])) AS [22 GY],
|
||||
IIF(m.[23_E]=0, NULL, FLOOR(m.[23_E])) AS [23 E],
|
||||
IIF(m.[23_GY]=0, NULL, FLOOR(m.[23_GY])) AS [23 GY],
|
||||
IIF(m.[24_E]=0, NULL, FLOOR(m.[24_E])) AS [24 E],
|
||||
IIF(m.[24_GY]=0, NULL, FLOOR(m.[24_GY])) AS [24 GY],
|
||||
IIF(m.[25_E]=0, NULL, FLOOR(m.[25_E])) AS [25 E],
|
||||
IIF(m.[25_GY]=0, NULL, FLOOR(m.[25_GY])) AS [25 GY],
|
||||
IIF(m.[26_E]=0, NULL, FLOOR(m.[26_E])) AS [26 E],
|
||||
IIF(m.[26_GY]=0, NULL, FLOOR(m.[26_GY])) AS [26 GY],
|
||||
IIF(m.[27_E]=0, NULL, FLOOR(m.[27_E])) AS [27 E],
|
||||
IIF(m.[27_GY]=0, NULL, FLOOR(m.[27_GY])) AS [27 GY],
|
||||
IIF(m.[28_E]=0, NULL, FLOOR(m.[28_E])) AS [28 E],
|
||||
IIF(m.[28_GY]=0, NULL, FLOOR(m.[28_GY])) AS [28 GY],
|
||||
IIF(m.[29_E]=0, NULL, FLOOR(m.[29_E])) AS [29 E],
|
||||
IIF(m.[29_GY]=0, NULL, FLOOR(m.[29_GY])) AS [29 GY],
|
||||
IIF(m.[30_E]=0, NULL, FLOOR(m.[30_E])) AS [30 E],
|
||||
IIF(m.[30_GY]=0, NULL, FLOOR(m.[30_GY])) AS [30 GY],
|
||||
IIF(m.[31_E]=0, NULL, FLOOR(m.[31_E])) AS [31 E],
|
||||
FLOOR(osszes_e.MULASZTASOKSZAMA) AS COLUMN2672_E,
|
||||
FLOOR(igazolt_e.IGAZOLTSZAMA) AS COLUMN2568_E,
|
||||
' + @colsHeader_E + ',
|
||||
FLOOR(igazolatlan_e.IGAZOLATLANSZAMA) AS COLUMN1911_E,
|
||||
FLOOR(osszes_gy.MULASZTASOKSZAMA) AS COLUMN2672_GY,
|
||||
FLOOR(igazolt_gy.IGAZOLTSZAMA) AS COLUMN2568_GY,
|
||||
' + @colsHeader_GY + ',
|
||||
FLOOR(igazolatlan_gy.IGAZOLATLANSZAMA) AS COLUMN1911_GY,
|
||||
TELJESNAPOSMULASZTAS.HianyzasErtek AS COLUMNTELJESNAPOSMULASZTASOK,
|
||||
igazoltkeses_e.IGAZOLTPERC AS COLUMNIGAZOLTKESESPERCBEN_E,
|
||||
igazoltkeses_gy.IGAZOLTPERC AS COLUMNIGAZOLTKESESPERCBEN_GY,
|
||||
igazolatlankeses_e.IGAZOLATLANPERC AS COLUMNIGAZOLATLANKESESPERCBEN_E,
|
||||
igazolatlankeses_gy.IGAZOLATLANPERC AS COLUMNIGAZOLATLANKESESPERCBEN_GY
|
||||
FROM #tanulo AS tanulok
|
||||
LEFT JOIN (
|
||||
SELECT Tanulo, ' + @colsSum_E + '
|
||||
FROM (
|
||||
SELECT *
|
||||
FROM #igazolas AS igazolasok
|
||||
WHERE Gyakorlati = ''F'' OR Gyakorlati IS NULL
|
||||
) AS igazolasok
|
||||
PIVOT (SUM(HianyzasErtek) FOR IgazolasTipus IN (' + @cols_E + ')) AS PIVOTTABLE_E
|
||||
GROUP BY Tanulo
|
||||
) AS IGAZOLASTIPUSOKSZERINT_E ON IGAZOLASTIPUSOKSZERINT_E.Tanulo = tanulok.Id
|
||||
LEFT JOIN (
|
||||
SELECT Tanulo, ' + @colsSum_Gy + '
|
||||
FROM (
|
||||
SELECT Tanulo, IgazoltE, -IgazolasTipus AS IgazolasTipus, Gyakorlati, HianyzasErtek
|
||||
FROM #igazolas AS igazolasok
|
||||
WHERE Gyakorlati = ''T''
|
||||
) AS igazolasok
|
||||
PIVOT (SUM(HianyzasErtek) FOR IgazolasTipus IN (' + @cols_GY + ')) AS PIVOTTABLE_GY
|
||||
GROUP BY Tanulo
|
||||
) AS IGAZOLASTIPUSOKSZERINT_GY ON IGAZOLASTIPUSOKSZERINT_GY.Tanulo = tanulok.Id
|
||||
LEFT JOIN (
|
||||
SELECT Tanulo, HianyzasErtek
|
||||
FROM #teljesnaposmul AS teljesnaposmul
|
||||
) AS TELJESNAPOSMULASZTAS ON TELJESNAPOSMULASZTAS.Tanulo = tanulok.Id
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
Tanulo,
|
||||
SUM([1_E]) AS [1_E],
|
||||
SUM([2_E]) AS [2_E],
|
||||
SUM([3_E]) AS [3_E],
|
||||
SUM([4_E]) AS [4_E],
|
||||
SUM([5_E]) AS [5_E],
|
||||
SUM([6_E]) AS [6_E],
|
||||
SUM([7_E]) AS [7_E],
|
||||
SUM([8_E]) AS [8_E],
|
||||
SUM([9_E]) AS [9_E],
|
||||
SUM([10_E]) AS [10_E],
|
||||
SUM([11_E]) AS [11_E],
|
||||
SUM([12_E]) AS [12_E],
|
||||
SUM([13_E]) AS [13_E],
|
||||
SUM([14_E]) AS [14_E],
|
||||
SUM([15_E]) AS [15_E],
|
||||
SUM([16_E]) AS [16_E],
|
||||
SUM([17_E]) AS [17_E],
|
||||
SUM([18_E]) AS [18_E],
|
||||
SUM([19_E]) AS [19_E],
|
||||
SUM([20_E]) AS [20_E],
|
||||
SUM([21_E]) AS [21_E],
|
||||
SUM([22_E]) AS [22_E],
|
||||
SUM([23_E]) AS [23_E],
|
||||
SUM([24_E]) AS [24_E],
|
||||
SUM([25_E]) AS [25_E],
|
||||
SUM([26_E]) AS [26_E],
|
||||
SUM([27_E]) AS [27_E],
|
||||
SUM([28_E]) AS [28_E],
|
||||
SUM([29_E]) AS [29_E],
|
||||
SUM([30_E]) AS [30_E],
|
||||
SUM([31_E]) AS [31_E],
|
||||
SUM([1_GY]) AS [1_GY],
|
||||
SUM([2_GY]) AS [2_GY],
|
||||
SUM([3_GY]) AS [3_GY],
|
||||
SUM([4_GY]) AS [4_GY],
|
||||
SUM([5_GY]) AS [5_GY],
|
||||
SUM([6_GY]) AS [6_GY],
|
||||
SUM([7_GY]) AS [7_GY],
|
||||
SUM([8_GY]) AS [8_GY],
|
||||
SUM([9_GY]) AS [9_GY],
|
||||
SUM([10_GY]) AS [10_GY],
|
||||
SUM([11_GY]) AS [11_GY],
|
||||
SUM([12_GY]) AS [12_GY],
|
||||
SUM([13_GY]) AS [13_GY],
|
||||
SUM([14_GY]) AS [14_GY],
|
||||
SUM([15_GY]) AS [15_GY],
|
||||
SUM([16_GY]) AS [16_GY],
|
||||
SUM([17_GY]) AS [17_GY],
|
||||
SUM([18_GY]) AS [18_GY],
|
||||
SUM([19_GY]) AS [19_GY],
|
||||
SUM([20_GY]) AS [20_GY],
|
||||
SUM([21_GY]) AS [21_GY],
|
||||
SUM([22_GY]) AS [22_GY],
|
||||
SUM([23_GY]) AS [23_GY],
|
||||
SUM([24_GY]) AS [24_GY], SUM([25_GY]) AS [25_GY], SUM([26_GY]) AS [26_GY], SUM([27_GY]) AS [27_GY], SUM([28_GY]) AS [28_GY], SUM([29_GY]) AS [29_GY],SUM([30_GY]) AS [30_GY], SUM([31_GY]) AS [31_GY]
|
||||
FROM #mulasztas AS m
|
||||
PIVOT (SUM(HianyzasErtek) for Nap in
|
||||
(
|
||||
[1_E],[2_E],[3_E],[4_E],[5_E],[6_E],[7_E],[8_E],[9_E],[10_E],[11_E],[12_E],[13_E],[14_E],[15_E],[16_E],[17_E],[18_E],[19_E],[20_E],[21_E],[22_E],[23_E],[24_E],[25_E],[26_E],[27_E],[28_E],[29_E],[30_E],[31_E],
|
||||
[1_GY],[2_GY],[3_GY],[4_GY],[5_GY],[6_GY],[7_GY],[8_GY],[9_GY],[10_GY],[11_GY],[12_GY],[13_GY],[14_GY],[15_GY],[16_GY],[17_GY],[18_GY],[19_GY],[20_GY],[21_GY],[22_GY],[23_GY],[24_GY],[25_GY],[26_GY],[27_GY],[28_GY],[29_GY],[30_GY],[31_GY]
|
||||
)
|
||||
) pv
|
||||
GROUP BY Tanulo
|
||||
) m ON m.Tanulo = tanulok.id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(HianyzasErtek) AS MULASZTASOKSZAMA FROM #igazolas WHERE (Gyakorlati = ''F'' OR Gyakorlati IS NULL) GROUP BY Tanulo) AS Osszes_E ON Osszes_E.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(HianyzasErtek) AS IGAZOLTSZAMA FROM #igazolas i WHERE (Gyakorlati = ''F'' OR Gyakorlati IS NULL) AND i.IgazoltE=''T'' GROUP BY Tanulo) AS Igazolt_E ON Igazolt_E.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(HianyzasErtek) AS IGAZOLATLANSZAMA FROM #igazolas i WHERE (Gyakorlati = ''F'' OR Gyakorlati IS NULL) AND i.IgazoltE=''F'' GROUP BY Tanulo) AS Igazolatlan_E ON Igazolatlan_E.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(HianyzasErtek) AS MULASZTASOKSZAMA FROM #igazolas WHERE Gyakorlati = ''T'' GROUP BY Tanulo) AS Osszes_Gy ON Osszes_Gy.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(HianyzasErtek) AS IGAZOLTSZAMA FROM #igazolas i WHERE Gyakorlati = ''T'' AND i.IgazoltE=''T'' GROUP BY Tanulo) AS Igazolt_Gy ON Igazolt_Gy.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(HianyzasErtek) AS IGAZOLATLANSZAMA FROM #igazolas i WHERE Gyakorlati = ''T'' AND i.IgazoltE=''F'' GROUP BY Tanulo) AS Igazolatlan_Gy ON Igazolatlan_Gy.Tanulo = tanulok.Id'
|
||||
SET @query +=
|
||||
' LEFT JOIN (SELECT Tanulo, SUM(KesettPerc) AS IGAZOLTPERC FROM #igazolas i WHERE (Gyakorlati = ''F'' OR Gyakorlati IS NULL) AND i.IgazoltE=''T'' GROUP BY Tanulo) AS igazoltkeses_e ON igazoltkeses_e.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(KesettPerc) AS IGAZOLTPERC FROM #igazolas i WHERE Gyakorlati = ''T'' AND i.IgazoltE=''T'' GROUP BY Tanulo) AS igazoltkeses_gy ON igazoltkeses_gy.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(KesettPerc) AS IGAZOLATLANPERC FROM #igazolas i WHERE (Gyakorlati = ''F'' OR Gyakorlati IS NULL) AND (i.IgazoltE=''F'' OR i.IgazoltE IS NULL) GROUP BY Tanulo) AS igazolatlankeses_e ON igazolatlankeses_e.Tanulo = tanulok.Id
|
||||
LEFT JOIN (SELECT Tanulo, SUM(KesettPerc) AS IGAZOLATLANPERC FROM #igazolas i WHERE Gyakorlati = ''T'' AND (i.IgazoltE=''F'' OR i.IgazoltE IS NULL) GROUP BY Tanulo) AS igazolatlankeses_gy ON igazolatlankeses_gy.Tanulo = tanulok.Id
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.id = tanulok.Id
|
||||
ORDER BY f.c_nyomtatasinev';
|
||||
exec sp_executesql @query;
|
||||
END
|
||||
DROP TABLE #mulasztas
|
||||
DROP TABLE #tanulo
|
||||
DROP TABLE #igazolas
|
||||
DROP TABLE #igazolastipus
|
||||
DROP TABLE #teljesnaposmul
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,73 @@
|
||||
DROP PROCEDURE IF EXISTS [dbo].[sp_GetTanarOrarendLefedettseg]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetTanarOrarendLefedettseg]
|
||||
@intezmenyId int,
|
||||
@tanevId int
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @AktivtanevId INT = (SELECT Id FROM T_TANEV_OSSZES tanev WHERE C_AKTIV='T' AND C_INTEZMENYID = @intezmenyId AND TOROLT = 'F')
|
||||
|
||||
DECLARE @UtolsoNap DATE = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA=1395 AND C_TANEVID=@tanevid AND TOROLT='F')
|
||||
,@ElsoNap DATE = (select C_KEZDONAP from T_TANEV_OSSZES WHERE ID = @tanevid)
|
||||
,@IdoszakKezdete DATE
|
||||
,@IdoszakVege DATE
|
||||
|
||||
IF (@tanevId = @AktivtanevId AND GETDATE() <= @UtolsoNap)
|
||||
BEGIN
|
||||
IF (GETDATE() <= @ElsoNap)
|
||||
BEGIN
|
||||
SET @IdoszakKezdete = (SELECT TOP 1 C_HETKEZDONAPJA FROM T_NAPTARIHET_OSSZES WHERE C_HETSORSZAMA = 1 AND TOROLT = 'F' AND C_TANEVID = @tanevId)
|
||||
SET @IdoszakVege = (SELECT TOP 1 C_HETUTOLSONAPJA FROM T_NAPTARIHET_OSSZES WHERE C_HETSORSZAMA = 3 AND TOROLT = 'F' AND C_TANEVID = @tanevId)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @IdoszakKezdete =(SELECT TOP 1 nh.C_HETKEZDONAPJA FROM T_NAPTARIHET_OSSZES nh WHERE CONVERT(DATE, GETDATE())>=CONVERT(DATE, NH.C_HETKEZDONAPJA) AND CONVERT(DATE, GETDATE())<=CONVERT(DATE, nh.C_HETUTOLSONAPJA) and nh.TOROLT='F' and nh.C_TANEVID=@tanevid)
|
||||
SET @IdoszakVege = DATEADD(DAY, 13, @IdoszakKezdete)
|
||||
END
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @IdoszakVege =(SELECT TOP 1 nh.C_HETUTOLSONAPJA FROM T_NAPTARIHET_OSSZES nh WHERE @UtolsoNap>=CONVERT(DATE, nh.C_HETKEZDONAPJA) AND @UtolsoNap<=CONVERT(DATE, nh.C_HETUTOLSONAPJA) AND nh.TOROLT='F' AND nh.C_TANEVID=@tanevId)
|
||||
SET @IdoszakKezdete = DATEADD(DAY, -13, @IdoszakVege)
|
||||
END
|
||||
|
||||
--Órarendi lefedettség
|
||||
CREATE TABLE #csoportok (CsoportId INT, Pedagogus NVARCHAR(MAX), CsoportTipus NVARCHAR(MAX), Oraszam float, Hetirend NVARCHAR(MAX))
|
||||
INSERT INTO #csoportok
|
||||
SELECT DISTINCT
|
||||
cs.ID
|
||||
,f.C_NYOMTATASINEV
|
||||
,d.C_NAME
|
||||
,fog.C_ORASZAM
|
||||
,Hetirend.C_NAME
|
||||
FROM T_FOGLALKOZAS_OSSZES fog
|
||||
LEFT JOIN T_CSOPORT_OSSZES cs ON cs.Id = fog.C_OSZTALYCSOPORTID AND cs.TOROLT='F' AND cs.C_ALTANEVID=@tanevId
|
||||
LEFT JOIN T_OSZTALY_OSSZES o ON o.Id = fog.C_OSZTALYCSOPORTID AND o.TOROLT='F' AND o.C_ALTANEVID=@tanevId
|
||||
INNER JOIN T_ORARENDIORA_OSSZES oo ON oo.C_FOGLALKOZASID = fog.ID
|
||||
AND C_ORAERVENYESSEGKEZDETE <= @IdoszakVege
|
||||
AND C_ORAERVENYESSEGVEGE >= @IdoszakKezdete
|
||||
AND oo.C_TANEVID=@tanevid
|
||||
AND oo.torolt='F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID=fog.C_TANARID AND f.C_INTEZMENYID=@intezmenyId AND f.C_TANEVID=@tanevid AND f.TOROLT='F'
|
||||
LEFT JOIN (SELECT DISTINCT d.ID, d.C_NAME FROM T_DICTIONARYITEMBASE_OSSZES d)d ON d.ID=cs.C_TIPUSA
|
||||
INNER JOIN (SELECT DISTINCT d.ID, d.C_NAME FROM T_DICTIONARYITEMBASE_OSSZES d) Hetirend ON Hetirend.ID=oo.C_HETIREND
|
||||
|
||||
SELECT Pedagogus COLUMN456, ISNULL(CsoportTipus, 'Osztály') COLUMN262, SUM(Oraszam) COLUMN3670 FROM #csoportok cs GROUP BY Pedagogus, CsoportTipus ORDER BY Pedagogus, ISNULL(CsoportTipus, 'Osztály')
|
||||
|
||||
DECLARE @cols AS NVARCHAR(MAX),
|
||||
@query AS NVARCHAR(MAX)
|
||||
|
||||
SELECT DISTINCT @cols= ISNULL(@cols + ',','') + QUOTENAME(Hetirend) FROM #csoportok
|
||||
|
||||
SET @query='SELECT DISTINCT Pedagogus COLUMN456, ISNULL(CsoportTipus, ''Osztály'') COLUMN262, '+@cols+' FROM #csoportok cs PIVOT (SUM(Oraszam) FOR Hetirend IN ('+@cols+')) pv ORDER BY Pedagogus, ISNULL(CsoportTipus, ''Osztály'')'
|
||||
|
||||
EXEC sp_executesql @query;
|
||||
DROP TABLE #csoportok
|
||||
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,207 @@
|
||||
IF OBJECT_ID('sp_GetTeremrend') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE sp_GetTeremrend
|
||||
END
|
||||
GO
|
||||
CREATE PROCEDURE [sp_GetTeremrend]
|
||||
@TanevId INT,
|
||||
@IntezmenyId INT,
|
||||
@aktivTanevId INT
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @OrarendiOra TABLE (Hetirend int, OraSzam int, Hetnapja int, Terem nvarchar(max), Foglalkozas nvarchar(max)) --Összes órarendi óra
|
||||
DECLARE @Hetirendek TABLE (Hetirend int) --Összes hetirend
|
||||
DECLARE @Ures TABLE (Hetirend int, OraSzam int, Hetnapja int, Terem nvarchar(max)) --Összes hetirendhez órasávok generálva
|
||||
DECLARE @Teljes TABLE (Hetirend int, OraSzam int, Hetnapja int, Terem nvarchar(max), Foglalkozas nvarchar(max)) --@Ures tábla, a létező órákkal kiegészítve
|
||||
|
||||
|
||||
DECLARE @UtolsoNap DATE = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA=1395 AND C_TANEVID=@tanevid AND TOROLT='F')
|
||||
DECLARE @ElsoNap DATE = (select C_KEZDONAP from T_TANEV_OSSZES WHERE ID = @tanevid)
|
||||
,@HetEleje DATE
|
||||
,@HetVege DATE
|
||||
|
||||
IF (@tanevId = @AktivtanevId AND GETDATE() <= @UtolsoNap)
|
||||
BEGIN
|
||||
IF (GETDATE() <= @ElsoNap)
|
||||
BEGIN
|
||||
SET @HetEleje =(SELECT TOP 1 nh.C_HETKEZDONAPJA FROM T_NAPTARIHET_OSSZES nh WHERE @ElsoNap>=CONVERT(DATE, nh.C_HETKEZDONAPJA) AND @ElsoNap<=CONVERT(DATE, nh.C_HETUTOLSONAPJA) AND nh.TOROLT='F' AND nh.C_TANEVID=@tanevId)
|
||||
SET @HetVege = (SELECT TOP 1 nh.C_HETUTOLSONAPJA FROM T_NAPTARIHET_OSSZES nh WHERE @ElsoNap>=CONVERT(DATE, nh.C_HETKEZDONAPJA) AND @ElsoNap<=CONVERT(DATE, nh.C_HETUTOLSONAPJA) AND nh.TOROLT='F' AND nh.C_TANEVID=@tanevId)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @HetEleje =(SELECT TOP 1 nh.C_HETKEZDONAPJA FROM T_NAPTARIHET_OSSZES nh WHERE CONVERT(DATE, GETDATE())>=CONVERT(DATE, NH.C_HETKEZDONAPJA) AND CONVERT(DATE, GETDATE())<=CONVERT(DATE, nh.C_HETUTOLSONAPJA) and nh.TOROLT='F' and nh.C_TANEVID=@tanevid)
|
||||
SET @HetVege = (SELECT TOP 1 nh.C_HETUTOLSONAPJA FROM T_NAPTARIHET_OSSZES nh WHERE CONVERT(DATE, GETDATE())>=CONVERT(DATE, nh.C_HETKEZDONAPJA) AND CONVERT(DATE, GETDATE())<=CONVERT(DATE, nh.C_HETUTOLSONAPJA) and nh.TOROLT='F' and nh.C_TANEVID=@tanevid)
|
||||
END
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @HetEleje =(SELECT TOP 1 nh.C_HETKEZDONAPJA FROM T_NAPTARIHET_OSSZES nh WHERE @UtolsoNap>=CONVERT(DATE, nh.C_HETKEZDONAPJA) AND @UtolsoNap<=CONVERT(DATE, nh.C_HETUTOLSONAPJA) AND nh.TOROLT='F' AND nh.C_TANEVID=@tanevId)
|
||||
SET @HetVege = (SELECT TOP 1 nh.C_HETUTOLSONAPJA FROM T_NAPTARIHET_OSSZES nh WHERE @UtolsoNap>=CONVERT(DATE, nh.C_HETKEZDONAPJA) AND @UtolsoNap<=CONVERT(DATE, nh.C_HETUTOLSONAPJA) AND nh.TOROLT='F' AND nh.C_TANEVID=@tanevId)
|
||||
END
|
||||
|
||||
-- @Hetirendek tábálába inzertálás
|
||||
INSERT INTO @Hetirendek
|
||||
SELECT DISTINCT C_HETIREND
|
||||
FROM T_ORARENDIORA_OSSZES WHERE TOROLT='F' AND C_TANEVID=@TANEVID AND C_INTEZMENYID=@IntezmenyId
|
||||
|
||||
-- @OrarendiOra tábálába inzertálás
|
||||
INSERT INTO @OrarendiOra
|
||||
SELECT C_HETIREND,
|
||||
OrarendiOra.C_ORASZAM,
|
||||
C_HETNAPJA,
|
||||
Terem.C_NEV,
|
||||
--Összefűzi a foglalkozásokat, ha teremre egyszerre több foglalkozás van felvéve egy órára
|
||||
STUFF(
|
||||
(SELECT DISTINCT ', ' + ISNULL(CAST(Foglalkozas.C_NEV AS VARCHAR(MAX)),'')
|
||||
FROM T_ORARENDIORA_OSSZES OrarendiOraFoglalkozas
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES Foglalkozas ON Foglalkozas.ID = OrarendiOraFoglalkozas.C_FOGLALKOZASID
|
||||
where OrarendiOraFoglalkozas.C_TEREMID = OrarendiOra.C_TEREMID AND
|
||||
(OrarendiOraFoglalkozas.C_HETIREND = OrarendiOra.C_HETIREND OR OrarendiOraFoglalkozas.C_HETIREND = 1554) AND
|
||||
OrarendiOraFoglalkozas.C_HETNAPJA = OrarendiOra.C_HETNAPJA AND
|
||||
OrarendiOraFoglalkozas.C_ORASZAM = OrarendiOra.c_oraszam AND
|
||||
((OrarendiOraFoglalkozas.C_ORAERVENYESSEGKEZDETE<=@HetEleje) and (OrarendiOraFoglalkozas.c_oraervenyessegvege>=@HetVege)or
|
||||
(OrarendiOraFoglalkozas.C_ORAERVENYESSEGKEZDETE>=@HetEleje) and (OrarendiOraFoglalkozas.C_ORAERVENYESSEGKEZDETE<=@HetVege)) AND
|
||||
Foglalkozas.TOROLT = 'F' AND
|
||||
Foglalkozas.C_INTEZMENYID = @IntezmenyId AND
|
||||
Foglalkozas.C_TANEVID = @TanevId AND
|
||||
OrarendiOraFoglalkozas.Torolt ='F' AND
|
||||
OrarendiOraFoglalkozas.C_TANEVID =@TanevId
|
||||
|
||||
FOR XML PATH('')),1,1,''
|
||||
) AS Foglalkozas
|
||||
FROM T_ORARENDIORA_OSSZES OrarendiOra
|
||||
INNER JOIN T_TEREM_OSSZES Terem ON Terem.ID = OrarendiOra.C_TEREMID
|
||||
WHERE OrarendiOra.C_INTEZMENYID = @IntezmenyId AND
|
||||
OrarendiOra.C_TANEVID = @TanevId AND
|
||||
OrarendiOra.TOROLT = 'F' AND
|
||||
OrarendiOra.C_TEREMID IS NOT NULL
|
||||
|
||||
|
||||
|
||||
-- @Ures tábálába inzertálás
|
||||
INSERT INTO @Ures
|
||||
SELECT HetiRend,
|
||||
OraSzam,
|
||||
Hetnapja,
|
||||
Terem
|
||||
FROM @Hetirendek
|
||||
CROSS JOIN (SELECT DISTINCT OraSzam FROM @OrarendiOra) OraSzam (OraSzam)
|
||||
CROSS JOIN (SELECT DISTINCT Terem FROM @OrarendiOra) Terem (Terem)
|
||||
CROSS JOIN (SELECT DISTINCT Hetnapja FROM @OrarendiOra) Hetnapja (Hetnapja)
|
||||
|
||||
|
||||
-- @Teljes tábálába inzertálás
|
||||
INSERT INTO @Teljes
|
||||
SELECT Ures.*,
|
||||
OrarendiOra.Foglalkozas
|
||||
FROM @Ures Ures
|
||||
LEFT JOIN @OrarendiOra OrarendiOra ON OrarendiOra.Hetirend = Ures.Hetirend AND
|
||||
OrarendiOra.Hetnapja = Ures.Hetnapja AND
|
||||
OrarendiOra.OraSzam = Ures.OraSzam AND
|
||||
OrarendiOra.Terem = Ures.Terem
|
||||
|
||||
-- Az Excel nyomtatvány munkalap- és táblázat nevei
|
||||
SELECT Hetnapja
|
||||
FROM (SELECT DISTINCT C_NAME Hetnapja,
|
||||
C_VALUE Sorrend
|
||||
FROM @OrarendiOra
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES DictionaryItemBase on DictionaryItemBase.ID = Hetnapja
|
||||
) Hetnapja
|
||||
ORDER BY Sorrend
|
||||
|
||||
SELECT Hetirend
|
||||
FROM (SELECT DISTINCT C_NAME Hetirend,
|
||||
C_VALUE Sorrend
|
||||
FROM @Hetirendek
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES DictionaryItemBase on DictionaryItemBase.ID = Hetirend
|
||||
--WHERE DictionaryItemBase.ID <> 1554--Minden hét
|
||||
) Hetirend
|
||||
ORDER BY Hetirend
|
||||
|
||||
-- @Teljes tábla feltöltése, fő lekérdezés
|
||||
DECLARE KurzorHetirend CURSOR FOR
|
||||
SELECT Hetirend
|
||||
FROM @Hetirendek
|
||||
--WHERE Hetirend <> 1554
|
||||
ORDER BY Hetirend
|
||||
|
||||
DECLARE @Hetirend INT
|
||||
|
||||
DECLARE KurzorHetnapja CURSOR FOR
|
||||
SELECT DISTINCT Hetnapja
|
||||
FROM @Ures
|
||||
ORDER BY Hetnapja
|
||||
|
||||
DECLARE @Hetnapja INT
|
||||
|
||||
OPEN KurzorHetirend
|
||||
FETCH NEXT FROM KurzorHetirend INTO @Hetirend
|
||||
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
|
||||
OPEN KurzorHetnapja
|
||||
FETCH NEXT FROM KurzorHetnapja INTO @Hetnapja
|
||||
|
||||
-- A "Minden hét" óráinak inzertálása minden hetirendbe
|
||||
INSERT INTO @Teljes
|
||||
SELECT @Hetirend,
|
||||
OraSzam,
|
||||
Hetnapja,
|
||||
Terem,
|
||||
Foglalkozas
|
||||
FROM @OrarendiOra
|
||||
WHERE Hetirend = 1554
|
||||
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
|
||||
CREATE table #VeglegesteremOrarend(Terem nvarchar(max), [0] nvarchar(max), [1] nvarchar(max), [2] nvarchar(max), [3] nvarchar(max), [4] nvarchar(max), [5] nvarchar(max),
|
||||
[6] nvarchar(max), [7] nvarchar(max), [8] nvarchar(max), [9] nvarchar(max), [10] nvarchar(max))
|
||||
|
||||
INSERT INTO #VeglegesTeremOrarend
|
||||
SELECT Vegleges.Terem,
|
||||
Vegleges.[0],
|
||||
Vegleges.[1],
|
||||
Vegleges.[2],
|
||||
Vegleges.[3],
|
||||
Vegleges.[4],
|
||||
Vegleges.[5],
|
||||
Vegleges.[6],
|
||||
Vegleges.[7],
|
||||
Vegleges.[8],
|
||||
Vegleges.[9],
|
||||
Vegleges.[10]
|
||||
FROM @Teljes
|
||||
|
||||
PIVOT
|
||||
(
|
||||
MAX(Foglalkozas) FOR OraSzam IN ([0],[1],[2],[3],[4],[5],[6],[7],[8],[9],[10])
|
||||
) Vegleges
|
||||
|
||||
WHERE Vegleges.Hetirend = @Hetirend AND
|
||||
Vegleges.Hetnapja = @Hetnapja
|
||||
|
||||
SELECT *
|
||||
FROM #VeglegesTeremOrarend
|
||||
|
||||
DROP TABLE #VeglegesTeremOrarend
|
||||
FETCH NEXT FROM KurzorHetnapja INTO @Hetnapja
|
||||
|
||||
END
|
||||
|
||||
FETCH NEXT FROM KurzorHetirend INTO @Hetirend
|
||||
CLOSE KurzorHetnapja
|
||||
|
||||
END
|
||||
|
||||
CLOSE KurzorHetirend
|
||||
DEALLOCATE KurzorHetnapja
|
||||
DEALLOCATE KurzorHetirend
|
||||
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,212 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('dbo.sp_Global_SetSystemSettingsDefaultData') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_Global_SetSystemSettingsDefaultData]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Global_SetSystemSettingsDefaultData]
|
||||
@intezmenyID int,
|
||||
@tanevID int
|
||||
AS
|
||||
BEGIN
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @TEMP_RENDSZERBEALLITAS TABLE (
|
||||
C_BEALLITASTIPUS INT not null,
|
||||
C_ERTEKTIPUS INT not null,
|
||||
C_ALAPERTEK NVARCHAR(MAX) null,
|
||||
C_ERTEK NVARCHAR(MAX) not null,
|
||||
SERIAL INT null,
|
||||
CREATOR INT null,
|
||||
C_INTEZMENYID INT not null,
|
||||
C_TANEVID INT not null
|
||||
)
|
||||
|
||||
--SELECT DISTINCT ID, C_NAME FROM T_DICTIONARYITEMBASE d WHERE C_TYPE = 'NapTipus'
|
||||
|
||||
DECLARE @felevVegeDatum nvarchar(50) = COALESCE(
|
||||
(SELECT FORMAT(C_DATUM, 'yyyy-MM-dd') FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1400 AND C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID AND TOROLT = 'F' AND C_OSSZESCSOPORTRAVONATKOZIK = 'T')
|
||||
,CONVERT(nvarchar, DATEPART(YEAR, (SELECT C_UTOLSONAP FROM T_TANEV_OSSZES WHERE ID = @tanevID))) + '-02-01'
|
||||
,CONVERT(nvarchar, DATEPART(YEAR, (SELECT MAX(C_NAPDATUMA) FROM T_NAPTARINAP_OSSZES WHERE C_TANEVID = @tanevID AND TOROLT='F'))) + '-02-01')
|
||||
DECLARE @evVegeDatum nvarchar(50) = COALESCE(
|
||||
(SELECT FORMAT(C_DATUM, 'yyyy-MM-dd') FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1395 AND C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID AND TOROLT = 'F' AND C_OSSZESCSOPORTRAVONATKOZIK = 'T')
|
||||
,(SELECT FORMAT(C_UTOLSOTANITASINAP, 'yyyy-MM-dd') FROM T_TANEV_OSSZES WHERE ID = @tanevID)
|
||||
,CONVERT(nvarchar, DATEPART(YEAR, (SELECT MAX(C_NAPDATUMA) FROM T_NAPTARINAP_OSSZES WHERE C_TANEVID = @tanevID AND TOROLT='F'))) + '-06-15')
|
||||
DECLARE @evElsoNapja nvarchar(50) = COALESCE(
|
||||
(SELECT FORMAT(C_KEZDONAP, 'yyyy-MM-dd') FROM T_TANEV_OSSZES WHERE ID = @tanevID)
|
||||
,CONVERT(nvarchar, DATEPART(YEAR, (SELECT MIN(C_NAPDATUMA) FROM T_NAPTARINAP_OSSZES WHERE C_TANEVID = @tanevID AND TOROLT='F'))) + '-09-01')
|
||||
DECLARE @osszefuggoGyakorlatKezdDatum nvarchar(50) = COALESCE((SELECT FORMAT(DATEADD(DAY, 1, C_DATUM), 'yyyy-MM-dd') FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1395 AND C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID AND TOROLT = 'F' AND C_OSSZESCSOPORTRAVONATKOZIK = 'T'), (SELECT FORMAT(DATEADD(DAY, 1, C_UTOLSOTANITASINAP), 'yyyy-MM-dd') FROM T_TANEV WHERE C_INTEZMENYID = @intezmenyID AND ID = @tanevID))
|
||||
DECLARE @osszefuggoGyakorlatVegDatum nvarchar(50) = (SELECT FORMAT(DATEADD(YEAR, 1, DATEADD(DAY, -1, C_KEZDONAP)), 'yyyy-MM-dd') FROM T_TANEV WHERE C_INTEZMENYID = @intezmenyID AND ID = @tanevID)
|
||||
|
||||
DECLARE @I_negyedevDatum nvarchar(50) = ISNULL((SELECT FORMAT(C_DATUM, 'yyyy-MM-dd') FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1403 AND C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID AND TOROLT = 'F' AND C_OSSZESCSOPORTRAVONATKOZIK = 'T')
|
||||
,@felevVegeDatum);
|
||||
DECLARE @II_negyedevDatum nvarchar(50) = @felevVegeDatum;
|
||||
DECLARE @III_negyedevDatum nvarchar(50) = ISNULL((SELECT FORMAT(C_DATUM, 'yyyy-MM-dd') FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1404 AND C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID AND TOROLT = 'F' AND C_OSSZESCSOPORTRAVONATKOZIK = 'T')
|
||||
,@evVegeDatum);
|
||||
DECLARE @IV_negyedevDatum nvarchar(50) = @evVegeDatum;
|
||||
|
||||
DECLARE @tmp TABLE (options nvarchar(MAX))
|
||||
INSERT INTO @tmp
|
||||
SELECT '{"Selected":false,"Text":"' + ISNULL(C_NAME,'') + '","Value":"' + CAST(ISNULL(ID,'') as nvarchar(10)) + '"}' from T_DICTIONARYITEMBASE where C_TYPE like '%MunkakorTipus%' and C_INTEZMENYID = @intezmenyID and C_TANEVID = @tanevID and TOROLT = 'F' order by C_VALUE
|
||||
|
||||
DECLARE @optionList nVARCHAR(MAX)
|
||||
SELECT @optionList = COALESCE(@optionList + ', ', '') + options FROM @tmp
|
||||
SET @optionList = ISNULL(@optionList, '')
|
||||
|
||||
DECLARE @ErtekelesTipusoktmp TABLE (options nvarchar(MAX))
|
||||
INSERT INTO @ErtekelesTipusoktmp
|
||||
SELECT '{"Selected":false,"Text":"' + ISNULL(C_NAME,'') + '","Value":"' + CAST(ISNULL(ID,'') as nvarchar(10)) + '"}' from T_DICTIONARYITEMBASE where C_TYPE like 'ErtekelesTipus' and C_INTEZMENYID = @intezmenyID and C_TANEVID = @tanevID and TOROLT = 'F' order by C_VALUE
|
||||
|
||||
DECLARE @ErtekelesTipusOptionList nVARCHAR(MAX)
|
||||
SELECT @ErtekelesTipusOptionList = COALESCE(@ErtekelesTipusOptionList + ', ', '') + options FROM @ErtekelesTipusoktmp
|
||||
SET @ErtekelesTipusOptionList = ISNULL(@ErtekelesTipusOptionList, '')
|
||||
|
||||
DECLARE @ErtekelesModoktmp TABLE (options nvarchar(MAX))
|
||||
INSERT INTO @ErtekelesModoktmp
|
||||
SELECT '{"Selected":'+IIF(C_NAME = 'Írásbeli témazáró dolgozat','true','false')+',"Text":"' + ISNULL(C_NAME,'') + '","Value":"' + CAST(ISNULL(ID,'') as nvarchar(10)) + '"}' from T_DICTIONARYITEMBASE where C_TYPE like 'ErtekelesMod' and C_INTEZMENYID = @intezmenyID and C_TANEVID = @tanevID and TOROLT = 'F' order by C_VALUE
|
||||
|
||||
DECLARE @ErtekelesModOptionList nVARCHAR(MAX)
|
||||
SELECT @ErtekelesModOptionList = COALESCE(@ErtekelesModOptionList + ', ', '') + options FROM @ErtekelesModoktmp
|
||||
SET @ErtekelesModOptionList = ISNULL(@ErtekelesModOptionList, '')
|
||||
|
||||
DECLARE @csoportTipusokTemp TABLE (options nvarchar(MAX))
|
||||
INSERT INTO @csoportTipusokTemp
|
||||
SELECT '{"Selected":false,"Text":"' + ISNULL(C_NAME,'') + '","Value":"' + CAST(ISNULL(ID,'') as nvarchar(10)) + '"}' from T_DICTIONARYITEMBASE where C_TYPE like '%CsoportTipus%' and C_INTEZMENYID = @intezmenyID and C_TANEVID = @tanevID and TOROLT = 'F' order by C_VALUE
|
||||
|
||||
DECLARE @csoportTipusList nVARCHAR(MAX)
|
||||
SELECT @csoportTipusList = COALESCE(@csoportTipusList + ', ', '') + options FROM @csoportTipusokTemp
|
||||
SET @csoportTipusList = ISNULL(@csoportTipusList, '')
|
||||
|
||||
|
||||
INSERT INTO @TEMP_RENDSZERBEALLITAS (C_BEALLITASTIPUS, C_ERTEKTIPUS, C_ALAPERTEK, C_ERTEK, SERIAL, CREATOR, C_INTEZMENYID, C_TANEVID)
|
||||
VALUES
|
||||
(1666, 1699, '{"Id":"Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese","Value":true}', '{"Id":"Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1667, 1699, '{"Id":"Tanulo_vallasi_adatainak_kezelese","Value":"false"}', '{"Id":"Tanulo_vallasi_adatainak_kezelese","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1818, 1699, '{"Id":"Tanulo_sportoloi_adatainak_kezelese","Value":"false"}', '{"Id":"Tanulo_sportoloi_adatainak_kezelese","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1668, 1699, '{"Id":"Tanulok_osztalyok_kozotti_atsorolasa_eseten_a_csoportbontasokbol_valo_kilepteteset_is_automatikusan_elvegezze_a_program","Value":"true"}', '{"Id":"Tanulok_osztalyok_kozotti_atsorolasa_eseten_a_csoportbontasokbol_valo_kilepteteset_is_automatikusan_elvegezze_a_program","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1669, 1699, '{"Id":"A_felhasznalok_nem_valtoztathatjak_meg_a_jelszavukat_az_elektronikus_ellenorzoben","Value":"true"}', '{"Id":"A_felhasznalok_nem_valtoztathatjak_meg_a_jelszavukat_az_elektronikus_ellenorzoben","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1670, 1699, '{"Id":"A_tanulok_ertekeleseinel_az_ertekelesek_sulyszamainak_megjelenitese","Value":"true"}', '{"Id":"A_tanulok_ertekeleseinel_az_ertekelesek_sulyszamainak_megjelenitese","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1671, 1699, '{"Id":"Pedagogusok_sajat_orarendjeiket_modosithatjak_az_elektronikus_naploban","Value":"false"}', '{"Id":"Pedagogusok_sajat_orarendjeiket_modosithatjak_az_elektronikus_naploban","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1672, 1698, '{"Id":"A_haladasi_naplo_csak_az_alabbiak_szerint_toltheto_ki_utolag_naplozni_","Options":[{"Selected":true,"Text":"Akármit felvehet","Value":"1"},{"Selected":false,"Text":"Csak tantárgyfelosztás alapján","Value":"2"},{"Selected":false,"Text":"Semmit","Value":"3"}]}', '{"Id":"A_haladasi_naplo_csak_az_alabbiak_szerint_toltheto_ki_utolag_naplozni_","Options":[{"Selected":true,"Text":"Akármit felvehet","Value":"1"},{"Selected":false,"Text":"Csak tantárgyfelosztás alapján","Value":"2"},{"Selected":false,"Text":"Semmit","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1673, 1699, '{"Id":"A_haladasi_naploba_orankent_csak_egy_tanora_rogzitheto","Value":"true"}', '{"Id":"A_haladasi_naploba_orankent_csak_egy_tanora_rogzitheto","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1674, 1699, '{"Id":"Elmaradt_tanitasi_ora_rogzitesenek_tiltasa","Value":"false"}', '{"Id":"Elmaradt_tanitasi_ora_rogzitesenek_tiltasa","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1675, 1699, '{"Id":"Pedagogusok_csak_az_eloirt_helyettesiteseiket_regisztralhatjak_a_haladasi_naploban","Value":"false"}', '{"Id":"Pedagogusok_csak_az_eloirt_helyettesiteseiket_regisztralhatjak_a_haladasi_naploban","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1676, 1699, '{"Id":"A_tanarok_csak_a_sajat_tantargyfelosztasukban_szereplo_osztalyok_csoportok_tanuloit_ertekelhetik","Value":"true"}', '{"Id":"A_tanarok_csak_a_sajat_tantargyfelosztasukban_szereplo_osztalyok_csoportok_tanuloit_ertekelhetik","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1677, 1699, '{"Id":"Osztalyfonok_modosithatja_osztalyaba_jaro_tanulok_adatait","Value":"false"}', '{"Id":"Osztalyfonok_modosithatja_osztalyaba_jaro_tanulok_adatait","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1678, 1699, '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_szocialis_tanugyi_es_SNI_BTM_adatait","Value":"false"}', '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_szocialis_tanugyi_es_SNI_BTM_adatait","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1679, 1699, '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_zaradekat","Value":"false"}', '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_zaradekat","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1680, 1699, '{"Id":"Osztalyfonok_megtekintheti_kezelheti_az_osztalyaba_jaro_tanulok_vallasi_adatait","Value":"false"}', '{"Id":"Osztalyfonok_megtekintheti_kezelheti_az_osztalyaba_jaro_tanulok_vallasi_adatait","Value":"false"}', 0 ,1, @intezmenyID, @tanevID),
|
||||
(1764, 1699, '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_sportoloi_adatait","Value":"false"}', '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_sportoloi_adatait","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1681, 1699, '{"Id":"Ertekelesnel_a_naplojegyek_atlaga_megjelenik","Value":"true"}', '{"Id":"Ertekelesnel_a_naplojegyek_atlaga_megjelenik","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1682, 1698, '{"Id":"Magantanulo_oralatogatas_aloli_mentessegenek_kezelese","Options":[{"Selected":true,"Text":"Nem kell megjelennie","Value":"1"},{"Selected":false,"Text":"Csak gyakorlaton","Value":"2"},{"Selected":false,"Text":"Minden órán","Value":"3"}]}', '{"Id":"Magantanulo_oralatogatas_aloli_mentessegenek_kezelese","Options":[{"Selected":true,"Text":"Nem kell megjelennie","Value":"1"},{"Selected":false,"Text":"Csak gyakorlaton","Value":"2"},{"Selected":false,"Text":"Minden órán","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1683, 1699, '{"Id":"Az_iskolaerdeku_tavollet_tipusu_igazolasok_beleszamitanak_a_tanulo_osszes_mulasztasaba","Value":"true"}', '{"Id":"Az_iskolaerdeku_tavollet_tipusu_igazolasok_beleszamitanak_a_tanulo_osszes_mulasztasaba","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1684, 1699, '{"Id":"Osztalyfonok_szamara_tiltott_a_mulasztasi_adatok_modositasa","Value":"false"}', '{"Id":"Osztalyfonok_szamara_tiltott_a_mulasztasi_adatok_modositasa","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1685, 1699, '{"Id":"A_foglalkozasok_mulasztasi_adatai_megadasanal_a_parhuzamos_orakkal_valo_utkozes_vizsgalata","Value":"true"}', '{"Id":"A_foglalkozasok_mulasztasi_adatai_megadasanal_a_parhuzamos_orakkal_valo_utkozes_vizsgalata","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2882, 2884, '{"Id":"Az_elektronikus_naplo_megjelenesenek_kezdoidopontja","Time":"07:00:00"}', '{"Id":"Az_elektronikus_naplo_megjelenesenek_kezdoidopontja","Time":"07:00:00"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2883, 2884, '{"Id":"Az_elektronikus_naplo_megjelenesenek_zaroidopontja","Time":"18:00:00"}', '{"Id":"Az_elektronikus_naplo_megjelenesenek_zaroidopontja","Time":"18:00:00"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2874, 2886, '{"Id":"Szakszeru_helyettesites_eseten_az_elszamolt_oraszam","Value":"1"}', '{"Id":"Szakszeru_helyettesites_eseten_az_elszamolt_oraszam","Value":"1"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2875, 2886, '{"Id":"Nem_szakszeru_felugyelet_helyettesites_eseten_az_elszamolt_oraszam","Value":"0.5"}', '{"Id":"Nem_szakszeru_felugyelet_helyettesites_eseten_az_elszamolt_oraszam","Value":"0.5"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2876, 2886, '{"Id":"Oraosszevonasos_helyettesites_eseten_az_elszamolt_oraszam","Value":"0.3"}', '{"Id":"Oraosszevonasos_helyettesites_eseten_az_elszamolt_oraszam","Value":"0.3"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2877, 1699, '{"Id":"Lehet_e_helyettesites_tulora","Value":"false"}', '{"Id":"Lehet_e_helyettesites_tulora","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3006, 1699, '{"Id":"Tanar_vehet_e_fel_orat_maganak","Value":"true"}', '{"Id":"Tanar_vehet_e_fel_orat_maganak","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3015, 1699, '{"Id":"Lehet_orat_felvenni_TTF_nelkul","Value":"true"}', '{"Id":"Lehet_orat_felvenni_TTF_nelkul","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3037, 1699, '{"Id":"Foglalkozasnal_csak_osztaly_es_tanora_jellegu_csoport_allithato","Value":"true"}', '{"Id":"Foglalkozasnal_csak_osztaly_es_tanora_jellegu_csoport_allithato","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3039, 2886, '{"Id":"Egy_statuszra_juto_kotelezo_oraszam","Value":"22"}', '{"Id":"Egy_statuszra_juto_kotelezo_oraszam","Value":"22"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2885, 1698, '{"Id":"Tanulo_felhasznaloi_nev_generalas_modja","Options":[{"Selected":true,"Text":"Oktatási azonosító alapján","Value":"1"},{"Selected":false,"Text":"Kréta kód alapján","Value":"2"},{"Selected":false,"Text":"Egyéni","Value":"3"}]}', '{"Id":"Tanulo_felhasznaloi_nev_generalas_modja","Options":[{"Selected":true,"Text":"Oktatási azonosító alapján","Value":"1"},{"Selected":false,"Text":"Kréta kód alapján","Value":"2"},{"Selected":false,"Text":"Egyéni","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3074, 1699, '{"Id":"helyettesites_eseten_felugyelet_alapertelmezetten_sorszamozando","Value":"false"}', '{"Id":"helyettesites_eseten_felugyelet_alapertelmezetten_sorszamozando","Value":"false"}', 0, 1,@intezmenyID,@tanevID),
|
||||
(3075, 1699, '{"Id":"tanitasiOra_sorszamozas_mod","Value":"true"}', '{"Id":"tanitasiOra_sorszamozas_mod","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3076, 1696, '{"Id":"Ertekeles_datumanak_minimuma","Date":"' + @evElsoNapja + '"}', '{"Id":"Ertekeles_datumanak_minimuma","Date":"' + @evElsoNapja + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5222, 1697, '{"Id":"Ertekelesek_oldalon_levo_keresok_alapertelemezett_feltoltese_ezek_alapjan","Options":[{"Selected":true,"Text":"TTF","Value":"1"},{"Selected":false,"Text":"Osztályfőnök","Value":"2"},{"Selected":false,"Text":"Bárki","Value":"3"}]}', '{"Id":"Ertekelesek_oldalon_levo_keresok_alapertelemezett_feltoltese_ezek_alapjan","Options":[{"Selected":true,"Text":"TTF","Value":"1"},{"Selected":false,"Text":"Osztályfőnök","Value":"2"},{"Selected":false,"Text":"Bárki","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3078, 1699, '{"Id":"tanitasiOra_sorszamozas_csoportbontas","Value":"true"}', '{"Id":"tanitasiOra_sorszamozas_csoportbontas","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3079, 1697, '{"Id":"Havi_vagy_heti_naplozaras","Options":[{"Selected":false,"Text":"Havi","Value":"1"},{"Selected":false,"Text":"Heti","Value":"2"},{"Selected":true,"Text":"Nincs megadva","Value":"3"}]}', '{"Id":"Havi_vagy_heti_naplozaras","Options":[{"Selected":false,"Text":"Havi","Value":"1"},{"Selected":false,"Text":"Heti","Value":"2"},{"Selected":true,"Text":"Nincs megadva","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3080, 2886 ,'{"Id":"Naplozaras_havi_ertek","Value":"28"}', '{"Id":"Naplozaras_havi_ertek","Value":"28"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3081, 2886, '{"Id":"Naplozaras_heti_ertek","Value":"6"}' , '{"Id":"Naplozaras_heti_ertek","Value":"6"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3082, 1696, '{"Id":"Naplozaras_eves_datuma","Date":"' + @evElsoNapja + '"}', '{"Id":"Naplozaras_eves_datuma","Date":"' + @evElsoNapja + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3083, 2884, '{"Id":"Nem_kotott_munkaido_megjelenesenek_kezdoidopontja","Time":"10:00:00"}', '{"Id":"Nem_kotott_munkaido_megjelenesenek_kezdoidopontja","Time":"10:00:00"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3084, 2884, '{"Id":"Nem_kotott_munkaido_megjelenesenek_zaroidopontja","Time":"15:00:00"}', '{"Id":"Nem_kotott_munkaido_megjelenesenek_zaroidopontja","Time":"15:00:00"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5223, 1697, '{"Id":"Magatartas_szorgalom_ertekelesek_oldalon_levo_keresok_alapertelemezett_feltoltese_ezek_alapjan","Options":[{"Selected":true,"Text":"Osztályfőnök","Value":"1"},{"Selected":false,"Text":"TTF","Value":"2"}]}', '{"Id":"Magatartas_szorgalom_ertekelesek_oldalon_levo_keresok_alapertelemezett_feltoltese_ezek_alapjan","Options":[{"Selected":true,"Text":"Osztályfőnök","Value":"1"},{"Selected":false,"Text":"TTF","Value":"2"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5225, 1698, '{"Id":"Tanuloi_jelszavak_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Születési dátum","Value":"1"},{"Selected":false,"Text":"Véletlenszerű","Value":"2"},{"Selected":false,"Text":" Egyéni","Value":"3"}]}','{"Id":"Tanuloi_jelszavak_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Születési dátum","Value":"1"},{"Selected":false,"Text":"Véletlenszerű","Value":"2"},{"Selected":false,"Text":" Egyéni","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5226, 1698, '{"Id":"Gondviselo_felhasznalonev_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Oktatási azonosító alapján","Value":"1"},{"Selected":false,"Text":"Kréta kód alapján","Value":"2"},{"Selected":false,"Text":"Egyéni","Value":"3"}]}', '{"Id":"Gondviselo_felhasznalonev_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Oktatási azonosító alapján","Value":"1"},{"Selected":false,"Text":"Kréta kód alapján","Value":"2"},{"Selected":false,"Text":"Egyéni","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5227, 1698, '{"Id":"Gondviselo_jelszavak_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Születési dátum","Value":"1"},{"Selected":false,"Text":"Véletlenszerű","Value":"2"},{"Selected":false,"Text":" Egyéni","Value":"3"}]}','{"Id":"Gondviselo_jelszavak_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Születési dátum","Value":"1"},{"Selected":false,"Text":"Véletlenszerű","Value":"2"},{"Selected":false,"Text":" Egyéni","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5261, 1698, '{"Id":"Napirend_felvitelel_utkozes_figyeles","Options":[{"Selected":true,"Text":"Ütközés nem lehetséges","Value":"1"},{"Selected":false,"Text":"Figyelmeztetés","Value":"2"},{"Selected":false,"Text":"Ütközés lehetséges","Value":"3"}]}', '{"Id":"Napirend_felvitelel_utkozes_figyeles","Options":[{"Selected":true,"Text":"Ütközés nem lehetséges","Value":"1"},{"Selected":false,"Text":"Figyelmeztetés","Value":"2"},{"Selected":false,"Text":"Ütközés lehetséges","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5436, 1699, '{"Id":"Osztalyfonok_ertekeles_osszes_targybol","Value":false}', '{"Id":"Osztalyfonok_ertekeles_osszes_targybol","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5437, 1699, '{"Id":"Ora_sorszamozasat_naplozo_pedagogus_eldontheti","Value":true}', '{"Id":"Ora_sorszamozasat_naplozo_pedagogus_eldontheti","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7362, 1696, '{"Id":"I_Negyedeves_jegyek_megjelenesenek_datuma","Date":"' + @I_negyedevDatum + '"}', '{"Id":"I_Negyedeves_jegyek_megjelenesenek_datuma","Date":"' + @I_negyedevDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7363, 1696, '{"Id":"II_Negyedeves_jegyek_megjelenesenek_datuma","Date":"' + @II_negyedevDatum + '"}', '{"Id":"II_Negyedeves_jegyek_megjelenesenek_datuma","Date":"' + @II_negyedevDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7364, 1696, '{"Id":"III_Negyedeves_jegyek_megjelenesenek_datuma","Date":"' + @III_negyedevDatum + '"}', '{"Id":"III_Negyedeves_jegyek_megjelenesenek_datuma","Date":"' + @III_negyedevDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7365, 1696, '{"Id":"IV_Negyedeves_jegyek_megjelenesenek_datuma","Date":"' + @IV_negyedevDatum + '"}', '{"Id":"IV_Negyedeves_jegyek_megjelenesenek_datuma","Date":"' + @IV_negyedevDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5438, 1696, '{"Id":"Felevi_jegyek_megjelenesenek_datuma","Date":"' + @felevVegeDatum + '"}', '{"Id":"Felevi_jegyek_megjelenesenek_datuma","Date":"' + @felevVegeDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5439, 1696, '{"Id":"Ev_vegi_jegyek_megjelenesenek_datuma","Date":"' + @evVegeDatum + '"}', '{"Id":"Ev_vegi_jegyek_megjelenesenek_datuma","Date":"' + @evVegeDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5440, 1696, '{"Id":"Ev_vegi_jegyek_megjelenesenek_datuma_vegzos","Date":"' + @evVegeDatum + '"}', '{"Id":"Ev_vegi_jegyek_megjelenesenek_datuma_vegzos","Date":"' + @evVegeDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5441, 5442, '{"Id":"Alkalmazottak_lathatjak_a_diakok_adatait","Options":[' + @optionList + ']}', '{"Id":"Alkalmazottak_lathatjak_a_diakok_adatait","Options":[' + @optionList + ']}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5449, 1698, '{"Id":"Naplozaskor_mulasztas_szazalek_szamitas","Options":[{"Selected":true,"Text":"Egész éves óraszám alapján","Value":"1"},{"Selected":false,"Text":"Megtartott óraszám alapján","Value":"2"}]}', '{"Id":"Naplozaskor_mulasztas_szazalek_szamitas","Options":[{"Selected":true,"Text":"Egész éves óraszám alapján","Value":"1"},{"Selected":false,"Text":"Megtartott óraszám alapján","Value":"2"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6717, 1699, '{"Id":"Naplozas_terem_befogadokepesseg","Value":true}', '{"Id":"Naplozas_terem_befogadokepesseg","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6764, 5442, '{"Id":"Tanorahoz_tartozo_csoportok","Options":[' + @csoportTipusList + ']}', '{"Id":"Tanorahoz_tartozo_csoportok","Options":[' + @csoportTipusList + ']}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6765, 1699, '{"Id":"Tanulo_Egy_Tanev_Egy_Evfolyam","Value":true}', '{"Id":"Tanulo_Egy_Tanev_Egy_Evfolyam","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6766, 1699, '{"Id":"Naplo_Tanulo_Aktualis_Osztaly_Ertekelesei_Mulasztasai","Value":true}', '{"Id":"Naplo_Tanulo_Aktualis_Osztaly_Ertekelesei_Mulasztasai","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6767, 1699, '{"Id":"Gondviselo_Auto_Email","Value":false}', '{"Id":"Gondviselo_Auto_Email","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6768, 1699, '{"Id":"Feljegyzes_Osszes_Osztaly","Value":true}', '{"Id":"Feljegyzes_Osszes_Osztaly","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6769, 1699, '{"Id":"Csoportvezeto_Tanulo_Adat_Modositas","Value":true}', '{"Id":"Csoportvezeto_Tanulo_Adat_Modositas","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6770, 1699, '{"Id":"Csoportvezeto_Tanora_Celu_Csoportok","Value":false}', '{"Id":"Csoportvezeto_Tanora_Celu_Csoportok","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6830, 1699, '{"Id":"SuccessFeedBack_Disable","Value":false}', '{"Id":"SuccessFeedBack_Disable","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6854, 1699, '{"Id":"Magatartas_Szorgalom_Ertekeles_Csak_Ofokent","Value":true}', '{"Id":"Magatartas_Szorgalom_Ertekeles_Csak_Ofokent","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6941, 1698, '{"Id":"Teremutkozes_figyeles","Options":[{"Selected":false,"Text":"Ütközés nem lehetséges","Value":"1"},{"Selected":true,"Text":"Figyelmeztetés","Value":"2"},{"Selected":false,"Text":"Ütközés lehetséges","Value":"3"}]}', '{"Id":"Teremutkozes_figyeles","Options":[{"Selected":false,"Text":"Ütközés nem lehetséges","Value":"1"},{"Selected":true,"Text":"Figyelmeztetés","Value":"2"},{"Selected":false,"Text":"Ütközés lehetséges","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7094, 1699, '{"Id":"Diak_altali_hazifeladatok_rogzitese","Value":true}', '{"Id":"Diak_altali_hazifeladatok_rogzitese","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7106, 1696, '{"Id":"Osszefuggo_gyakorlat_kezd_datum","Date":"' + @osszefuggoGyakorlatKezdDatum + '"}', '{"Id":"Osszefuggo_gyakorlat_kezd_datum","Date":"' + @osszefuggoGyakorlatKezdDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7107, 1696, '{"Id":"Osszefuggo_gyakorlat_veg_datum","Date":"' + @osszefuggoGyakorlatVegDatum + '"}', '{"Id":"Osszefuggo_gyakorlat_veg_datum","Date":"' + @osszefuggoGyakorlatVegDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7108, 1699, '{"Id":"Osszefuggo_gyakorlat_egyedi_rogzites","Value":"false"}', '{"Id":"Osszefuggo_gyakorlat_egyedi_rogzites","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7130, 2886 ,'{"Id":"Ervenyes_tanitasi_nap_oraszam","Value":"3"}', '{"Id":"Ervenyes_tanitasi_nap_oraszam","Value":"3"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7131, 1698, '{"Id":"Ertekelesek_Mulasztasok_Feljegyzesek_Kezelese_Osztalyvaltas_Eseten","Options":[{"Selected":false,"Text":"Semelyiket","Value":"0"},{"Selected":true,"Text":"Csak a közös tárgyakét(feljegyzéseknél mindegyiket)","Value":"1"},{"Selected":false,"Text":"Mindegyiket","Value":"2"}]}', '{"Id":"Ertekelesek_Mulasztasok_Feljegyzesek_Kezelese_Osztalyvaltas_Eseten","Options":[{"Selected":false,"Text":"Semelyiket","Value":"0"},{"Selected":true,"Text":"Csak a közös tárgyakét(feljegyzéseknél mindegyiket)","Value":"1"},{"Selected":false,"Text":"Mindegyiket","Value":"2"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7132, 1698, '{"Id":"Ertekelesek_Mulasztasok_Feljegyzesek_Kezelese_Evfolyamvaltas_Eseten","Options":[{"Selected":true,"Text":"Semelyiket","Value":"0"},{"Selected":false,"Text":"Csak a közös tárgyakét(feljegyzéseknél mindegyiket)","Value":"1"},{"Selected":false,"Text":"Mindegyiket","Value":"2"}]}', '{"Id":"Ertekelesek_Mulasztasok_Feljegyzesek_Kezelese_Evfolyamvaltas_Eseten","Options":[{"Selected":true,"Text":"Semelyiket","Value":"0"},{"Selected":false,"Text":"Csak a közös tárgyakét(feljegyzéseknél mindegyiket)","Value":"1"},{"Selected":false,"Text":"Mindegyiket","Value":"2"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7360, 5442, '{"Id":"Tanar_Feluleten_Orarend_Lathatosag","Options":[{"Selected":false,"Text":"Tanári órarendek","Value":"TanariOrarendKereso"}, {"Selected":false,"Text":"Osztály órarendek","Value":"OsztalyOrarendKereso"}, {"Selected":false,"Text":"Terem órarendek","Value":"TeremOrarendKereso"}]}', '{"Id":"Tanar_Feluleten_Orarend_Lathatosag","Options":[{"Selected":false,"Text":"Tanári órarendek","Value":"TanariOrarendKereso"}, {"Selected":false,"Text":"Osztály órarendek","Value":"OsztalyOrarendKereso"}, {"Selected":false,"Text":"Terem órarendek","Value":"TeremOrarendKereso"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7361, 1699, '{"Id":"Tanora_Tema_Az_Ellenorzoben","Value":"true"}', '{"Id":"Tanora_Tema_Az_Ellenorzoben","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7375, 1699, '{"Id":"Csokkentett_gondviselok_kezelese","Value":"true"}', '{"Id":"Csokkentett_gondviselok_kezelese","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7380, 1697, '{"Id":"Ertekelesek_megjelenese_az_ellenorzo_modulban","Options":[{"Selected":true,"Text":"Nincs késletetés","Value":"0"},{"Selected":false,"Text":"6 óra","Value":"6"},{"Selected":false,"Text":"12 óra","Value":"12"},{"Selected":false,"Text":"24 óra","Value":"24"}]}', '{"Id":"Ertekelesek_megjelenese_az_ellenorzo_modulban","Options":[{"Selected":true,"Text":"Nincs késletetés","Value":"0"},{"Selected":false,"Text":"6 óra","Value":"6"},{"Selected":false,"Text":"12 óra","Value":"12"},{"Selected":false,"Text":"24 óra","Value":"24"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7563, 1699, '{"Id":"Osztalyatlag_megjelenitese_az_ellenorzo_feluleten","Value":"true"}', '{"Id":"Osztalyatlag_megjelenitese_az_ellenorzo_feluleten","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7564, 1699, '{"Id":"Fogadoorak_megjelenitese","Value":true}', '{"Id":"Fogadoorak_megjelenitese","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7565, 1697, '{"Id":"Default_Feladat_Kategoria","Options":[{"Selected":false,"Text":"Minden","Value":"-1"},{"Selected":true,"Text":"Alapképzés","Value":"7553"},{"Selected":false,"Text":"Alapfokú művészetoktatás","Value":"7555"},{"Selected":false,"Text":"EGYMI","Value":"7717"},{"Selected":false,"Text":"Kollégium","Value":"7556"}]}', '{"Id":"Default_Feladat_Kategoria","Options":[{"Selected":false,"Text":"Minden","Value":"-1"},{"Selected":true,"Text":"Alapképzés","Value":"7553"},{"Selected":false,"Text":"Alapfokú művészetoktatás","Value":"7555"},{"Selected":false,"Text":"EGYMI","Value":"7717"},{"Selected":false,"Text":"Kollégium","Value":"7556"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7568, 1699, '{"Id":"Egyeni_Csoportok_Automatikus_Letrehozasa","Value":"true"}', '{"Id":"Egyeni_Csoportok_Automatikus_Letrehozasa","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7650, 2884, '{"Id":"Fogado_Ora_Kezdoidopontja","Time":"10:00:00"}', '{"Id":"Fogado_Ora_Kezdoidopontja","Time":"10:00:00"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7651, 2884, '{"Id":"Fogado_Ora_Zaroidopontja","Time":"18:00:00"}', '{"Id":"Fogado_Ora_Zaroidopontja","Time":"18:00:00"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7661, 1697, '{"Id":"Napi_Szamonkeresi_Limit","Options":[{"Selected":true,"Text":"Nincs megadva","Value":"0"},{"Selected":false,"Text":"1","Value":"1"},{"Selected":false,"Text":"2","Value":"2"},{"Selected":false,"Text":"3","Value":"3"},{"Selected":false,"Text":"4","Value":"4"},{"Selected":false,"Text":"5","Value":"5"},{"Selected":false,"Text":"6","Value":"6"},{"Selected":false,"Text":"7","Value":"7"},{"Selected":false,"Text":"8","Value":"8"},{"Selected":false,"Text":"9","Value":"9"},{"Selected":false,"Text":"10","Value":"10"}]}', '{"Id":"Napi_Szamonkeresi_Limit","Options":[{"Selected":true,"Text":"Nincs megadva","Value":"0"},{"Selected":false,"Text":"1","Value":"1"},{"Selected":false,"Text":"2","Value":"2"},{"Selected":false,"Text":"3","Value":"3"},{"Selected":false,"Text":"4","Value":"4"},{"Selected":false,"Text":"5","Value":"5"},{"Selected":false,"Text":"6","Value":"6"},{"Selected":false,"Text":"7","Value":"7"},{"Selected":false,"Text":"8","Value":"8"},{"Selected":false,"Text":"9","Value":"9"},{"Selected":false,"Text":"10","Value":"10"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7662, 5442, '{"Id":"Ertekeles_Modok_Beallitasa_Napi_Limithez","Options":[' + @ErtekelesModOptionList + ']}', '{"Id":"Ertekeles_Modok_Beallitasa_Napi_Limithez","Options":[' + @ErtekelesModOptionList + ']}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7663, 1698, '{"Id":"Limit_Figyelmeztetesi_Tiltasi_Beallitas","Options":[{"Selected":false,"Text":"Napi limiten túli számonkérés rögzítése nem lehetséges","Value":"1"},{"Selected":true,"Text":"Figyelmeztető ablak","Value":"2"},{"Selected":false,"Text":"Napi limiten túli számonkérés rögzítése lehetséges","Value":"3"}]}', '{"Id":"Limit_Figyelmeztetesi_Tiltasi_Beallitas","Options":[{"Selected":false,"Text":"Napi limiten túli számonkérés rögzítése nem lehetséges","Value":"1"},{"Selected":true,"Text":"Figyelmeztető ablak","Value":"2"},{"Selected":false,"Text":"Napi limiten túli számonkérés rögzítése lehetséges","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7680, 5442, '{"Id":"Ertekeleseknel_Megjeleno_Specialis_Gombok_Lathatosaga","Options":[{"Selected":true,"Text":"-","Value":"1"},{"Selected":true,"Text":"5D","Value":"2"},{"Selected":false,"Text":"5K","Value":"3"},{"Selected":true,"Text":"MT","Value":"4"}]}', '{"Id":"Ertekeleseknel_Megjeleno_Specialis_Gombok_Lathatosaga","Options":[{"Selected":true,"Text":"-","Value":"1"},{"Selected":true,"Text":"5D","Value":"2"},{"Selected":false,"Text":"5K","Value":"3"},{"Selected":true,"Text":"MT","Value":"4"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7683, 1698, '{"Id":"Foglalkozasok_Rogzitese_Hetvegere","Options":[{"Selected":true,"Text":"Csak hétköznap (H-P)","Value":"1"},{"Selected":false,"Text":"Hétköznap és + minden szombat (H-Sz)","Value":"2"},{"Selected":false,"Text":"Minden nap (H-V)","Value":"3"}]}', '{"Id":"Foglalkozasok_Rogzitese_Hetvegere","Options":[{"Selected":true,"Text":"Csak hétköznap (H-P)","Value":"1"},{"Selected":false,"Text":"Hétköznap és + minden szombat (H-Sz)","Value":"2"},{"Selected":false,"Text":"Minden nap (H-V)","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7699, 1699, '{"Id":"Osztalyfonok_kiegeszitheti_osztalyaba_jaro_tanulok_ki_vagy_atsorolsasi_zaradekat","Value":"false"}', '{"Id":"Osztalyfonok_kiegeszitheti_osztalyaba_jaro_tanulok_ki_vagy_atsorolsasi_zaradekat","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7700, 1699, '{"Id":"Osztalyfonok_Modosithatjae_Tanulok_Mulasztasi_Adatait","Value":"true"}', '{"Id":"Osztalyfonok_Modosithatjae_Tanulok_Mulasztasi_Adatait","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7707, 2886, '{"Id":"Szakszeru_helyettesites_Szazalekos_Ertek_Osszegbe","Value":"100"}', '{"Id":"Szakszeru_helyettesites_Szazalekos_Ertek_Osszegbe","Value":"100"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7708, 2886, '{"Id":"Nem_Szakszeru_Helyettesites_Szazalekos_Ertek_Osszegbe","Value":"100"}', '{"Id":"Nem_Szakszeru_Helyettesites_Szazalekos_Ertek_Osszegbe","Value":"100"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7709, 2886, '{"Id":"Oraosszevonas_Szazalekos_Ertek_Osszegbe","Value":"100"}', '{"Id":"Oraosszevonas_Szazalekos_Ertek_Osszegbe","Value":"100"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7710, 2886, '{"Id":"Osszevont_Felugyelet_Szazalekos_Ertek_Osszegbe","Value":"100"}', '{"Id":"Osszevont_Felugyelet_Szazalekos_Ertek_Osszegbe","Value":"100"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7718, 1698, '{"Id":"Csoportvezetok_Igazolasi_Jogosultsaga","Options":[{"Selected":true,"Text":"Nem igazolhatnak","Value":"1"},{"Selected":false,"Text":"Csak igazoltra állíthatnak","Value":"2"},{"Selected":false,"Text":"Bármit beállíthatnak","Value":"3"}]}','{"Id":"Csoportvezetok_Igazolasi_Jogosultsaga","Options":[{"Selected":true,"Text":"Nem igazolhatnak","Value":"1"},{"Selected":false,"Text":"Csak igazoltra állíthatnak","Value":"2"},{"Selected":false,"Text":"Bármit beállíthatnak","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7770, 2886, '{"Id":"Bukas_Veszelyre_Figyelmeztetes_Hatara","Value":"2"}', '{"Id":"Bukas_Veszelyre_Figyelmeztetes_Hatara","Value":"2"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7771, 1699, '{"Id":"Szakgimnaziumok_Alapkezpeseskent_Tudjak_Kezelni_osztalyokat_Tanulokat","Value":"false"}', '{"Id":"Szakgimnaziumok_Alapkezpeseskent_Tudjak_Kezelni_osztalyokat_Tanulokat","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
|
||||
/*Értesítések*/
|
||||
(1690, 1696, '{"Id":"Ertesites_bukasra_allo_tanulokrol","Date":"' + LEFT(@evVegeDatum, 4) + '-05-02"}', '{"Id":"Ertesites_bukasra_allo_tanulokrol","Date":"' + LEFT(@evVegeDatum, 4) + '-05-02"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1691, 1696, '{"Id":"Ertesites_bukasra_allo_vegzos_tanulokrol","Date":"' + LEFT(@evVegeDatum, 4) + '-04-02"}', '{"Id":"Ertesites_bukasra_allo_vegzos_tanulokrol","Date":"' + LEFT(@evVegeDatum, 4) + '-04-02"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1687, 1696, '{"Id":"Ertesites_Tanev_rendi_valtoztatasrol_idopont","Date":"' + @evElsoNapja + '"}', '{"Id":"Ertesites_Tanev_rendi_valtoztatasrol_idopont","Date":"' + @evElsoNapja + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1686, 1695, '{"Id":"Ertesites_Tanev_rendi_valtoztatasrol_esetek","Options":[{"Selected":true,"Text":"Tanítás nélküli munkanap","Value":"1387"},{"Selected":false,"Text":"Tanítási nap ","Value":"1385"},{"Selected":false,"Text":"Munkaszüneti nap ","Value":"1386"}]}', '{"Id":"Ertesites_Tanev_rendi_valtoztatasrol_esetek","Options":[{"Selected":true,"Text":"Tanítás nélküli munkanap","Value":"1387"},{"Selected":false,"Text":"Tanítási nap ","Value":"1385"},{"Selected":false,"Text":"Munkaszüneti nap ","Value":"1386"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1688, 1698, '{"Id":"Erdemjegy_beiras_ertesites_kesleltetese","Options":[{"Selected":true,"Text":"0 óra","Value":"0"},{"Selected":false,"Text":"4 óra","Value":"4"},{"Selected":false,"Text":"8 óra","Value":"8"},{"Selected":false,"Text":"12 óra","Value":"12"},{"Selected":false,"Text":"24 óra","Value":"24"}]}', '{"Id":"Erdemjegy_beiras_ertesites_kesleltetese","Options":[{"Selected":true,"Text":"0 óra","Value":"0"},{"Selected":false,"Text":"4 óra","Value":"4"},{"Selected":false,"Text":"8 óra","Value":"8"},{"Selected":false,"Text":"12 óra","Value":"12"},{"Selected":false,"Text":"24 óra","Value":"24"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1689, 1698, '{"Id":"Ertesites_hianyzo_orabeirasrol_kesleltetese","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":false,"Text":"3 nap","Value":"3"},{"Selected":true,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', '{"Id":"Ertesites_hianyzo_orabeirasrol_kesleltetese","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":false,"Text":"3 nap","Value":"3"},{"Selected":true,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1692, 1698, '{"Id":"Ertesites_nyilt_naprol","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":false,"Text":"3 nap","Value":"3"},{"Selected":true,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', '{"Id":"Ertesites_nyilt_naprol","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":false,"Text":"3 nap","Value":"3"},{"Selected":true,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1693, 1698, '{"Id":"Ertesites_oralatogatasrol","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":true,"Text":"3 nap","Value":"3"},{"Selected":false,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', '{"Id":"Ertesites_oralatogatasrol","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":true,"Text":"3 nap","Value":"3"},{"Selected":false,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1755, 1699, '{"Id":"Adminisztrator_ertesitese_orarendi_tanulo_utkozesrol","Value":"true"}', '{"Id":"Adminisztrator_ertesitese_orarendi_tanulo_utkozesrol","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6852, 1699, '{"Id":"Intezmeny_rovid_nevenek_beallitasa","Value":"true"}', '{"Id":"Intezmeny_rovid_nevenek_beallitasa","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(7746, 1699, '{"Id":"Lazar_Ervin_Program_kezelese","Value":"false"}', '{"Id":"Lazar_Ervin_Program_kezelese","Value":"false"}', 0, 1, @intezmenyID, @tanevID)
|
||||
|
||||
INSERT INTO dbo.T_RENDSZERBEALLITAS (C_BEALLITASTIPUS, C_ERTEKTIPUS, C_ALAPERTEK, C_ERTEK, SERIAL, CREATOR, C_INTEZMENYID, C_TANEVID)
|
||||
SELECT trb.C_BEALLITASTIPUS, trb.C_ERTEKTIPUS, trb.C_ALAPERTEK, trb.C_ERTEK, trb.SERIAL, trb.CREATOR, trb.C_INTEZMENYID, trb.C_TANEVID
|
||||
FROM @TEMP_RENDSZERBEALLITAS trb
|
||||
LEFT JOIN dbo.T_RENDSZERBEALLITAS rb ON rb.C_BEALLITASTIPUS = trb.C_BEALLITASTIPUS AND rb.C_INTEZMENYID = trb.C_INTEZMENYID AND trb.C_TANEVID = rb.C_TANEVID
|
||||
WHERE rb.C_BEALLITASTIPUS IS NULL
|
||||
|
||||
END
|
@@ -0,0 +1,349 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP PROCEDURE IF EXISTS [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyStatisztika]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyStatisztika]
|
||||
@pTanevId INT,
|
||||
@pOsztalyId INT,
|
||||
@pIntezmenyId INT,
|
||||
@pErtekelestipusaId INT,
|
||||
@pLezaroNaptipusId INT,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pTanoraiDicseretTipusId INT = 1536, -- Tanórai dicséret
|
||||
@pFelszereleshianyTipusId INT = 6324, -- Felszereléshiány
|
||||
@pHaziFeladatHianyTipusId INT = 6325, -- Házi feladat hiány
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@pElmeletgyakorlat BIT = 0
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
--Const
|
||||
DECLARE @ElsoFelveVege INT = 1400
|
||||
DECLARE @IneVege INT = 1403
|
||||
DECLARE @IIIneVege INT = 1404
|
||||
DECLARE @UtolsoTanitasiNap INT = 1395
|
||||
DECLARE @VegzosUtolsoTanitasiNap INT = 1402
|
||||
|
||||
DECLARE @kesespercHianyzashoz INT = 45
|
||||
DECLARE @kesespercGyakHianyzashoz INT = 45
|
||||
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
|
||||
--Iskolaerdeku tavollet szamit
|
||||
DECLARE @iskolaErdekuSzamit BIT = [dbo].fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, @pIntezmenyId, @pTanevId);
|
||||
|
||||
--Osztaly jellemzo
|
||||
DECLARE @keresztFeleves BIT = (SELECT IIF(C_KERESZTFELEVES = 'T', 1, 0) FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId)
|
||||
DECLARE @vegzosEvfolyamu BIT = (SELECT IIF(C_VEGZOSEVFOLYAM = 'T', 1, 0) FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId)
|
||||
|
||||
--Osztalyjellemzok alapjan a lezaro naptipus csereje
|
||||
SET @pLezaroNaptipusId = (
|
||||
IIF(@keresztFeleves = 0, IIF(@vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END)
|
||||
)
|
||||
|
||||
CREATE TABLE #aktualisOsztalyCsoportok (OSZTALYCSOPORTID INT);
|
||||
CREATE TABLE #osztalyTanulok (TANULOID INT PRIMARY KEY, BELEPESDATUM DATE, KILEPESDATUM DATE);
|
||||
CREATE TABLE #szurtErtekeles (
|
||||
T_TANULOERTEKELES_ID INT PRIMARY KEY, C_TANULOID INT, ERTEKELES NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, ERTEKELES_SZOVEG_MEGJEGYZES NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, C_ERTEKELESDATUM DATETIME,
|
||||
C_TANTARGYID INT, TANTARGY_NEV NVARCHAR(255) COLLATE DATABASE_DEFAULT, TARGYKATEGORIA_NEV NVARCHAR(255) COLLATE DATABASE_DEFAULT, TARGYKATEGORIA_SORSZAM INT, T_TANTARGY_C_FOTARGYE CHAR(1) COLLATE DATABASE_DEFAULT, T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1) COLLATE DATABASE_DEFAULT, C_OSZTALYCSOPORTID INT
|
||||
);
|
||||
CREATE TABLE #szurtMulasztas (TIPUS_CHAR CHAR(1) COLLATE DATABASE_DEFAULT, C_TIPUS INT , C_IGAZOLT CHAR(1) COLLATE DATABASE_DEFAULT, C_TANULOID INT, C_GYAKORLATI CHAR(1) COLLATE DATABASE_DEFAULT, KESESPERC INT, MULASZTASOK_SZAMA INT, HOZOTTIGAZOLTMULTASZTASOK_SZAMA INT, HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA INT);
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pTanevrendjeTanevKezdeteNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pLezaroNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
IF @pAtsoroltTanuloAdatok = 0
|
||||
BEGIN
|
||||
INSERT INTO #aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
--WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
ELSE IF @pAtsoroltTanuloAdatok = 1
|
||||
BEGIN
|
||||
INSERT INTO #aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
--WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
-- TANULÓK
|
||||
INSERT INTO #osztalyTanulok (TANULOID, BELEPESDATUM, KILEPESDATUM)
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS TANULOID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES
|
||||
WHERE T_TANULOCSOPORT_OSSZES.TOROLT = 'F' AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < @idoszakVege
|
||||
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND T_FELHASZNALO_OSSZES.C_TANEVID = @pTanevId;
|
||||
|
||||
-- OSZTÁLY
|
||||
SELECT T_OSZTALY_OSSZES.ID, C_NEV, C_VEGZOSEVFOLYAM, T_FELHASZNALO_OSSZES.C_NYOMTATASINEV, C_OSZTALYNAPLOMEGNYITASA, C_OSZTALYNAPLOZARASA, C_OSZTALYFONOKID
|
||||
FROM T_OSZTALY_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = T_OSZTALY_OSSZES.ID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ON T_OSZTALY_OSSZES.C_OSZTALYFONOKID = T_FELHASZNALO_OSSZES.ID
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES ON T_FELADATELLATASIHELY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_FELADATELLATASIHELYID
|
||||
WHERE T_OSZTALYCSOPORT_OSSZES.ID = @pOsztalyId;
|
||||
|
||||
--TANULÓK LISTA
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS C_TANULOID, T_FELHASZNALO_OSSZES.C_NYOMTATASINEV AS TANULONEV, T_FELHASZNALO_OSSZES.C_ANYJANEVE ANYJANEVE, T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO AS OKTATASIAZONOSITO, BELEPESDATUM, KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV;
|
||||
-- ÉRTÉKELÉS
|
||||
INSERT INTO #szurtErtekeles (T_TANULOERTEKELES_ID, C_TANULOID, ERTEKELES, ERTEKELES_SZOVEG_MEGJEGYZES, C_ERTEKELESDATUM, C_TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, T_TANTARGY_C_FOTARGYE, T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN, C_OSZTALYCSOPORTID)
|
||||
SELECT ROW_NUMBER() OVER (ORDER BY TanuloId), TanuloId
|
||||
,COALESCE(CAST(ErtekelesOsztalyzatValue AS NVARCHAR(MAX)),
|
||||
IIF(ErtekelesSzoveg IS NOT NULL, CASE WHEN ErtekelesSzovegRovidNev IN ('1', '2', '3', '4', '5') THEN 'Sz' ELSE ErtekelesSzovegRovidNev END, NULL),
|
||||
ErtekelesSzazalek)
|
||||
,COALESCE(ErtekelesSzoveg, ErtekelesTema, ''), Datum,TantargyId, COALESCE(TantargyNevNyomtatvanyban, TantargyNev) AS TANTARGY_NEV, TARGYKATEG.C_NAME, TARGYKATEG.C_VALUE, FotargyE, Altantargy, OsztalyCsoportId
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT) AS ERTEKELESEK
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = ERTEKELESEK.TargyKategoriaId AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE TantargyId IS NOT NULL AND (FotargyE = 'T' OR Altantargy = 'T')
|
||||
-- TANTÁRGYAK (TANTÁRGYFELOSZTÁS, ÉRTÉKELÉS)
|
||||
SELECT DISTINCT C_TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM (
|
||||
SELECT DISTINCT C_TANTARGYID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN #aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_FOGLALKOZAS_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_FOGLALKOZAS_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_FOGLALKOZAS_OSSZES.TOROLT = 'F' AND (TANTARGY.C_FOTARGYE = 'T' OR C_ALTANTARGYKENTNYOMTATVANYBAN = 'T')
|
||||
UNION
|
||||
SELECT DISTINCT C_TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, T_TANTARGY_C_FOTARGYE AS C_FOTARGYE, T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN AS C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM #szurtErtekeles
|
||||
WHERE (@pAtsoroltTanuloAdatok = 2 OR C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM #aktualisOsztalyCsoportok))
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
-- ÉRTÉKELÉS lista
|
||||
SELECT *
|
||||
FROM #szurtErtekeles;
|
||||
|
||||
--MAGATARTÁS-SZORGALOM
|
||||
SELECT ROW_NUMBER() OVER (ORDER BY TanuloId) AS ID, TanuloId AS C_TANULOID,
|
||||
COALESCE(CAST(MagatartasOsztalyzatValue AS NVARCHAR(MAX)), CAST(MagatartasErtekOsztalyzatkent AS NVARCHAR(MAX)), MagatartasSzovegRovidNev) AS MagatartasOsztalyzat, MagatartasErtek,
|
||||
COALESCE(CAST(SzorgalomOsztalyzatValue AS NVARCHAR(MAX)), CAST(SzorgalomErtekOsztalyzatkent AS NVARCHAR(MAX)), SzorgalomSzovegRovidNev) AS SzorgalomOsztalyzat, SzorgalomErtek,
|
||||
ErtekelesSzoveg AS C_ERTEKELESSZOVEG, Datum AS C_ERTEKELESDATUM, 'F' AS TOROLT
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT) AS ERTEKELESEK
|
||||
WHERE TantargyId IS NULL AND (@pAtsoroltTanuloAdatok > 0 OR OsztalyCsoportId IN (SELECT OSZTALYCSOPORTID FROM #aktualisOsztalyCsoportok));
|
||||
|
||||
--MULASZTÁS
|
||||
CREATE TABLE #Tanulok (TanuloId int)
|
||||
CREATE TABLE #Tipusok (Tipus_Char CHAR(1),Igazolt CHAR(1), Tipus INT, Gyakorlati CHAR(1))
|
||||
INSERT INTO #Tipusok (Tipus_Char,Igazolt,Tipus,Gyakorlati)VALUES
|
||||
('H','T',1500,'T'),('H','F',1500,'T'),('K','T',1499,'T'),('K','F',1499,'T'),
|
||||
('H','T',1500,'F'),('H','F',1500,'F'),('K','T',1499,'F'),('K','F',1499,'F')
|
||||
INSERT INTO #Tanulok
|
||||
SELECT DISTINCT
|
||||
tcs.C_TANULOID
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = @pTanevId
|
||||
INSERT INTO #szurtMulasztas (TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, C_GYAKORLATI,KESESPERC,MULASZTASOK_SZAMA, HOZOTTIGAZOLTMULTASZTASOK_SZAMA, HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA)
|
||||
|
||||
SELECT Tipus_Char, Tipus,Igazolt,TanuloId, Gyakorlati,0,0,0,0
|
||||
FROM #Tanulok CROSS APPLY #Tipusok
|
||||
|
||||
UPDATE szm SET
|
||||
KESESPERC = m.KesesPercben
|
||||
,MULASZTASOK_SZAMA = m.MULASZTASOK_SZAMA
|
||||
,HOZOTTIGAZOLTMULTASZTASOK_SZAMA = ISNULL(IIF(szm.C_IGAZOLT = 'T',hianyzas.HOZOTTIGAZOLTHIANYZAS,0),0)
|
||||
,HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA = ISNULL(IIF(szm.C_IGAZOLT = 'F',hianyzas.HOZOTTIGAZOLATLANHIANYZAS,0),0)
|
||||
FROM #szurtMulasztas szm
|
||||
LEFT JOIN
|
||||
( SELECT m.Tipusa, m.Igazolt, m.TanuloId, m.Gyakorlati,SUM(ISNULL(KesesPercben,0)) as KesesPercben, ISNULL(COUNT(m.Tipusa),0) AS MULASZTASOK_SZAMA
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, 0, IIF(@pAtsoroltTanuloAdatok > 0, 1, 0), @idoszakEleje, @idoszakVege, DEFAULT) m
|
||||
WHERE m.Igazolt IS NOT NULL AND m.Tipusa IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
GROUP BY m.Tipusa, m.Igazolt, m.TanuloId, m.Gyakorlati
|
||||
) m ON m.Gyakorlati = szm.C_GYAKORLATI AND m.Tipusa = szm.C_TIPUS AND m.Igazolt = szm.C_IGAZOLT AND m.TanuloId = szm.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tcs.C_TANULOID
|
||||
,SUM(tta.C_HOZOTTIGAZOLTHIANYZAS) as HOZOTTIGAZOLTHIANYZAS
|
||||
,SUM(tta.C_HOZOTTIGAZOLATLANHIANYZAS ) as HOZOTTIGAZOLATLANHIANYZAS
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.C_TANEVID = @pTanevId AND tta.TOROLT = 'F'
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.C_BELEPESDATUM < @idoszakVege
|
||||
AND tcs.TOROLT = 'F'
|
||||
GROUP BY tcs.C_TANULOID
|
||||
) as hianyzas on hianyzas.C_TANULOID = szm.C_TANULOID AND szm.TIPUS_CHAR = 'H' AND szm.C_GYAKORLATI = 'F'
|
||||
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
SELECT
|
||||
szm.TIPUS_CHAR,
|
||||
szm.C_TIPUS,
|
||||
szm.C_IGAZOLT,
|
||||
szm.C_TANULOID,
|
||||
szm.KESESPERC,
|
||||
szm.KESESORA,
|
||||
ISNULL(szm.MULASZTASOK_SZAMA,0) +
|
||||
IIF(szm.TIPUS_CHAR = 'K',0,IIF(szm.C_IGAZOLT = 'T',szm.HOZOTTIGAZOLTMULTASZTASOK_SZAMA,szm.HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA))
|
||||
AS MULASZTASOK_SZAMA,
|
||||
IIF(szm.TIPUS_CHAR = 'K',0,IIF(szm.C_IGAZOLT = 'T',szm.HOZOTTIGAZOLTMULTASZTASOK_SZAMA,szm.HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA))
|
||||
AS HOZOTTMULASZTASOK_SZAMA
|
||||
FROM (
|
||||
SELECT
|
||||
TIPUS_CHAR,
|
||||
C_TIPUS,
|
||||
C_IGAZOLT,
|
||||
C_TANULOID,
|
||||
SUM(KESESPERC) AS KESESPERC,
|
||||
SUM(KESESPERC)/@kesespercHianyzashoz AS KESESORA,
|
||||
SUM(ISNULL(MULASZTASOK_SZAMA,0)) AS MULASZTASOK_SZAMA,
|
||||
SUM(HOZOTTIGAZOLTMULTASZTASOK_SZAMA) AS HOZOTTIGAZOLTMULTASZTASOK_SZAMA,
|
||||
SUM(HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA) AS HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID) AS szm
|
||||
|
||||
ORDER BY szm.C_TANULOID, szm.C_TIPUS DESC, szm.C_IGAZOLT DESC
|
||||
;
|
||||
SELECT C_IGAZOLT, C_TANULOID, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, SUM(KESESPERC)/@kesespercHianyzashoz AS MULASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'K'
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID
|
||||
UNION ALL
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'H'
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID
|
||||
) AS KM
|
||||
GROUP BY C_IGAZOLT, C_TANULOID
|
||||
ORDER BY C_TANULOID, C_IGAZOLT DESC;
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
szm.TIPUS_CHAR,
|
||||
szm.C_TIPUS,
|
||||
szm.C_IGAZOLT,
|
||||
szm.C_TANULOID,
|
||||
szm.KESESPERC,
|
||||
szm.KESESORA,
|
||||
ISNULL(szm.MULASZTASOK_SZAMA,0) +
|
||||
IIF(szm.TIPUS_CHAR = 'K' OR szm.C_GYAKORLATI = 'T',0,IIF( tcs.C_BELEPESDATUM < @idoszakVege,IIF(szm.C_IGAZOLT = 'T',tta.C_HOZOTTIGAZOLTHIANYZAS,tta.C_HOZOTTIGAZOLATLANHIANYZAS),0))
|
||||
AS MULASZTASOK_SZAMA,
|
||||
IIF(szm.TIPUS_CHAR = 'K',0,IIF( tcs.C_BELEPESDATUM < @idoszakVege,IIF(szm.C_IGAZOLT = 'T',tta.C_HOZOTTIGAZOLTHIANYZAS,tta.C_HOZOTTIGAZOLATLANHIANYZAS),0))
|
||||
AS HOZOTTMULASZTASOK_SZAMA,
|
||||
szm.C_GYAKORLATI
|
||||
FROM (
|
||||
SELECT
|
||||
TIPUS_CHAR,
|
||||
C_TIPUS,
|
||||
C_IGAZOLT,
|
||||
C_TANULOID,
|
||||
KESESPERC,
|
||||
KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN @kesespercGyakHianyzashoz ELSE @kesespercHianyzashoz END) AS KESESORA,
|
||||
MULASZTASOK_SZAMA,
|
||||
C_GYAKORLATI
|
||||
FROM #szurtMulasztas ) AS szm
|
||||
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_TANULOID = szm.C_TANULOID AND tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND tcs.C_TANEVID = @pTanevId AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.C_TANEVID = @pTanevId AND tta.TOROLT = 'F'
|
||||
ORDER BY szm.C_TANULOID, szm.C_TIPUS DESC, szm.C_IGAZOLT DESC
|
||||
SELECT C_IGAZOLT, C_TANULOID, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN @kesespercGyakHianyzashoz ELSE @kesespercHianyzashoz END) AS MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'K'
|
||||
UNION ALL
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'H'
|
||||
) AS KM
|
||||
GROUP BY C_IGAZOLT, C_TANULOID, C_GYAKORLATI
|
||||
ORDER BY C_TANULOID, C_IGAZOLT DESC;
|
||||
END
|
||||
--TANÓRAI FELJEGYZÉSEK
|
||||
SELECT C_TANULOID, SUM(IIF(C_TIPUS = @pTanoraiDicseretTipusId, 1, 0)) AS TanoraiDicseret, SUM(IIF(C_TIPUS = @pFelszereleshianyTipusId, 1, 0)) AS FelszerelesHiany, SUM(IIF(C_TIPUS = @pHaziFeladatHianyTipusId, 1, 0)) AS HaziFeladatHiany, 'F' AS TOROLT
|
||||
FROM T_TANULOESEMENY_OSSZES AS TANULOESEMENY
|
||||
INNER JOIN T_TANITASIORA_OSSZES AS TANITASIORA ON TANITASIORA.ID = TANULOESEMENY.C_TANITASIORAID
|
||||
INNER JOIN T_TANULO_TANULOESEMENY AS TANULO_TANULOE ON TANULO_TANULOE.C_TANULOESEMENYID = TANULOESEMENY.ID
|
||||
INNER JOIN T_DICTIONARYITEMBASE AS TIPUS ON TIPUS.ID = TANULOESEMENY.C_TIPUS AND TIPUS.C_TANEVID = TANULOESEMENY.C_TANEVID
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = TANULO_TANULOE.C_TANULOID
|
||||
INNER JOIN #aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = TANITASIORA.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_CSOPORT_OSSZES AS CSOPORT ON CSOPORT.ID = OSZTALYCSOPORT.OSZTALYCSOPORTID
|
||||
LEFT JOIN T_OSZTALY_OSSZES AS OSZTALY ON OSZTALY.ID = OSZTALYCSOPORT.OSZTALYCSOPORTID
|
||||
WHERE TANULOESEMENY.TOROLT = 'F' AND TANITASIORA.TOROLT = 'F' AND TANULOESEMENY.C_TANEVID = @pTanevId AND C_TANITASIORAID IS NOT NULL
|
||||
AND TANITASIORA.C_DATUM BETWEEN @idoszakEleje AND @idoszakVege
|
||||
AND TANITASIORA.C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM #aktualisOsztalyCsoportok)
|
||||
GROUP BY C_TANULOID
|
||||
-- Osztály adatok az iktatáshoz
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV Osztalyfonok
|
||||
,f.ID OsztalyfonokId
|
||||
,ocs.C_NEV Osztalynev
|
||||
,@pOsztalyId OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,o.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
SELECT C_TANULOID, [D] AS Dicseret, [K] AS Kituno
|
||||
FROM (
|
||||
SELECT C_TANULOID, T_TANULOERTEKELES_ID, LEFT(ERTEKELES_SZOVEG_MEGJEGYZES, 1) AS Szoveg
|
||||
FROM #szurtErtekeles
|
||||
WHERE
|
||||
ERTEKELES = '5'
|
||||
AND LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(ERTEKELES_SZOVEG_MEGJEGYZES,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) IN ( 'Dicséret', 'Kitűnő' )
|
||||
) AS s
|
||||
PIVOT(COUNT(T_TANULOERTEKELES_ID) FOR Szoveg IN ([D], [K])) piv
|
||||
ORDER BY C_TANULOID
|
||||
END
|
||||
GO
|
@@ -0,0 +1,199 @@
|
||||
DROP PROCEDURE IF EXISTS sp_Nyomtatvany_Excel_IdoszakiOsztalyokCsoportokTantargyiStatisztika
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokCsoportokTantargyiStatisztika]
|
||||
@pTanevId INT,
|
||||
@pErtekelestipusaId INT,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pLezaroNaptipusId INT,
|
||||
@pAtsoroltTanuloAdatok INT = 1
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE @ElsoFelveVege INT = 1400
|
||||
DECLARE @IneVege INT = 1403
|
||||
DECLARE @IIIneVege INT = 1404
|
||||
DECLARE @UtolsoTanitasiNap INT = 1395
|
||||
DECLARE @VegzosUtolsoTanitasiNap INT = 1402
|
||||
|
||||
DECLARE @osztalyok TABLE(OSZTALYID INT, NEV NVARCHAR(MAX), EVFOLYAM INT, SORREND INT);
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
DECLARE @osztalyokCsoportokErtekeles TABLE (TECHNIKAIID NVARCHAR(MAX), OSZTALYCSOPORTID INT, OSZTALYCSOPORTNEV NVARCHAR(MAX), SORREND INT, TANTARGYID INT, TANTARGYNEV NVARCHAR(MAX), AKTUALISLETSZAM INT, ATLAG FLOAT);
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, BELEPESDATUM DATE, KILEPESDATUM DATE);
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/
|
||||
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT TANTARGYAK.ID AS TANTARGYID, COALESCE(TANTARGYAK.C_NEVNYOMTATVANYBAN, TANTARGYAK.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, TANTARGYAK.C_FOTARGYE, TANTARGYAK.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANTARGY_OSSZES AS TANTARGYAK
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGYAK.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = TANTARGYAK.C_TANEVID
|
||||
WHERE TANTARGYAK.TOROLT = 'F' AND TANTARGYAK.C_TANEVID = @pTanevId
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
SELECT CAST(OSZTALYCSOPORT.ID AS nvarchar(MAX)) + '_' + CAST(OSZTALYCSOPORT.ID AS nvarchar(MAX)) AS TECHNIKAIID, OSZTALYCSOPORT.ID AS OSZTALYID, OSZTALYCSOPORT.C_NEV AS NEV,
|
||||
OSZTALYCSOPORT.C_EVFOLYAMTIPUSA AS EVFOLYAM, EVFOLYAM.C_ORDER AS SORREND, (SELECT COUNT(TanuloId) FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, OSZTALYCSOPORT.ID, 0)) AS AKTUALISLETSZAM,
|
||||
C_KERESZTFELEVES AS KERESZTFELEVES, C_VEGZOSEVFOLYAM AS VEGZOSEVFOLYAM,
|
||||
ROW_NUMBER() OVER(ORDER BY EVFOLYAM.C_ORDER ASC, OSZTALYCSOPORT.C_NEV ASC) AS Row#
|
||||
,@pTanevId TanevId
|
||||
,OSZTALY.C_OSZTALYFONOKID OsztalyfonokId
|
||||
,OSZTALYCSOPORT.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,OSZTALY.C_TANTERVID TantervId
|
||||
,OSZTALY.C_KEPZESIFORMA KepzesiForma
|
||||
,OSZTALY.C_AGAZAT Agazat
|
||||
,OSZTALY.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,OSZTALY.C_SZAKKEPESITES Szakkepesites
|
||||
,OSZTALY.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,OSZTALYCSOPORT.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,OSZTALYCSOPORT.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,OSZTALY.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,OSZTALY.C_NEMZETISEGI OJNemzetisegi
|
||||
,OSZTALY.C_KETTANNYELVU OJKettannyelvu
|
||||
,OSZTALY.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,OSZTALY.C_LOGOPEDIAI OJLogopediai
|
||||
,OSZTALY.C_SPORT OJSportOsztaly
|
||||
,OSZTALY.C_AJPROGRAM OJAranyJanosProgram
|
||||
,OSZTALY.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
INTO #tempOsztalyok
|
||||
FROM T_OSZTALY_OSSZES AS OSZTALY
|
||||
JOIN T_OSZTALYCSOPORT_OSSZES AS OSZTALYCSOPORT ON OSZTALY.ID = OSZTALYCSOPORT.ID AND OSZTALYCSOPORT.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
JOIN T_DICTIONARYITEMBASE_OSSZES AS EVFOLYAM ON EVFOLYAM.ID = OSZTALYCSOPORT.C_EVFOLYAMTIPUSA AND EVFOLYAM.TOROLT = 'F' AND EVFOLYAM.C_TANEVID = OSZTALY.C_ALTANEVID
|
||||
WHERE OSZTALYCSOPORT.TOROLT = 'F' AND OSZTALY.C_ALTANEVID = @pTanevId
|
||||
ORDER BY Row#;
|
||||
|
||||
DECLARE @pOsztalyId INT = 0;
|
||||
DECLARE @sorrend INT = 0;
|
||||
DECLARE @keresztFeleves BIT = 0;
|
||||
DECLARE @vegzosEvfolyamu BIT = 0;
|
||||
WHILE (1 = 1)
|
||||
BEGIN
|
||||
SELECT TOP 1 @pOsztalyId = OSZTALYID, @sorrend = Row#, @keresztFeleves = IIF(KERESZTFELEVES = 'T', 1, 0), @vegzosEvfolyamu = IIF(VEGZOSEVFOLYAM = 'T', 1, 0)
|
||||
FROM #tempOsztalyok
|
||||
WHERE @sorrend < Row#
|
||||
ORDER BY Row#;
|
||||
IF @@ROWCOUNT = 0
|
||||
BEGIN
|
||||
BREAK;
|
||||
END
|
||||
|
||||
|
||||
--Osztalyjellemzok alapjan a nyito/lezaro naptipus csereje
|
||||
DECLARE @pKezdeteOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, @pTanevrendjeTanevKezdeteNaptipusId,
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @pLezaroOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, IIF(@vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pKezdeteOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pLezaroOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
|
||||
INSERT INTO @osztalyTanulok (TANULOID, BELEPESDATUM, KILEPESDATUM) (
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS TANULOID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN (
|
||||
SELECT tcs.C_TANULOID, tcs.C_OSZTALYCSOPORTID, tcs.C_BELEPESDATUM, tcs.C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID=tcs.C_OSZTALYCSOPORTID AND ocs.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId AND ocs.TOROLT='F'
|
||||
WHERE tcs.TOROLT = 'F' AND tcs.C_BELEPESDATUM < @idoszakVege
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND T_FELHASZNALO_OSSZES.C_TANEVID = @pTanevId
|
||||
);
|
||||
|
||||
INSERT INTO @osztalyokCsoportokErtekeles(TECHNIKAIID, OSZTALYCSOPORTID, OSZTALYCSOPORTNEV, SORREND, TANTARGYID, TANTARGYNEV, AKTUALISLETSZAM, ATLAG)
|
||||
SELECT CAST(@pOsztalyId AS nvarchar(MAX)) + '_' + CAST(OsztalyCsoportId AS nvarchar(MAX)) AS TechnikaiId, OsztalyCsoportId, OSZTALYCSOPORT.C_NEV + (IIF(CSOPORT.ID IS NOT NULL, ' (' + (SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId) + ')', '')) AS OsztalyCsoportNev, @sorrend,
|
||||
TantargyId, TantargyNev,
|
||||
(SELECT COUNT(TanuloId) FROM (
|
||||
SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, OsztalyCsoportId, 0)
|
||||
INTERSECT
|
||||
SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 0)) AS T) AS Aktualisletszam,
|
||||
AVG(CAST (ErtekelesOsztalyzatValue AS float)) AS Atlag
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent(@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, 1, DEFAULT) AS ERTEKELESEK
|
||||
INNER JOIN @osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = ERTEKELESEK.TanuloId
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES AS OSZTALYCSOPORT ON OSZTALYCSOPORT.ID = OsztalyCsoportId AND OSZTALYCSOPORT.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
LEFT JOIN T_CSOPORT_OSSZES AS CSOPORT ON CSOPORT.ID = OSZTALYCSOPORT.ID
|
||||
WHERE IsMagatartasSzorgalom = 'F'
|
||||
GROUP BY OsztalyCsoportId, OSZTALYCSOPORT.C_NEV, TantargyId, TantargyNev, CSOPORT.ID
|
||||
END
|
||||
|
||||
SELECT *
|
||||
FROM (
|
||||
SELECT DISTINCT TECHNIKAIID, OSZTALYCSOPORTID, OSZTALYCSOPORTNEV, AKTUALISLETSZAM, SORREND
|
||||
FROM @osztalyokCsoportokErtekeles
|
||||
UNION
|
||||
SELECT TECHNIKAIID, OSZTALYID AS OSZTALYCSOPORTID, NEV AS OSZTALYCSOPORTNEV, AKTUALISLETSZAM, Row# AS SORREND
|
||||
FROM #tempOsztalyok
|
||||
) AS OSZTALYOKCSOPORTOK
|
||||
ORDER BY SORREND, OSZTALYCSOPORTNEV;
|
||||
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV
|
||||
FROM @tantargyak;
|
||||
|
||||
SELECT *
|
||||
FROM @osztalyokCsoportokErtekeles;
|
||||
|
||||
select OSZTALYID AS OsztalyId
|
||||
,EVFOLYAM AS EvfolyamTipusa
|
||||
,FeladatEllatasiHelyId
|
||||
,KepzesiForma
|
||||
,OsztalyfonokId
|
||||
,TantervId
|
||||
,OJAranyJanosProgram
|
||||
,OJCSJKeresztfeleves
|
||||
,OJGyogypedagogiai
|
||||
,OJKettannyelvu
|
||||
,OJLogopediai
|
||||
,OJNemzetisegi
|
||||
,OJNyelviElokeszito
|
||||
,OJSportOsztaly
|
||||
,OJTechnikaiOsztaly
|
||||
,SzakmaCsoport
|
||||
,Agazat
|
||||
,Szakkepesites
|
||||
,Reszszakkepesites from #tempOsztalyok;
|
||||
|
||||
select cs.ID CsoportId
|
||||
,cs.C_CSOPORTVEZETOID as Csoportvezeto
|
||||
,cs.C_TIPUSA as CsoportTipus
|
||||
,ocs.C_KERESZTFELEVES as OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM as CSJVegzosEvfolyamu
|
||||
from T_CSOPORT_OSSZES cs
|
||||
inner join @osztalyokCsoportokErtekeles ocse on ocse.OSZTALYCSOPORTID = cs.iD
|
||||
inner join T_OSZTALYCSOPORT_OSSZES ocs on ocs.ID = cs.ID;
|
||||
|
||||
IF OBJECT_ID('tempdb..#tempOsztalyok') IS NOT NULL DROP TABLE #tempOsztalyok
|
||||
IF OBJECT_ID('tempdb..#tempErtekeles') IS NOT NULL DROP TABLE #tempErtekeles
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,394 @@
|
||||
DROP PROCEDURE IF EXISTS [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokTantargyiStatisztika]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokTantargyiStatisztika]
|
||||
@pTanevId INT,
|
||||
@pIntezmenyId INT,
|
||||
@pErtekelestipusaId INT,
|
||||
@pLezaroNaptipusId INT,
|
||||
@pTanoraiCsoportTipusIds INT = 1034,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pNemMulasztaIgazolasTipusIds INT = 1532, -- Iskola érdekű távollét
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@pElmeletgyakorlat BIT = 0
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
--Const
|
||||
DECLARE @ElsoFelveVege INT = 1400
|
||||
DECLARE @IneVege INT = 1403
|
||||
DECLARE @IIIneVege INT = 1404
|
||||
DECLARE @UtolsoTanitasiNap INT = 1395
|
||||
DECLARE @VegzosUtolsoTanitasiNap INT = 1402
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, @pIntezmenyId, @pTanevId);
|
||||
DECLARE @DefaultFeladatKategoriaId int = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/
|
||||
|
||||
CREATE TABLE #osztalyoktanoraicsoportok (OSZTALYCSOPORTID INT PRIMARY KEY, C_TIPUSA INT, C_VEGZOSEVFOLYAM CHAR(1));
|
||||
CREATE TABLE #osztalycsoportok (OSZTALYCSOPORTID INT PRIMARY KEY);
|
||||
CREATE TABLE #aktualisOsztalyCsoportok (OSZTALYCSOPORTID INT);
|
||||
CREATE TABLE #osztalyTanulok (TANULOID INT PRIMARY KEY, BELEPESDATUM DATE, KILEPESDATUM DATE);
|
||||
CREATE TABLE #tantargyak (TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
CREATE TABLE #osztalyok (OSZTALYID INT, NEV NVARCHAR(MAX), EVFOLYAM INT, SORREND INT);
|
||||
CREATE TABLE #osztalyokTanulokszama (OSZTALYID INT, TANULOKSZAMA INT);
|
||||
CREATE TABLE #osztalyokErtekeles (OSZTALYID INT, TANTARGYID INT, ATLAG FLOAT);
|
||||
CREATE TABLE #osztalyokMagszorg (OSZTALYID INT, MAGATLAG FLOAT, SZORGATLAG FLOAT);
|
||||
CREATE TABLE #osztalyokMulasztas (OSZTALYID INT, TIPUS_CHAR CHAR(1), C_TIPUS INT, C_IGAZOLT CHAR(1), MULASZTASOK_SZAMA INT, C_GYAKORLATI CHAR(1), DESCR CHAR(3));
|
||||
CREATE TABLE #szurtMulasztas (TIPUS_CHAR CHAR(1), C_TIPUS INT , C_IGAZOLT CHAR(1), C_TANULOID INT, C_GYAKORLATI CHAR(1), KESESPERC INT, MULASZTASOK_SZAMA INT);
|
||||
-- OSZTÁLYOK ÉS TANÓRAI CSOPORTOK
|
||||
INSERT INTO #osztalyoktanoraicsoportok (OSZTALYCSOPORTID, C_TIPUSA, C_VEGZOSEVFOLYAM) (
|
||||
SELECT T_OSZTALYCSOPORT_OSSZES.ID, C_TIPUSA, C_VEGZOSEVFOLYAM
|
||||
FROM T_OSZTALYCSOPORT_OSSZES
|
||||
LEFT JOIN T_CSOPORT_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = T_CSOPORT_OSSZES.ID
|
||||
LEFT JOIN T_OSZTALY_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = T_OSZTALY_OSSZES.ID
|
||||
WHERE ( C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId)) OR T_OSZTALY_OSSZES.ID IS NOT NULL)
|
||||
AND C_TANEVID = @pTanevId
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
|
||||
);
|
||||
-- TANTÁRGYAK
|
||||
INSERT INTO #tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT T_TANTARGY_OSSZES.ID AS TANTARGYID, COALESCE(T_TANTARGY_OSSZES.C_NEVNYOMTATVANYBAN, T_TANTARGY_OSSZES.C_NEV) AS TANTARGY_NEV, TARGYKAT.C_NAME AS TARGYKATEGORIA_NEV, TARGYKAT.C_VALUE AS TARGYKATEGORIA_SORSZAM, T_TANTARGY_OSSZES.C_FOTARGYE, T_TANTARGY_OSSZES.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANTARGY_OSSZES
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKAT ON TARGYKAT.ID = T_TANTARGY_OSSZES.C_TARGYKATEGORIA AND TARGYKAT.C_TANEVID = T_TANTARGY_OSSZES.C_TANEVID
|
||||
WHERE T_TANTARGY_OSSZES.TOROLT = 'F' AND T_TANTARGY_OSSZES.C_INTEZMENYID = @pIntezmenyId AND T_TANTARGY_OSSZES.C_TANEVID = @pTanevId
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
-- OSZTÁLYOK
|
||||
SELECT T_OSZTALYCSOPORT_OSSZES.ID AS OSZTALYID, T_OSZTALYCSOPORT_OSSZES.C_NEV AS NEV, T_OSZTALYCSOPORT_OSSZES.C_EVFOLYAMTIPUSA AS EVFOLYAM, EVFOLYAMTIPUS.C_ORDER AS SORREND,
|
||||
C_KERESZTFELEVES AS KERESZTFELEVES, C_VEGZOSEVFOLYAM AS VEGZOSEVFOLYAM,
|
||||
ROW_NUMBER() OVER(ORDER BY EVFOLYAMTIPUS.C_ORDER ASC, T_OSZTALYCSOPORT_OSSZES.C_NEV ASC) AS Row#
|
||||
,@pTanevId TanevId
|
||||
,T_OSZTALY_OSSZES.C_OSZTALYFONOKID OsztalyfonokId
|
||||
,T_OSZTALYCSOPORT_OSSZES.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,T_OSZTALY_OSSZES.C_TANTERVID TantervId
|
||||
,T_OSZTALY_OSSZES.C_KEPZESIFORMA KepzesiForma
|
||||
,T_OSZTALY_OSSZES.C_AGAZAT Agazat
|
||||
,T_OSZTALY_OSSZES.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,T_OSZTALY_OSSZES.C_SZAKKEPESITES Szakkepesites
|
||||
,T_OSZTALY_OSSZES.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,T_OSZTALYCSOPORT_OSSZES.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,T_OSZTALYCSOPORT_OSSZES.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,T_OSZTALY_OSSZES.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,T_OSZTALY_OSSZES.C_NEMZETISEGI OJNemzetisegi
|
||||
,T_OSZTALY_OSSZES.C_KETTANNYELVU OJKettannyelvu
|
||||
,T_OSZTALY_OSSZES.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,T_OSZTALY_OSSZES.C_LOGOPEDIAI OJLogopediai
|
||||
,T_OSZTALY_OSSZES.C_SPORT OJSportOsztaly
|
||||
,T_OSZTALY_OSSZES.C_AJPROGRAM OJAranyJanosProgram
|
||||
,T_OSZTALY_OSSZES.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
INTO #tempOsztalyok
|
||||
FROM T_OSZTALYCSOPORT_OSSZES
|
||||
JOIN T_OSZTALY_OSSZES ON T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID
|
||||
JOIN T_TANEV_OSSZES ON T_TANEV_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_TANEVID
|
||||
JOIN T_DICTIONARYITEMBASE_OSSZES AS EVFOLYAMTIPUS ON EVFOLYAMTIPUS.ID = T_OSZTALYCSOPORT_OSSZES.C_EVFOLYAMTIPUSA AND EVFOLYAMTIPUS.TOROLT = 'F' AND EVFOLYAMTIPUS.C_TANEVID = T_TANEV_OSSZES.ID
|
||||
WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_INTEZMENYID=@pIntezmenyId
|
||||
AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.ID = @pTanevId
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
|
||||
ORDER BY Row#;
|
||||
|
||||
IF OBJECT_ID('tempdb..#tempMulasztas') IS NOT NULL
|
||||
DROP TABLE #tempMulasztas;
|
||||
|
||||
CREATE TABLE #tempMulasztas (
|
||||
ID INT IDENTITY(1,1) PRIMARY KEY,
|
||||
TIPUS_CHAR CHAR(1), TIPUS INT, IGAZOLT CHAR(1), TANULOID NVARCHAR(20), GYAKORLATI CHAR(1), KESESPERC INT, MULASZTASOK_SZAMA INT, OSZTALYCSOPORTID INT, DATUM DATETIME);
|
||||
|
||||
DROP TABLE IF EXISTS #csopTip
|
||||
CREATE TABLE #csopTip (ID int)
|
||||
INSERT INTO #csopTip(ID)
|
||||
SELECT Id FROM fnGetDokumentumOsztalyVagyTanoraiCsoport (@pTanevId)
|
||||
|
||||
|
||||
INSERT INTO #tempMulasztas(TIPUS_CHAR, TIPUS, IGAZOLT, TANULOID, GYAKORLATI, KESESPERC, MULASZTASOK_SZAMA, OSZTALYCSOPORTID, DATUM)
|
||||
SELECT
|
||||
IIF(C_TIPUS = @pMulasztasTipusIdKeses, 'K', 'H')
|
||||
,tm.C_TIPUS
|
||||
,tm.C_IGAZOLT
|
||||
,tm.C_ORATANULOIID
|
||||
,tgy.C_GYAKORLATI
|
||||
,SUM(tm.C_KESESPERCBEN)
|
||||
,COUNT(tm.ID) AS MULASZTASOK_SZAMA
|
||||
,tao.C_OSZTALYCSOPORTID
|
||||
,tao.C_DATUM
|
||||
FROM T_TANULOMULASZTAS_OSSZES tm
|
||||
INNER JOIN T_TANITASIORA_OSSZES tao ON tao.ID = tm.C_TANITASIORAKID
|
||||
AND tao.C_TANEVID = @pTanevId
|
||||
AND tao.TOROLT = 'F'
|
||||
AND tao.C_MEGTARTOTT = 'T'
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANULOID = tm.C_ORATANULOIID
|
||||
AND tcs.C_OSZTALYCSOPORTID = tao.C_OSZTALYCSOPORTID
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND tao.C_DATUM BETWEEN tcs.C_BELEPESDATUM AND ISNULL(tcs.C_KILEPESDATUM, GETDATE())
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ID = tao.C_TANTARGYID AND tgy.TOROLT='F'
|
||||
INNER JOIN #csopTip csop ON csop.ID=tao.C_OSZTALYCSOPORTID
|
||||
WHERE tm.C_TIPUS IN (1499,1500)
|
||||
AND (@iskolaErdekuSzamit = 1 OR ISNULL(C_IGAZOLASTIPUSA,0)<>1533)
|
||||
AND tm.TOROLT = 'F' AND tm.C_IGAZOLT IS NOT NULL
|
||||
AND tm.C_TANEVID = @pTanevId
|
||||
GROUP BY C_TIPUS, C_IGAZOLT, C_ORATANULOIID, C_GYAKORLATI, tao.C_OSZTALYCSOPORTID, C_DATUM
|
||||
|
||||
|
||||
DECLARE @pOsztalyId INT = 0;
|
||||
DECLARE @sorrend INT = 0;
|
||||
DECLARE @keresztFeleves BIT = 0;
|
||||
DECLARE @vegzosEvfolyamu BIT = 0;
|
||||
|
||||
WHILE (1 = 1)
|
||||
BEGIN
|
||||
TRUNCATE TABLE #szurtMulasztas;
|
||||
TRUNCATE TABLE #osztalycsoportok;
|
||||
TRUNCATE TABLE #aktualisOsztalyCsoportok;
|
||||
TRUNCATE TABLE #osztalyTanulok;
|
||||
|
||||
SELECT TOP 1 @pOsztalyId = OSZTALYID, @sorrend = Row#, @keresztFeleves = IIF(KERESZTFELEVES = 'T', 1, 0), @vegzosEvfolyamu = IIF(VEGZOSEVFOLYAM = 'T', 1, 0)
|
||||
FROM #tempOsztalyok
|
||||
WHERE @sorrend < Row#
|
||||
ORDER BY Row#;
|
||||
IF @@ROWCOUNT = 0
|
||||
BEGIN
|
||||
BREAK;
|
||||
END
|
||||
|
||||
--Osztalyjellemzok alapjan a nyito/lezaro naptipus csereje
|
||||
DECLARE @pKezdeteOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, @pTanevrendjeTanevKezdeteNaptipusId,
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @pLezaroOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, IIF(@vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pKezdeteOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pLezaroOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
INSERT INTO #osztalycsoportok (OSZTALYCSOPORTID) (
|
||||
SELECT ID FROM fnGetKapcsolodoOsztalycsoportok(@pOsztalyId)
|
||||
WHERE (ID IN (SELECT T_OSZTALY_OSSZES.ID FROM T_OSZTALY_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_OSZTALY_OSSZES.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
) OR ID IN (SELECT ID FROM T_CSOPORT WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))))
|
||||
);
|
||||
INSERT INTO #aktualisOsztalyCsoportok (OSZTALYCSOPORTID) (
|
||||
SELECT ID FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT T_OSZTALY_OSSZES.ID FROM T_OSZTALY_OSSZES INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_OSZTALY_OSSZES.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))))
|
||||
);
|
||||
-- TANULÓK
|
||||
INSERT INTO #osztalyTanulok (TANULOID, BELEPESDATUM, KILEPESDATUM) (
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS TANULOID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES
|
||||
WHERE T_TANULOCSOPORT_OSSZES.TOROLT = 'F' AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < @idoszakVege
|
||||
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND T_FELHASZNALO_OSSZES.C_TANEVID = @pTanevId
|
||||
);
|
||||
--TANULÓK LISTA
|
||||
INSERT INTO #osztalyokTanulokszama (OSZTALYID, TANULOKSZAMA)
|
||||
SELECT @pOsztalyId AS OSZTALYID, COUNT(T_FELHASZNALO_OSSZES.ID) AS TANULOKSZAMA
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = T_FELHASZNALO_OSSZES.ID;
|
||||
|
||||
--ÉRTÉKELÉS LISTA
|
||||
IF OBJECT_ID('tempdb..#tempOsztalyErtekelesek') IS NOT NULL
|
||||
DROP TABLE #tempOsztalyErtekelesek;
|
||||
SELECT * INTO #tempOsztalyErtekelesek FROM fnGetDokumentumErtekelesekOsztalyonkent (@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT) AS ERTEKELESEK
|
||||
|
||||
INSERT INTO #osztalyokErtekeles (OSZTALYID, TANTARGYID, ATLAG)
|
||||
SELECT @pOsztalyId AS OSZTALYID, TantargyId, ROUND(AVG(CAST(ErtekelesOsztalyzatValue AS FLOAT)), 2) AS ATLAG
|
||||
FROM #tempOsztalyErtekelesek AS ERTEKELESEK
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = ERTEKELESEK.TanuloId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = ERTEKELESEK.TargyKategoriaId AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE TantargyId IS NOT NULL AND (FotargyE = 'T' OR Altantargy = 'T') AND ErtekelesOsztalyzatValue IS NOT NULL
|
||||
GROUP BY TantargyId;
|
||||
--MAGATARTAS-SZORGALOM LISTA
|
||||
INSERT INTO #osztalyokMagszorg (OSZTALYID, MAGATLAG, SZORGATLAG)
|
||||
SELECT @pOsztalyId AS OSZTALYID, ROUND(AVG(CAST(COALESCE(MagatartasOsztalyzatValue, MagatartasErtekOsztalyzatkent) AS FLOAT)), 2) AS MAGATLAG, ROUND(AVG(CAST(COALESCE(SzorgalomOsztalyzatValue, SzorgalomErtekOsztalyzatkent) AS FLOAT)), 2) AS SZORGATLAG
|
||||
FROM #tempOsztalyErtekelesek AS ERTEKELESEK
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = ERTEKELESEK.TanuloId
|
||||
WHERE TantargyId IS NULL AND COALESCE(MagatartasOsztalyzatValue, MagatartasErtekOsztalyzatkent) IS NOT NULL AND COALESCE(SzorgalomOsztalyzatValue, SzorgalomErtekOsztalyzatkent) IS NOT NULL ;
|
||||
|
||||
--MULASZTÁS
|
||||
INSERT INTO #szurtMulasztas (TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, C_GYAKORLATI, KESESPERC, MULASZTASOK_SZAMA)
|
||||
SELECT TIPUS_CHAR, TIPUS, IGAZOLT, TanuloMulasztas.TANULOID, GYAKORLATI, SUM(KESESPERC), SUM(MULASZTASOK_SZAMA)
|
||||
FROM #tempMulasztas AS TanuloMulasztas
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') AS TANULO ON TANULO.TanuloId = TanuloMulasztas.TANULOID
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = TanuloMulasztas.TanuloId
|
||||
WHERE TANULO.BelepesDatum <= DATUM
|
||||
AND (TANULO.KilepesDatum IS NULL OR TANULO.KilepesDatum >= DATUM)
|
||||
AND (IIF(@pAtsoroltTanuloAdatok > 0, 1, 0) = 1 OR (OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT))))
|
||||
AND (@idoszakEleje IS NULL OR DATUM >= @idoszakEleje)
|
||||
AND (@idoszakVege IS NULL OR DATUM <= @idoszakVege)
|
||||
GROUP BY TIPUS_CHAR, TIPUS, IGAZOLT, TanuloMulasztas.TANULOID, GYAKORLATI
|
||||
DROP TABLE IF EXISTS #OsztalyHozottMulasztas
|
||||
CREATE TABLE #OsztalyHozottMulasztas (OsztalyID INT, HozottIgazolt INT, HozottIgazolatlan INT)
|
||||
INSERT INTO #OsztalyHozottMulasztas (OsztalyID, HozottIgazolt, HozottIgazolatlan)
|
||||
SELECT
|
||||
o.ID
|
||||
,SUM(IIF( tcs.C_BELEPESDATUM < @idoszakVege,ISNULL(tta.C_HOZOTTIGAZOLTHIANYZAS,0),0))
|
||||
,SUM(IIF( tcs.C_BELEPESDATUM < @idoszakVege,ISNULL(tta.C_HOZOTTIGAZOLATLANHIANYZAS,0),0))
|
||||
FROM T_OSZTALY_OSSZES o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID= o.ID AND ocs.TOROLT = 'F'
|
||||
LEFT JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND ocs.C_TANEVID = @pTanevId AND tcs.TOROLT = 'F'
|
||||
LEFT JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.C_TANEVID = @pTanevId AND tta.TOROLT = 'F'
|
||||
WHERE C_ALTANEVID = @pTanevId AND o.TOROLT = 'F'
|
||||
GROUP BY o.ID
|
||||
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
INSERT INTO #osztalyokMulasztas (OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, MULASZTASOK_SZAMA, C_GYAKORLATI, DESCR)
|
||||
SELECT @pOsztalyId AS OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, CASE WHEN TIPUS_CHAR = 'K' THEN SUM(KESESORA) ELSE SUM(MULASZTASOK_SZAMA) END MULASZTASOK_SZAMA, 'F' AS C_GYAKORLATI, TIPUS_CHAR + C_IGAZOLT + 'F' AS DESCR
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, SUM(KESESPERC) AS KESESPERC, SUM(KESESPERC)/45 AS KESESORA, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID
|
||||
) AS T_SUM_MULASZTAS
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT
|
||||
ORDER BY C_TIPUS DESC, C_IGAZOLT DESC;
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #osztalyokMulasztas (OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, MULASZTASOK_SZAMA, C_GYAKORLATI, DESCR)
|
||||
SELECT @pOsztalyId AS OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, CASE WHEN TIPUS_CHAR = 'K' THEN SUM(KESESORA) ELSE SUM(MULASZTASOK_SZAMA) END MULASZTASOK_SZAMA, C_GYAKORLATI, TIPUS_CHAR + C_IGAZOLT + C_GYAKORLATI
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, KESESPERC, KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN 45 ELSE 45 END) AS KESESORA, MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
) AS T_SUM_MULASZTAS
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_GYAKORLATI, C_IGAZOLT
|
||||
ORDER BY C_TIPUS DESC, C_IGAZOLT DESC;
|
||||
END
|
||||
END
|
||||
UPDATE om SET MULASZTASOK_SZAMA = MULASZTASOK_SZAMA + IIF(om.DESCR = 'HTF',hm.HozottIgazolt, IIF(om.DESCR = 'HFF',hm.HozottIgazolatlan,0)) FROM #osztalyokMulasztas om LEFT JOIN #OsztalyHozottMulasztas hm ON hm.OsztalyID = om.OSZTALYID
|
||||
DROP TABLE IF EXISTS #OsztalyHozottMulasztas
|
||||
|
||||
DECLARE @cols AS NVARCHAR(MAX);
|
||||
DECLARE @colsHeader AS NVARCHAR(MAX);
|
||||
DECLARE @query AS NVARCHAR(MAX);
|
||||
SELECT OSZTALYID, TANTARGYID, ATLAG
|
||||
INTO #tempErtekeles
|
||||
FROM #osztalyokErtekeles;
|
||||
SELECT OSZTALYID, MAGATLAG, SZORGATLAG
|
||||
INTO #tempMagSzorgErtekeles
|
||||
FROM #osztalyokMagszorg;
|
||||
SELECT OSZTALYID, TANULOKSZAMA
|
||||
INTO #tempTanulokszama
|
||||
FROM #osztalyokTanulokszama;
|
||||
|
||||
SELECT @colsHeader = ISNULL(@colsHeader + ', ', '') + QUOTENAME(TANTARGYAK.TANTARGYID) + ' AS ' + QUOTENAME(TANTARGYAK.TANTARGY_NEV),
|
||||
@cols = ISNULL(@cols + ', ', '') + QUOTENAME(TANTARGYAK.TANTARGYID)
|
||||
FROM (
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_SORSZAM
|
||||
FROM #tantargyak
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
SET @query =
|
||||
'SELECT NEV AS [Osztályok], TANULOILETSZAM.TANULOKSZAMA AS [Tanulók száma], MAGSZORGERTEKELES.MAGATLAG AS [Magatartás átlag], MAGSZORGERTEKELES.SZORGATLAG AS [Szorgalom átlag], ' + @colsHeader + '
|
||||
FROM (SELECT OSZTALYID, NEV, Row# FROM #tempOsztalyok) AS OSZTALYOK
|
||||
LEFT JOIN (
|
||||
SELECT OSZTALYID AS E_OSZTALYID, TANTARGYID, ATLAG
|
||||
FROM #tempErtekeles
|
||||
) AS ERTEKELES ON ERTEKELES.E_OSZTALYID = OSZTALYOK.OSZTALYID
|
||||
PIVOT (
|
||||
MAX(ATLAG)
|
||||
FOR TANTARGYID IN (' + @cols + ')
|
||||
) AS PIVOTTABLE
|
||||
LEFT JOIN #tempTanulokszama AS TANULOILETSZAM ON PIVOTTABLE.OSZTALYID = TANULOILETSZAM.OSZTALYID
|
||||
LEFT JOIN (
|
||||
SELECT OSZTALYID AS MSZE_OSZTALYID, MAGATLAG, SZORGATLAG
|
||||
FROM #tempMagSzorgErtekeles
|
||||
) AS MAGSZORGERTEKELES ON PIVOTTABLE.OSZTALYID = MAGSZORGERTEKELES.MSZE_OSZTALYID
|
||||
ORDER BY Row#';
|
||||
execute(@query);
|
||||
|
||||
SELECT * INTO #tempForPivotMulasztas
|
||||
FROM #osztalyokMulasztas;
|
||||
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
SET @cols = 'HTF,KTF,HFF,KFF'
|
||||
SET @colsHeader = 'HTF AS [Igazolt hiányzás],KTF AS [Igazolt késés (óra)],HFF AS [Igazolatlan hiányzás],KFF AS [Igazolatlan késés (óra)]'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @cols = 'HTF,KTF,HFF,KFF,HTT,KTT,HFT,KFT'
|
||||
SET @colsHeader = 'HTF AS [Elméleti igazolt hiányzás],KTF AS [Elméleti igazolt késés (óra)],HFF AS [Elméleti igazolatlan hiányzás],KFF AS [Elméleti igazolatlan késés (óra)],HTT AS [Gyakorlati igazolt hiányzás],KTT AS [Gyakorlati igazolt késés (óra)],HFT AS [Gyakorlati igazolatlan hiányzás],KFT AS [Gyakorlati igazolatlan késés (óra)]'
|
||||
END
|
||||
SET @query =
|
||||
'SELECT ' + @colsHeader + '
|
||||
FROM (SELECT OSZTALYID, NEV, Row# FROM #tempOsztalyok) AS OSZTALYOK
|
||||
LEFT JOIN (
|
||||
SELECT OSZTALYID AS M_OSZTALYID, MULASZTASOK_SZAMA, DESCR
|
||||
FROM #tempForPivotMulasztas
|
||||
) AS MULASZTAS ON MULASZTAS.M_OSZTALYID = OSZTALYOK.OSZTALYID
|
||||
PIVOT (
|
||||
MAX(MULASZTASOK_SZAMA)
|
||||
FOR DESCR IN (' + @cols + ')
|
||||
) AS PIVOTTABLE
|
||||
ORDER BY Row#';
|
||||
execute(@query);
|
||||
|
||||
select OSZTALYID AS OsztalyId
|
||||
,EVFOLYAM AS EvfolyamTipusa
|
||||
,FeladatEllatasiHelyId
|
||||
,KepzesiForma
|
||||
,OsztalyfonokId
|
||||
,TantervId
|
||||
,OJAranyJanosProgram
|
||||
,OJCSJKeresztfeleves
|
||||
,OJGyogypedagogiai
|
||||
,OJKettannyelvu
|
||||
,OJLogopediai
|
||||
,OJNemzetisegi
|
||||
,OJNyelviElokeszito
|
||||
,OJSportOsztaly
|
||||
,OJTechnikaiOsztaly
|
||||
,SzakmaCsoport
|
||||
,Agazat
|
||||
,Szakkepesites
|
||||
,Reszszakkepesites from #tempOsztalyok;
|
||||
|
||||
DROP TABLE IF EXISTS #tempOsztalyok
|
||||
DROP TABLE IF EXISTS #tempTanulokszama
|
||||
DROP TABLE IF EXISTS #tempErtekeles
|
||||
DROP TABLE IF EXISTS #tempForPivotMulasztas
|
||||
|
||||
DROP TABLE IF EXISTS #tempOsztalyErtekelesek;
|
||||
DROP TABLE IF EXISTS #tempMulasztas;
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,307 @@
|
||||
DROP PROCEDURE IF EXISTS [dbo].[sp_Nyomtatvany_Excel_IdoszakiTanuloStatisztika]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiTanuloStatisztika]
|
||||
@pTanevId INT,
|
||||
@pIntezmenyId INT,
|
||||
@pErtekelestipusaId INT,
|
||||
@pLezaroNaptipusId INT,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@pElmeletgyakorlat BIT = 0
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
--Const
|
||||
DECLARE @ElsoFelveVege INT = 1400
|
||||
DECLARE @IneVege INT = 1403
|
||||
DECLARE @IIIneVege INT = 1404
|
||||
DECLARE @UtolsoTanitasiNap INT = 1395
|
||||
DECLARE @VegzosUtolsoTanitasiNap INT = 1402
|
||||
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, @pIntezmenyId, @pTanevId);
|
||||
|
||||
DECLARE @oid int, @onev nvarchar(50), @okf char(1), @ovegz char(1)
|
||||
DECLARE osztaly_cursor CURSOR FOR
|
||||
SELECT T_OSZTALYCSOPORT_OSSZES.ID AS OSZTALYID, T_OSZTALYCSOPORT_OSSZES.C_NEV AS NEV, C_KERESZTFELEVES AS KERESZTFELEVES, C_VEGZOSEVFOLYAM AS VEGZOSEVFOLYAM
|
||||
FROM T_OSZTALYCSOPORT_OSSZES
|
||||
JOIN T_OSZTALY_OSSZES ON T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID
|
||||
JOIN T_TANEV_OSSZES ON T_TANEV_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_TANEVID
|
||||
JOIN T_DICTIONARYITEMBASE_OSSZES ON T_DICTIONARYITEMBASE_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_EVFOLYAMTIPUSA AND T_DICTIONARYITEMBASE_OSSZES.TOROLT = 'F' AND T_DICTIONARYITEMBASE_OSSZES.C_TANEVID = T_TANEV_OSSZES.ID
|
||||
WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F' AND T_OSZTALYCSOPORT_OSSZES.C_INTEZMENYID=@pIntezmenyId AND T_TANEV_OSSZES.TOROLT = 'F' AND T_TANEV_OSSZES.ID = @pTanevId
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/
|
||||
ORDER BY T_DICTIONARYITEMBASE_OSSZES.C_ORDER ASC, T_OSZTALYCSOPORT_OSSZES.C_NEV ASC;
|
||||
|
||||
CREATE TABLE #osztalyTanulok (TANULOID NVARCHAR(20) COLLATE DATABASE_DEFAULT PRIMARY KEY, OSZTALYID INT, TANULONEV NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, OKTATASIAZONOSITO NVARCHAR(MAX), OSZTALYNEV NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, BELEPESDATUM DATE, KILEPESDATUM DATE);
|
||||
CREATE TABLE #tantargyak (TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, TARGYKATEGORIA_NEV NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1) COLLATE DATABASE_DEFAULT, C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1) COLLATE DATABASE_DEFAULT);
|
||||
CREATE TABLE #szurtMulasztas (TIPUS_CHAR CHAR(1) COLLATE DATABASE_DEFAULT, C_TIPUS INT , C_IGAZOLT CHAR(1) COLLATE DATABASE_DEFAULT, TANULOID NVARCHAR(20) COLLATE DATABASE_DEFAULT, C_GYAKORLATI CHAR(1) COLLATE DATABASE_DEFAULT, KESESPERC INT, MULASZTASOK_SZAMA INT);
|
||||
CREATE TABLE #szurtErtekeles (
|
||||
T_TANULOERTEKELES_ID INT, TANULOID NVARCHAR(20) COLLATE DATABASE_DEFAULT, ERTEKELES NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, ERTEKELES_SZOVEG_MEGJEGYZES NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, C_ERTEKELESDATUM DATETIME,
|
||||
TANTARGYID INT, TANTARGY_NEV NVARCHAR(255) COLLATE DATABASE_DEFAULT, TARGYKATEGORIA_NEV NVARCHAR(255) COLLATE DATABASE_DEFAULT, TARGYKATEGORIA_SORSZAM INT, T_TANTARGY_C_FOTARGYE CHAR(1) COLLATE DATABASE_DEFAULT, T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1) COLLATE DATABASE_DEFAULT, C_OSZTALYCSOPORTID INT
|
||||
);
|
||||
CREATE TABLE #szurtMagszorg (T_TANULOERTEKELES_ID INT, TANULOID NVARCHAR(20) COLLATE DATABASE_DEFAULT, MagatartasOsztalyzat NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, MagatartasErtek NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, SzorgalomOsztalyzat NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, SzorgalomErtek NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, ERTEKELESSZOVEG NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, ERTEKELESDATUM DATETIME, TOROLT CHAR(1) COLLATE DATABASE_DEFAULT);
|
||||
|
||||
CREATE TABLE #szurtMulasztasRes (TIPUS_CHAR CHAR(1) COLLATE DATABASE_DEFAULT, C_TIPUS INT , C_IGAZOLT CHAR(1) COLLATE DATABASE_DEFAULT, TANULOID NVARCHAR(20) COLLATE DATABASE_DEFAULT, KESESPERC INT, KESESORA INT, MULASZTASOK_SZAMA INT, C_GYAKORLATI CHAR(1) COLLATE DATABASE_DEFAULT);
|
||||
CREATE TABLE #szurtMulasztasOsszesRes (C_IGAZOLT CHAR(1) COLLATE DATABASE_DEFAULT, TANULOID NVARCHAR(20) COLLATE DATABASE_DEFAULT, MULASZTASOK_SZAMA INT, C_GYAKORLATI CHAR(1) COLLATE DATABASE_DEFAULT);
|
||||
|
||||
INSERT INTO #tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT TANTARGYAK.ID AS TANTARGYID, COALESCE(TANTARGYAK.C_NEVNYOMTATVANYBAN, TANTARGYAK.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, TANTARGYAK.C_FOTARGYE, TANTARGYAK.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANTARGY_OSSZES AS TANTARGYAK
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGYAK.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = TANTARGYAK.C_TANEVID
|
||||
WHERE TANTARGYAK.TOROLT = 'F' AND TANTARGYAK.C_TANEVID = @pTanevId
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
DROP TABLE IF EXISTS #tempMulasztas;
|
||||
|
||||
CREATE TABLE #tempMulasztas (
|
||||
ID INT IDENTITY(1,1) PRIMARY KEY,
|
||||
TIPUS_CHAR CHAR(1) COLLATE DATABASE_DEFAULT, TIPUS INT, IGAZOLT CHAR(1) COLLATE DATABASE_DEFAULT, TANULOID NVARCHAR(20) COLLATE DATABASE_DEFAULT, GYAKORLATI CHAR(1) COLLATE DATABASE_DEFAULT, KESESPERC INT, MULASZTASOK_SZAMA INT, OSZTALYCSOPORTID INT, DATUM DATETIME);
|
||||
|
||||
DROP TABLE IF EXISTS #csopTip
|
||||
CREATE TABLE #csopTip (ID int)
|
||||
INSERT INTO #csopTip(ID)
|
||||
SELECT Id FROM fnGetDokumentumOsztalyVagyTanoraiCsoport (@pTanevId)
|
||||
|
||||
INSERT INTO #tempMulasztas(TIPUS_CHAR, TIPUS, IGAZOLT, TANULOID, GYAKORLATI, KESESPERC, MULASZTASOK_SZAMA, OSZTALYCSOPORTID, DATUM)
|
||||
SELECT
|
||||
IIF(C_TIPUS = @pMulasztasTipusIdKeses, 'K', 'H')
|
||||
,tm.C_TIPUS
|
||||
,tm.C_IGAZOLT
|
||||
,tm.C_ORATANULOIID
|
||||
,tgy.C_GYAKORLATI
|
||||
,SUM(tm.C_KESESPERCBEN)
|
||||
,COUNT(tm.ID) AS MULASZTASOK_SZAMA
|
||||
,tao.C_OSZTALYCSOPORTID
|
||||
,tao.C_DATUM
|
||||
FROM T_TANULOMULASZTAS_OSSZES tm
|
||||
INNER JOIN T_TANITASIORA_OSSZES tao ON tao.ID = tm.C_TANITASIORAKID
|
||||
AND tao.C_TANEVID = @pTanevId
|
||||
AND tao.TOROLT = 'F'
|
||||
AND tao.C_MEGTARTOTT = 'T'
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANULOID = tm.C_ORATANULOIID
|
||||
AND tcs.C_OSZTALYCSOPORTID = tao.C_OSZTALYCSOPORTID
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND tao.C_DATUM BETWEEN tcs.C_BELEPESDATUM AND ISNULL(tcs.C_KILEPESDATUM, GETDATE())
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ID = tao.C_TANTARGYID AND tgy.TOROLT='F'
|
||||
INNER JOIN #csopTip csop ON csop.ID=tao.C_OSZTALYCSOPORTID
|
||||
WHERE tm.C_TIPUS IN (1499,1500)
|
||||
AND (@iskolaErdekuSzamit = 1 OR ISNULL(C_IGAZOLASTIPUSA,0)<>1533)
|
||||
AND tm.TOROLT = 'F' AND tm.C_IGAZOLT IS NOT NULL
|
||||
AND tm.C_TANEVID = @pTanevId
|
||||
GROUP BY C_TIPUS, C_IGAZOLT, C_ORATANULOIID, C_GYAKORLATI, tao.C_OSZTALYCSOPORTID, C_DATUM
|
||||
|
||||
|
||||
OPEN osztaly_cursor
|
||||
|
||||
FETCH NEXT FROM osztaly_cursor
|
||||
INTO @oid, @onev, @okf, @ovegz
|
||||
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
DECLARE @keresztFeleves BIT = (SELECT IIF(@okf = 'T', 1, 0))
|
||||
DECLARE @vegzosEvfolyamu BIT = (SELECT IIF(@ovegz = 'T', 1, 0))
|
||||
|
||||
--Osztalyjellemzok alapjan a nyito/lezaro naptipus csereje
|
||||
DECLARE @pKezdeteOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, @pTanevrendjeTanevKezdeteNaptipusId,
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @pLezaroOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, IIF(@vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pKezdeteOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @oid)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pLezaroOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @oid)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
INSERT INTO #osztalyTanulok (TANULOID, OSZTALYID, TANULONEV, OKTATASIAZONOSITO, OSZTALYNEV, BELEPESDATUM, KILEPESDATUM)
|
||||
SELECT DISTINCT CAST(TANCSOPORT.C_OSZTALYCSOPORTID AS NVARCHAR) + '_' + CAST(FELHASZNALO.ID AS NVARCHAR) /*AS OSZTALYTANULOID, FELHASZNALO.ID*/ AS TANULOID, TANCSOPORT.C_OSZTALYCSOPORTID AS OSZTALYID, C_NYOMTATASINEV, C_OKTATASIAZONOSITO, C_NEV, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES AS FELHASZNALO
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_NEV, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES AS TANULOCSOPORT
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES AS OSZTALYCSOPORT ON OSZTALYCSOPORT.ID = TANULOCSOPORT.C_OSZTALYCSOPORTID
|
||||
WHERE TANULOCSOPORT.TOROLT = 'F' AND TANULOCSOPORT.C_OSZTALYCSOPORTID = @oid AND TANULOCSOPORT.C_BELEPESDATUM < @idoszakVege AND (@keresztFeleves = 0 OR TANULOCSOPORT.C_BELEPESDATUM >= @idoszakEleje)
|
||||
AND (TANULOCSOPORT.C_KILEPESDATUM IS NULL OR TANULOCSOPORT.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = FELHASZNALO.ID
|
||||
WHERE FELHASZNALO.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @oid AND FELHASZNALO.C_TANEVID = @pTanevId;
|
||||
|
||||
DROP TABLE IF EXISTS #tempOsztalyErtekelesek;
|
||||
|
||||
SELECT * INTO #tempOsztalyErtekelesek FROM fnGetDokumentumErtekelesekOsztalyonkent (@pTanevId, @oid, @pErtekelestipusaId, DEFAULT, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT) AS ERTEKELESEK
|
||||
|
||||
INSERT INTO #szurtErtekeles (T_TANULOERTEKELES_ID, TANULOID, ERTEKELES, ERTEKELES_SZOVEG_MEGJEGYZES, C_ERTEKELESDATUM, TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, T_TANTARGY_C_FOTARGYE, T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN, C_OSZTALYCSOPORTID)
|
||||
SELECT ROW_NUMBER() OVER (ORDER BY TanuloId), CAST(@oid AS NVARCHAR) + '_' + CAST(TanuloId AS NVARCHAR)
|
||||
,COALESCE(CAST(ErtekelesOsztalyzatValue AS NVARCHAR(MAX)),
|
||||
IIF(ErtekelesSzoveg IS NOT NULL, CASE WHEN ErtekelesSzovegRovidNev IN ('1', '2', '3', '4', '5') THEN 'Sz' ELSE ErtekelesSzovegRovidNev END, NULL),
|
||||
ErtekelesSzazalek)
|
||||
,COALESCE(ErtekelesSzoveg, ErtekelesTema, ''), Datum, TantargyId, TantargyNevZarojellel, TARGYKATEG.C_NAME, TARGYKATEG.C_VALUE, FotargyE, Altantargy, OsztalyCsoportId
|
||||
FROM #tempOsztalyErtekelesek AS ERTEKELESEK
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = ERTEKELESEK.TargyKategoriaId AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE TantargyId IS NOT NULL AND (FotargyE = 'T' OR Altantargy = 'T')
|
||||
|
||||
--MAGATARTÁS-SZORGALOM
|
||||
INSERT INTO #szurtMagszorg (T_TANULOERTEKELES_ID, TANULOID, MagatartasOsztalyzat, MagatartasErtek, SzorgalomOsztalyzat, SzorgalomErtek, ERTEKELESSZOVEG, ERTEKELESDATUM, TOROLT)
|
||||
SELECT ROW_NUMBER() OVER (ORDER BY TanuloId) AS ID, CAST(@oid AS NVARCHAR) + '_' + CAST(TanuloId AS NVARCHAR) AS TANULOID,
|
||||
COALESCE(CAST(MagatartasOsztalyzatValue AS NVARCHAR(MAX)), CAST(MagatartasErtekOsztalyzatkent AS NVARCHAR(MAX)), MagatartasSzovegRovidNev) AS MagatartasOsztalyzat, MagatartasErtek,
|
||||
COALESCE(CAST(SzorgalomOsztalyzatValue AS NVARCHAR(MAX)), CAST(SzorgalomErtekOsztalyzatkent AS NVARCHAR(MAX)), SzorgalomSzovegRovidNev) AS SzorgalomOsztalyzat, SzorgalomErtek,
|
||||
ErtekelesSzoveg AS C_ERTEKELESSZOVEG, Datum AS C_ERTEKELESDATUM, 'F' AS TOROLT
|
||||
FROM #tempOsztalyErtekelesek AS ERTEKELESEK
|
||||
WHERE TantargyId IS NULL;
|
||||
|
||||
--MULASZTÁS
|
||||
DROP TABLE IF EXISTS #HozottMulasztas
|
||||
CREATE TABLE #HozottMulasztas (OsztalyId_TanuloID NVARCHAR(20) COLLATE DATABASE_DEFAULT, HozottIgazolt INT, HozottIgazolatlan INT)
|
||||
INSERT INTO #HozottMulasztas (OsztalyId_TanuloID, HozottIgazolt, HozottIgazolatlan)
|
||||
SELECT
|
||||
CAST(o.ID AS NVARCHAR) + '_' + CAST(tcs.C_TANULOID AS NVARCHAR)
|
||||
,SUM(IIF( tcs.C_BELEPESDATUM < @idoszakVege,ISNULL(tta.C_HOZOTTIGAZOLTHIANYZAS,0),0))
|
||||
,SUM(IIF( tcs.C_BELEPESDATUM < @idoszakVege,ISNULL(tta.C_HOZOTTIGAZOLATLANHIANYZAS,0),0))
|
||||
FROM T_OSZTALY_OSSZES o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID= o.ID AND ocs.TOROLT = 'F'
|
||||
LEFT JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND ocs.C_TANEVID = @pTanevId AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.C_TANEVID = @pTanevId AND tta.TOROLT = 'F'
|
||||
WHERE C_ALTANEVID = @pTanevId AND o.TOROLT = 'F'
|
||||
GROUP BY tcs.C_TANULOID, o.ID
|
||||
|
||||
INSERT INTO #szurtMulasztas (TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID, C_GYAKORLATI, KESESPERC, MULASZTASOK_SZAMA)
|
||||
SELECT TIPUS_CHAR, TIPUS, IGAZOLT, CAST(@oid AS NVARCHAR) + '_' + CAST(TanuloMulasztas.TANULOID AS NVARCHAR), GYAKORLATI, SUM(KESESPERC), SUM(MULASZTASOK_SZAMA)
|
||||
FROM #tempMulasztas AS TanuloMulasztas
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @oid, 'T') AS TANULO ON TANULO.TanuloId = TanuloMulasztas.TANULOID
|
||||
WHERE TANULO.BelepesDatum <= DATUM
|
||||
AND (TANULO.KilepesDatum IS NULL OR TANULO.KilepesDatum >= DATUM)
|
||||
AND (IIF(@pAtsoroltTanuloAdatok > 0, 1, 0) = 1 OR (OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@oid, @pTanevId, DEFAULT))))
|
||||
AND (@idoszakEleje IS NULL OR DATUM >= @idoszakEleje)
|
||||
AND (@idoszakVege IS NULL OR DATUM <= @idoszakVege)
|
||||
GROUP BY TIPUS_CHAR, TIPUS, IGAZOLT, TanuloMulasztas.TANULOID, GYAKORLATI
|
||||
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
INSERT INTO #szurtMulasztasRes
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID, SUM(KESESPERC) AS KESESPERC, SUM(KESESPERC)/45 AS KESESORA, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA, 'F'
|
||||
FROM #szurtMulasztas
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID
|
||||
ORDER BY TANULOID, C_TIPUS DESC, C_IGAZOLT DESC;
|
||||
|
||||
INSERT INTO #szurtMulasztasOsszesRes
|
||||
SELECT C_IGAZOLT, TANULOID, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA, 'F'
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID, SUM(KESESPERC)/45 AS MULASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'K'
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID
|
||||
UNION ALL
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'H'
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID
|
||||
) AS KM
|
||||
GROUP BY C_IGAZOLT, TANULOID
|
||||
ORDER BY TANULOID, C_IGAZOLT DESC;
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #szurtMulasztasRes
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID, KESESPERC, KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN 45 ELSE 45 END) AS KESESORA, MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
ORDER BY TANULOID, C_TIPUS DESC, C_IGAZOLT DESC;
|
||||
|
||||
INSERT INTO #szurtMulasztasOsszesRes
|
||||
SELECT C_IGAZOLT, TANULOID, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID, KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN 45 ELSE 45 END) AS MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'K'
|
||||
UNION ALL
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID, MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'H'
|
||||
) AS KM
|
||||
GROUP BY C_IGAZOLT, TANULOID, C_GYAKORLATI
|
||||
ORDER BY TANULOID, C_IGAZOLT DESC;
|
||||
END
|
||||
|
||||
FETCH NEXT FROM osztaly_cursor
|
||||
INTO @oid, @onev, @okf, @ovegz
|
||||
END
|
||||
CLOSE osztaly_cursor;
|
||||
DEALLOCATE osztaly_cursor;
|
||||
UPDATE szm SET MULASZTASOK_SZAMA = ISNULL(MULASZTASOK_SZAMA,0) +
|
||||
IIF(szm.TIPUS_CHAR = 'H' AND szm.C_IGAZOLT = 'T' AND szm.C_GYAKORLATI = 'F',hm.HozottIgazolt, IIF(szm.TIPUS_CHAR = 'H' AND szm.C_IGAZOLT = 'F' AND szm.C_GYAKORLATI = 'F',hm.HozottIgazolatlan,0))
|
||||
FROM #szurtMulasztasRes szm LEFT JOIN #HozottMulasztas hm ON hm.OsztalyId_TanuloID = szm.TANULOID
|
||||
|
||||
INSERT INTO #szurtMulasztasRes (TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID, MULASZTASOK_SZAMA, C_GYAKORLATI)
|
||||
SELECT 'H',@pMulasztasTipusIdHianyzas, 'T', hm.OsztalyId_TanuloID, hm.HozottIgazolt, 'F' FROM #HozottMulasztas hm
|
||||
LEFT JOIN #szurtMulasztasRes szm ON szm.TANULOID = hm.OsztalyId_TanuloID
|
||||
WHERE szm.TANULOID IS NULL AND hm.OsztalyId_TanuloID IS NOT NULL
|
||||
|
||||
INSERT INTO #szurtMulasztasRes (TIPUS_CHAR, C_TIPUS, C_IGAZOLT, TANULOID, MULASZTASOK_SZAMA, C_GYAKORLATI)
|
||||
SELECT 'H',@pMulasztasTipusIdHianyzas, 'F', hm.OsztalyId_TanuloID, hm.HozottIgazolatlan, 'F' FROM #HozottMulasztas hm
|
||||
LEFT JOIN #szurtMulasztasRes szm ON szm.TANULOID = hm.OsztalyId_TanuloID
|
||||
WHERE (szm.TANULOID IS NULL OR NOT EXISTS (SELECT TOP 1 TANULOID FROM #szurtMulasztasRes szm2 WHERE szm2.TANULOID = hm.OsztalyId_TanuloID AND szm2.C_IGAZOLT='F' AND szm2.TIPUS_CHAR = 'H' AND szm2.C_GYAKORLATI = 'F') ) AND hm.OsztalyId_TanuloID IS NOT NULL
|
||||
|
||||
DROP TABLE IF EXISTS #OsztalyHozottMulasztas
|
||||
SELECT DISTINCT TANULOID, TANULONEV, OKTATASIAZONOSITO, OSZTALYNEV, FORMAT(BELEPESDATUM, 'yyyy.MM.dd', 'hu-HU') + ' - ' + ISNULL (FORMAT(KILEPESDATUM, 'yyyy.MM.dd', 'hu-HU'), '') AS BESOROLASA, OSZTALYID
|
||||
FROM #osztalyTanulok
|
||||
ORDER BY OSZTALYNEV, TANULONEV;
|
||||
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_SORSZAM
|
||||
FROM #tantargyak
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
SELECT * FROM #szurtErtekeles
|
||||
|
||||
SELECT * FROM #szurtMagszorg
|
||||
|
||||
SELECT * FROM #szurtMulasztasRes
|
||||
|
||||
SELECT * FROM #szurtMulasztasOsszesRes
|
||||
|
||||
SELECT TANULOID, [D] AS Dicseret, [K] AS Kituno
|
||||
FROM (
|
||||
SELECT TANULOID, T_TANULOERTEKELES_ID, LEFT(ERTEKELES_SZOVEG_MEGJEGYZES, 1) AS Szoveg
|
||||
FROM #szurtErtekeles
|
||||
WHERE
|
||||
ERTEKELES = '5'
|
||||
AND LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(ERTEKELES_SZOVEG_MEGJEGYZES,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) IN ( 'Dicséret', 'Kitűnő' )
|
||||
) AS s
|
||||
PIVOT(COUNT(T_TANULOERTEKELES_ID) FOR Szoveg IN ([D], [K])) piv
|
||||
ORDER BY TANULOID
|
||||
|
||||
DROP TABLE IF EXISTS #tempOsztalyErtekelesek;
|
||||
|
||||
DROP TABLE IF EXISTS #tempMulasztas;
|
||||
END
|
||||
GO
|
@@ -0,0 +1,182 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakGyakorlatiOraMulasztasiSzazalekStatisztika]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakGyakorlatiOraMulasztasiSzazalekStatisztika]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakGyakorlatiOraMulasztasiSzazalekStatisztika]
|
||||
@pTanevId INT,
|
||||
@pOsztalyId INT,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pMegtartottVagyMegtarthato INT = 1,
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@tanitasiHetekSzamaVegzos INT,
|
||||
@tanitasiHetekSzamaNemVegzos INT,
|
||||
@isAltantargyBeszamitasa BIT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, (SELECT C_INTEZMENYID FROM T_TANEV_OSSZES WHERE ID = @pTanevId), @pTanevId);
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pTanevrendjeTanevKezdeteNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
DECLARE @idoszakVege DATE = GETDATE();
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, TANULONEV NVARCHAR(MAX), BELEPESDATUM DATE, KILEPESDATUM DATE, OKTATASIAZONOSITO NVARCHAR(20));
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
INSERT INTO @osztalyTanulok (TANULOID, TANULONEV, BELEPESDATUM, KILEPESDATUM, OKTATASIAZONOSITO)
|
||||
SELECT FELHASZNALO.ID AS TANULOID, C_NYOMTATASINEV, C_BELEPESDATUM, C_KILEPESDATUM, C_OKTATASIAZONOSITO
|
||||
FROM T_FELHASZNALO_OSSZES AS FELHASZNALO
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES AS TANULOCSOPORT
|
||||
WHERE TANULOCSOPORT.TOROLT = 'F' AND TANULOCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND TANULOCSOPORT.C_BELEPESDATUM < @idoszakVege
|
||||
AND (TANULOCSOPORT.C_KILEPESDATUM IS NULL OR TANULOCSOPORT.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = FELHASZNALO.ID
|
||||
WHERE FELHASZNALO.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND FELHASZNALO.C_TANEVID = @pTanevId;
|
||||
|
||||
DECLARE @aktualisOsztalyCsoportok TABLE (OSZTALYCSOPORTID INT);
|
||||
IF @pAtsoroltTanuloAdatok = 0
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE IF @pAtsoroltTanuloAdatok = 1
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT DISTINCT TANTARGYAK.ID AS TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM (
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN @aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_FOGLALKOZAS_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_FOGLALKOZAS_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_FOGLALKOZAS_OSSZES.TOROLT = 'F' AND TANTARGY.C_GYAKORLATI = 'T'
|
||||
UNION
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANITASIORA_OSSZES
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_TANITASIORA_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_TANITASIORA_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_TANITASIORA_OSSZES.TOROLT = 'F' AND C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM @aktualisOsztalyCsoportok) AND TANTARGY.C_GYAKORLATI = 'T'
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
|
||||
SELECT DISTINCT TANULOID, TANULONEV, OKTATASIAZONOSITO
|
||||
FROM @osztalyTanulok
|
||||
ORDER BY TANULONEV;
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV
|
||||
FROM @tantargyak;
|
||||
SELECT * INTO #tempMulasztas FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT, DEFAULT, DEFAULT) WHERE Tipusa IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
CREATE TABLE #tempTanorak (Orakszama INT, TanuloId INT, TantargyId INT, TantargyNev NVARCHAR(MAX) COLLATE Hungarian_CI_AI, Fotargye CHAR(1) COLLATE Hungarian_CI_AI, Altargye CHAR(1) COLLATE Hungarian_CI_AI, Gyakorlati CHAR(1) COLLATE Hungarian_CI_AI)
|
||||
IF @pMegtartottVagyMegtarthato = 1
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent (@pTanevId, @pOsztalyId, @pAtsoroltTanuloAdatok, @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos, @isAltantargyBeszamitasa)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtartottOrakTantargyankent (@pTanevId, @pOsztalyId, @pAtsoroltTanuloAdatok)
|
||||
END
|
||||
SELECT MegtartottOrak.TanuloId, MegtartottOrak.TantargyId, MegtartottOrak.Gyakorlati,
|
||||
CAST(Mulasztasokszam AS float) / Orakszama AS MulasztasArany, CAST(Mulasztasokszam AS float) / Orakszama * 100 AS MulasztasSzazalek,
|
||||
CAST(Mulasztasokszam AS NVARCHAR) + '/' + CAST(Orakszama AS NVARCHAR) AS Info
|
||||
FROM (
|
||||
SELECT SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses,CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS Mulasztasokszam, TanuloId, TantargyId, Gyakorlati
|
||||
FROM #tempMulasztas
|
||||
WHERE Gyakorlati = 'T'
|
||||
GROUP BY TanuloId, TantargyId, Gyakorlati
|
||||
) AS Mulasztasok
|
||||
INNER JOIN (
|
||||
SELECT Orakszama, Tanuloid, TantargyId, Gyakorlati, TantargyNev
|
||||
FROM #tempTanorak
|
||||
WHERE Gyakorlati = 'T'
|
||||
) AS MegtartottOrak
|
||||
ON MegtartottOrak.TantargyId = Mulasztasok.TantargyId
|
||||
AND MegtartottOrak.TanuloId = Mulasztasok.TanuloId
|
||||
AND MegtartottOrak.Gyakorlati = Mulasztasok.Gyakorlati
|
||||
ORDER BY TanuloId, TantargyId
|
||||
SELECT MegtartottOrak.TanuloId, MegtartottOrak.Gyakorlati,
|
||||
CAST(Mulasztasokszam AS float) / Orakszama AS MulasztasArany, CAST(Mulasztasokszam AS float) / Orakszama * 100 AS MulasztasSzazalek,
|
||||
CAST(Mulasztasokszam AS NVARCHAR) + '/' + CAST(Orakszama AS NVARCHAR) AS Info
|
||||
FROM (
|
||||
SELECT SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses,CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS Mulasztasokszam, TanuloId, Gyakorlati
|
||||
FROM #tempMulasztas
|
||||
WHERE Gyakorlati = 'T'
|
||||
GROUP BY TanuloId, Gyakorlati
|
||||
) AS Mulasztasok
|
||||
INNER JOIN (
|
||||
SELECT Tanuloid, Gyakorlati, SUM(Orakszama) as Orakszama
|
||||
FROM #tempTanorak
|
||||
WHERE Gyakorlati = 'T'
|
||||
GROUP BY Tanuloid, Gyakorlati
|
||||
) AS MegtartottOrak
|
||||
ON
|
||||
MegtartottOrak.TanuloId = Mulasztasok.TanuloId
|
||||
AND MegtartottOrak.Gyakorlati = Mulasztasok.Gyakorlati
|
||||
ORDER BY TanuloId
|
||||
IF OBJECT_ID('tempdb..#tempTanorak') IS NOT NULL DROP TABLE #tempTanorak
|
||||
IF OBJECT_ID('tempdb..#tempMulasztas') IS NOT NULL DROP TABLE #tempMulasztas
|
||||
|
||||
-- Osztály adatok az iktatáshoz
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV Osztalyfonok
|
||||
,f.ID OsztalyfonokId
|
||||
,ocs.C_NEV Osztalynev
|
||||
,@pOsztalyId OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,o.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
END;
|
||||
|
||||
|
||||
GO
|
@@ -0,0 +1,160 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakMulasztasiSzazalekStatisztika]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakMulasztasiSzazalekStatisztika]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakMulasztasiSzazalekStatisztika]
|
||||
@pTanevId INT,
|
||||
@pOsztalyId INT,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pMegtartottVagyMegtarthato INT = 1,
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@tanitasiHetekSzamaVegzos INT = 32,
|
||||
@tanitasiHetekSzamaNemVegzos INT = 36,
|
||||
@isAltantargyBeszamitasa BIT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, (SELECT C_INTEZMENYID FROM T_TANEV_OSSZES WHERE ID = @pTanevId), @pTanevId);
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pTanevrendjeTanevKezdeteNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
DECLARE @idoszakVege DATE = GETDATE();
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, TANULONEV NVARCHAR(MAX), BELEPESDATUM DATE, KILEPESDATUM DATE, OKTATASIAZONOSITO NVARCHAR(20));
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
INSERT INTO @osztalyTanulok (TANULOID, TANULONEV, BELEPESDATUM, KILEPESDATUM, OKTATASIAZONOSITO)
|
||||
SELECT FELHASZNALO.ID AS TANULOID, C_NYOMTATASINEV, C_BELEPESDATUM, C_KILEPESDATUM, C_OKTATASIAZONOSITO
|
||||
FROM T_FELHASZNALO_OSSZES AS FELHASZNALO
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES AS TANULOCSOPORT
|
||||
WHERE TANULOCSOPORT.TOROLT = 'F' AND TANULOCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND TANULOCSOPORT.C_BELEPESDATUM < @idoszakVege
|
||||
AND (TANULOCSOPORT.C_KILEPESDATUM IS NULL OR TANULOCSOPORT.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = FELHASZNALO.ID
|
||||
WHERE FELHASZNALO.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND FELHASZNALO.C_TANEVID = @pTanevId;
|
||||
|
||||
DECLARE @aktualisOsztalyCsoportok TABLE (OSZTALYCSOPORTID INT);
|
||||
IF @pAtsoroltTanuloAdatok = 0
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE IF @pAtsoroltTanuloAdatok = 1
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT DISTINCT TANTARGYAK.ID AS TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM (
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN @aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_FOGLALKOZAS_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_FOGLALKOZAS_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_FOGLALKOZAS_OSSZES.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANITASIORA_OSSZES
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_TANITASIORA_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_TANITASIORA_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_TANITASIORA_OSSZES.TOROLT = 'F' AND C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM @aktualisOsztalyCsoportok)
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
SELECT DISTINCT TANULOID, TANULONEV, OKTATASIAZONOSITO
|
||||
FROM @osztalyTanulok
|
||||
ORDER BY TANULONEV;
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV
|
||||
FROM @tantargyak;
|
||||
SELECT * INTO #tempMulasztas FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT, DEFAULT, DEFAULT) WHERE Tipusa IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
CREATE TABLE #tempTanorak (Orakszama INT, TanuloId INT, TantargyId INT, TantargyNev NVARCHAR(MAX) COLLATE Hungarian_CI_AI, Fotargye CHAR(1) COLLATE Hungarian_CI_AI, Altargye CHAR(1) COLLATE Hungarian_CI_AI, Gyakorlati CHAR(1) COLLATE Hungarian_CI_AI)
|
||||
IF @pMegtartottVagyMegtarthato = 1
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent (@pTanevId, @pOsztalyId, @pAtsoroltTanuloAdatok, @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos, @isAltantargyBeszamitasa)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtartottOrakTantargyankent (@pTanevId, @pOsztalyId, @pAtsoroltTanuloAdatok)
|
||||
END
|
||||
SELECT MegtartottOrak.TanuloId, MegtartottOrak.TantargyId, MegtartottOrak.Gyakorlati,
|
||||
IIF(ISNULL(Orakszama,0) = 0, 0, CAST(Mulasztasokszam AS float) / Orakszama) AS MulasztasArany,
|
||||
IIF(ISNULL(Orakszama,0) = 0, 0 ,CAST(Mulasztasokszam AS float) / Orakszama * 100) AS MulasztasSzazalek,
|
||||
CAST(Mulasztasokszam AS NVARCHAR) + '/' + CAST(Orakszama AS NVARCHAR) AS Info
|
||||
FROM (
|
||||
SELECT SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses,CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS Mulasztasokszam, TanuloId, TantargyId, Gyakorlati
|
||||
FROM #tempMulasztas
|
||||
GROUP BY TanuloId, TantargyId, Gyakorlati
|
||||
) AS Mulasztasok
|
||||
INNER JOIN (
|
||||
SELECT Orakszama, Tanuloid, TantargyId, Gyakorlati, TantargyNev
|
||||
FROM #tempTanorak
|
||||
) AS MegtartottOrak
|
||||
ON MegtartottOrak.TantargyId = Mulasztasok.TantargyId
|
||||
AND MegtartottOrak.TanuloId = Mulasztasok.TanuloId
|
||||
AND MegtartottOrak.Gyakorlati = Mulasztasok.Gyakorlati
|
||||
INNER JOIN T_FELHASZNALO ON T_FELHASZNALO.ID = MegtartottOrak.TanuloId
|
||||
IF OBJECT_ID('tempdb..#tempTanorak') IS NOT NULL DROP TABLE #tempTanorak
|
||||
IF OBJECT_ID('tempdb..#tempMulasztas') IS NOT NULL DROP TABLE #tempMulasztas
|
||||
|
||||
-- Osztály adatok az iktatáshoz
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV Osztalyfonok
|
||||
,f.ID OsztalyfonokId
|
||||
,ocs.C_NEV Osztalynev
|
||||
,@pOsztalyId OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,o.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
END;
|
||||
|
||||
GO
|
@@ -0,0 +1,129 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('sp_SetSystemSettingsDefaultData') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [sp_SetSystemSettingsDefaultData]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [sp_SetSystemSettingsDefaultData]
|
||||
@intezmenyID int,
|
||||
@tanevID int
|
||||
AS
|
||||
BEGIN
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @TEMP_RENDSZERBEALLITAS TABLE (
|
||||
C_BEALLITASTIPUS INT not null,
|
||||
C_ERTEKTIPUS INT not null,
|
||||
C_ALAPERTEK NVARCHAR(MAX) null,
|
||||
C_ERTEK NVARCHAR(MAX) not null,
|
||||
SERIAL INT null,
|
||||
CREATOR INT null,
|
||||
C_INTEZMENYID INT not null,
|
||||
C_TANEVID INT not null
|
||||
)
|
||||
|
||||
--SELECT DISTINCT ID, C_NAME FROM T_DICTIONARYITEMBASE d WHERE C_TYPE = 'NapTipus'
|
||||
|
||||
DECLARE @felevVegeDatum nvarchar(50) = (SELECT FORMAT(C_DATUM, 'yyyy-MM-dd') FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1400 AND C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID)
|
||||
DECLARE @evVegeDatum nvarchar(50) = (SELECT FORMAT(C_DATUM, 'yyyy-MM-dd') FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1395 AND C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID)
|
||||
DECLARE @evElsoNapja nvarchar(50) = (SELECT FORMAT(C_KEZDONAP, 'yyyy-MM-dd') FROM T_TANEV_OSSZES WHERE ID = @tanevID AND TOROLT = 'F')
|
||||
|
||||
|
||||
SET @felevVegeDatum = ISNULL(@felevVegeDatum, '2000-01-01')
|
||||
SET @evVegeDatum = ISNULL(@evVegeDatum, '2000-01-01')
|
||||
SET @evElsoNapja = ISNULL(@evElsoNapja, '2000-09-01')
|
||||
|
||||
DECLARE @tmp TABLE (options nvarchar(MAX))
|
||||
INSERT INTO @tmp
|
||||
SELECT '{"Selected":false,"Text":"' + ISNULL(C_NAME,'') + '","Value":"' + CAST(ISNULL(ID,'') as nvarchar(10)) + '"}' from T_DICTIONARYITEMBASE_OSSZES where C_TYPE like '%MunkakorTipus%' and C_INTEZMENYID = @intezmenyID and C_TANEVID = @tanevID and TOROLT = 'F' order by C_VALUE
|
||||
|
||||
DECLARE @optionList nVARCHAR(MAX)
|
||||
SELECT @optionList = COALESCE(@optionList + ', ', '') + options FROM @tmp
|
||||
SET @optionList = ISNULL(@optionList, '')
|
||||
|
||||
INSERT INTO @TEMP_RENDSZERBEALLITAS (C_BEALLITASTIPUS, C_ERTEKTIPUS, C_ALAPERTEK, C_ERTEK, SERIAL, CREATOR, C_INTEZMENYID, C_TANEVID)
|
||||
VALUES
|
||||
(1666, 1699, '{"Id":"Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese","Value":true}', '{"Id":"Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1667, 1699, '{"Id":"Tanulo_vallasi_adatainak_kezelese","Value":"false"}', '{"Id":"Tanulo_vallasi_adatainak_kezelese","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1818, 1699, '{"Id":"Tanulo_sportoloi_adatainak_kezelese","Value":"false"}', '{"Id":"Tanulo_sportoloi_adatainak_kezelese","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1668, 1699, '{"Id":"Tanulok_osztalyok_kozotti_atsorolasa_eseten_a_csoportbontasokbol_valo_kilepteteset_is_automatikusan_elvegezze_a_program","Value":"true"}', '{"Id":"Tanulok_osztalyok_kozotti_atsorolasa_eseten_a_csoportbontasokbol_valo_kilepteteset_is_automatikusan_elvegezze_a_program","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1669, 1699, '{"Id":"A_felhasznalok_nem_valtoztathatjak_meg_a_jelszavukat_az_elektronikus_ellenorzoben","Value":"true"}', '{"Id":"A_felhasznalok_nem_valtoztathatjak_meg_a_jelszavukat_az_elektronikus_ellenorzoben","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1670, 1699, '{"Id":"A_tanulok_ertekeleseinel_az_ertekelesek_sulyszamainak_megjelenitese","Value":"true"}', '{"Id":"A_tanulok_ertekeleseinel_az_ertekelesek_sulyszamainak_megjelenitese","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1671, 1699, '{"Id":"Pedagogusok_sajat_orarendjeiket_modosithatjak_az_elektronikus_naploban","Value":"false"}', '{"Id":"Pedagogusok_sajat_orarendjeiket_modosithatjak_az_elektronikus_naploban","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1672, 1698, '{"Id":"A_haladasi_naplo_csak_az_alabbiak_szerint_toltheto_ki_utolag_naplozni_","Options":[{"Selected":true,"Text":"Akármit felvehet","Value":"1"},{"Selected":false,"Text":"Csak tantárgyfelosztás alapján","Value":"2"},{"Selected":false,"Text":"Semmit","Value":"3"}]}', '{"Id":"A_haladasi_naplo_csak_az_alabbiak_szerint_toltheto_ki_utolag_naplozni_","Options":[{"Selected":true,"Text":"Akármit felvehet","Value":"1"},{"Selected":false,"Text":"Csak tantárgyfelosztás alapján","Value":"2"},{"Selected":false,"Text":"Semmit","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1673, 1699, '{"Id":"A_haladasi_naploba_orankent_csak_egy_tanora_rogzitheto","Value":"true"}', '{"Id":"A_haladasi_naploba_orankent_csak_egy_tanora_rogzitheto","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1674, 1699, '{"Id":"Elmaradt_tanitasi_ora_rogzitesenek_tiltasa","Value":"false"}', '{"Id":"Elmaradt_tanitasi_ora_rogzitesenek_tiltasa","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1675, 1699, '{"Id":"Pedagogusok_csak_az_eloirt_helyettesiteseiket_regisztralhatjak_a_haladasi_naploban","Value":"false"}', '{"Id":"Pedagogusok_csak_az_eloirt_helyettesiteseiket_regisztralhatjak_a_haladasi_naploban","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1676, 1699, '{"Id":"A_tanarok_csak_a_sajat_tantargyfelosztasukban_szereplo_osztalyok_csoportok_tanuloit_ertekelhetik","Value":"true"}', '{"Id":"A_tanarok_csak_a_sajat_tantargyfelosztasukban_szereplo_osztalyok_csoportok_tanuloit_ertekelhetik","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1677, 1699, '{"Id":"Osztalyfonok_modosithatja_osztalyaba_jaro_tanulok_adatait","Value":"false"}', '{"Id":"Osztalyfonok_modosithatja_osztalyaba_jaro_tanulok_adatait","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1678, 1699, '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_szocialis_tanugyi_es_SNI_BTM_adatait","Value":"false"}', '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_szocialis_tanugyi_es_SNI_BTM_adatait","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1679, 1699, '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_zaradekat","Value":"false"}', '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_zaradekat","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1680, 1699, '{"Id":"Osztalyfonok_megtekintheti_kezelheti_az_osztalyaba_jaro_tanulok_vallasi_adatait","Value":"false"}', '{"Id":"Osztalyfonok_megtekintheti_kezelheti_az_osztalyaba_jaro_tanulok_vallasi_adatait","Value":"false"}', 0 ,1, @intezmenyID, @tanevID),
|
||||
(1764, 1699, '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_sportoloi_adatait","Value":"false"}', '{"Id":"Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_sportoloi_adatait","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1681, 1699, '{"Id":"Ertekelesnel_a_naplojegyek_atlaga_megjelenik","Value":"true"}', '{"Id":"Ertekelesnel_a_naplojegyek_atlaga_megjelenik","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1682, 1698, '{"Id":"Magantanulo_oralatogatas_aloli_mentessegenek_kezelese","Options":[{"Selected":true,"Text":"Nem kell megjelennie","Value":"1"},{"Selected":false,"Text":"Csak gyakorlaton","Value":"2"},{"Selected":false,"Text":"Minden órán","Value":"3"}]}', '{"Id":"Magantanulo_oralatogatas_aloli_mentessegenek_kezelese","Options":[{"Selected":true,"Text":"Nem kell megjelennie","Value":"1"},{"Selected":false,"Text":"Csak gyakorlaton","Value":"2"},{"Selected":false,"Text":"Minden órán","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1683, 1699, '{"Id":"Az_iskolaerdeku_tavollet_tipusu_igazolasok_beleszamitanak_a_tanulo_osszes_mulasztasaba","Value":"true"}', '{"Id":"Az_iskolaerdeku_tavollet_tipusu_igazolasok_beleszamitanak_a_tanulo_osszes_mulasztasaba","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1684, 1699, '{"Id":"Osztalyfonok_szamara_tiltott_a_mulasztasi_adatok_modositasa","Value":"false"}', '{"Id":"Osztalyfonok_szamara_tiltott_a_mulasztasi_adatok_modositasa","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1685, 1699, '{"Id":"A_foglalkozasok_mulasztasi_adatai_megadasanal_a_parhuzamos_orakkal_valo_utkozes_vizsgalata","Value":"true"}', '{"Id":"A_foglalkozasok_mulasztasi_adatai_megadasanal_a_parhuzamos_orakkal_valo_utkozes_vizsgalata","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2882, 2884, '{"Id":"Az_elektronikus_naplo_megjelenesenek_kezdoidopontja","Time":"07:00:00"}', '{"Id":"Az_elektronikus_naplo_megjelenesenek_kezdoidopontja","Time":"07:00:00"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2883, 2884, '{"Id":"Az_elektronikus_naplo_megjelenesenek_zaroidopontja","Time":"18:00:00"}', '{"Id":"Az_elektronikus_naplo_megjelenesenek_zaroidopontja","Time":"18:00:00"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2874, 2886, '{"Id":"Szakszeru_helyettesites_eseten_az_elszamolt_oraszam","Value":"1"}', '{"Id":"Szakszeru_helyettesites_eseten_az_elszamolt_oraszam","Value":"1"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2875, 2886, '{"Id":"Nem_szakszeru_felugyelet_helyettesites_eseten_az_elszamolt_oraszam","Value":"0.5"}', '{"Id":"Nem_szakszeru_felugyelet_helyettesites_eseten_az_elszamolt_oraszam","Value":"0.5"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2876, 2886, '{"Id":"Oraosszevonasos_helyettesites_eseten_az_elszamolt_oraszam","Value":"0.3"}', '{"Id":"Oraosszevonasos_helyettesites_eseten_az_elszamolt_oraszam","Value":"0.3"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2877, 1699, '{"Id":"Lehet_e_helyettesites_tulora","Value":"false"}', '{"Id":"Lehet_e_helyettesites_tulora","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3006, 1699, '{"Id":"Tanar_vehet_e_fel_orat_maganak","Value":"true"}', '{"Id":"Tanar_vehet_e_fel_orat_maganak","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3015, 1699, '{"Id":"Lehet_orat_felvenni_TTF_nelkul","Value":"true"}', '{"Id":"Lehet_orat_felvenni_TTF_nelkul","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3037, 1699, '{"Id":"Foglalkozasnal_csak_osztaly_es_tanora_jellegu_csoport_allithato","Value":"true"}', '{"Id":"Foglalkozasnal_csak_osztaly_es_tanora_jellegu_csoport_allithato","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3039, 2886, '{"Id":"Egy_statuszra_juto_kotelezo_oraszam","Value":"22"}', '{"Id":"Egy_statuszra_juto_kotelezo_oraszam","Value":"22"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(2885, 1698, '{"Id":"Tanulo_felhasznaloi_nev_generalas_modja","Options":[{"Selected":true,"Text":"Oktatási azonosító alapján","Value":"1"},{"Selected":false,"Text":"Kréta kód alapján","Value":"2"},{"Selected":false,"Text":"Egyéni","Value":"3"}]}', '{"Id":"Tanulo_felhasznaloi_nev_generalas_modja","Options":[{"Selected":true,"Text":"Oktatási azonosító alapján","Value":"1"},{"Selected":false,"Text":"Kréta kód alapján","Value":"2"},{"Selected":false,"Text":"Egyéni","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3074, 1699, '{"Id":"helyettesites_eseten_felugyelet_alapertelmezetten_sorszamozando","Value":"false"}', '{"Id":"helyettesites_eseten_felugyelet_alapertelmezetten_sorszamozando","Value":"false"}', 0, 1,@intezmenyID,@tanevID),
|
||||
(3075, 1699, '{"Id":"tanitasiOra_sorszamozas_mod","Value":"true"}', '{"Id":"tanitasiOra_sorszamozas_mod","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3076, 1696, '{"Id":"Ertekeles_datumanak_minimuma","Date":"' + @evElsoNapja + '"}', '{"Id":"Ertekeles_datumanak_minimuma","Date":"' + @evElsoNapja + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5222, 1697, '{"Id":"Ertekelesek_oldalon_levo_keresok_alapertelemezett_feltoltese_ezek_alapjan","Options":[{"Selected":true,"Text":"TTF","Value":"1"},{"Selected":false,"Text":"Osztályfőnök","Value":"2"},{"Selected":false,"Text":"Bárki","Value":"3"}]}', '{"Id":"Ertekelesek_oldalon_levo_keresok_alapertelemezett_feltoltese_ezek_alapjan","Options":[{"Selected":true,"Text":"TTF","Value":"1"},{"Selected":false,"Text":"Osztályfőnök","Value":"2"},{"Selected":false,"Text":"Bárki","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3078, 1699, '{"Id":"tanitasiOra_sorszamozas_csoportbontas","Value":"true"}', '{"Id":"tanitasiOra_sorszamozas_csoportbontas","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3079, 1697, '{"Id":"Havi_vagy_heti_naplozaras","Options":[{"Selected":false,"Text":"Havi","Value":"1"},{"Selected":false,"Text":"Heti","Value":"2"},{"Selected":true,"Text":"Nincs megadva","Value":"3"}]}', '{"Id":"Havi_vagy_heti_naplozaras","Options":[{"Selected":false,"Text":"Havi","Value":"1"},{"Selected":false,"Text":"Heti","Value":"2"},{"Selected":true,"Text":"Nincs megadva","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3080, 2886 ,'{"Id":"Naplozaras_havi_ertek","Value":"28"}', '{"Id":"Naplozaras_havi_ertek","Value":"28"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3081, 2886, '{"Id":"Naplozaras_heti_ertek","Value":"6"}' , '{"Id":"Naplozaras_heti_ertek","Value":"6"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3082, 1696, '{"Id":"Naplozaras_eves_datuma","Date":"' + @evElsoNapja + '"}', '{"Id":"Naplozaras_eves_datuma","Date":"' + @evElsoNapja + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3083, 2884, '{"Id":"Nem_kotott_munkaido_megjelenesenek_kezdoidopontja","Time":"10:00:00"}', '{"Id":"Nem_kotott_munkaido_megjelenesenek_kezdoidopontja","Time":"10:00:00"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(3084, 2884, '{"Id":"Nem_kotott_munkaido_megjelenesenek_zaroidopontja","Time":"15:00:00"}', '{"Id":"Nem_kotott_munkaido_megjelenesenek_zaroidopontja","Time":"15:00:00"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5223, 1697, '{"Id":"Magatartas_szorgalom_ertekelesek_oldalon_levo_keresok_alapertelemezett_feltoltese_ezek_alapjan","Options":[{"Selected":true,"Text":"Osztályfőnök","Value":"1"},{"Selected":false,"Text":"TTF","Value":"2"}]}', '{"Id":"Magatartas_szorgalom_ertekelesek_oldalon_levo_keresok_alapertelemezett_feltoltese_ezek_alapjan","Options":[{"Selected":true,"Text":"Osztályfőnök","Value":"1"},{"Selected":false,"Text":"TTF","Value":"2"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5225, 1698, '{"Id":"Tanuloi_jelszavak_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Születési dátum","Value":"1"},{"Selected":false,"Text":"Véletlenszerű","Value":"2"},{"Selected":false,"Text":" Egyéni","Value":"3"}]}','{"Id":"Tanuloi_jelszavak_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Születési dátum","Value":"1"},{"Selected":false,"Text":"Véletlenszerű","Value":"2"},{"Selected":false,"Text":" Egyéni","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5226, 1698, '{"Id":"Gondviselo_felhasznalonev_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Oktatási azonosító alapján","Value":"1"},{"Selected":false,"Text":"Kréta kód alapján","Value":"2"},{"Selected":false,"Text":"Egyéni","Value":"3"}]}', '{"Id":"Gondviselo_felhasznalonev_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Oktatási azonosító alapján","Value":"1"},{"Selected":false,"Text":"Kréta kód alapján","Value":"2"},{"Selected":false,"Text":"Egyéni","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5227, 1698, '{"Id":"Gondviselo_jelszavak_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Születési dátum","Value":"1"},{"Selected":false,"Text":"Véletlenszerű","Value":"2"},{"Selected":false,"Text":" Egyéni","Value":"3"}]}','{"Id":"Gondviselo_jelszavak_generalasa_az_alabbi_ertek_alapjan","Options":[{"Selected":true,"Text":"Születési dátum","Value":"1"},{"Selected":false,"Text":"Véletlenszerű","Value":"2"},{"Selected":false,"Text":" Egyéni","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5261, 1698, '{"Id":"Napirend_felvitelel_utkozes_figyeles","Options":[{"Selected":true,"Text":"Ütközés nem lehetséges","Value":"1"},{"Selected":false,"Text":"Figyelmeztetés","Value":"2"},{"Selected":false,"Text":"Ütközés lehetséges","Value":"3"}]}', '{"Id":"Napirend_felvitelel_utkozes_figyeles","Options":[{"Selected":true,"Text":"Ütközés nem lehetséges","Value":"1"},{"Selected":false,"Text":"Figyelmeztetés","Value":"2"},{"Selected":false,"Text":"Ütközés lehetséges","Value":"3"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5436, 1699, '{"Id":"Osztalyfonok_ertekeles_osszes_targybol","Value":false}', '{"Id":"Osztalyfonok_ertekeles_osszes_targybol","Value":"false"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5437, 1699, '{"Id":"Ora_sorszamozasat_naplozo_pedagogus_eldontheti","Value":true}', '{"Id":"Ora_sorszamozasat_naplozo_pedagogus_eldontheti","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5438, 1696, '{"Id":"Felevi_jegyek_megjelenesenek_datuma","Date":"' + @felevVegeDatum + '"}', '{"Id":"Felevi_jegyek_megjelenesenek_datuma","Date":"' + @felevVegeDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5439, 1696, '{"Id":"Ev_vegi_jegyek_megjelenesenek_datuma","Date":"' + @evVegeDatum + '"}', '{"Id":"Ev_vegi_jegyek_megjelenesenek_datuma","Date":"' + @evVegeDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5440, 1696, '{"Id":"Ev_vegi_jegyek_megjelenesenek_datuma_vegzos","Date":"' + @evVegeDatum + '"}', '{"Id":"Ev_vegi_jegyek_megjelenesenek_datuma_vegzos","Date":"' + @evVegeDatum + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5441, 5442, '{"Id":"Alkalmazottak_lathatjak_a_diakok_adatait","Options":[' + @optionList + ']}', '{"Id":"Alkalmazottak_lathatjak_a_diakok_adatait","Options":[' + @optionList + ']}', 0, 1, @intezmenyID, @tanevID),
|
||||
(5449, 1698, '{"Id":"Naplozaskor_mulasztas_szazalek_szamitas","Options":[{"Selected":true,"Text":"Egész éves óraszám alapján","Value":"1"},{"Selected":false,"Text":"Megtartott óraszám alapján","Value":"2"}]}', '{"Id":"Naplozaskor_mulasztas_szazalek_szamitas","Options":[{"Selected":true,"Text":"Egész éves óraszám alapján","Value":"1"},{"Selected":false,"Text":"Megtartott óraszám alapján","Value":"2"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6717, 1699, '{"Id":"Naplozas_terem_befogadokepesseg","Value":true}', '{"Id":"Naplozas_terem_befogadokepesseg","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
|
||||
/*Értesítések*/
|
||||
(1690, 1696, '{"Id":"Ertesites_bukasra_allo_tanulokrol","Date":"' + LEFT(@evVegeDatum, 4) + '-05-02"}', '{"Id":"Ertesites_bukasra_allo_tanulokrol","Date":"' + LEFT(@evVegeDatum, 4) + '-05-02"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1691, 1696, '{"Id":"Ertesites_bukasra_allo_vegzos_tanulokrol","Date":"' + LEFT(@evVegeDatum, 4) + '-04-02"}', '{"Id":"Ertesites_bukasra_allo_vegzos_tanulokrol","Date":"' + LEFT(@evVegeDatum, 4) + '-04-02"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1687, 1696, '{"Id":"Ertesites_Tanev_rendi_valtoztatasrol_idopont","Date":"' + @evElsoNapja + '"}', '{"Id":"Ertesites_Tanev_rendi_valtoztatasrol_idopont","Date":"' + @evElsoNapja + '"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1686, 1695, '{"Id":"Ertesites_Tanev_rendi_valtoztatasrol_esetek","Options":[{"Selected":true,"Text":"Tanítás nélküli munkanap","Value":"1387"},{"Selected":false,"Text":"Tanítási nap ","Value":"1385"},{"Selected":false,"Text":"Munkaszüneti nap ","Value":"1386"}]}', '{"Id":"Ertesites_Tanev_rendi_valtoztatasrol_esetek","Options":[{"Selected":true,"Text":"Tanítás nélküli munkanap","Value":"1387"},{"Selected":false,"Text":"Tanítási nap ","Value":"1385"},{"Selected":false,"Text":"Munkaszüneti nap ","Value":"1386"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1688, 1698, '{"Id":"Erdemjegy_beiras_ertesites_kesleltetese","Options":[{"Selected":true,"Text":"0 óra","Value":"0"},{"Selected":false,"Text":"4 óra","Value":"4"},{"Selected":false,"Text":"8 óra","Value":"8"},{"Selected":false,"Text":"12 óra","Value":"12"},{"Selected":false,"Text":"24 óra","Value":"24"}]}', '{"Id":"Erdemjegy_beiras_ertesites_kesleltetese","Options":[{"Selected":true,"Text":"0 óra","Value":"0"},{"Selected":false,"Text":"4 óra","Value":"4"},{"Selected":false,"Text":"8 óra","Value":"8"},{"Selected":false,"Text":"12 óra","Value":"12"},{"Selected":false,"Text":"24 óra","Value":"24"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1689, 1698, '{"Id":"Ertesites_hianyzo_orabeirasrol_kesleltetese","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":false,"Text":"3 nap","Value":"3"},{"Selected":true,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', '{"Id":"Ertesites_hianyzo_orabeirasrol_kesleltetese","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":false,"Text":"3 nap","Value":"3"},{"Selected":true,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1692, 1698, '{"Id":"Ertesites_nyilt_naprol","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":false,"Text":"3 nap","Value":"3"},{"Selected":true,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', '{"Id":"Ertesites_nyilt_naprol","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":false,"Text":"3 nap","Value":"3"},{"Selected":true,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1693, 1698, '{"Id":"Ertesites_oralatogatasrol","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":true,"Text":"3 nap","Value":"3"},{"Selected":false,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', '{"Id":"Ertesites_oralatogatasrol","Options":[{"Selected":false,"Text":"Soha","Value":"-1"},{"Selected":true,"Text":"3 nap","Value":"3"},{"Selected":false,"Text":"7 nap","Value":"7"},{"Selected":false,"Text":"14 nap","Value":"14"}]}', 0, 1, @intezmenyID, @tanevID),
|
||||
(1755, 1699, '{"Id":"Adminisztrator_ertesitese_orarendi_tanulo_utkozesrol","Value":"true"}', '{"Id":"Adminisztrator_ertesitese_orarendi_tanulo_utkozesrol","Value":"true"}', 0, 1, @intezmenyID, @tanevID),
|
||||
(6852, 1699, '{"Id":"Intezmeny_rovid_nevenek_beallitasa","Value":"true"}', '{"Id":"Intezmeny_rovid_nevenek_beallitasa","Value":"true"}', 0, 1, @intezmenyID, @tanevID)
|
||||
|
||||
INSERT INTO dbo.T_RENDSZERBEALLITAS_OSSZES (C_BEALLITASTIPUS, C_ERTEKTIPUS, C_ALAPERTEK, C_ERTEK, SERIAL, CREATOR, C_INTEZMENYID, C_TANEVID)
|
||||
SELECT trb.C_BEALLITASTIPUS, trb.C_ERTEKTIPUS, trb.C_ALAPERTEK, trb.C_ERTEK, trb.SERIAL, trb.CREATOR, trb.C_INTEZMENYID, trb.C_TANEVID
|
||||
FROM @TEMP_RENDSZERBEALLITAS trb
|
||||
LEFT JOIN dbo.T_RENDSZERBEALLITAS_OSSZES rb ON rb.C_BEALLITASTIPUS = trb.C_BEALLITASTIPUS AND rb.C_INTEZMENYID = trb.C_INTEZMENYID AND trb.C_TANEVID = rb.C_TANEVID
|
||||
WHERE rb.C_BEALLITASTIPUS IS NULL
|
||||
|
||||
END
|
@@ -0,0 +1,78 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetBukasokSzama
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetBukasokSzama
|
||||
@pTanevId int
|
||||
,@pTanarId int
|
||||
,@pDarab int
|
||||
,@pBukasAtlag float
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@pBelepesDatum date
|
||||
,@pKilepesDatum date
|
||||
,@pUtolsoTanitasDatum date
|
||||
|
||||
SELECT
|
||||
@pBelepesDatum = (CASE WHEN tanev.C_AKTIV = 'T' THEN GETDATE() ELSE tanev.C_UTOLSOTANITASINAP END)
|
||||
,@pKilepesDatum = (CASE WHEN tanev.C_AKTIV = 'T' THEN GETDATE() ELSE tanev.C_KEZDONAP END)
|
||||
,@pUtolsoTanitasDatum = tanev.C_UTOLSOTANITASINAP
|
||||
FROM T_TANEV_OSSZES tanev
|
||||
WHERE tanev.TOROLT = 'F'
|
||||
AND tanev.ID = @pTanevId
|
||||
|
||||
SELECT TOP (@pDarab)
|
||||
fh.C_NYOMTATASINEV AS Nev
|
||||
,ocs.C_NEV AS Osztaly
|
||||
,COUNT(ertekeles.C_TANTARGYID) AS TantargyakSzama
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON f.C_OSZTALYCSOPORTID = ocs.ID
|
||||
AND ocs.C_TANEVID = f.C_TANEVID
|
||||
AND ocs.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON ocs.ID = tcs.C_OSZTALYCSOPORTID
|
||||
AND tcs.C_BELEPESDATUM <= @pBelepesDatum
|
||||
AND (tcs.C_KILEPESDATUM > @pKilepesDatum OR tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= @pUtolsoTanitasDatum)
|
||||
AND tcs.C_TANEVID = f.C_TANEVID
|
||||
AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON tcs.C_TANULOID = fh.ID
|
||||
AND fh.C_TANEVID = f.C_TANEVID
|
||||
AND fh.TOROLT = 'F'
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
te.C_TANULOID
|
||||
,te.C_OSZTALYCSOPORTID
|
||||
,te.C_TANTARGYID
|
||||
FROM T_TANULOERTEKELES_OSSZES te
|
||||
INNER JOIN T_OSZTALYZATTIPUS_OSSZES ot ON te.C_ERTEKELESOSZTALYZATID = ot.ID
|
||||
AND ot.C_ALTANEVID = te.C_TANEVID
|
||||
AND ot.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON ot.ID = d.ID
|
||||
AND d.C_TANEVID = te.C_TANEVID
|
||||
AND d.TOROLT = 'F'
|
||||
LEFT JOIN T_TANARIATLAGSULY_OSSZES ta ON te.C_ERTEKELESMODID = ta.C_ERTEKELESMODID
|
||||
AND ta.C_TANEVID = te.C_TANEVID
|
||||
AND ta.TOROLT = 'F'
|
||||
AND te.C_ERTEKELESOSZTALYZATID IS NOT NULL
|
||||
WHERE te.C_TANEVID = @pTanevId
|
||||
AND te.TOROLT = 'F'
|
||||
GROUP BY
|
||||
te.C_TANULOID
|
||||
,te.C_OSZTALYCSOPORTID
|
||||
,te.C_TANTARGYID
|
||||
HAVING ROUND(SUM(CAST(d.C_VALUE AS float) * CAST(ISNULL(ta.C_SULY, 100) AS float) / 100) / SUM(CAST(ISNULL(ta.C_SULY, 100) AS float) / 100), 2) < @pBukasAtlag
|
||||
) ertekeles ON ertekeles.C_TANULOID = fh.ID
|
||||
AND ertekeles.C_OSZTALYCSOPORTID = f.C_OSZTALYCSOPORTID
|
||||
AND ertekeles.C_TANTARGYID = f.C_TANTARGYID
|
||||
WHERE f.C_TANEVID = @pTanevId
|
||||
AND f.TOROLT = 'F'
|
||||
AND f.C_TANARID = @pTanarId
|
||||
GROUP BY
|
||||
fh.C_NYOMTATASINEV
|
||||
,ocs.C_NEV
|
||||
ORDER BY
|
||||
fh.C_NYOMTATASINEV
|
||||
,ocs.C_NEV
|
||||
|
||||
END
|
||||
GO
|
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,110 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetHianyzokEsJelenlevokSzama
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetHianyzokEsJelenlevokSzama
|
||||
@pTanevId INT
|
||||
,@pMinOraszam INT
|
||||
AS
|
||||
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
CREATE TABLE #NaptariNap (
|
||||
Datum datetime
|
||||
,OsztalyId int
|
||||
,IsTanitasiNap char(1)
|
||||
,Nap int
|
||||
,Honap nvarchar(20)
|
||||
,PRIMARY KEY (Datum, OsztalyId)
|
||||
)
|
||||
DECLARE @DateFrom datetime, @DateTo datetime
|
||||
|
||||
SELECT @DateFrom = tv.C_KEZDONAP, @DateTo = tv.C_UTOLSOTANITASINAP FROM T_TANEV_OSSZES tv WHERE ID = @pTanevId
|
||||
|
||||
INSERT INTO #NaptariNap
|
||||
SELECT
|
||||
tr.Datum
|
||||
,tr.OsztalyId
|
||||
,ISNULL(tro.IsTanitasiNap, tr.IsTanitasiNap) AS IsTanitasiNap
|
||||
,tr.Nap
|
||||
,tr.Honap
|
||||
FROM (
|
||||
SELECT
|
||||
nn.C_NAPDATUMA AS Datum
|
||||
,o.ID AS OsztalyId
|
||||
,IIF(nt.C_ISTANORAI = 'F' AND nt.C_ISTANORANKIVULI = 'F', 'F', 'T') AS IsTanitasiNap
|
||||
,DAY(C_NAPDATUMA) AS Nap
|
||||
,FORMAT(nn.C_NAPDATUMA, 'MMMM', 'HU-hu') as Honap
|
||||
FROM T_NAPTARINAP_OSSZES nn
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.TOROLT = 'F' AND o.C_ALTANEVID = @pTanevId
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.C_FELADATKATEGORIAID = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/
|
||||
INNER JOIN T_NAPTIPUS_OSSZES nt ON nt.ID = nn.C_NAPTIPUSA AND nt.C_ALTANEVID = nn.C_TANEVID AND nn.C_INTEZMENYID = nt.C_ALINTEZMENYID AND nt.TOROLT = 'F'
|
||||
WHERE nn.C_NAPDATUMA BETWEEN @DateFrom AND @DateTo AND nn.C_TANEVID = @pTanevId
|
||||
AND nn.TOROLT = 'F'
|
||||
) tr
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
nn.C_NAPDATUMA AS Datum
|
||||
,o.ID AS OsztalyId
|
||||
,IIF(nt.C_ISTANORAI = 'F' AND nt.C_ISTANORANKIVULI = 'F', 'F', 'T') AS IsTanitasiNap
|
||||
FROM T_NAPTARINAP_OSSZES nn
|
||||
INNER JOIN T_TANEVRENDJE_OSSZES tr ON tr.C_DATUM = nn.C_NAPDATUMA AND tr.C_OSSZESCSOPORTRAVONATKOZIK = 'F' AND tr.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON ocstr.C_TANEVRENDJEID = tr.ID
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON ocstr.C_OSZTALYCSOPORTID = o.ID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.C_FELADATKATEGORIAID = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/
|
||||
INNER JOIN T_NAPTIPUS_OSSZES nt ON nt.ID = tr.C_NAPTIPUSA AND nt.C_ALTANEVID = tr.C_TANEVID AND nt.TOROLT = 'F'
|
||||
WHERE nn.C_TANEVID = @pTanevId
|
||||
AND nn.TOROLT = 'F'
|
||||
) tro ON tr.Datum = tro.Datum AND tr.OsztalyId = tro.OsztalyId
|
||||
|
||||
SELECT
|
||||
nn.Datum
|
||||
,nn.Honap AS Honap
|
||||
,nn.Nap
|
||||
,nn.OsztalyId
|
||||
,ocs.C_NEV AS OsztalyNev
|
||||
,nn.IsTanitasiNap
|
||||
,lsz.Letszam
|
||||
,IIF(h.Hianyzas IS NULL AND IsTanitasiNap = 'T', 0, h.Hianyzas) AS Hianyzas
|
||||
FROM #NaptariNap nn
|
||||
LEFT JOIN (
|
||||
SELECT nn.Datum, nn.OsztalyId, COUNT(1) AS Letszam
|
||||
FROM #NaptariNap nn
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = nn.OsztalyId
|
||||
AND nn.Datum >= tcs.C_BELEPESDATUM
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > nn.Datum)
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.TOROLT = 'F'
|
||||
WHERE nn.IsTanitasiNap = 'T'
|
||||
GROUP BY nn.Datum, nn.OsztalyId
|
||||
) lsz ON lsz.Datum = nn.Datum AND lsz.OsztalyId = nn.OsztalyId
|
||||
LEFT JOIN (
|
||||
SELECT x.C_DATUM AS Datum, tcs.C_OSZTALYCSOPORTID AS OsztalyId, SUM(CNT) AS Hianyzas
|
||||
FROM (
|
||||
SELECT tn.C_DATUM, mu.C_ORATANULOIID, COUNT(DISTINCT C_ORATANULOIID) AS CNT
|
||||
FROM T_TANULOMULASZTAS_OSSZES mu
|
||||
INNER JOIN T_TANITASIORA_OSSZES tn ON tn.ID = mu.C_TANITASIORAKID
|
||||
WHERE mu.C_TIPUS = 1500
|
||||
AND mu.C_TANEVID = @pTanevId
|
||||
AND tn.C_TANEVID = @pTanevId
|
||||
AND mu.TOROLT = 'F'
|
||||
AND tn.TOROLT = 'F'
|
||||
GROUP BY tn.C_DATUM, mu.C_ORATANULOIID
|
||||
HAVING COUNT(1) >= @pMinOraszam
|
||||
) x
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANULOID = x.C_ORATANULOIID
|
||||
AND x.C_DATUM >= tcs.C_BELEPESDATUM
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > x.C_DATUM)
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = tcs.C_OSZTALYCSOPORTID
|
||||
AND o.C_ALTANEVID = @pTanevId
|
||||
AND o.TOROLT = 'F'
|
||||
GROUP BY x.C_DATUM, tcs.C_OSZTALYCSOPORTID
|
||||
) h ON h.Datum = nn.Datum AND h.OsztalyId = nn.OsztalyId
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = nn.OsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F'
|
||||
ORDER BY nn.Datum, nn.OsztalyId
|
||||
|
||||
END
|
||||
GO
|
||||
|
||||
|
@@ -0,0 +1,134 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetKiirtHelyettesitesek
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetKiirtHelyettesitesek
|
||||
@pIntezmenyId int
|
||||
,@pTanevId int
|
||||
,@pTanarId int
|
||||
,@pDarab int
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@pIdoszakKezdete datetime
|
||||
,@pIdoszakVege datetime
|
||||
|
||||
CREATE TABLE #OrarendiOrak (
|
||||
Id int
|
||||
,ORARENDIID int
|
||||
,Datum datetime
|
||||
,Bontott char (1)
|
||||
,Hetirend int
|
||||
,HetNapja int
|
||||
,HetSorszam int
|
||||
,ErvenyessegKezdete datetime
|
||||
,ErvenyessegVege datetime
|
||||
,OraKezdete datetime
|
||||
,OraVege datetime
|
||||
,Oraszam int
|
||||
,TargyNev nvarchar (300)
|
||||
,TargyNevForMobile nvarchar (300)
|
||||
,TargykategoriaID int
|
||||
,Megtartott char (1)
|
||||
,CsengetesiRendOraID int
|
||||
,CsengetesiRendID int
|
||||
,MaxNapiOraszam int
|
||||
,OsztalyNev nvarchar (255)
|
||||
,TanevRendOsztalyCsoportId int
|
||||
,MegjelenesOka nvarchar (300)
|
||||
,TanarNev nvarchar (255)
|
||||
,TeremNev nvarchar (255)
|
||||
,TeremId int
|
||||
,OraTipus nvarchar (200)
|
||||
,Hianyzas char (1)
|
||||
,Keses char (1)
|
||||
,Ures char (1)
|
||||
,HelyettesitoTanarID int
|
||||
,HelyettesitoTanarNev nvarchar (255)
|
||||
,HelyettesitesId int
|
||||
,TanarID int
|
||||
,AdminAltalKiirt char (1)
|
||||
,GroupId int
|
||||
,Tema nvarchar (max)
|
||||
,TantargyId int
|
||||
,OsztCsopId int
|
||||
,INDEX IX1 CLUSTERED(Datum, HetNapja, Oraszam, TanevRendOsztalyCsoportId, TantargyId, TanarID)
|
||||
)
|
||||
|
||||
SELECT
|
||||
@pIdoszakKezdete = (CASE WHEN tanev.C_AKTIV = 'T' THEN GETDATE() ELSE tanev.C_KEZDONAP END)
|
||||
,@pIdoszakVege = tanev.C_UTOLSOTANITASINAP
|
||||
FROM T_TANEV_OSSZES tanev
|
||||
WHERE tanev.TOROLT = 'F'
|
||||
AND tanev.ID = @pTanevId
|
||||
AND tanev.C_INTEZMENYID = @pIntezmenyId
|
||||
|
||||
INSERT INTO #OrarendiOrak (
|
||||
Id
|
||||
,ORARENDIID
|
||||
,Datum
|
||||
,Bontott
|
||||
,Hetirend
|
||||
,HetNapja
|
||||
,HetSorszam
|
||||
,ErvenyessegKezdete
|
||||
,ErvenyessegVege
|
||||
,OraKezdete
|
||||
,OraVege
|
||||
,Oraszam
|
||||
,TargyNev
|
||||
,TargyNevForMobile
|
||||
,TargykategoriaID
|
||||
,Megtartott
|
||||
,CsengetesiRendOraID
|
||||
,CsengetesiRendID
|
||||
,MaxNapiOraszam
|
||||
,OsztalyNev
|
||||
,TanevRendOsztalyCsoportId
|
||||
,MegjelenesOka
|
||||
,TanarNev
|
||||
,TeremNev
|
||||
,TeremId
|
||||
,OraTipus
|
||||
,Hianyzas
|
||||
,Keses
|
||||
,Ures
|
||||
,HelyettesitoTanarID
|
||||
,HelyettesitoTanarNev
|
||||
,HelyettesitesId
|
||||
,TanarID
|
||||
,AdminAltalKiirt
|
||||
,GroupId
|
||||
,Tema
|
||||
,TantargyId
|
||||
,OsztCsopId
|
||||
)
|
||||
EXEC sp_GetOrarend
|
||||
@pIntezmenyId = @pIntezmenyId
|
||||
,@pTanevId = @pTanevId
|
||||
,@pIdoszakKezdete = @pIdoszakKezdete
|
||||
,@pIdoszakVege = @pIdoszakVege
|
||||
,@pTanarId = @pTanarId
|
||||
,@pIsHelyettesitesNelkul = 0
|
||||
,@pOsztalyCsoportId = NULL
|
||||
,@pTanuloId = NULL
|
||||
,@pTantargyId = NULL
|
||||
,@pTeremId = NULL
|
||||
,@pCsakOrarendiOrak = 0
|
||||
,@pIsNapirend = NULL
|
||||
|
||||
SELECT TOP (@pDarab)
|
||||
orak.Id AS Id
|
||||
,CONVERT(nvarchar (25), OraKezdete, 102) AS Datum
|
||||
,IIF(orak.CsengetesiRendID IS NOT NULL, orak.Oraszam, N'-') AS Oraszam
|
||||
,orak.OsztalyNev AS OsztalyCsoport
|
||||
,orak.TargyNev AS Tantargy
|
||||
FROM #OrarendiOrak orak
|
||||
WHERE orak.OraTipus = N'OrarendiOra'
|
||||
AND orak.OraKezdete <= @pIdoszakVege
|
||||
AND orak.OraVege >= @pIdoszakKezdete
|
||||
AND orak.HelyettesitoTanarID = @pTanarId
|
||||
ORDER BY orak.OraKezdete ASC
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,54 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetMulasztasokSzama
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetMulasztasokSzama
|
||||
@pTanevId int
|
||||
,@pTanarId int
|
||||
,@pDarab int
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@pBelepesDatum date
|
||||
,@pKilepesDatum date
|
||||
,@pUtolsoTanitasDatum date
|
||||
|
||||
SELECT
|
||||
@pBelepesDatum = (CASE WHEN tanev.C_AKTIV = 'T' THEN GETDATE() ELSE tanev.C_UTOLSOTANITASINAP END)
|
||||
,@pKilepesDatum = (CASE WHEN tanev.C_AKTIV = 'T' THEN GETDATE() ELSE tanev.C_KEZDONAP END)
|
||||
,@pUtolsoTanitasDatum = tanev.C_UTOLSOTANITASINAP
|
||||
FROM T_TANEV_OSSZES tanev
|
||||
WHERE tanev.TOROLT = 'F'
|
||||
AND tanev.ID = @pTanevId
|
||||
|
||||
SELECT TOP (@pDarab)
|
||||
tn.C_DATUM AS MulasztasDatuma
|
||||
,FORMAT(tn.C_DATUM, 'dddd','hu-HU') AS MulasztasNapja
|
||||
,COUNT(tm.C_ORATANULOIID) AS MulasztasokSzama
|
||||
FROM T_TANITASIORA_OSSZES tn
|
||||
INNER JOIN T_TANULOMULASZTAS_OSSZES tm ON tm.C_TANITASIORAKID = tn.ID
|
||||
AND tm.TOROLT = 'F'
|
||||
AND tm.C_TANEVID = tn.C_TANEVID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANULOID = tm.C_ORATANULOIID
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND tcs.C_TANEVID = tn.C_TANEVID
|
||||
AND tcs.C_BELEPESDATUM <= @pBelepesDatum
|
||||
AND (tcs.C_KILEPESDATUM > @pKilepesDatum OR tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= @pUtolsoTanitasDatum)
|
||||
LEFT JOIN T_OSZTALY_OSSZES o ON o.ID = tcs.C_OSZTALYCSOPORTID
|
||||
AND o.TOROLT = 'F'
|
||||
AND o.C_ALTANEVID = tn.C_TANEVID
|
||||
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_ALTANEVID = tn.C_TANEVID
|
||||
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
|
@@ -0,0 +1,674 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetNapkozisNaplo
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetNapkozisNaplo
|
||||
@tanevId int
|
||||
,@intezmenyId int
|
||||
,@csoportId int
|
||||
,@iskolaErdekuSzamit bit
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@elsonap date
|
||||
,@utolsonap date
|
||||
,@FelevVege date
|
||||
,@datum date = GETDATE()
|
||||
|
||||
CREATE TABLE #OraSorszam (
|
||||
TanitasioraId int PRIMARY KEY
|
||||
,OraSorszam int
|
||||
)
|
||||
|
||||
--Tanulók adatai, elérhetőségei
|
||||
CREATE TABLE #tanulok (
|
||||
Id int
|
||||
,TanuloCsoportId int
|
||||
,Nev nvarchar (max)
|
||||
,Osztaly nvarchar (max)
|
||||
,OsztalyId int
|
||||
,Sorszam nvarchar (max)
|
||||
,beirasiSorszam nvarchar (max)
|
||||
,Torzslapszam nvarchar (max)
|
||||
,Allampolgarsaga nvarchar (max)
|
||||
,DiakIg nvarchar (max)
|
||||
,SzulHely nvarchar (max)
|
||||
,SzulIdo nvarchar (max)
|
||||
,Anyja nvarchar (max)
|
||||
,Taj nvarchar (max)
|
||||
,OktAzon nvarchar (max)
|
||||
,Kilepes nvarchar (max)
|
||||
,Kepzes nvarchar (max)
|
||||
,TanuloCimTipus nvarchar (max)
|
||||
,TanuloCim nvarchar (max)
|
||||
,TanuloEmail nvarchar (max)
|
||||
,szoc nvarchar (max)
|
||||
,BelepesDatum datetime
|
||||
)
|
||||
|
||||
DECLARE @Mulasztasok TABLE (
|
||||
IgazoltE nvarchar (1)
|
||||
,Tanulo int
|
||||
,Tipus int
|
||||
)
|
||||
|
||||
DECLARE @GondViseloCimTable TABLE (
|
||||
GondviseloId int
|
||||
,Cim nvarchar (max)
|
||||
,Cimtipusa nvarchar (max)
|
||||
)
|
||||
|
||||
DECLARE @EmailCimTableTemp TABLE (
|
||||
FelhasznaloId int
|
||||
,EmailCim nvarchar (max)
|
||||
,GondviseloId int
|
||||
)
|
||||
|
||||
DECLARE @EmailCimGondviseloTable TABLE (
|
||||
GondviseloId int
|
||||
,EmailCim nvarchar (max)
|
||||
)
|
||||
|
||||
DECLARE @TelefonTableTemp TABLE (
|
||||
FelhasznaloId int
|
||||
,Telefon nvarchar (max)
|
||||
,GondviseloId int
|
||||
)
|
||||
|
||||
DECLARE @GondviseloTelefonTable TABLE (
|
||||
GondviseloId int
|
||||
,Telefon nvarchar (max)
|
||||
)
|
||||
|
||||
SELECT TOP 1
|
||||
@FelevVege = tr.C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES tr
|
||||
WHERE tr.C_NAPTIPUSA = 1400
|
||||
AND tr.C_TANEVID = @tanevId
|
||||
AND tr.TOROLT = 'F'
|
||||
|
||||
INSERT INTO #tanulok (
|
||||
Id
|
||||
,TanuloCsoportId
|
||||
,Nev
|
||||
,Osztaly
|
||||
,OsztalyId
|
||||
,Sorszam
|
||||
,beirasiSorszam
|
||||
,Torzslapszam
|
||||
,Allampolgarsaga
|
||||
,DiakIg
|
||||
,SzulHely
|
||||
,SzulIdo
|
||||
,Anyja
|
||||
,Taj
|
||||
,OktAzon
|
||||
,Kilepes
|
||||
,Kepzes
|
||||
,TanuloCimTipus
|
||||
,TanuloCim
|
||||
,TanuloEmail
|
||||
,szoc
|
||||
,BelepesDatum
|
||||
)
|
||||
SELECT DISTINCT
|
||||
tanulok.TanuloId AS Id
|
||||
,tanulok.TanuloCsoportId
|
||||
,IIF(KilepesDatum IS NOT NULL, f.C_NYOMTATASINEV + ' (kilépett)', f.C_NYOMTATASINEV) AS Nev
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztaly(t.Id) AS Osztaly
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztalyId(t.Id) AS OsztalyId
|
||||
,tta.C_NAPLOSORSZAM AS NaploSorszam
|
||||
,tta.C_BEIRASINAPLOSORSZAM AS beirasiSorszam
|
||||
,tta.C_TORZSLAPSZAM AS TorzsLapSzam
|
||||
,Allampolgarsaga.C_NAME AS Allampolgarsag
|
||||
,t.C_DIAKIGAZOLVANYSZAM AS DiakIg
|
||||
,f.C_SZULETESIHELY AS SzulHely
|
||||
,FORMAT(f.c_szuletesidatum, 'yyyy.MM.dd.') AS SzulIdo
|
||||
,f.C_ANYJANEVE AS Anyja
|
||||
,f.C_TAJSZAM AS Taj
|
||||
,f.C_OKTATASIAZONOSITO AS OktAzon
|
||||
,FORMAT(KilepesDatum, 'yyyy.MM.dd.') AS Kilepes
|
||||
,tt.c_nev AS Kepzes
|
||||
,cim.Tipus
|
||||
,cim.cim
|
||||
,email.c_emailcim AS TanuloEmail
|
||||
,STUFF(
|
||||
IIF(tta.C_MAGANTANULO = 'T', ', Magántanuló (' + ISNULL(MagantanulosagOka.C_NAME, '-') + ')', '')
|
||||
+ IIF(tta.C_JOGVISZONYATSZUNETELTETO = 'T', ', Jogviszony szüneteltetve', '')
|
||||
+ IIF(tta.C_SZAKMAIGYAKORLATON = 'T', ', Szakmai gyakorlat', '')
|
||||
+ IIF(t.C_SZOCIALISTAMOGATAS = 'T', ', Szociális támogatás', ''), 1, 2, ''
|
||||
) AS szoc
|
||||
,tanulok.BelepesDatum AS BelepesDatum
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @csoportId, 'T') tanulok
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.id = tanulok.TanuloId
|
||||
AND f.torolt = 'F'
|
||||
INNER JOIN T_TANULO_OSSZES t ON t.ID = f.ID
|
||||
INNER JOIN fnGetOsztalyCsoportTanuloinakTanugyiAdatai(@csoportId, DEFAULT) tta ON tta.TanuloId = t.ID
|
||||
INNER JOIN T_TANTERV_OSSZES tt ON tt.ID = tta.C_TANTERVID
|
||||
AND tt.TOROLT = 'F'
|
||||
AND tt.C_TANEVID = @tanevId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES Allampolgarsaga ON Allampolgarsaga.Id = f.c_allampolgarsaga
|
||||
AND Allampolgarsaga.C_TANEVID = @tanevId
|
||||
AND Allampolgarsaga.TOROLT = 'F'
|
||||
LEFT JOIN (
|
||||
SELECT DISTINCT
|
||||
TanuloId AS TanuloId
|
||||
,cimTipusa.C_NAME AS Tipus
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
CAST(Btemp.Cim AS nvarchar(max)) + char(13) + char(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim(0, @tanevId, @csoportid) btemp
|
||||
WHERE temp.TanuloId = btemp.TanuloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)'), 1, 0, ''
|
||||
) AS Cim
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim(0, @tanevId, @csoportid) temp
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES AS cimTipusa ON cimTipusa.Id = temp.CimTipusa
|
||||
AND cimTipusa.C_TANEVID = @tanevId
|
||||
AND cimTipusa.TOROLT = 'F'
|
||||
WHERE temp.CimTipusa = 907
|
||||
) AS cim ON cim.TanuloId = tanulok.TanuloId
|
||||
LEFT JOIN T_TELEFON_OSSZES tel ON tel.c_felhasznaloid = f.id
|
||||
AND tel.c_gondviseloid IS NULL
|
||||
AND tel.torolt = 'F'
|
||||
AND tel.c_alapertelmezett = 'T'
|
||||
LEFT JOIN T_EMAIL_OSSZES email ON email.c_felhasznaloid = tanulok.TanuloId
|
||||
AND email.c_gondviseloid IS NULL
|
||||
AND email.torolt = 'F'
|
||||
AND email.c_alapertelmezett = 'T'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS MagantanulosagOka ON MagantanulosagOka.ID = tta.C_MAGANTANULOSAGANAKOKAID
|
||||
AND MagantanulosagOka.C_TANEVID = f.C_TANEVID
|
||||
AND MagantanulosagOka.TOROLT = 'F'
|
||||
|
||||
--Kezdőoldal
|
||||
SELECT
|
||||
ia.c_nev AS IntezmenyNev
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) AS IntezmenyCim
|
||||
,ia.c_omkod AS OMKOD
|
||||
,ia.c_igazgatoneve AS IntezmenyVezeto
|
||||
,ocs.c_nev AS NapkozisCsoport
|
||||
,IIF(LEN(ocs.c_nev) > 17, SUBSTRING(ocs.c_nev, 1, 17) + '...', ocs.c_nev) AS RovidNev
|
||||
,ISNULL(f.c_nyomtatasinev, '-') AS CsoportVezeto
|
||||
,ISNULL(cs.c_csoportnaploleiras, '-') AS CsoportNaploLeiras
|
||||
,FORMAT(cs.c_csoportnaplomegnyitasa, 'yyyy.MM.dd.') AS Megnyitas
|
||||
,ISNULL(FORMAT(cs.c_csoportnaplozarasa, 'yyyy.MM.dd.'), '-') AS Lezaras
|
||||
,ocs.ID AS NapkozisCsoportId
|
||||
,f.ID AS CsoportVezetoId
|
||||
,ISNULL(ocs.C_EVFOLYAMTIPUSA,1296) AS EvfolyamTipusa -- 1296 = Na
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
,cs.C_TIPUSA AS CsoportTipusa
|
||||
FROM T_INTEZMENY_OSSZES i
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES ia ON ia.c_intezmenyid = i.id
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.c_intezmenyid = i.id
|
||||
AND ocs.c_tanevid = @tanevid
|
||||
AND ocs.id = @csoportId
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.id = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.id = cs.c_csoportvezetoid
|
||||
WHERE i.id = @intezmenyid
|
||||
AND ia.c_tanevid = @tanevid
|
||||
|
||||
--Csoportot vezette
|
||||
SELECT
|
||||
ISNULL(f.c_nyomtatasinev, '-') AS CsoportVezeto
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.id = cs.c_csoportvezetoid
|
||||
WHERE cs.id = @csoportId
|
||||
AND cs.c_altanevid = @tanevid
|
||||
AND cs.c_alintezmenyid = @intezmenyid
|
||||
|
||||
--Tanulók
|
||||
SELECT DISTINCT
|
||||
Nev
|
||||
,Osztaly
|
||||
,OktAzon
|
||||
,OsztalyId
|
||||
,BelepesDatum
|
||||
FROM #tanulok
|
||||
ORDER BY
|
||||
Nev
|
||||
|
||||
--Naplóhetek
|
||||
|
||||
SELECT TOP 1
|
||||
@elsonap = t.C_KEZDONAP
|
||||
FROM T_TANEV_OSSZES t
|
||||
WHERE t.ID = @tanevId
|
||||
AND t.TOROLT = 'F'
|
||||
|
||||
IF (
|
||||
SELECT
|
||||
c_osztalycsoportid
|
||||
FROM T_OSZTALYCSOPORT_TANEVRENDJE otr
|
||||
INNER JOIN t_tanevrendje_osszes tr ON tr.id = otr.c_tanevrendjeid
|
||||
AND tr.c_naptipusa = 1395
|
||||
WHERE c_osztalycsoportid = @csoportid
|
||||
) IS NULL
|
||||
|
||||
SELECT TOP 1
|
||||
@utolsonap = tr.c_datum
|
||||
FROM t_tanevrendje_osszes tr
|
||||
WHERE c_naptipusa = 1395
|
||||
AND c_tanevid = @tanevId
|
||||
AND c_intezmenyid = @intezmenyId
|
||||
AND torolt = 'F'
|
||||
AND c_osszescsoportravonatkozik = 'T'
|
||||
|
||||
ELSE
|
||||
|
||||
SELECT TOP 1
|
||||
@utolsonap = tr.c_datum
|
||||
FROM T_OSZTALYCSOPORT_TANEVRENDJE otr
|
||||
INNER JOIN t_tanevrendje_osszes tr ON tr.id = otr.c_tanevrendjeid
|
||||
AND tr.c_naptipusa = 1395
|
||||
WHERE c_osztalycsoportid = @csoportid
|
||||
|
||||
SELECT
|
||||
nn.C_HETSORSZAMA AS Het
|
||||
,FORMAT(MIN(nn.C_NAPDATUMA), 'yyyy.MM.dd.') AS HetEleje
|
||||
,FORMAT(MAX(nn.C_NAPDATUMA), 'yyyy.MM.dd.') AS HetVege
|
||||
FROM T_NAPTARINAP_OSSZES nn
|
||||
WHERE nn.C_NAPDATUMA BETWEEN @elsoNap AND @utolsoNap
|
||||
AND nn.C_HETNAPJA BETWEEN 1407 AND 1413
|
||||
AND nn.TOROLT = 'F'
|
||||
AND nn.c_tanevId = @tanevId
|
||||
GROUP BY
|
||||
nn.C_HETSORSZAMA
|
||||
ORDER BY
|
||||
MIN(nn.C_NAPDATUMA)
|
||||
|
||||
--Tanuló adatok
|
||||
SELECT
|
||||
*
|
||||
FROM #tanulok
|
||||
ORDER BY
|
||||
Nev
|
||||
|
||||
SELECT
|
||||
DATEPART(MONTH, Datum) AS Honap
|
||||
,TantargyId AS Id
|
||||
,Igazolt AS IgazoltE
|
||||
,TanuloId AS TanuloId
|
||||
,TanuloCsoportId AS TanuloCsoportId
|
||||
,IgazolasTipusa AS IgazolasTipus
|
||||
,Datum AS Datum
|
||||
,Tipusa AS Tipus
|
||||
,KesesPercben AS KesesPercben
|
||||
,HetSorszama AS HetSorszama
|
||||
,Oraszam AS Oraszam
|
||||
,CAST(DATEPART(MONTH, Datum) AS nvarchar (10)) + IIF(C_GYAKORLATI = 'T', 'G', 'E') AS ElmeletGyakorlat
|
||||
,C_GYAKORLATI AS isGyakorlat
|
||||
INTO #mulasztasTmp
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes(@tanevId, @csoportId, @iskolaErdekuSzamit, 1, 0, DEFAULT, DEFAULT, 0) TanulokMulasztasai
|
||||
INNER JOIN T_TANTARGY_OSSZES AS Tantargy ON Tantargy.Id = TanulokMulasztasai.TantargyId
|
||||
|
||||
SELECT
|
||||
ta.TanuloId AS Id
|
||||
,ta.TanuloCsoportId
|
||||
,ta.Sorszam
|
||||
,ta.TorzslapSzam
|
||||
,ta.OktAzon
|
||||
,ta.TajSzam
|
||||
,ta.AnyjaNeve
|
||||
,ta.SzulHely
|
||||
,ta.SzulIdo
|
||||
,ta.SocAdat
|
||||
,ta.Kepzes
|
||||
,ta.TanuloNeve
|
||||
,ta.Allampolgarsaga
|
||||
,ta.DiakIgazolvanySzam
|
||||
,ta.KilepesDatum
|
||||
,ta.BeirasiNaploSorszam
|
||||
,ta.AdottOsztaly AS Osztaly
|
||||
,ta.AdottOsztalyId AS OsztalyId
|
||||
,CONVERT(DATE, LEFT(ta.BelepesDatum, LEN(ta.BelepesDatum) - 1), 102) AS BelepesDatum
|
||||
INTO #studentsWithTanuloCsoport
|
||||
FROM fnGetDokumentumTanulokAdatai(@tanevId, @csoportId) ta
|
||||
|
||||
EXEC sp_GetDokumentumMulasztasokIdoszakonkent
|
||||
@tanevId = @tanevId
|
||||
,@osztalyCsoportId = @csoportId
|
||||
,@iskolaErdekuSzamit = @iskolaErdekuSzamit
|
||||
,@isReszletesMulasztasok = 0
|
||||
|
||||
--Napló
|
||||
SELECT DISTINCT
|
||||
nn.c_hetsorszama AS Het
|
||||
,d.c_name AS Nap
|
||||
,FORMAT(nn.c_napdatuma, 'yyyy. MMMM dd.', 'hu-hu') AS Datum
|
||||
FROM T_NAPTARINAP_OSSZES nn
|
||||
LEFT JOIN T_TANITASIORA_OSSZES tao ON tao.c_datum = nn.c_napdatuma
|
||||
AND tao.c_osztalycsoportid = @csoportid
|
||||
AND tao.torolt = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.id = nn.c_hetnapja
|
||||
AND d.C_TANEVID = @tanevId
|
||||
AND d.TOROLT = 'F'
|
||||
LEFT JOIN T_FOGLALKOZAS_OSSZES fog ON fog.id = tao.c_foglalkozasid
|
||||
AND fog.c_tanevid = @tanevid
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.id = fog.c_tanarid
|
||||
AND f.torolt = 'F'
|
||||
WHERE nn.c_napdatuma >= @elsonap
|
||||
AND nn.c_napdatuma <= @utolsonap
|
||||
ORDER BY
|
||||
nn.c_hetsorszama
|
||||
,FORMAT(nn.c_napdatuma, 'yyyy. MMMM dd.', 'hu-hu')
|
||||
|
||||
--Napló adatok
|
||||
INSERT INTO #OraSorszam (
|
||||
TanitasioraId
|
||||
,OraSorszam
|
||||
)
|
||||
EXEC sp_GetOraSorszamByOsztaly
|
||||
@osztalyCsoportId = @csoportId
|
||||
,@datum = @datum
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@tanevId = @tanevId
|
||||
|
||||
SELECT DISTINCT
|
||||
tao.C_ORASZAM AS Oraszam
|
||||
,tao.C_HETSORSZAMA AS Het
|
||||
,FORMAT(tao.C_DATUM, 'yyyy. MMMM dd.', 'hu-hu') AS Datum
|
||||
,CONVERT(varchar(5), tao.C_ORAKEZDETE, 108) + '-' + CONVERT(varchar(5), tao.C_ORAVEGE, 108) AS DatumKezdettel
|
||||
,ISNULL('Helyettesítő: ' + helyettesito.C_NYOMTATASINEV, f.C_NYOMTATASINEV) AS Tanar
|
||||
,IIF(tantargy.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + tantargy.C_NEV + ')', tantargy.C_NEV) AS TantargyNev
|
||||
,tao.C_TANTARGYID AS TantargyId
|
||||
,tao.C_MEGTARTOTT AS Megtartott
|
||||
,tao.C_TEMA AS Tema
|
||||
,OraSorszam
|
||||
,C_ORAKEZDETE
|
||||
INTO #megtartottOrak
|
||||
FROM T_TANITASIORA_OSSZES tao
|
||||
LEFT JOIN T_FOGLALKOZAS_OSSZES fog ON fog.id = tao.C_FOGLALKOZASID
|
||||
AND fog.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.id = tao.C_TANARID
|
||||
AND f.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES helyettesito ON helyettesito.ID = tao.C_HELYETTESITOTANARID
|
||||
INNER JOIN T_TANTARGY_OSSZES tantargy ON tantargy.Id = tao.C_TANTARGYID
|
||||
LEFT JOIN (
|
||||
SELECT DISTINCT
|
||||
OraSorszam
|
||||
,TanitasioraId
|
||||
FROM #OraSorszam
|
||||
) AS oraSorszam ON oraSorszam.TanitasioraId = tao.Id
|
||||
WHERE tao.C_OSZTALYCSOPORTID = @csoportid
|
||||
AND tao.TOROLT = 'F'
|
||||
ORDER BY
|
||||
tao.C_ORAKEZDETE
|
||||
,tao.C_ORASZAM
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM #megtartottOrak
|
||||
|
||||
--Napló mulasztás
|
||||
SELECT
|
||||
C_HETSORSZAMA AS Het
|
||||
,C_NYOMTATASINEV AS Tanulo
|
||||
,MAX([1]) AS Hetfo
|
||||
,MAX([2]) AS Kedd
|
||||
,MAX([3]) AS Szerda
|
||||
,MAX([4]) AS Csutortok
|
||||
,MAX([5]) AS Pentek
|
||||
,MAX([6]) AS Szombat
|
||||
FROM (
|
||||
SELECT
|
||||
C_HETSORSZAMA
|
||||
,C_NYOMTATASINEV
|
||||
,[0]
|
||||
,[1]
|
||||
,[2]
|
||||
,[3]
|
||||
,[4]
|
||||
,[5]
|
||||
,[6]
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
n.C_NAPTARINAPID
|
||||
,DATEPART(dw, n.C_DATUM) AS NAP
|
||||
,t.C_NYOMTATASINEV
|
||||
,n.C_HETSORSZAMA
|
||||
,'[' + STUFF(
|
||||
(
|
||||
SELECT
|
||||
', ' + CAST(OraSorszam AS varchar(3)) + IIF(tm.C_TIPUS = 1499, '(k)', '')
|
||||
FROM T_TANULOMULASZTAS_OSSZES tm
|
||||
INNER JOIN T_TANITASIORA_OSSZES o ON o.ID = tm.C_TANITASIORAKID
|
||||
LEFT JOIN (
|
||||
SELECT DISTINCT
|
||||
OraSorszam
|
||||
,TanitasioraId
|
||||
FROM #OraSorszam
|
||||
) AS oraSorszam ON oraSorszam.TanitasioraId = o.Id
|
||||
WHERE n.C_NAPTARINAPID = o.C_NAPTARINAPID
|
||||
AND m.C_ORATANULOIID = tm.C_ORATANULOIID
|
||||
AND tm.C_TANEVID = @tanevId
|
||||
AND tm.torolt = 'F'
|
||||
AND tm.c_intezmenyId = @intezmenyId
|
||||
AND o.c_tanevId = @tanevId
|
||||
AND o.C_OSZTALYCSOPORTID = @csoportId
|
||||
AND o.TOROLT = 'F'
|
||||
ORDER BY
|
||||
o.C_NAPTARINAPID
|
||||
,o.C_ORASZAM
|
||||
FOR XML PATH(''), TYPE
|
||||
) .value
|
||||
('.', 'varchar(max)'), 1, 2, ''
|
||||
) + '] ' + CAST(SUM(IIF(m.C_IGAZOLT = 'T', 1, 0)) AS varchar(2)) + '/' + CAST(SUM(IIF(m.C_IGAZOLT = 'F', 1, 0)) AS varchar(2)) AS hianyzas
|
||||
FROM T_TANITASIORA_OSSZES n
|
||||
INNER JOIN T_TANULOMULASZTAS_OSSZES m ON m.C_TANITASIORAKID = n.ID
|
||||
AND m.torolt = 'F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES t ON t.ID = m.C_ORATANULOIID
|
||||
WHERE n.C_TANEVID = @tanevId
|
||||
AND m.C_TANEVID = @tanevId
|
||||
AND (@iskolaErdekuSzamit = 1 OR C_IGAZOLASTIPUSA <> 1533)
|
||||
AND n.C_OSZTALYCSOPORTID = @csoportId
|
||||
AND n.TOROLT = 'F'
|
||||
GROUP BY
|
||||
n.C_NAPTARINAPID
|
||||
,C_ORATANULOIID
|
||||
,C_NYOMTATASINEV
|
||||
,n.C_HETSORSZAMA
|
||||
,n.C_DATUM
|
||||
) AS SUB PIVOT(MAX(HIANYZAS) FOR NAP IN(
|
||||
[0]
|
||||
,[1]
|
||||
,[2]
|
||||
,[3]
|
||||
,[4]
|
||||
,[5]
|
||||
,[6])) AS PivotTable
|
||||
) AS ASD
|
||||
GROUP BY
|
||||
C_HETSORSZAMA
|
||||
,C_NYOMTATASINEV
|
||||
ORDER BY
|
||||
C_HETSORSZAMA
|
||||
|
||||
--Tanuló feljegyzései
|
||||
SELECT
|
||||
tte.C_TANULOID AS Tanulo
|
||||
,FORMAT(tao.c_datum, 'yyyy.MM.dd.') AS Idopont
|
||||
,d.C_NAME AS Tipus
|
||||
,te.C_TARTALOM AS Feljegyzes
|
||||
,f.C_NYOMTATASINEV AS Feljegyzo
|
||||
FROM T_TANULO_TANULOESEMENY tte
|
||||
INNER JOIN T_TANULOESEMENY_OSSZES te ON te.Id = tte.C_TANULOESEMENYID
|
||||
INNER JOIN T_TANITASIORA_OSSZES tao ON tao.Id = te.C_TANITASIORAID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.Id = te.C_FELJEGYZOID
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.Id = te.C_TIPUS
|
||||
AND d.C_TANEVID = @tanevId
|
||||
AND d.TOROLT = 'F'
|
||||
WHERE C_OSZTALYCSOPORTID = @csoportId
|
||||
AND te.TOROLT = 'F'
|
||||
AND C_TIPUS <> 1534
|
||||
|
||||
INSERT INTO @GondViseloCimTable (
|
||||
GondviseloId
|
||||
,Cim
|
||||
,Cimtipusa
|
||||
)
|
||||
SELECT DISTINCT
|
||||
GondviseloId
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
CAST(Btemp.Cim AS nvarchar (max)) + char(13) + char(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (1, @tanevId, @csoportid) btemp
|
||||
WHERE temp.GondviseloId = btemp.GondviseloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)'), 1 ,0, ''
|
||||
)
|
||||
,cimTipusa.C_NAME
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (1, @tanevId, @csoportid) temp
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipusa ON cimTipusa.Id = temp.CimTipusa
|
||||
AND cimTipusa.C_TANEVID = @tanevId
|
||||
|
||||
INSERT INTO @EmailCimTableTemp (
|
||||
FelhasznaloId
|
||||
,EmailCim
|
||||
,GondviseloId
|
||||
)
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @csoportid, 'T') tanulo
|
||||
INNER JOIN T_EMAIL_OSSZES email ON email.C_FELHASZNALOID = TanuloId
|
||||
WHERE email.TOROLT = 'F'
|
||||
AND email.C_TANEVID = @tanevId
|
||||
AND LEN(C_EMAILCIM) > 0
|
||||
|
||||
INSERT INTO @EmailCimGondviseloTable (
|
||||
GondviseloId
|
||||
,EmailCim
|
||||
)
|
||||
SELECT DISTINCT
|
||||
GondviseloId
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
CAST(btemp.EmailCim AS nvarchar (max)) + char(13) + char(10)
|
||||
FROM @EmailCimTableTemp btemp
|
||||
WHERE temp.GondviseloId = btemp.GondviseloId
|
||||
AND btemp.GondviseloId IS NOT NULL
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)'), 1 ,0, ''
|
||||
) Email
|
||||
FROM @EmailCimTableTemp temp
|
||||
WHERE GondviseloId IS NOT NULL
|
||||
|
||||
INSERT INTO @TelefonTableTemp (
|
||||
FelhasznaloId
|
||||
,Telefon
|
||||
,GondviseloId
|
||||
)
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @csoportid, 'T') tanulo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @tanevId
|
||||
AND LEN(telefon.C_TELEFONSZAM) > 0
|
||||
|
||||
INSERT INTO @GondviseloTelefonTable (
|
||||
GondviseloId
|
||||
,Telefon
|
||||
)
|
||||
SELECT DISTINCT
|
||||
GondviseloId
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
CAST(btemp.Telefon AS nvarchar (max)) + char(13) + char(10)
|
||||
FROM @TelefonTableTemp btemp
|
||||
WHERE temp.GondviseloId = btemp.GondviseloId
|
||||
AND temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
AND GondviseloId IS NOT NULL
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)'), 1 ,0, ''
|
||||
)
|
||||
FROM @TelefonTableTemp temp
|
||||
WHERE GondviseloId IS NOT NULL
|
||||
|
||||
/*gondviselő elérhetőségei */
|
||||
SELECT DISTINCT
|
||||
Gondviselok.TanuloId AS TanuloId
|
||||
,Gondviselok.GondviseloNev + ' (' + RokonsagiFok.C_NAME + ')' AS C_NEV
|
||||
,cim.Cimtipusa AS C_CIMTIPUSA
|
||||
,cim.cim AS C_OSSZETETTCIM
|
||||
,telefon.telefon AS C_TELEFONSZAM
|
||||
,email.emailcim AS C_EMAILCIM
|
||||
FROM fnGetDokumentumGondviselok (@csoportId, @tanevId, 'F', 'T') Gondviselok
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES RokonsagiFok ON RokonsagiFok.ID = Gondviselok.RokonsagifokId AND RokonsagiFok.C_TANEVID = @tanevId
|
||||
LEFT JOIN @EmailCimGondviseloTable email ON email.GondviseloId = Gondviselok.GondviseloId
|
||||
LEFT JOIN @GondviseloTelefonTable telefon ON telefon.GondviseloId = Gondviselok.GondviseloId
|
||||
LEFT JOIN @GondViseloCimTable cim ON cim.GondviseloId = Gondviselok.GondviseloId
|
||||
ORDER BY cim.Cimtipusa
|
||||
|
||||
--megtartott órák száma
|
||||
SELECT
|
||||
COUNT(mo.TantargyId) AS TantargyOraszam
|
||||
,mo.Tantargynev AS TantargyNev
|
||||
INTO #megtartottOrakSzama
|
||||
FROM #megtartottOrak mo
|
||||
WHERE mo.Megtartott = 'T'
|
||||
GROUP BY
|
||||
mo.TantargyId
|
||||
,mo.TantargyNev
|
||||
|
||||
SELECT DISTINCT
|
||||
SUM(tmp.TantargyOraszam) AS OsszesTantargySzam
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
', ' + btmp.TantargyNev + '(' + CAST(btmp.TantargyOraszam AS nvarchar (max)) + ')'
|
||||
FROM #megtartottOrakSzama btmp
|
||||
FOR XML PATH(''), TYPE
|
||||
).value('.', 'NVARCHAR(MAX)'), 1 , 2, ''
|
||||
) AS Tantargyak
|
||||
FROM #megtartottOrakSzama tmp
|
||||
|
||||
-- Csoport tanárai
|
||||
SELECT
|
||||
targy.C_NEV AS TargyNev
|
||||
,tanar.C_NYOMTATASINEV AS TanarNev
|
||||
,targykategoria.C_ORDER
|
||||
,tanar.ID TanarId
|
||||
,tanar.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
FROM T_FELHASZNALO_OSSZES tanar
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES f ON f.C_TANARID = tanar.ID
|
||||
AND f.TOROLT='F'
|
||||
AND f.C_OSZTALYCSOPORTID = @csoportId
|
||||
INNER JOIN T_TANTARGY_OSSZES targy ON targy.ID = f.C_TANTARGYID
|
||||
AND targy.TOROLT='F'
|
||||
INNER JOIN T_TARGYKATEGORIATIPUS_OSSZES ON T_TARGYKATEGORIATIPUS_OSSZES.ID = targy.C_TARGYKATEGORIA
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES targykategoria ON targykategoria.ID = T_TARGYKATEGORIATIPUS_OSSZES.ID
|
||||
AND targykategoria.TOROLT = 'F'
|
||||
AND targykategoria.C_TANEVID = @tanevId
|
||||
WHERE tanar.TOROLT = 'F'
|
||||
AND tanar.C_INTEZMENYID = @intezmenyid
|
||||
AND tanar.c_tanevId = @tanevId
|
||||
GROUP BY
|
||||
C_ORDER
|
||||
,targy.C_NEV
|
||||
,tanar.C_NYOMTATASINEV
|
||||
,tanar.ID
|
||||
,tanar.C_OKTATASIAZONOSITO
|
||||
ORDER BY
|
||||
C_ORDER
|
||||
,targy.C_NEV
|
||||
,tanar.C_NYOMTATASINEV
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,152 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetNemNaplozottOrakSzama
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetNemNaplozottOrakSzama
|
||||
@pTanevId int
|
||||
,@pIntezmenyId int
|
||||
,@pFeladatKategoriaId int = null
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
CREATE TABLE #OsztalyCsoportok (
|
||||
Id INT
|
||||
,IsVegzos CHAR(1)
|
||||
,IdoszakKezdete DATETIME
|
||||
,IdoszakVege DATETIME
|
||||
,INDEX IX1 CLUSTERED(Id, IdoszakKezdete, IdoszakVege)
|
||||
)
|
||||
|
||||
CREATE TABLE #NaptariNapok (
|
||||
Datum DATETIME
|
||||
,HetirendId INT
|
||||
,HetNapjaId INT
|
||||
,OsztalyCsoportId INT
|
||||
,CsengetesiRendId INT
|
||||
,IsEgyediNap CHAR(1) COLLATE DATABASE_DEFAULT
|
||||
,PRIMARY KEY CLUSTERED (OsztalyCsoportId, Datum, HetNapjaId, HetirendId)
|
||||
)
|
||||
|
||||
DECLARE
|
||||
@IdoszakKezdete DATETIME
|
||||
,@IdoszakVege DATETIME = GETDATE()
|
||||
,@VegzosUtolsoTanitasiNap DATETIME
|
||||
|
||||
SELECT
|
||||
@IdoszakKezdete = tv.C_KEZDONAP
|
||||
FROM T_TANEV_OSSZES tv WHERE ID = @pTanevId
|
||||
|
||||
SELECT
|
||||
@VegzosUtolsoTanitasiNap = MIN(C_DATUM)
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
WHERE TOROLT = 'F' AND C_TANEVID = @pTanevId AND C_NAPTIPUSA IN (1402, 7600, 7601, 7602, 7603, 1395) AND C_OSSZESCSOPORTRAVONATKOZIK = 'T'
|
||||
|
||||
INSERT INTO #OsztalyCsoportok (
|
||||
Id
|
||||
,IsVegzos
|
||||
,IdoszakKezdete
|
||||
,IdoszakVege
|
||||
)
|
||||
SELECT
|
||||
ID As Id
|
||||
,C_VEGZOSEVFOLYAM AS IsVegzos
|
||||
,@IdoszakKezdete AS IdoszakKezdete
|
||||
,IIF(C_VEGZOSEVFOLYAM = 'T' AND @VegzosUtolsoTanitasiNap IS NOT NULL AND @IdoszakVege > @VegzosUtolsoTanitasiNap, @VegzosUtolsoTanitasiNap + 1, @IdoszakVege) AS IdoszakVege
|
||||
FROM T_OSZTALYCSOPORT_OSSZES
|
||||
WHERE TOROLT = 'F' AND C_TANEVID = @pTanevId
|
||||
AND (C_FELADATKATEGORIAID = @pFeladatKategoriaId OR @pFeladatKategoriaId IS NULL)
|
||||
|
||||
UPDATE ocs
|
||||
SET
|
||||
ocs.IdoszakVege = NewVegeDatum
|
||||
FROM #OsztalyCsoportok ocs
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
MIN(tr.C_DATUM) + 1 AS NewVegeDatum
|
||||
,ocstr.C_OSZTALYCSOPORTID
|
||||
FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON ocstr.C_TANEVRENDJEID = tr.ID
|
||||
WHERE tr.C_OSSZESCSOPORTRAVONATKOZIK = 'F' AND tr.C_NAPTIPUSA IN (1402, 7600, 7601, 7602, 7603) AND tr.TOROLT = 'F' AND tr.C_TANEVID = @pTanevId
|
||||
GROUP BY ocstr.C_OSZTALYCSOPORTID
|
||||
) x ON x.C_OSZTALYCSOPORTID = ocs.Id
|
||||
WHERE ocs.IsVegzos = 'T'
|
||||
|
||||
INSERT INTO #NaptariNapok (
|
||||
Datum
|
||||
,HetirendId
|
||||
,HetNapjaId
|
||||
,OsztalyCsoportId
|
||||
,CsengetesiRendId
|
||||
,IsEgyediNap
|
||||
)
|
||||
SELECT
|
||||
nn.Datum
|
||||
,ISNULL(tr.HetirendId, nn.HetirendId) AS HetirendId
|
||||
,ISNULL(tr.HetNapjaId, nn.HetNapjaId) AS HetNapjaId
|
||||
,nn.OsztalyCsoportId
|
||||
,ISNULL(tr.CsengetesiRendId, nn.CsengetesiRendId) AS CsengetesiRendId
|
||||
,COALESCE(tr.IsEgyediNap, nn.IsEgyediNap, 'F')
|
||||
FROM (
|
||||
SELECT
|
||||
nn.C_NAPDATUMA AS Datum
|
||||
,nn.C_HETIREND AS HetirendId
|
||||
,nn.C_HETNAPJA AS HetNapjaId
|
||||
,nn.C_ORARENDINAP AS OrarendiNap
|
||||
,ocs.ID AS OsztalyCsoportId
|
||||
,tr.C_CSENGETESIRENDID AS CsengetesiRendId
|
||||
,tr.C_EGYEDINAP AS IsEgyediNap
|
||||
FROM T_NAPTARINAP_OSSZES nn
|
||||
INNER JOIN #OsztalyCsoportok ocs ON ocs.IdoszakKezdete <= nn.C_NAPDATUMA AND ocs.IdoszakVege > nn.C_NAPDATUMA
|
||||
LEFT JOIN T_TANEVRENDJE_OSSZES tr ON tr.C_DATUM = nn.C_NAPDATUMA AND nn.C_INTEZMENYID = tr.C_INTEZMENYID AND nn.C_TANEVID = tr.C_TANEVID AND tr.TOROLT = 'F' AND tr.C_OSSZESCSOPORTRAVONATKOZIK = 'T'
|
||||
WHERE nn.TOROLT = 'F' AND nn.C_INTEZMENYID = @pIntezmenyId AND nn.C_TANEVID = @pTanevId
|
||||
) nn
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
nn.C_NAPDATUMA AS Datum
|
||||
,tr.C_HETIREND AS HetirendId
|
||||
,tr.C_HETNAPJA AS HetNapjaId
|
||||
,tr.C_ORARENDINAP AS OrarendiNap
|
||||
,ocstr.C_OSZTALYCSOPORTID AS OsztalyCsoportId
|
||||
,tr.C_CSENGETESIRENDID AS CsengetesiRendId
|
||||
,tr.C_EGYEDINAP AS IsEgyediNap
|
||||
FROM T_NAPTARINAP_OSSZES nn
|
||||
INNER JOIN T_TANEVRENDJE_OSSZES tr ON tr.C_DATUM = nn.C_NAPDATUMA AND nn.C_INTEZMENYID = tr.C_INTEZMENYID AND nn.C_TANEVID = tr.C_TANEVID AND tr.TOROLT = 'F' AND tr.C_OSSZESCSOPORTRAVONATKOZIK = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
INNER JOIN #OsztalyCsoportok ocs ON ocs.Id = ocstr.C_OSZTALYCSOPORTID AND ocs.IdoszakKezdete <= nn.C_NAPDATUMA AND ocs.IdoszakVege > nn.C_NAPDATUMA
|
||||
WHERE nn.TOROLT = 'F' AND nn.C_INTEZMENYID = @pIntezmenyId AND nn.C_TANEVID = @pTanevId AND nn.C_NAPDATUMA >= @IdoszakKezdete AND nn.C_NAPDATUMA < ocs.IdoszakVege
|
||||
) tr ON nn.Datum = tr.datum AND nn.OsztalyCsoportId = tr.OsztalyCsoportId
|
||||
WHERE (ISNULL(tr.OrarendiNap, nn.OrarendiNap) = 'T')
|
||||
|
||||
SELECT
|
||||
ora.Tanar
|
||||
,ora.TanarOktAzon
|
||||
,ora.Honap
|
||||
,COUNT(*) AS Darab
|
||||
FROM (
|
||||
SELECT
|
||||
COALESCE(helyettes.C_NYOMTATASINEV, tanar.C_NYOMTATASINEV) AS Tanar
|
||||
,tanar.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
,FORMAT(nn.Datum, 'MM') AS Honap
|
||||
,nn.Datum
|
||||
-- egy napon lehet t<>bb <20>ra
|
||||
,oo.C_ORASZAM
|
||||
-- egy <20>r<EFBFBD>ban lehet t<>bb csoportnak <20>ra
|
||||
,oo.C_OSZTALYCSOPORTID
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
INNER JOIN #OsztalyCsoportok ocs ON ocs.ID = oo.C_OSZTALYCSOPORTID
|
||||
INNER JOIN #NaptariNapok nn ON nn.HetnapjaId = oo.C_HETNAPJA AND ocs.ID = nn.OsztalyCsoportId AND nn.Datum >= oo.C_ORAERVENYESSEGKEZDETE
|
||||
AND ((nn.Datum < oo.C_ORAERVENYESSEGVEGE) OR (oo.C_ORAERVENYESSEGKEZDETE = oo.C_ORAERVENYESSEGVEGE AND nn.Datum = oo.C_ORAERVENYESSEGKEZDETE))
|
||||
AND (oo.C_HETIREND = 1554 OR nn.HetirendId = oo.C_HETIREND) AND oo.C_EGYEDINAP = nn.IsEgyediNap
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES tanar ON tanar.ID = oo.C_TANARID AND tanar.C_TANEVID = oo.C_TANEVID AND tanar.TOROLT = 'F'
|
||||
LEFT JOIN T_HELYETTESITESIIDOSZAK_OSSZES hisz ON oo.ID = hisz.C_HELYETTESITETTORARENDID AND hisz.C_HELYETTESITESNAPJA = nn.Datum AND hisz.C_TANEVID = oo.C_TANEVID AND hisz.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES helyettes ON hisz.C_HELYETTESTANAROKID = helyettes.ID AND helyettes.C_TANEVID = oo.C_TANEVID AND helyettes.TOROLT = 'F'
|
||||
LEFT JOIN T_CSENGETESIRENDORA_OSSZES csro ON csro.C_CSENGETESIRENDID = ISNULL(nn.CsengetesiRendId, oo.C_CSENGETESIRENDID) AND csro.C_ORASZAM = oo.C_ORASZAM AND csro.TOROLT = 'F'
|
||||
LEFT JOIN T_TANITASIORA_OSSZES tt ON tt.C_DATUM = nn.Datum AND tt.C_HETNAPJA = oo.C_HETNAPJA AND ((tt.C_CSENGETESIRENDID IS NULL AND tt.C_ORAKEZDETE = (nn.Datum + oo.C_ORAKEZDETE)
|
||||
AND tt.C_ORAVEGE = (nn.Datum + oo.C_ORAVEGE)) OR (tt.C_CSENGETESIRENDID IS NOT NULL AND tt.C_ORASZAM = oo.C_ORASZAM)) AND tt.C_OSZTALYCSOPORTID = oo.C_OSZTALYCSOPORTID
|
||||
AND tt.C_TANTARGYID = oo.C_TANTARGYID AND tt.C_TANARID = oo.C_TANARID
|
||||
WHERE oo.TOROLT = 'F' AND oo.C_TANEVID = @pTanevId AND (nn.Datum + oo.C_ORAKEZDETE) <= @IdoszakVege AND (nn.Datum + oo.C_ORAVEGE) >= @IdoszakKezdete
|
||||
AND ((oo.C_CSENGETESIRENDID IS NOT NULL AND csro.C_CSENGETESIRENDID IS NOT NULL) OR (oo.C_CSENGETESIRENDID IS NULL AND csro.C_CSENGETESIRENDID IS NULL)) AND tt.ID IS NULL
|
||||
) ora
|
||||
GROUP BY ora.Tanar, ora.TanarOktAzon, ora.Honap
|
||||
|
||||
END
|
||||
GO
|
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,133 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetUtolsoBeNemIrtOrak
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetUtolsoBeNemIrtOrak
|
||||
@pIntezmenyId int
|
||||
,@pTanevId int
|
||||
,@pTanarId int
|
||||
,@pDarab int
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@pIdoszakKezdete datetime
|
||||
,@pIdoszakVege datetime
|
||||
|
||||
CREATE TABLE #OrarendiOrak (
|
||||
Id int
|
||||
,ORARENDIID int
|
||||
,Datum datetime
|
||||
,Bontott char (1)
|
||||
,Hetirend int
|
||||
,HetNapja int
|
||||
,HetSorszam int
|
||||
,ErvenyessegKezdete datetime
|
||||
,ErvenyessegVege datetime
|
||||
,OraKezdete datetime
|
||||
,OraVege datetime
|
||||
,Oraszam int
|
||||
,TargyNev nvarchar (300)
|
||||
,TargyNevForMobile nvarchar (300)
|
||||
,TargykategoriaID int
|
||||
,Megtartott char (1)
|
||||
,CsengetesiRendOraID int
|
||||
,CsengetesiRendID int
|
||||
,MaxNapiOraszam int
|
||||
,OsztalyNev nvarchar (255)
|
||||
,TanevRendOsztalyCsoportId int
|
||||
,MegjelenesOka nvarchar (300)
|
||||
,TanarNev nvarchar (255)
|
||||
,TeremNev nvarchar (255)
|
||||
,TeremId int
|
||||
,OraTipus nvarchar (200)
|
||||
,Hianyzas char (1)
|
||||
,Keses char (1)
|
||||
,Ures char (1)
|
||||
,HelyettesitoTanarID int
|
||||
,HelyettesitoTanarNev nvarchar (255)
|
||||
,HelyettesitesId int
|
||||
,TanarID int
|
||||
,AdminAltalKiirt char (1)
|
||||
,GroupId int
|
||||
,Tema nvarchar (max)
|
||||
,TantargyId int
|
||||
,OsztCsopId int
|
||||
,INDEX IX1 CLUSTERED(Datum, HetNapja, Oraszam, TanevRendOsztalyCsoportId, TantargyId, TanarID)
|
||||
)
|
||||
|
||||
SELECT
|
||||
@pIdoszakKezdete = tanev.C_KEZDONAP
|
||||
,@pIdoszakVege = (CASE WHEN tanev.C_AKTIV = 'T' THEN GETDATE() ELSE tanev.C_UTOLSOTANITASINAP END)
|
||||
FROM T_TANEV_OSSZES tanev
|
||||
WHERE tanev.TOROLT = 'F'
|
||||
AND tanev.ID = @pTanevId
|
||||
AND tanev.C_INTEZMENYID = @pIntezmenyId
|
||||
|
||||
INSERT INTO #OrarendiOrak (
|
||||
Id
|
||||
,ORARENDIID
|
||||
,Datum
|
||||
,Bontott
|
||||
,Hetirend
|
||||
,HetNapja
|
||||
,HetSorszam
|
||||
,ErvenyessegKezdete
|
||||
,ErvenyessegVege
|
||||
,OraKezdete
|
||||
,OraVege
|
||||
,Oraszam
|
||||
,TargyNev
|
||||
,TargyNevForMobile
|
||||
,TargykategoriaID
|
||||
,Megtartott
|
||||
,CsengetesiRendOraID
|
||||
,CsengetesiRendID
|
||||
,MaxNapiOraszam
|
||||
,OsztalyNev
|
||||
,TanevRendOsztalyCsoportId
|
||||
,MegjelenesOka
|
||||
,TanarNev
|
||||
,TeremNev
|
||||
,TeremId
|
||||
,OraTipus
|
||||
,Hianyzas
|
||||
,Keses
|
||||
,Ures
|
||||
,HelyettesitoTanarID
|
||||
,HelyettesitoTanarNev
|
||||
,HelyettesitesId
|
||||
,TanarID
|
||||
,AdminAltalKiirt
|
||||
,GroupId
|
||||
,Tema
|
||||
,TantargyId
|
||||
,OsztCsopId
|
||||
)
|
||||
EXEC sp_GetOrarend
|
||||
@pIntezmenyId = @pIntezmenyId
|
||||
,@pTanevId = @pTanevId
|
||||
,@pIdoszakKezdete = @pIdoszakKezdete
|
||||
,@pIdoszakVege = @pIdoszakVege
|
||||
,@pTanarId = @pTanarId
|
||||
,@pIsHelyettesitesNelkul = 0
|
||||
,@pOsztalyCsoportId = NULL
|
||||
,@pTanuloId = NULL
|
||||
,@pTantargyId = NULL
|
||||
,@pTeremId = NULL
|
||||
,@pCsakOrarendiOrak = 0
|
||||
,@pIsNapirend = NULL
|
||||
|
||||
SELECT TOP (@pDarab)
|
||||
orak.Id AS Id
|
||||
,CONVERT(nvarchar(25), OraKezdete, 102) AS Datum
|
||||
,IIF(orak.CsengetesiRendID IS NOT NULL, orak.Oraszam, N'-') AS Oraszam
|
||||
,orak.OsztalyNev AS OsztalyCsoport
|
||||
,orak.TargyNev AS Tantargy
|
||||
FROM #OrarendiOrak orak
|
||||
WHERE orak.OraTipus = N'OrarendiOra'
|
||||
AND orak.OraKezdete <= @pIdoszakVege
|
||||
AND orak.OraVege >= @pIdoszakKezdete
|
||||
ORDER BY orak.OraKezdete DESC
|
||||
|
||||
END
|
||||
GO
|
Reference in New Issue
Block a user