init
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
--<EFBFBD>gazat, szakk<EFBFBD>pes<EFBFBD>t<EFBFBD>se....
|
||||
UPDATE T_TANULOCSOPORT_OSSZES
|
||||
SET
|
||||
T_TANULOCSOPORT_OSSZES.C_AGAZAT = T_TANULO_OSSZES.C_AGAZAT
|
||||
,T_TANULOCSOPORT_OSSZES.C_SZAKKEPESITES = T_TANULO_OSSZES.C_SZAKKEPESITES
|
||||
,T_TANULOCSOPORT_OSSZES.C_RESZSZAKKEPESITES = T_TANULO_OSSZES.C_RESZSZAKKEPESITES
|
||||
,T_TANULOCSOPORT_OSSZES.C_SZAKMACSOPORT = T_TANULO_OSSZES.C_SZAKMACSOPORT
|
||||
FROM T_TANULO_OSSZES
|
||||
WHERE
|
||||
T_TANULOCSOPORT_OSSZES.C_TANULOID = T_TANULO_OSSZES.ID
|
||||
AND T_TANULOCSOPORT_OSSZES.C_TANEVID = T_TANULO_OSSZES.C_ALTANEVID
|
||||
AND EXISTS (SELECT ID FROM T_OSZTALY_OSSZES WHERE T_OSZTALY_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID)
|
||||
AND T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
|
||||
AND T_TANULO_OSSZES.TOROLT = 'F'
|
||||
|
||||
--t<EFBFBD>rzslapsz<EFBFBD>m....
|
||||
UPDATE T_TANULOCSOPORT_OSSZES
|
||||
SET
|
||||
T_TANULOCSOPORT_OSSZES.C_TORZSLAPSZAM = T_FELHASZNALO_OSSZES.C_NYILVANTARTASISZAM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
WHERE
|
||||
T_TANULOCSOPORT_OSSZES.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
AND T_TANULOCSOPORT_OSSZES.C_TANEVID = T_FELHASZNALO_OSSZES.C_TANEVID
|
||||
AND EXISTS (SELECT ID FROM T_OSZTALY_OSSZES WHERE T_OSZTALY_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID)
|
||||
AND T_FELHASZNALO_OSSZES.C_NYILVANTARTASISZAM IS NOT NULL
|
||||
AND T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
|
||||
AND T_FELHASZNALO_OSSZES.TOROLT = 'F'
|
||||
|
||||
--napl<EFBFBD>sorsz<EFBFBD>m....
|
||||
UPDATE T_TANULOCSOPORT_OSSZES
|
||||
SET
|
||||
T_TANULOCSOPORT_OSSZES.C_NAPLOSORSZAM = T_TANULO_OSSZES.C_NAPLOSORSZAM
|
||||
FROM T_TANULO_OSSZES
|
||||
WHERE
|
||||
T_TANULOCSOPORT_OSSZES.C_TANULOID = T_TANULO_OSSZES.ID
|
||||
AND T_TANULOCSOPORT_OSSZES.C_TANEVID = T_TANULO_OSSZES.C_ALTANEVID
|
||||
AND EXISTS (SELECT ID FROM T_OSZTALY_OSSZES WHERE T_OSZTALY_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID)
|
||||
AND T_TANULO_OSSZES.C_NAPLOSORSZAM IS NOT NULL
|
||||
AND T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
|
||||
AND T_TANULO_OSSZES.TOROLT = 'F'
|
@@ -0,0 +1,121 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('fnGetDokumentumErtekelesekMuveszetiOktatasbanOsztalyonkent') IS NOT NULL
|
||||
BEGIN
|
||||
DROP FUNCTION fnGetDokumentumErtekelesekMuveszetiOktatasbanOsztalyonkent
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumErtekelesekMuveszetiOktatasbanOsztalyonkent (@tanevId INT, @osztalyCsoportId INT, @ertekelesTipusa INT = NULL, @csakTanorai BIT = 1, @csakKivlasztottOsztalyCsoport BIT = 0, @atsoroltTanuloErtekelesek INT = 0)
|
||||
RETURNS @retTanuloErtekeles TABLE
|
||||
(
|
||||
ErtekelesId INT NOT NULL,
|
||||
Datum DATE,
|
||||
TipusId INT,
|
||||
ErtekelesSzoveg NVARCHAR(MAX),
|
||||
ErtekelesSzovegRovidNev NVARCHAR(3),
|
||||
ErtekelesOsztalyzatId INT,
|
||||
ErtekelesOsztalyzatValue INT,
|
||||
ErtekelesOsztalyzatNev NVARCHAR(MAX),
|
||||
ErtekelesSzazalek NVARCHAR(MAX),
|
||||
MagatartasOsztalyzatId INT,
|
||||
MagatartasOsztalyzatValue INT,
|
||||
MagatartasOsztalyzatNev NVARCHAR(MAX),
|
||||
MagatartasSzoveg NVARCHAR(MAX),
|
||||
MagatartasSzovegRovidNev NVARCHAR(3),
|
||||
MagatartasErtekId INT,
|
||||
MagatartasErtek NVARCHAR(MAX),
|
||||
MagatartasErtekOsztalyzatkent INT,
|
||||
SzorgalomOsztalyzatId INT,
|
||||
SzorgalomOsztalyzatValue INT,
|
||||
SzorgalomOsztalyzatNev NVARCHAR(MAX),
|
||||
SzorgalomSzoveg NVARCHAR(MAX),
|
||||
SzorgalomSzovegRovidNev NVARCHAR(3),
|
||||
SzorgalomErtekId INT,
|
||||
SzorgalomErtek NVARCHAR(MAX),
|
||||
SzorgalomErtekOsztalyzatkent INT,
|
||||
TanuloId INT,
|
||||
OsztalyCsoportId INT,
|
||||
TantargyId INT,
|
||||
TantargyNevZarojellel NVARCHAR(MAX),
|
||||
TantargyNevNyomtatvanyban NVARCHAR(MAX),
|
||||
TantargyNev NVARCHAR(MAX),
|
||||
TargyKategoriaId INT,
|
||||
FotargyE CHAR(1),
|
||||
Altantargy CHAR(1),
|
||||
FotargyId INT,
|
||||
ErtekelesTema NVARCHAR(MAX),
|
||||
ErtekeloId INT,
|
||||
ErtekelesModjaId INT,
|
||||
IsMagatartasSzorgalom CHAR(1),
|
||||
Jeloles NVARCHAR(MAX),
|
||||
JelolesAndErtekelesTema NVARCHAR(MAX)
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
INSERT INTO @retTanuloErtekeles
|
||||
SELECT
|
||||
ErtekelesId,
|
||||
Datum,
|
||||
TipusId,
|
||||
ErtekelesSzoveg,
|
||||
ErtekelesSzovegRovidNev,
|
||||
ErtekelesOsztalyzatId,
|
||||
ErtekelesOsztalyzatValue,
|
||||
ErtekelesOsztalyzatNev,
|
||||
ErtekelesSzazalek,
|
||||
MagatartasOsztalyzatId,
|
||||
MagatartasOsztalyzatValue,
|
||||
MagatartasOsztalyzatNev,
|
||||
MagatartasSzoveg,
|
||||
MagatartasSzovegRovidNev,
|
||||
MagatartasErtekId,
|
||||
MagatartasErtek,
|
||||
MagatartasErtekOsztalyzatkent,
|
||||
SzorgalomOsztalyzatId,
|
||||
SzorgalomOsztalyzatValue,
|
||||
SzorgalomOsztalyzatNev,
|
||||
SzorgalomSzoveg,
|
||||
SzorgalomSzovegRovidNev,
|
||||
SzorgalomErtekId,
|
||||
SzorgalomErtek,
|
||||
SzorgalomErtekOsztalyzatkent,
|
||||
TanuloId,
|
||||
OsztalyCsoportId,
|
||||
TantargyId,
|
||||
TantargyNevZarojellel,
|
||||
TantargyNevNyomtatvanyban,
|
||||
TantargyNev,
|
||||
TargyKategoriaId,
|
||||
FotargyE,
|
||||
Altantargy,
|
||||
FotargyId,
|
||||
ErtekelesTema,
|
||||
ErtekeloId,
|
||||
ErtekelesModjaId,
|
||||
IsMagatartasSzorgalom,
|
||||
Jeloles,
|
||||
JelolesAndErtekelesTema
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent(@tanevId, @osztalyCsoportId, @ertekelesTipusa, 0, @csakKivlasztottOsztalyCsoport, @atsoroltTanuloErtekelesek) ErtekelesekTable
|
||||
INNER JOIN T_CSOPORT_OSSZES CsoportTable ON ErtekelesekTable.OsztalyCsoportId = CsoportTable.Id
|
||||
WHERE
|
||||
C_TIPUSA IN
|
||||
(
|
||||
1067 --Alapf. müv. okt. zeneművészeti csoport - egyéni főtanszak
|
||||
,1068 --Alapf. müv. okt. zeneművészeti csoport - csoportos főtanszak
|
||||
,1069 --Alapf. müv. okt. képző- és iparművészeti csoport
|
||||
,1070 --Alapf. müv. okt. táncművészeti csoport
|
||||
,1071 --Alapf. müv. okt. szín- és bábművészeti csoport
|
||||
,6756 --Alapf. műv. okt. zeneművészeti csoport - csoportos kötelezően választható
|
||||
,6757 --Alapf. műv. okt. zeneművészeti csoport - egyéni kötelezően választható
|
||||
,6758 --Alapf. műv. okt. zeneművészeti csoport - csoportos kötelező
|
||||
,6759 --Alapf. műv. okt. zeneművészeti csoport - egyéni kötelező
|
||||
,6760 --Alapf. műv. okt. zeneművészeti csoport - csoportos választható
|
||||
,6761 --Alapf. műv. okt. zeneművészeti csoport - egyéni választható
|
||||
)
|
||||
RETURN
|
||||
END
|
||||
GO
|
@@ -0,0 +1,187 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('fnGetDokumentumErtekelesekOsztalyonkent') IS NOT NULL
|
||||
BEGIN
|
||||
DROP FUNCTION fnGetDokumentumErtekelesekOsztalyonkent
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumErtekelesekOsztalyonkent (@tanevId INT, @osztalyCsoportId INT, @ertekelesTipusa INT = NULL, @csakTanorai BIT = 1, @csakKivlasztottOsztalyCsoport BIT = 0, @atsoroltTanuloErtekelesek INT = 0)
|
||||
RETURNS @retTanuloErtekeles TABLE
|
||||
(
|
||||
ErtekelesId INT NOT NULL,
|
||||
Datum DATE,
|
||||
TipusId INT,
|
||||
ErtekelesSzoveg NVARCHAR(MAX),
|
||||
ErtekelesSzovegRovidNev NVARCHAR(3),
|
||||
ErtekelesOsztalyzatId INT,
|
||||
ErtekelesOsztalyzatValue INT,
|
||||
ErtekelesOsztalyzatNev NVARCHAR(MAX),
|
||||
ErtekelesSzazalek NVARCHAR(MAX),
|
||||
MagatartasOsztalyzatId INT,
|
||||
MagatartasOsztalyzatValue INT,
|
||||
MagatartasOsztalyzatNev NVARCHAR(MAX),
|
||||
MagatartasSzoveg NVARCHAR(MAX),
|
||||
MagatartasSzovegRovidNev NVARCHAR(3),
|
||||
MagatartasErtekId INT,
|
||||
MagatartasErtek NVARCHAR(MAX),
|
||||
MagatartasErtekOsztalyzatkent INT,
|
||||
SzorgalomOsztalyzatId INT,
|
||||
SzorgalomOsztalyzatValue INT,
|
||||
SzorgalomOsztalyzatNev NVARCHAR(MAX),
|
||||
SzorgalomSzoveg NVARCHAR(MAX),
|
||||
SzorgalomSzovegRovidNev NVARCHAR(3),
|
||||
SzorgalomErtekId INT,
|
||||
SzorgalomErtek NVARCHAR(MAX),
|
||||
SzorgalomErtekOsztalyzatkent INT,
|
||||
TanuloId INT,
|
||||
TanuloCsoportId INT,
|
||||
OsztalyCsoportId INT,
|
||||
TantargyId INT,
|
||||
TantargyNevZarojellel NVARCHAR(MAX),
|
||||
TantargyNevNyomtatvanyban NVARCHAR(MAX),
|
||||
TantargyNev NVARCHAR(MAX),
|
||||
TargyKategoriaId INT,
|
||||
FotargyE CHAR(1),
|
||||
Altantargy CHAR(1),
|
||||
FotargyId INT,
|
||||
ErtekelesTema NVARCHAR(MAX),
|
||||
ErtekeloId INT,
|
||||
ErtekelesModjaId INT,
|
||||
IsMagatartasSzorgalom CHAR(1),
|
||||
Jeloles NVARCHAR(MAX),
|
||||
JelolesAndErtekelesTema NVARCHAR(MAX)
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
INSERT INTO @retTanuloErtekeles
|
||||
SELECT DISTINCT
|
||||
tanuloErtekeles.ID ErtekelesId
|
||||
,tanuloErtekeles.C_DATUM Datum
|
||||
,tanuloErtekeles.C_TIPUSID TipusId
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV ErtekelesSzovegRovidNev
|
||||
,tanuloErtekeles.C_ERTEKELESOSZTALYZATID ErtekelesOsztalyzatId
|
||||
,ertekelesOsztalyzat.C_VALUE ErtekelesOsztalyzatValue
|
||||
,ertekelesOsztalyzat.C_NAME ErtekelesOsztalyzatNev
|
||||
,IIF(tanuloErtekeles.C_ERTEKELESSZAZALEK IS NOT NULL --
|
||||
,CONVERT(NVARCHAR(3), tanuloErtekeles.C_ERTEKELESSZAZALEK) + '%' --
|
||||
,NULL) ErtekelesSzazalek
|
||||
,tanuloErtekeles.C_MAGATARTASOSZTALYZATID MagatartasOsztalyzatId
|
||||
,magatartasOsztalyzat.C_VALUE MagatartasOsztalyzatValue
|
||||
,magatartasOsztalyzat.C_NAME MagatartasOsztalyzatNev
|
||||
,tanuloErtekeles.C_MAGATARTASSZOVEG MagatartasSzoveg
|
||||
,tanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV MagatartasSzovegRovidNev
|
||||
,tanuloErtekeles.C_MAGATARTASERTEKID MagatartasErtekId
|
||||
,magatartasErtek.C_NAME MagatartasErtek
|
||||
,magatartasErtek.C_VALUE + 1 MagatartasErtekOsztalyzatkent
|
||||
,tanuloErtekeles.C_SZORGALOMOSZTALYZATID SzorgalomOsztalyzatId
|
||||
,szorgalomOsztalyzat.C_VALUE SzorgalomOsztalyzatValue
|
||||
,szorgalomOsztalyzat.C_NAME SzorgalomOsztalyzatNev
|
||||
,tanuloErtekeles.C_SZORGALOMSZOVEG SzorgalomSzoveg
|
||||
,tanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV SzorgalomSzovegRovidNev
|
||||
,tanuloErtekeles.C_SZORGALOMERTEKID SzorgalomErtekId
|
||||
,szorgalomErtek.C_NAME SzorgalomErtek
|
||||
,szorgalomErtek.C_VALUE + 1 SzorgalomErtekOsztalyzatkent
|
||||
,tanuloErtekeles.C_TANULOID TanuloId
|
||||
,TanuloCsoportId
|
||||
,tanuloErtekeles.C_OSZTALYCSOPORTID OsztalyCsoportId
|
||||
,tanuloErtekeles.C_TANTARGYID TantargyId
|
||||
,IIF(tantargy.C_NEV <> tantargy.C_NEVNYOMTATVANYBAN AND tantargy.C_NEVNYOMTATVANYBAN IS NOT NULL --
|
||||
,C_NEVNYOMTATVANYBAN + ' (' + tantargy.C_NEV + ')' --
|
||||
,tantargy.C_NEV) TantargyNevZarojellel
|
||||
,tantargy.C_NEVNYOMTATVANYBAN TantargyNevNyomtatvanyban
|
||||
,tantargy.C_NEV TantargyNev
|
||||
,tantargy.C_TARGYKATEGORIA TargyKategoriaId
|
||||
,tantargy.C_FOTARGYE FotargyE
|
||||
,tantargy.C_ALTANTARGYKENTNYOMTATVANYBAN Altantargy
|
||||
,tantargy.C_FOTARGYID FotargyId
|
||||
,tanuloErtekeles.C_ERTEKELESTEMA ErtekelesTema
|
||||
,tanuloErtekeles.C_ERTEKELOID ErtekeloId
|
||||
,tanuloErtekeles.C_ERTEKELESMODID ErtekelesModjaId
|
||||
,tanuloErtekeles.C_ISMAGATARTASSZORGALOM IsMagatartasSzorgalom
|
||||
,IIF( --
|
||||
tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL AND tanuloErtekeles.C_TIPUSID IN (1519, 1520), '<i>(' + CAST(CHAR(ROW_NUMBER() OVER (PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_DATUM) + 96) AS NVARCHAR(10)) + ')</i>', ''
|
||||
) Jeloles
|
||||
,IIF( --
|
||||
tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL AND tanuloErtekeles.C_TIPUSID IN (1519, 1520), '<i>(' + CAST(CHAR(ROW_NUMBER() OVER (PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_DATUM) + 96) AS NVARCHAR(10)) + ')</i>: ' + tanuloErtekeles.C_ERTEKELESTEMA, ''
|
||||
) JelolesAndErtekelesTema
|
||||
FROM T_TANULOERTEKELES_OSSZES tanuloErtekeles
|
||||
INNER JOIN
|
||||
fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyCsoportId, 'T') tanulo ON
|
||||
tanulo.TanuloId = tanuloErtekeles.C_TANULOID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON
|
||||
TanuloCsoport.C_TANULOID = tanuloErtekeles.C_TANULOID
|
||||
AND TanuloCsoport.C_OSZTALYCSOPORTID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
AND tanuloErtekeles.C_DATUM BETWEEN TanuloCsoport.C_BELEPESDATUM AND ISNULL(TanuloCsoport.C_KILEPESDATUM, GETDATE())
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
LEFT JOIN
|
||||
T_TANTARGY_OSSZES tantargy ON
|
||||
tantargy.Id = tanuloErtekeles.C_TANTARGYID
|
||||
AND (tantargy.C_TARGYKATEGORIA <> 1248 OR tantargy.C_TARGYKATEGORIA IS NULL)
|
||||
LEFT JOIN
|
||||
T_DICTIONARYITEMBASE_OSSZES ertekelesOsztalyzat ON
|
||||
ertekelesOsztalyzat.ID = tanuloErtekeles.C_ERTEKELESOSZTALYZATID
|
||||
AND ertekelesOsztalyzat.C_TANEVID = @tanevId
|
||||
AND ertekelesOsztalyzat.C_TYPE LIKE 'OsztalyzatTipus'
|
||||
LEFT JOIN
|
||||
T_DICTIONARYITEMBASE_OSSZES magatartasOsztalyzat ON
|
||||
magatartasOsztalyzat.ID = tanuloErtekeles.C_MAGATARTASOSZTALYZATID
|
||||
AND magatartasOsztalyzat.C_TANEVID = @tanevId
|
||||
AND magatartasOsztalyzat.C_TYPE LIKE 'OsztalyzatTipus'
|
||||
LEFT JOIN
|
||||
T_DICTIONARYITEMBASE_OSSZES szorgalomOsztalyzat ON
|
||||
szorgalomOsztalyzat.ID = tanuloErtekeles.C_SZORGALOMOSZTALYZATID
|
||||
AND szorgalomOsztalyzat.C_TANEVID = @tanevId
|
||||
AND szorgalomOsztalyzat.C_TYPE LIKE 'OsztalyzatTipus'
|
||||
LEFT JOIN
|
||||
T_DICTIONARYITEMBASE_OSSZES magatartasErtek ON
|
||||
magatartasErtek.ID = tanuloErtekeles.C_MAGATARTASERTEKID
|
||||
AND magatartasErtek.C_TANEVID = @tanevId
|
||||
AND magatartasErtek.C_TYPE LIKE 'MagatartasErtekelesTipus'
|
||||
LEFT JOIN
|
||||
T_DICTIONARYITEMBASE_OSSZES szorgalomErtek ON
|
||||
szorgalomErtek.ID = tanuloErtekeles.C_SZORGALOMERTEKID
|
||||
AND szorgalomErtek.C_TANEVID = @tanevId
|
||||
AND szorgalomErtek.C_TYPE LIKE 'SzorgalomErtekelesTipus'
|
||||
INNER JOIN
|
||||
T_OSZTALYCSOPORT_OSSZES osztalyCsoport ON
|
||||
osztalyCsoport.ID = tanuloErtekeles.C_OSZTALYCSOPORTID AND osztalyCsoport.TOROLT = 'F'
|
||||
LEFT JOIN
|
||||
T_CSOPORT_OSSZES csoport ON
|
||||
csoport.ID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN
|
||||
T_OSZTALY_OSSZES osztaly ON
|
||||
osztaly.ID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
WHERE
|
||||
tanuloErtekeles.Torolt = 'F'
|
||||
AND BelepesDatum <= tanuloErtekeles.C_DATUM
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= tanuloErtekeles.C_DATUM)
|
||||
AND (@atsoroltTanuloErtekelesek > 0 OR (tanuloErtekeles.C_OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyCsoportId, @tanevId))))
|
||||
AND (@ertekelesTipusa IS NULL OR C_TIPUSID = @ertekelesTipusa)
|
||||
AND (@csakKivlasztottOsztalyCsoport = 0 OR tanuloErtekeles.C_OSZTALYCSOPORTID = @osztalyCsoportId)
|
||||
AND (@csakTanorai = 0 OR osztaly.ID IS NOT NULL OR (csoport.ID IS NOT NULL AND csoport.C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@tanevId))))
|
||||
IF @atsoroltTanuloErtekelesek = 1
|
||||
BEGIN
|
||||
DECLARE @osztalyTantargyak TABLE (TantargyId INT)
|
||||
INSERT INTO @osztalyTantargyak
|
||||
SELECT DISTINCT TantargyId FROM @retTanuloErtekeles
|
||||
WHERE OsztalyCsoportId IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyCsoportId, @tanevId))
|
||||
UNION
|
||||
SELECT DISTINCT C_TANTARGYID
|
||||
FROM T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyCsoportId, @tanevId) AS OSZTALYCSOPORT ON OSZTALYCSOPORT.ID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
WHERE T_FOGLALKOZAS_OSSZES.TOROLT = 'F'
|
||||
DELETE FROM @retTanuloErtekeles
|
||||
WHERE ErtekelesId NOT IN (
|
||||
SELECT ErtekelesId FROM @retTanuloErtekeles
|
||||
WHERE TantargyId IS NULL OR TantargyId IN (SELECT TantargyId FROM @osztalyTantargyak)
|
||||
)
|
||||
END
|
||||
RETURN
|
||||
END;
|
||||
|
||||
GO
|
@@ -0,0 +1,12 @@
|
||||
IF OBJECT_ID('fnGetDokumentumKozossegiSzolgalatOsztalyonkent') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumKozossegiSzolgalatOsztalyonkent
|
||||
END
|
||||
GO
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumKozossegiSzolgalatOsztalyonkent (@tanevId INT, @osztalyId INT)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
@@ -0,0 +1,55 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('fnGetDokumentumMulasztasokOsztalyonkentReszletes') IS NOT NULL
|
||||
BEGIN
|
||||
DROP FUNCTION fnGetDokumentumMulasztasokOsztalyonkentReszletes
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumMulasztasokOsztalyonkentReszletes (@tanevId INT, @osztalyCsoportId INT, @iskolaErdekuSzamit BIT, @csakKivlasztottOsztalyCsoport BIT = 0, @atsoroltTanuloMulasztas BIT = 1, @idoszakEleje DATE = NULL, @idoszakVege DATE = NULL)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT
|
||||
C_ORATANULOIID TanuloId
|
||||
,TanuloCsoportId
|
||||
,TanitasiOra.C_OSZTALYCSOPORTID OsztalyCsoportId
|
||||
,OsztalyCsoport.C_NEV OsztalyCsoportNev
|
||||
,C_TIPUS Tipusa
|
||||
,C_IGAZOLT Igazolt
|
||||
,C_IGAZOLASTIPUSA IgazolasTipusa
|
||||
,C_KESESPERCBEN KesesPercben
|
||||
,C_DATUM Datum
|
||||
,IIF(C_CSENGETESIRENDORAID IS NULL, dbo.fnGetDokumentumOrakezdetToOraszam(CONVERT(VARCHAR(5), C_ORAKEZDETE, 108), @tanevId), TanitasiOra.C_ORASZAM) Oraszam
|
||||
,C_TANTARGYID TantargyId
|
||||
,ISNULL(t.C_NEVNYOMTATVANYBAN, t.C_NEV) TantargyNev
|
||||
,NaptariHetek.C_HETSORSZAMA HetSorszama
|
||||
,C_GYAKORLATI Gyakorlati
|
||||
FROM T_TANULOMULASZTAS_OSSZES TanuloMulasztas
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyCsoportId, 'T') AS TANULO ON TANULO.TanuloId = TanuloMulasztas.C_ORATANULOIID
|
||||
INNER JOIN T_TANITASIORA_OSSZES TanitasiOra ON TanitasiOra.ID = TanuloMulasztas.C_TANITASIORAKID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON
|
||||
TanuloCsoport.C_TANULOID = TanuloMulasztas.C_ORATANULOIID
|
||||
AND TanuloCsoport.C_OSZTALYCSOPORTID = TanitasiOra.C_OSZTALYCSOPORTID
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
AND TanitasiOra.C_DATUM BETWEEN TanuloCsoport.C_BELEPESDATUM AND ISNULL(TanuloCsoport.C_KILEPESDATUM, GETDATE())
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON OsztalyCsoport.ID = TanitasiOra.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES t on t.ID = TanitasiOra.C_TANTARGYID
|
||||
INNER JOIN T_NAPTARIHET_OSSZES NaptariHetek ON TanitasiOra.C_DATUM BETWEEN NaptariHetek.C_HETKEZDONAPJA AND NaptariHetek.C_HETUTOLSONAPJA
|
||||
WHERE
|
||||
TanuloMulasztas.C_TIPUS IN (1499, 1500)
|
||||
AND TANULO.BelepesDatum <= TanitasiOra.C_DATUM
|
||||
AND (TANULO.KilepesDatum IS NULL OR TANULO.KilepesDatum >= TanitasiOra.C_DATUM)
|
||||
AND TanitasiOra.C_OSZTALYCSOPORTID IN (SELECT Id FROM fnGetDokumentumOsztalyVagyTanoraiCsoport(@tanevId))
|
||||
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA IS NULL OR C_IGAZOLASTIPUSA <> 1533))
|
||||
AND TanuloMulasztas.TOROLT = 'F'
|
||||
AND NaptariHetek.C_TANEVID = @tanevId
|
||||
AND (@atsoroltTanuloMulasztas = 1 OR (TanitasiOra.C_OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyCsoportId, @tanevId))))
|
||||
AND (@csakKivlasztottOsztalyCsoport = 0 OR TanitasiOra.C_OSZTALYCSOPORTID = @osztalyCsoportId)
|
||||
AND (@idoszakEleje IS NULL OR C_DATUM >= @idoszakEleje)
|
||||
AND (@idoszakVege IS NULL OR C_DATUM <= @idoszakVege)
|
||||
)
|
||||
|
||||
GO
|
@@ -0,0 +1,33 @@
|
||||
IF OBJECT_ID('fnGetDokumentumOsztalyokCsoportokTanuloi') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumOsztalyokCsoportokTanuloi
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumOsztalyokCsoportokTanuloi (@tanevId INT, @osztalyId INT, @isKilepettTanulokMegjelenjenek NVARCHAR(1))
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT DISTINCT
|
||||
C_TANULOID TanuloId
|
||||
,tanuloCsoport.ID TanuloCsoportId
|
||||
,tanuloCsoport.C_BELEPESDATUM BelepesDatum
|
||||
,tanuloCsoport.C_KILEPESDATUM KilepesDatum
|
||||
,C_AGAZAT AgazatId
|
||||
,C_SZAKKEPESITES SzakkepesitesId
|
||||
,C_RESZSZAKKEPESITES ReszSzakkepeitesId
|
||||
,C_SZAKMACSOPORT SzakmaCsoportId
|
||||
,C_NAPLOSORSZAM NaploSorszam
|
||||
,C_TORZSLAPSZAM Torzslapszam
|
||||
FROM T_TANULOCSOPORT_OSSZES tanuloCsoport
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES osztalyCsoport ON
|
||||
osztalyCsoport.ID = tanuloCsoport.C_OSZTALYCSOPORTID
|
||||
AND osztalyCsoport.TOROLT = 'F'
|
||||
WHERE
|
||||
tanuloCsoport.C_OSZTALYCSOPORTID = @osztalyId
|
||||
AND tanuloCsoport.C_TANEVID = @tanevId
|
||||
AND tanuloCsoport.TOROLT = 'F'
|
||||
)
|
@@ -0,0 +1,37 @@
|
||||
IF OBJECT_ID('fnGetDokumentumTanuloMentessegei') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumTanuloMentessegei
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanuloMentessegei (@tanevId INT, @osztalyId INT)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
|
||||
SELECT
|
||||
OsztalyTanuloi.TanuloId TanuloId
|
||||
,OsztalyTanuloi.TanuloCsoportId TanuloCsoportId
|
||||
,mentesseg.mentessegOka MentessegOka
|
||||
,mentesseg.tantargyNev + ' ' + ISNULL(IIF(mentesseg = '', '', '(' + LEFT(mentesseg, LEN(mentesseg)- 1) + ')'),' ') TantargyNev
|
||||
,C_KEZDETE Kezdete
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') OsztalyTanuloi
|
||||
INNER JOIN (SELECT DISTINCT
|
||||
mentesseg.C_TANULOID tanuloId
|
||||
,s.TanuloCsoportId
|
||||
,IIF(t.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + t.C_NEV + ')', t.C_NEV) tantargyNev
|
||||
,mentesseg.C_MENTESSEGOKA + ' ' + ISNULL('(' + FORMAT(C_KEZDETE, 'yyyy.MM.dd.') + ' - ' + FORMAT(C_VEGE, 'yyyy.MM.dd.') + ')', '' ) mentessegOka
|
||||
,IIF(mentesseg.C_ERTEKELESMENTESITES = 'T', 'Értékelésmentesség, ', '') + IIF(mentesseg.C_ORAMENTESITES = 'T', 'Óramentesség, ', '') as mentesseg
|
||||
,mentesseg.C_KEZDETE
|
||||
FROM T_TANULOMENTESSEG_OSSZES mentesseg
|
||||
INNER JOIN T_TANTARGY_OSSZES t on t.ID = mentesseg.C_TANTARGYID
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') s ON s.TanuloId = mentesseg.C_TANULOID
|
||||
WHERE
|
||||
mentesseg.TOROLT='F'
|
||||
AND BelepesDatum <= C_KEZDETE
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= C_VEGE)
|
||||
) mentesseg ON OsztalyTanuloi.TanuloId = mentesseg.TANULOID AND OsztalyTanuloi.TanuloCsoportId = mentesseg.TanuloCsoportId
|
||||
)
|
@@ -0,0 +1,35 @@
|
||||
IF OBJECT_ID('fnGetDokumentumTanuloZaradekai') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumTanuloZaradekai
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanuloZaradekai (@tanevId INT, @osztalyId INT)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT DISTINCT
|
||||
OsztalyTanuloi.TanuloId TanuloId
|
||||
,OsztalyTanuloi.TanuloCsoportId TanuloCsoportId
|
||||
,tcs.C_ZARADEK Bejegyzes
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') OsztalyTanuloi ON OsztalyTanuloi.TanuloId = tcs.C_TANULOID AND OsztalyTanuloi.TanuloCsoportId = tcs.ID
|
||||
WHERE
|
||||
C_ZARADEK IS NOT NULL
|
||||
AND LEN(C_ZARADEK) > 0
|
||||
|
||||
UNION
|
||||
|
||||
SELECT DISTINCT
|
||||
OsztalyTanuloi.TanuloId TanuloId
|
||||
,OsztalyTanuloi.TanuloCsoportId TanuloCsoportId
|
||||
,tcs.C_VEGZARADEK Bejegyzes
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') OsztalyTanuloi ON OsztalyTanuloi.TanuloId = tcs.C_TANULOID AND OsztalyTanuloi.TanuloCsoportId = tcs.ID
|
||||
WHERE
|
||||
C_VEGZARADEK IS NOT NULL
|
||||
AND LEN(C_VEGZARADEK) > 0
|
||||
)
|
@@ -0,0 +1,290 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('dbo.[sp_GetDokumentumErtekelesek]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE dbo.[sp_GetDokumentumErtekelesek]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE dbo.[sp_GetDokumentumErtekelesek]
|
||||
@osztalyId INT,
|
||||
@tanevId INT,
|
||||
@ertekelesTipus INT,
|
||||
@isBizonyitvany INT = 0,
|
||||
@isNemet BIT = 0,
|
||||
@isMuveszetOktatasi BIT = 0
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
--Osztályhoz tartozó tanulók
|
||||
DECLARE @TANULO TABLE (TanuloId INT, TanuloCsoportId INT, BelepesDatum DATE, KilepesDatum DATE)
|
||||
INSERT INTO @TANULO
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T')
|
||||
|
||||
--Osztályhoz tartozó értékelések
|
||||
CREATE TABLE #ErtekelesekTemp
|
||||
(
|
||||
ErtekelesId INT primary key NOT NULL,
|
||||
Datum DATE,
|
||||
TipusId INT,
|
||||
ErtekelesSzoveg NVARCHAR(MAX),
|
||||
ErtekelesSzovegRovidNev NVARCHAR(3),
|
||||
ErtekelesOsztalyzatId INT,
|
||||
ErtekelesOsztalyzatValue INT,
|
||||
ErtekelesOsztalyzatNev NVARCHAR(MAX),
|
||||
ErtekelesSzazalek NVARCHAR(MAX),
|
||||
MagatartasOsztalyzatId INT,
|
||||
MagatartasOsztalyzatValue INT,
|
||||
MagatartasOsztalyzatNev NVARCHAR(MAX),
|
||||
MagatartasSzoveg NVARCHAR(MAX),
|
||||
MagatartasSzovegRovidNev NVARCHAR(3),
|
||||
MagatartasErtekId INT,
|
||||
MagatartasErtek NVARCHAR(MAX),
|
||||
MagatartasErtekOsztalyzatkent INT,
|
||||
SzorgalomOsztalyzatId INT,
|
||||
SzorgalomOsztalyzatValue INT,
|
||||
SzorgalomOsztalyzatNev NVARCHAR(MAX),
|
||||
SzorgalomSzoveg NVARCHAR(MAX),
|
||||
SzorgalomSzovegRovidNev NVARCHAR(3),
|
||||
SzorgalomErtekId INT,
|
||||
SzorgalomErtek NVARCHAR(MAX),
|
||||
SzorgalomErtekOsztalyzatkent INT,
|
||||
TanuloId INT,
|
||||
OsztalyCsoportId INT,
|
||||
TantargyId INT,
|
||||
TantargyNevZarojellel NVARCHAR(MAX),
|
||||
TantargyNevNyomtatvanyban NVARCHAR(MAX),
|
||||
TantargyNev NVARCHAR(MAX),
|
||||
TargyKategoriaId INT,
|
||||
FotargyE CHAR(1),
|
||||
Altantargy CHAR(1),
|
||||
FotargyId INT,
|
||||
ErtekelesTema NVARCHAR(MAX),
|
||||
ErtekeloId INT,
|
||||
ErtekelesModjaId INT,
|
||||
IsMagatartasSzorgalom CHAR(1),
|
||||
Jeloles NVARCHAR(MAX),
|
||||
JelolesAndErtekelesTema NVARCHAR(MAX)
|
||||
)
|
||||
|
||||
IF (@isMuveszetOktatasi = 0)
|
||||
BEGIN
|
||||
INSERT INTO #ErtekelesekTemp
|
||||
SELECT
|
||||
ErtekelesId
|
||||
,Datum
|
||||
,TipusId
|
||||
,ErtekelesSzoveg
|
||||
,ErtekelesSzovegRovidNev
|
||||
,ErtekelesOsztalyzatId
|
||||
,ErtekelesOsztalyzatValue
|
||||
,ErtekelesOsztalyzatNev
|
||||
,ErtekelesSzazalek
|
||||
,MagatartasOsztalyzatId
|
||||
,MagatartasOsztalyzatValue
|
||||
,MagatartasOsztalyzatNev
|
||||
,MagatartasSzoveg
|
||||
,MagatartasSzovegRovidNev
|
||||
,MagatartasErtekId
|
||||
,MagatartasErtek
|
||||
,MagatartasErtekOsztalyzatkent
|
||||
,SzorgalomOsztalyzatId
|
||||
,SzorgalomOsztalyzatValue
|
||||
,SzorgalomOsztalyzatNev
|
||||
,SzorgalomSzoveg
|
||||
,SzorgalomSzovegRovidNev
|
||||
,SzorgalomErtekId
|
||||
,SzorgalomErtek
|
||||
,SzorgalomErtekOsztalyzatkent
|
||||
,TanuloId
|
||||
,OsztalyCsoportId
|
||||
,TantargyId
|
||||
,TantargyNevZarojellel
|
||||
,TantargyNevNyomtatvanyban
|
||||
,TantargyNev
|
||||
,TargyKategoriaId
|
||||
,FotargyE
|
||||
,Altantargy
|
||||
,FotargyId
|
||||
,ErtekelesTema
|
||||
,ErtekeloId
|
||||
,ErtekelesModjaId
|
||||
,IsMagatartasSzorgalom
|
||||
,Jeloles
|
||||
,JelolesAndErtekelesTema
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@tanevId, @osztalyId, DEFAULT, DEFAULT, DEFAULT, DEFAULT)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #ErtekelesekTemp
|
||||
SELECT
|
||||
ErtekelesId
|
||||
,Datum
|
||||
,TipusId
|
||||
,ErtekelesSzoveg
|
||||
,ErtekelesSzovegRovidNev
|
||||
,ErtekelesOsztalyzatId
|
||||
,ErtekelesOsztalyzatValue
|
||||
,ErtekelesOsztalyzatNev
|
||||
,ErtekelesSzazalek
|
||||
,MagatartasOsztalyzatId
|
||||
,MagatartasOsztalyzatValue
|
||||
,MagatartasOsztalyzatNev
|
||||
,MagatartasSzoveg
|
||||
,MagatartasSzovegRovidNev
|
||||
,MagatartasErtekId
|
||||
,MagatartasErtek
|
||||
,MagatartasErtekOsztalyzatkent
|
||||
,SzorgalomOsztalyzatId
|
||||
,SzorgalomOsztalyzatValue
|
||||
,SzorgalomOsztalyzatNev
|
||||
,SzorgalomSzoveg
|
||||
,SzorgalomSzovegRovidNev
|
||||
,SzorgalomErtekId
|
||||
,SzorgalomErtek
|
||||
,SzorgalomErtekOsztalyzatkent
|
||||
,TanuloId
|
||||
,OsztalyCsoportId
|
||||
,TantargyId
|
||||
,TantargyNevZarojellel
|
||||
,TantargyNevNyomtatvanyban
|
||||
,TantargyNev
|
||||
,TargyKategoriaId
|
||||
,FotargyE
|
||||
,Altantargy
|
||||
,FotargyId
|
||||
,ErtekelesTema
|
||||
,ErtekeloId
|
||||
,ErtekelesModjaId
|
||||
,IsMagatartasSzorgalom
|
||||
,Jeloles
|
||||
,JelolesAndErtekelesTema
|
||||
FROM fnGetDokumentumErtekelesekMuveszetiOktatasbanOsztalyonkent (@tanevId, @osztalyId, DEFAULT, 0, DEFAULT, 2)
|
||||
END
|
||||
|
||||
--Tanulóhoz kapcsolódó óraszámok
|
||||
DECLARE @Oraszamok TABLE (TanuloId int, Tantargy INT, Oraszam INT)
|
||||
|
||||
INSERT INTO @Oraszamok
|
||||
SELECT * FROM fnGetDokumentumTanulokEvesOraszamaiOsztalynkonet(@tanevId, @osztalyId)
|
||||
|
||||
--Értékelések
|
||||
CREATE TABLE #temp
|
||||
(
|
||||
TANULOID INT
|
||||
,TANULOCSOPORTID INT
|
||||
,TARGY NVARCHAR(MAX)
|
||||
,Jegyzet NVARCHAR(MAX)
|
||||
,Ertekeles NVARCHAR(MAX)
|
||||
,ErtekelesValue INT
|
||||
,ErtekelesJegyzettel NVARCHAR(MAX)
|
||||
,Oraszam INT
|
||||
,RENDEZ1 INT
|
||||
,RENDEZ2 NVARCHAR(MAX)
|
||||
,RENDEZ3 INT
|
||||
,RENDEZ4 INT
|
||||
,RENDEZ5 NVARCHAR(MAX)
|
||||
)
|
||||
|
||||
INSERT INTO #temp
|
||||
SELECT
|
||||
ErtekelesTemp.TanuloId TANULOID
|
||||
,TanuloTable.TanuloCsoportId TanuloCsoportId
|
||||
,IIF(@isNemet = 0, 'MAGATARTAS', 'Betragen') TARGY
|
||||
,NULL
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, MagatartasErtek, dbo.fnGetDokumentumNemet(MagatartasOsztalyzatId))), ISNULL(MagatartasSzoveg, IIF(@isNemet = 0, MagatartasOsztalyzatNev, dbo.fnGetDokumentumNemet(MagatartasOsztalyzatId))))
|
||||
,NULL
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, MagatartasErtek, dbo.fnGetDokumentumNemet(MagatartasOsztalyzatId))), ISNULL(MagatartasSzoveg, IIF(@isNemet = 0, MagatartasOsztalyzatNev, dbo.fnGetDokumentumNemet(MagatartasOsztalyzatId)))) ErtekelesJegyzettel
|
||||
,NULL Oraszam
|
||||
,-1 RENDEZ1
|
||||
,'aaa' RENDEZ2
|
||||
,-1 RENDEZ3
|
||||
,-1 RENDEZ4
|
||||
,'aaa' RENDEZ5
|
||||
FROM #ErtekelesekTemp ErtekelesTemp
|
||||
INNER JOIN @TANULO TanuloTable ON TanuloTable.TanuloId = ErtekelesTemp.TanuloId
|
||||
WHERE
|
||||
(KilepesDatum IS NULL OR KilepesDatum >= ErtekelesTemp.Datum)
|
||||
AND (MagatartasErtek IS NOT NULL OR MagatartasSzoveg IS NOT NULL OR MagatartasOsztalyzatNev IS NOT NULL)
|
||||
AND TipusId = @ertekelesTipus --????
|
||||
|
||||
|
||||
INSERT INTO #TEMP
|
||||
SELECT
|
||||
ErtekelesTemp.TanuloId TANULOID
|
||||
,TanuloTable.TanuloCsoportId TanuloCsoportId
|
||||
,IIF(@isNemet = 0, 'SZORGALOM', 'Fleiss') TARGY
|
||||
,NULL
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, SzorgalomErtek, dbo.fnGetDokumentumNemet(SzorgalomOsztalyzatId))), ISNULL(SzorgalomSzoveg, IIF(@isNemet = 0, SzorgalomOsztalyzatNev, dbo.fnGetDokumentumNemet(SzorgalomOsztalyzatId))))
|
||||
,NULL
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, SzorgalomErtek, dbo.fnGetDokumentumNemet(SzorgalomOsztalyzatId))), ISNULL(SzorgalomSzoveg, IIF(@isNemet = 0, SzorgalomOsztalyzatNev, dbo.fnGetDokumentumNemet(SzorgalomOsztalyzatId)))) ErtekelesJegyzettel
|
||||
,NULL Oraszam
|
||||
,0 RENDEZ1
|
||||
,'aab' RENDEZ2
|
||||
,0 RENDEZ3
|
||||
,0 RENDEZ4
|
||||
,'aab' RENDEZ5
|
||||
FROM #ErtekelesekTemp ErtekelesTemp
|
||||
INNER JOIN @TANULO TanuloTable ON TanuloTable.TanuloId = ErtekelesTemp.TanuloId
|
||||
WHERE
|
||||
(KilepesDatum IS NULL OR KilepesDatum >= ErtekelesTemp.Datum)
|
||||
AND (SzorgalomErtek IS NOT NULL OR SzorgalomSzoveg IS NOT NULL OR SzorgalomOsztalyzatNev IS NOT NULL)
|
||||
AND TipusId = @ertekelesTipus --????
|
||||
|
||||
INSERT INTO #TEMP
|
||||
SELECT
|
||||
ErtekelesTemp.TanuloId TANULOID
|
||||
,TanuloTable.TanuloCsoportId TanuloCsoportId
|
||||
,ISNULL(ErtekelesTemp.TantargyNevNyomtatvanyban, ErtekelesTemp.TantargyNev) TARGY
|
||||
,ErtekelesTemp.ErtekelesTema
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, ErtekelesTemp.ErtekelesOsztalyzatNev, dbo.fnGetDokumentumNemet(ErtekelesTemp.ErtekelesOsztalyzatId))), ISNULL(ErtekelesTemp.ErtekelesSzoveg, CONVERT(NVARCHAR(MAX),ErtekelesTemp.ErtekelesSzazalek)))
|
||||
,ErtekelesTemp.ErtekelesOsztalyzatValue
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, ErtekelesTemp.ErtekelesOsztalyzatNev, dbo.fnGetDokumentumNemet(ErtekelesTemp.ErtekelesOsztalyzatId))), ISNULL(ErtekelesTemp.ErtekelesSzoveg, CONVERT(NVARCHAR(MAX),ErtekelesTemp.ErtekelesSzazalek))) + IIF(ErtekelesTemp.ErtekelesTema IS NULL, '', +' * ' + ErtekelesTemp.ErtekelesTema) ErtekelesJegyzettel
|
||||
,Oraszam Oraszam
|
||||
,CASE WHEN ErtekelesTemp.FotargyId IS NULL THEN ISNULL(TargyKategoriaDictionary.C_ORDER, 10000) ELSE ISNULL(FotargyKategoriaDictionary.C_ORDER, 10000) END
|
||||
,ISNULL(ISNULL(FotargyTable.C_NEVNYOMTATVANYBAN, FotargyTable.C_NEV), ISNULL(ErtekelesTemp.TantargyNevNyomtatvanyban, ErtekelesTemp.TantargyNev))
|
||||
,ISNULL(ErtekelesTemp.FotargyId, ErtekelesTemp.TantargyId)
|
||||
,ErtekelesTemp.FotargyId
|
||||
,ISNULL(ErtekelesTemp.TantargyNevNyomtatvanyban, ErtekelesTemp.TantargyNev)
|
||||
FROM #ErtekelesekTemp ErtekelesTemp
|
||||
INNER JOIN @TANULO TanuloTable ON TanuloTable.TanuloId = ErtekelesTemp.TanuloId
|
||||
LEFT JOIN @Oraszamok OraszamTable ON OraszamTable.Tantargy = ErtekelesTemp.TantargyId AND OraszamTable.TanuloId = ErtekelesTemp.TanuloId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES TargyKategoriaDictionary ON TargyKategoriaDictionary.Id = ErtekelesTemp.TargyKategoriaId AND TargyKategoriaDictionary.TOROLT = 'F' AND TargyKategoriaDictionary.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_TANTARGY_OSSZES FotargyTable ON Ertekelestemp.FotargyId = FotargyTable.ID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES FotargyKategoriaDictionary ON FotargyKategoriaDictionary.ID = FotargyTable.C_TARGYKATEGORIA AND FotargyKategoriaDictionary.C_TANEVID = FotargyTable.C_TANEVID
|
||||
WHERE
|
||||
ErtekelesTemp.TipusId = @ertekelesTipus
|
||||
AND (ErtekelesTemp.FotargyE = 'T' OR ErtekelesTemp.Altantargy = 'T')
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= ErtekelesTemp.Datum)
|
||||
AND ErtekelesTemp.TargyKategoriaId <> 1248
|
||||
AND ErtekelesTemp.isMagatartasSzorgalom = 'F'
|
||||
|
||||
SELECT
|
||||
TANULOID
|
||||
,TanuloCsoportId
|
||||
,TARGY
|
||||
,Jegyzet
|
||||
,Ertekeles
|
||||
,ErtekelesValue
|
||||
,ErtekelesJegyzettel
|
||||
,Oraszam
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
FROM #temp
|
||||
ORDER BY RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,373 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('sp_GetDokumentumErtekelesekIdoszakonkent') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE sp_GetDokumentumErtekelesekIdoszakonkent
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_GetDokumentumErtekelesekIdoszakonkent
|
||||
@tanevId INT,
|
||||
@osztalyCsoportId INT,
|
||||
@ertekelesTipusa INT,
|
||||
@csakTanorai BIT,
|
||||
@csakKivlasztottOsztalyCsoport BIT,
|
||||
@atsoroltTanuloErtekelesek INT,
|
||||
@fuggolegesTantargyak BIT,
|
||||
@isMegjegyzesMegjelenjen BIT = 1
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
/* a #students tábla deklarálása az alábbi tároltakban történik: sp_GetOsztalynaplo, sp_GetCsoportNaplo, sp_GetUzenofuzetErtekelolap*/
|
||||
|
||||
DECLARE @FelevVegeHonap INT,
|
||||
@FelevVegeNap INT
|
||||
SELECT
|
||||
@FelevVegeHonap = DATEPART(mm, C_DATUM)
|
||||
,@FelevVegeNap = DATEPART(dd, C_DATUM)
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
WHERE
|
||||
C_NAPTIPUSA = 1400
|
||||
AND TOROLT = 'F'
|
||||
AND C_TANEVID = @tanevid
|
||||
|
||||
SELECT * INTO #magatartasSzorgalomTMP FROM
|
||||
(SELECT
|
||||
'Magatartás' Tipus
|
||||
,IIF(DATEPART(mm, Datum) = @FelevVegeHonap, IIF(DATEPART(mm, Datum) = @FelevVegeHonap AND DATEPART(DD, Datum) <= @FelevVegeNap, 13, 14), DATEPART(mm, Datum)) Honap
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,ISNULL(MagatartasErtek, MagatartasOsztalyzatNev)
|
||||
+ CASE
|
||||
WHEN TipusId = 1518 THEN ''
|
||||
WHEN TipusId = 1522 THEN '(I.)'
|
||||
WHEN TipusId = 1523 THEN '(III.)'
|
||||
WHEN TipusId = 1524 THEN '(II.)'
|
||||
WHEN TipusId = 1525 THEN '(IV.)'
|
||||
END AS Ertekeles
|
||||
FROM #ErtekelesekTemp
|
||||
WHERE
|
||||
(MagatartasErtek IS NOT NULL OR MagatartasOsztalyzatNev IS NOT NULL)
|
||||
AND TipusId IN (1518, 1522, 1523, 1524, 1525)
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
'Szorgalom'
|
||||
,IIF(DATEPART(mm, Datum) = @FelevVegeHonap, IIF(DATEPART(mm, Datum) = @FelevVegeHonap AND DATEPART(DD, Datum) <= @FelevVegeNap, 13, 14), DATEPART(mm, Datum)) Honap
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,ISNULL(SzorgalomErtek, SzorgalomOsztalyzatNev)
|
||||
+ CASE
|
||||
WHEN TipusId = 1518 THEN ''
|
||||
WHEN TipusId = 1522 THEN '(I.)'
|
||||
WHEN TipusId = 1523 THEN '(III.)'
|
||||
WHEN TipusId = 1524 THEN '(II.)'
|
||||
WHEN TipusId = 1525 THEN '(IV.)'
|
||||
END AS Ertekeles
|
||||
FROM #ErtekelesekTemp
|
||||
WHERE
|
||||
(SzorgalomErtek IS NOT NULL OR SzorgalomOsztalyzatNev IS NOT NULL)
|
||||
AND TipusId IN (1518, 1522, 1523, 1524, 1525)
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
'Szorgalom'
|
||||
,15 Honap
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,ISNULL(SzorgalomErtek, SzorgalomOsztalyzatNev) + Jeloles
|
||||
FROM #ErtekelesekTemp
|
||||
WHERE
|
||||
(SzorgalomErtek IS NOT NULL OR SzorgalomOsztalyzatNev IS NOT NULL)
|
||||
AND TipusId = 1519
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
'Magatartás'
|
||||
,15 Honap
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,ISNULL(MagatartasErtek, MagatartasOsztalyzatNev) + Jeloles
|
||||
FROM #ErtekelesekTemp
|
||||
WHERE
|
||||
(MagatartasErtek IS NOT NULL OR MagatartasOsztalyzatNev IS NOT NULL)
|
||||
AND TipusId = 1519
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
'Szorgalom'
|
||||
,16 Honap
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,ISNULL(SzorgalomErtek, SzorgalomOsztalyzatNev) + Jeloles
|
||||
FROM #ErtekelesekTemp
|
||||
WHERE
|
||||
(SzorgalomErtek IS NOT NULL OR SzorgalomOsztalyzatNev IS NOT NULL)
|
||||
AND TipusId = 1520
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
'Magatartás'
|
||||
,16 Honap
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,ISNULL(MagatartasErtek, MagatartasOsztalyzatNev) + Jeloles
|
||||
FROM #ErtekelesekTemp
|
||||
WHERE
|
||||
(MagatartasErtek IS NOT NULL OR MagatartasOsztalyzatNev IS NOT NULL)
|
||||
AND TipusId = 1520
|
||||
)magszorg
|
||||
|
||||
SELECT DISTINCT
|
||||
Honap
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,Tipus
|
||||
,STUFF((
|
||||
SELECT ', ' + CAST(Ertekeles AS nvarchar(max))
|
||||
FROM #magatartasSzorgalomTMP bmsz
|
||||
WHERE
|
||||
msz.TanuloId = bmsz.TanuloId
|
||||
AND msz.Tipus = bmsz.Tipus
|
||||
AND msz.Honap = bmsz.Honap
|
||||
AND msz.TanuloCsoportId = bmsz.TanuloCsoportId
|
||||
FOR XML PATH(''), TYPE).value('.', 'nvarchar(max)'), 1, 2,'') Ertekeles
|
||||
,IIF(Tipus = 'Magatartás', 0, 1) Rendez
|
||||
,
|
||||
CASE
|
||||
WHEN Honap = 2 THEN 8
|
||||
WHEN Honap = 3 THEN 9
|
||||
WHEN Honap = 4 THEN 10
|
||||
WHEN Honap = 5 THEN 11
|
||||
WHEN Honap = 6 THEN 12
|
||||
WHEN Honap = 9 THEN 1
|
||||
WHEN Honap = 10 THEN 2
|
||||
WHEN Honap = 11 THEN 3
|
||||
WHEN Honap = 12 THEN 4
|
||||
WHEN Honap = 13 THEN 5
|
||||
WHEN Honap = 14 THEN 7
|
||||
WHEN Honap = 15 THEN 6
|
||||
WHEN Honap = 16 THEN 15
|
||||
END AS RendezHonap
|
||||
INTO #magatartasSzorgalom
|
||||
FROM #magatartasSzorgalomTMP msz
|
||||
|
||||
SELECT * INTO #jegyekTMP FROM
|
||||
(SELECT
|
||||
IIF(DATEPART(mm, Datum) = @FelevVegeHonap, IIF(DATEPART(mm, Datum) = @FelevVegeHonap AND DATEPART(DD, Datum) <= @FelevVegeNap, 13, 14), DATEPART(mm, Datum)) Honap
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,TantargyId
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX),ErtekelesOsztalyzatValue), ErtekelesSzazalek)
|
||||
+ CASE
|
||||
WHEN TipusId = 1518 THEN ''
|
||||
WHEN TipusId = 1522 THEN '(I.)'
|
||||
WHEN TipusId = 1523 THEN '(III.)'
|
||||
WHEN TipusId = 1524 THEN '(II.)'
|
||||
WHEN TipusId = 1525 THEN '(IV.)'
|
||||
WHEN TipusId = 1521 THEN '(mz)'
|
||||
WHEN TipusId = 1526 THEN '(pv)'
|
||||
WHEN TipusId = 1527 THEN '(ov)'
|
||||
WHEN TipusId = 1528 THEN '(kv)'
|
||||
WHEN TipusId = 6916 THEN '(pótló v.)'
|
||||
WHEN TipusId = 6917 THEN '(jv)'
|
||||
WHEN TipusId = 6918 THEN '(bv)'
|
||||
END AS Ertekeles
|
||||
,TargyKategoriaId Rendez
|
||||
FROM #ErtekelesekTemp
|
||||
WHERE
|
||||
isMagatartasSzorgalom = 'F'
|
||||
AND (ErtekelesOsztalyzatValue IS NOT NULL OR ErtekelesSzazalek IS NOT NULL)
|
||||
AND TipusId IN (1518, 1522, 1523, 1524, 1525, 1521, 1526, 1527, 1528, 6916, 6917, 6918)
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
15 Honap
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,TantargyId
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX),ErtekelesOsztalyzatValue), ErtekelesSzazalek) + IIF(@isMegjegyzesMegjelenjen = 1, Jeloles, '')
|
||||
,TargyKategoriaId Rendez
|
||||
FROM #ErtekelesekTemp
|
||||
WHERE
|
||||
isMagatartasSzorgalom = 'F'
|
||||
AND (ErtekelesOsztalyzatValue IS NOT NULL OR ErtekelesSzazalek IS NOT NULL)
|
||||
AND TipusId = 1519
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
16 Honap
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,TantargyId
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX),ErtekelesOsztalyzatValue), ErtekelesSzazalek) + IIF(@isMegjegyzesMegjelenjen = 1, Jeloles, '')
|
||||
,TargyKategoriaId Rendez
|
||||
FROM #ErtekelesekTemp
|
||||
WHERE
|
||||
isMagatartasSzorgalom = 'F'
|
||||
AND (ErtekelesOsztalyzatValue IS NOT NULL OR ErtekelesSzazalek IS NOT NULL)
|
||||
AND TipusId = 1520
|
||||
)jegyek
|
||||
|
||||
SELECT
|
||||
ID
|
||||
,Honap
|
||||
,TanuloCsoportId
|
||||
INTO #TanuloIdHonap
|
||||
FROM #studentsWithTanuloCsoport
|
||||
CROSS JOIN (VALUES (2),(3),(4),(5),(6),(9),(10),(11),(12),(13),(14),(15),(16)) Honap (Honap)
|
||||
|
||||
SELECT DISTINCT
|
||||
TanuloIdHonap.Honap
|
||||
,TanuloIdHonap.Id TanuloId
|
||||
,TanuloIdHonap.TanuloCsoportId
|
||||
,TantargyId
|
||||
,STUFF((
|
||||
SELECT ', ' + CAST(Ertekeles AS nvarchar(max))
|
||||
FROM #jegyekTMP bjegyekTMP
|
||||
WHERE
|
||||
jegyekTMP.TanuloId = bjegyekTMP.TanuloId
|
||||
AND jegyekTMP.TanuloCsoportId = bjegyekTMP.TanuloCsoportId
|
||||
AND jegyekTMP.TantargyId = bjegyekTMP.TantargyId
|
||||
AND jegyekTMP.Honap = bjegyekTMP.Honap
|
||||
FOR XML PATH(''), TYPE).value('.', 'nvarchar(max)'), 1, 2,'') Ertekeles
|
||||
,Rendez
|
||||
,
|
||||
CASE
|
||||
WHEN TanuloIdHonap.Honap = 2 THEN 8
|
||||
WHEN TanuloIdHonap.Honap = 3 THEN 9
|
||||
WHEN TanuloIdHonap.Honap = 4 THEN 10
|
||||
WHEN TanuloIdHonap.Honap = 5 THEN 11
|
||||
WHEN TanuloIdHonap.Honap = 6 THEN 12
|
||||
WHEN TanuloIdHonap.Honap = 9 THEN 1
|
||||
WHEN TanuloIdHonap.Honap = 10 THEN 2
|
||||
WHEN TanuloIdHonap.Honap = 11 THEN 3
|
||||
WHEN TanuloIdHonap.Honap = 12 THEN 4
|
||||
WHEN TanuloIdHonap.Honap = 13 THEN 5
|
||||
WHEN TanuloIdHonap.Honap = 14 THEN 7
|
||||
WHEN TanuloIdHonap.Honap = 15 THEN 6
|
||||
WHEN TanuloIdHonap.Honap = 16 THEN 15
|
||||
END AS RendezHonap
|
||||
INTO #jegyek
|
||||
FROM #TanuloIdHonap TanuloIdHonap
|
||||
LEFT JOIN #jegyekTMP jegyekTMP ON TanuloIdHonap.ID = jegyekTMP.TanuloId
|
||||
AND TanuloIdHonap.Honap = jegyekTMP.Honap
|
||||
AND TanuloIdHonap.TanuloCsoportId = jegyekTMP.TanuloCsoportId
|
||||
|
||||
IF @fuggolegesTantargyak = 1
|
||||
BEGIN
|
||||
|
||||
DECLARE @tantargyakJegyek NVARCHAR(MAX)
|
||||
DECLARE @tantargyakNevvelJegyek NVARCHAR(MAX)
|
||||
SELECT @tantargyakNevvelJegyek = ISNULL(@tantargyakNevvelJegyek + ', ', '') + '[' + CAST(t.TantargyId AS NVARCHAR(MAX)) + '] AS [' + t.TantargyNev + ']',
|
||||
@tantargyakJegyek = ISNULL(@tantargyakJegyek + ', ', '[0], [1],') + '[' + CAST(t.TantargyId AS NVARCHAR(MAX)) + ']'
|
||||
FROM (SELECT DISTINCT TantargyId, t.c_nev TantargyNev, C_TARGYKATEGORIA FROM #jegyek j INNER JOIN T_TANTARGY_OSSZES t ON t.Id = j.TantargyId ) t
|
||||
ORDER BY C_TARGYKATEGORIA
|
||||
|
||||
DECLARE @sqlJegyek NVARCHAR(MAX)
|
||||
SET @sqlJegyek = '
|
||||
SELECT
|
||||
TanuloId tanuloID
|
||||
,TanuloCsoportId
|
||||
,CASE
|
||||
WHEN Honap = 2 THEN ''02.''
|
||||
WHEN Honap = 3 THEN ''03.''
|
||||
WHEN Honap = 4 THEN ''04.''
|
||||
WHEN Honap = 5 THEN ''05.''
|
||||
WHEN Honap = 6 THEN ''06.''
|
||||
WHEN Honap = 9 THEN ''09.''
|
||||
WHEN Honap = 10 THEN ''10.''
|
||||
WHEN Honap = 11 THEN ''11.''
|
||||
WHEN Honap = 12 THEN ''12.''
|
||||
WHEN Honap = 13 THEN ''1/I.''
|
||||
WHEN Honap = 14 THEN ''1/II.''
|
||||
WHEN Honap = 15 THEN ''F''
|
||||
WHEN Honap = 16 THEN ''É''
|
||||
END AS periodusNev
|
||||
,piv.[0] AS Magatartás
|
||||
,piv.[1] AS Szorgalom
|
||||
,' + @tantargyakNevvelJegyek + '
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
TantargyId
|
||||
,Honap
|
||||
,s.ID TanuloId
|
||||
,s.TanuloCsoportId
|
||||
,Ertekeles
|
||||
,RendezHonap
|
||||
FROM #jegyek j
|
||||
INNER JOIN #studentsWithTanuloCsoport s on j.Tanuloid = s.ID AND s.TanuloCsoportId = j.TanuloCsoportId
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
IIF(Tipus = ''Magatartás'', 0, 1)
|
||||
,Honap
|
||||
,s.ID
|
||||
,s.TanuloCsoportId
|
||||
,Ertekeles
|
||||
,RendezHonap
|
||||
FROM #magatartasSzorgalom m
|
||||
INNER JOIN #studentsWithTanuloCsoport s on m.Tanuloid = s.ID AND s.TanuloCsoportId = m.TanuloCsoportId
|
||||
)a
|
||||
PIVOT (MAX(Ertekeles) FOR TantargyId in (' + @tantargyakJegyek + ')) piv
|
||||
ORDER BY RendezHonap
|
||||
'
|
||||
|
||||
IF (@tantargyakJegyek IS NULL)
|
||||
BEGIN
|
||||
SELECT 0 AS tanuloId, 0 as TanuloCsoportId
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
EXEC sp_executesql @sqlJegyek
|
||||
END
|
||||
END
|
||||
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT * FROM(
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
, Tipus
|
||||
, Rendez
|
||||
,[9],[10],[11],[12],[2],[3],[4],[5],[6],[13],[14],[15],[16]
|
||||
FROM (SELECT TanuloId, TanuloCsoportId, Ertekeles, Honap, Tipus, IIF(Tipus = 'Magatartás', 0, 1) TantargyId, Rendez
|
||||
FROM #magatartasSzorgalom)a
|
||||
PIVOT (MAX(Ertekeles) FOR Honap IN ([9],[10],[11],[12],[2],[3],[4],[5],[6],[13],[14],[15],[16])) piv
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
TanuloId TanuloId
|
||||
,TanuloCsoportId
|
||||
,C_NEV TantargyNev
|
||||
,Rendez
|
||||
,[9],[10],[11],[12],[2],[3],[4],[5],[6],[13],[14],[15],[16]
|
||||
FROM (SELECT TanuloId, TanuloCsoportId, Ertekeles, Honap, TantargyId, Rendez FROM #jegyek) j
|
||||
INNER JOIN (SELECT Id, C_NEV FROM T_TANTARGY_OSSZES) t ON t.Id = TantargyId
|
||||
PIVOT (MAX(Ertekeles) FOR Honap IN ([9],[10],[11],[12],[2],[3],[4],[5],[6],[13],[14],[15],[16])) piv
|
||||
)vegleges
|
||||
ORDER BY TanuloId, Rendez, Tipus
|
||||
END
|
||||
|
||||
drop table #magatartasSzorgalomTMP
|
||||
drop table #magatartasSzorgalom
|
||||
drop table #jegyekTMP
|
||||
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,314 @@
|
||||
|
||||
IF OBJECT_ID('sp_GetDokumentumMulasztasok') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_GetDokumentumMulasztasok
|
||||
END
|
||||
GO
|
||||
|
||||
-- ===========================================================================
|
||||
-- Description: Dokumentumokban használt mulasztás összesítő osztály alapján
|
||||
-- ===========================================================================
|
||||
CREATE PROCEDURE sp_GetDokumentumMulasztasok
|
||||
@osztalyId INT
|
||||
,@tanevId INT
|
||||
,@elmeletGyakorlat BIT = 0
|
||||
,@kesesTipus INT = 1499
|
||||
,@elmeletiOraPercben INT = 45
|
||||
,@gyakorlatiOraPercben INT = 45
|
||||
,@ertekelesTipus INT
|
||||
,@iskolaErdekuSzamit BIT
|
||||
,@isMuveszetOktatasi BIT = 0
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @Tanulok TABLE (TanuloId INT, TanuloCsoportId INT, BelepesDatum DATE, KilepesDatum DATE)
|
||||
INSERT INTO @Tanulok
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T')
|
||||
|
||||
DECLARE @Idoszak INT
|
||||
DECLARE @IdoszakElsoNap INT
|
||||
DECLARE @IdoszakKezdete DATE
|
||||
DECLARE @IdoszakVege DATE
|
||||
|
||||
SET @Idoszak =
|
||||
CASE @ertekelesTipus
|
||||
WHEN 1519 THEN 1400 --félévi
|
||||
WHEN 1520 THEN 1395 --év végi
|
||||
WHEN 1522 THEN 1403 --I. negyedévi
|
||||
WHEN 1524 THEN 1400 --II. negyedévi
|
||||
WHEN 1523 THEN 1404 --III. negyedévi
|
||||
END
|
||||
|
||||
SET @IdoszakElsoNap =
|
||||
CASE @ertekelesTipus
|
||||
WHEN 1519 THEN 1394 --félévi
|
||||
WHEN 1520 THEN 1394 --év végi
|
||||
WHEN 1522 THEN 1394 --I. negyedévi
|
||||
WHEN 1524 THEN 1403 --II. negyedévi
|
||||
WHEN 1523 THEN 1400 --III. negyedévi
|
||||
END
|
||||
|
||||
DECLARE @SzurtCsoportTipusok TABLE (CsoportTipusId INT)
|
||||
IF (@isMuveszetOktatasi = 0)
|
||||
BEGIN
|
||||
INSERT INTO @SzurtCsoportTipusok
|
||||
SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@tanevId)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @SzurtCsoportTipusok
|
||||
SELECT Id FROM T_CSOPORTTIPUS_OSSZES
|
||||
WHERE
|
||||
C_ALTANEVID = @tanevId
|
||||
AND TOROLT = 'F'
|
||||
AND Id IN
|
||||
(
|
||||
1067 --Alapf. müv. okt. zeneművészeti csoport - egyéni főtanszak
|
||||
,1068 --Alapf. müv. okt. zeneművészeti csoport - csoportos főtanszak
|
||||
,1069 --Alapf. müv. okt. képző- és iparművészeti csoport
|
||||
,1070 --Alapf. müv. okt. táncművészeti csoport
|
||||
,1071 --Alapf. müv. okt. szín- és bábművészeti csoport
|
||||
,6756 --Alapf. műv. okt. zeneművészeti csoport - csoportos kötelezően választható
|
||||
,6757 --Alapf. műv. okt. zeneművészeti csoport - egyéni kötelezően választható
|
||||
,6758 --Alapf. műv. okt. zeneművészeti csoport - csoportos kötelező
|
||||
,6759 --Alapf. műv. okt. zeneművészeti csoport - egyéni kötelező
|
||||
,6760 --Alapf. műv. okt. zeneművészeti csoport - csoportos választható
|
||||
,6761 --Alapf. műv. okt. zeneművészeti csoport - egyéni választható
|
||||
)
|
||||
END
|
||||
|
||||
SET @IdoszakKezdete = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = @IdoszakElsoNap AND C_TANEVID = @tanevId AND TOROLT='F')
|
||||
SET @IdoszakVege = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = @Idoszak AND C_TANEVID = @tanevId AND TOROLT='F')
|
||||
|
||||
SELECT
|
||||
t.TANULOID tanuloid
|
||||
,t.TanuloCsoportId tanulocsoportid
|
||||
,m.Igazolt
|
||||
,m.Igazolatlan
|
||||
,m.ElmeletIgazolt
|
||||
,m.ElmeletIgazolatlan
|
||||
,m.GyakorlatiIgazolt
|
||||
,m.GyakorlatiIgazolatlan
|
||||
,m.ElmeletOsszes
|
||||
,m.GyakorlatOsszes
|
||||
,m.Osszes
|
||||
FROM @Tanulok t
|
||||
LEFT JOIN (
|
||||
SELECT DISTINCT
|
||||
m.tanuloId
|
||||
,m.tanulocsoportid
|
||||
,ISNULL(m.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(m.[hianyzasIgazoltTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazoltElmeletiOraban,0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0) Igazolt
|
||||
,ISNULL(m.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(m.[hianyzasIgazolatlanTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazolatlanElmeletiOraban,0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0) Igazolatlan
|
||||
,ISNULL(m.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(kp.kesesIgazoltElmeletiOraban,0) ElmeletIgazolt
|
||||
,ISNULL(m.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(kp.kesesIgazolatlanElmeletiOraban,0) ElmeletIgazolatlan
|
||||
,ISNULL(m.[hianyzasIgazoltTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0) GyakorlatiIgazolt
|
||||
,ISNULL(m.[hianyzasIgazolatlanTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0) GyakorlatiIgazolatlan
|
||||
,ISNULL(m.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(kp.kesesIgazoltElmeletiOraban,0)
|
||||
+ ISNULL(m.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(kp.kesesIgazolatlanElmeletiOraban,0) ElmeletOsszes
|
||||
,ISNULL(m.[hianyzasIgazoltTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0)
|
||||
+ ISNULL(m.[hianyzasIgazolatlanTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0) GyakorlatOsszes
|
||||
,ISNULL(m.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(m.[hianyzasIgazoltTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazoltElmeletiOraban,0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0)
|
||||
+ ISNULL(m.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(m.[hianyzasIgazolatlanTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazolatlanElmeletiOraban,0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0) Osszes
|
||||
FROM (
|
||||
SELECT
|
||||
tanuloId, tanulocsoportid,
|
||||
[hianyzasIgazoltTanoraiElmeleti], [hianyzasIgazoltTanoraiGyakorlati],
|
||||
[hianyzasIgazolatlanTanoraiElmeleti], [hianyzasIgazolatlanTanoraiGyakorlati],
|
||||
[kesesIgazoltTanoraiElmeleti],[kesesIgazoltTanoraiGyakorlati],
|
||||
[kesesIgazolatlanTanoraiElmeleti], [kesesIgazolatlanTanoraiGyakorlati]
|
||||
FROM (
|
||||
SELECT
|
||||
x.tanuloId, x.tanulocsoportid
|
||||
,CASE mulasztasTipus WHEN 1500 THEN 'Hianyzas' WHEN 1499 THEN 'Keses' END +
|
||||
CASE WHEN isIgazolt IS NULL THEN 'Igazolando' WHEN isIgazolt = 'T' THEN 'Igazolt' WHEN isIgazolt = 'F' THEN 'Igazolatlan' END +
|
||||
CASE isTanorai WHEN 'T' THEN 'Tanorai' WHEN 'F' THEN 'TanoranKivuli' END +
|
||||
CASE isGyakorlati WHEN 'T' THEN 'Gyakorlati' WHEN 'F' THEN 'Elmeleti' END
|
||||
AS piv
|
||||
,cnt
|
||||
FROM (
|
||||
SELECT
|
||||
m.C_ORATANULOIID AS tanuloId
|
||||
,tanulok.TanuloCsoportId
|
||||
,m.C_TIPUS mulasztasTipus
|
||||
,m.C_IGAZOLT isIgazolt
|
||||
,IIF((@isMuveszetOktatasi = 0 AND cs.ID IS NULL), 'T', IIF((@isMuveszetOktatasi = 1 AND csmuv.ID IS NOT NULL),'T','F')) AS isTanorai
|
||||
,IIF(t.C_GYAKORLATI='T', 'T', 'F') as isGyakorlati
|
||||
,COUNT(1) AS cnt
|
||||
FROM T_TANULOMULASZTAS_OSSZES m
|
||||
INNER JOIN @Tanulok tanulok ON tanulok.TanuloId = m.C_ORATANULOIID
|
||||
INNER JOIN T_TANITASIORA_OSSZES tn ON tn.ID = m.C_TANITASIORAKID
|
||||
INNER JOIN T_TANTARGY_OSSZES t on t.id=tn.C_TANTARGYID
|
||||
LEFT JOIN T_CSOPORT_OSSZES cs ON tn.C_OSZTALYCSOPORTID = cs.ID AND cs.C_TIPUSA NOT IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@tanevId))
|
||||
LEFT JOIN T_CSOPORT_OSSZES csmuv ON tn.C_OSZTALYCSOPORTID = csmuv.ID AND csmuv.C_TIPUSA IN (SELECT CsoportTipusId FROM @SzurtCsoportTipusok)
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = tn.C_OSZTALYCSOPORTID AND tanulok.TanuloId = tcs.C_TANULOID AND tcs.TOROLT = 'F'
|
||||
WHERE
|
||||
tn.C_DATUM BETWEEN @IdoszakKezdete AND @IdoszakVege
|
||||
AND m.C_TANEVID = @tanevId
|
||||
AND m.Torolt ='F'
|
||||
AND tn.Torolt ='F'
|
||||
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA <> 1533 OR C_IGAZOLASTIPUSA IS NULL))
|
||||
AND tcs.C_BELEPESDATUM <= tn.C_DATUM
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > tn.C_DATUM)
|
||||
AND tanulok.BelepesDatum <= tn.C_DATUM
|
||||
AND (tanulok.KilepesDatum IS NULL OR tanulok.KilepesDatum > tn.C_DATUM)
|
||||
AND m.C_TIPUS IN (1500 ,1499)
|
||||
AND
|
||||
(
|
||||
(@isMuveszetOktatasi = 0)
|
||||
OR
|
||||
(@isMuveszetOktatasi = 1 AND csmuv.ID IS NOT NULL)
|
||||
)
|
||||
GROUP BY m.C_ORATANULOIID, tanulok.TanuloCsoportId, m.C_TIPUS, m.C_IGAZOLT, IIF((@isMuveszetOktatasi = 0 AND cs.ID IS NULL), 'T', IIF((@isMuveszetOktatasi = 1 AND csmuv.ID IS NOT NULL),'T','F')), t.C_GYAKORLATI
|
||||
) x
|
||||
) p
|
||||
PIVOT (
|
||||
MAX(cnt)
|
||||
FOR piv IN (
|
||||
[hianyzasIgazoltTanoraiElmeleti], [hianyzasIgazoltTanoraiGyakorlati],
|
||||
[hianyzasIgazolatlanTanoraiElmeleti], [hianyzasIgazolatlanTanoraiGyakorlati],
|
||||
[kesesIgazoltTanoraiElmeleti],[kesesIgazoltTanoraiGyakorlati],
|
||||
[kesesIgazolatlanTanoraiElmeleti], [kesesIgazolatlanTanoraiGyakorlati]
|
||||
)
|
||||
) AS pvt
|
||||
) m
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tanuloId
|
||||
,tanulocsoportid
|
||||
,[kesesIgazolandoTanoraiPerc]
|
||||
,[kesesIgazoltTanoraiPerc]
|
||||
,[kesesIgazolatlanTanoraiPerc]
|
||||
FROM (
|
||||
SELECT
|
||||
x.tanuloId, x.tanulocsoportid
|
||||
,'Keses' +
|
||||
CASE WHEN isIgazolt IS NULL THEN 'Igazolando' WHEN isIgazolt = 'T' THEN 'Igazolt' WHEN isIgazolt = 'F' THEN 'Igazolatlan' END +
|
||||
'TanoraiPerc' AS piv
|
||||
,kesesPercben
|
||||
FROM (
|
||||
SELECT
|
||||
m.C_ORATANULOIID AS tanuloId
|
||||
,tanulok.TanuloCsoportId
|
||||
,m.C_IGAZOLT isIgazolt
|
||||
,SUM(m.C_KESESPERCBEN) AS kesesPercben
|
||||
FROM T_TANULOMULASZTAS_OSSZES m
|
||||
INNER JOIN @Tanulok tanulok ON tanulok.TanuloId = m.C_ORATANULOIID
|
||||
INNER JOIN T_TANITASIORA_OSSZES tn ON tn.ID = m.C_TANITASIORAKID
|
||||
LEFT JOIN T_CSOPORT_OSSZES cs ON tn.C_OSZTALYCSOPORTID = cs.ID AND cs.C_TIPUSA NOT IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@tanevId))
|
||||
LEFT JOIN T_CSOPORT_OSSZES csmuv ON tn.C_OSZTALYCSOPORTID = csmuv.ID AND csmuv.C_TIPUSA IN (SELECT CsoportTipusId FROM @SzurtCsoportTipusok)
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = tn.C_OSZTALYCSOPORTID AND tanulok.TanuloId = tcs.C_TANULOID AND tcs.TOROLT = 'F'
|
||||
WHERE
|
||||
tn.C_DATUM BETWEEN @IdoszakKezdete AND @IdoszakVege
|
||||
AND m.C_TANEVID = @tanevId
|
||||
AND m.Torolt ='F'
|
||||
AND tn.Torolt ='F'
|
||||
AND
|
||||
(
|
||||
(@isMuveszetOktatasi = 0 AND (cs.ID IS NULL OR cs.C_TIPUSA IN (SELECT CsoportTipusId FROM @SzurtCsoportTipusok)))
|
||||
OR
|
||||
(@isMuveszetOktatasi = 1 AND csmuv.ID IS NOT NULL)
|
||||
)
|
||||
AND m.C_TIPUS = 1499
|
||||
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA <> 1533 OR C_IGAZOLASTIPUSA IS NULL))
|
||||
AND tcs.C_BELEPESDATUM <= tn.C_DATUM
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > tn.C_DATUM)
|
||||
AND tanulok.BelepesDatum <= tn.C_DATUM
|
||||
AND (tanulok.KilepesDatum IS NULL OR tanulok.KilepesDatum > tn.C_DATUM)
|
||||
GROUP BY m.C_ORATANULOIID, tanulok.TanuloCsoportId, m.C_IGAZOLT
|
||||
) x
|
||||
) p
|
||||
PIVOT (
|
||||
MAX(kesesPercben)
|
||||
FOR piv IN
|
||||
([kesesIgazolandoTanoraiPerc], [kesesIgazoltTanoraiPerc], [kesesIgazolatlanTanoraiPerc])
|
||||
) AS pvt
|
||||
) k ON k.tanuloId = m.tanuloId and k.TanuloCsoportId = m.TanuloCsoportId
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tanuloId
|
||||
,tanulocsoportid
|
||||
,SUM(kesesIgazolandoTanoraiPluszOra) AS kesesIgazolandoTanoraiPluszOra
|
||||
,SUM(kesesIgazoltTanoraiPluszOra) AS kesesIgazoltTanoraiPluszOra
|
||||
,SUM(kesesIgazolatlanTanoraiPluszOra) AS kesesIgazolatlanTanoraiPluszOra
|
||||
,SUM(kesesIgazoltElmeletiOraban) AS kesesIgazoltElmeletiOraban
|
||||
,SUM(kesesIgazolatlanElmeletiOraban) AS kesesIgazolatlanElmeletiOraban
|
||||
,SUM(kesesIgazoltGyakorlatiOraban) AS kesesIgazoltGyakorlatiOraban
|
||||
,SUM(kesesIgazolatlanGyakorlatiOraban) AS kesesIgazolatlanGyakorlatiOraban
|
||||
FROM (
|
||||
SELECT
|
||||
x.tanuloId
|
||||
,x.tanulocsoportid
|
||||
,'Keses' +
|
||||
CASE
|
||||
WHEN isIgazolt IS NULL THEN 'Igazolando'
|
||||
WHEN isIgazolt = 'T' THEN 'Igazolt'
|
||||
WHEN isIgazolt = 'F' THEN 'Igazolatlan'
|
||||
END + 'TanoraiPluszOra' AS piv
|
||||
,kesesOraban
|
||||
,kesesIgazoltElmeletiOraban
|
||||
,kesesIgazolatlanElmeletiOraban
|
||||
,kesesIgazoltGyakorlatiOraban
|
||||
,kesesIgazolatlanGyakorlatiOraban
|
||||
FROM (
|
||||
SELECT
|
||||
xx.tanuloId
|
||||
,xx.tanulocsoportid
|
||||
,xx.isIgazolt
|
||||
,SUM(xx.keses / (CASE WHEN isGyakorlati = 'F' THEN @elmeletiOraPercben ELSE @gyakorlatiOraPercben END)) AS kesesOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'F' and isIgazolt='T' THEN xx.keses / @elmeletiOraPercben ELSE 0 END) AS kesesIgazoltElmeletiOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'F' and isIgazolt='F' THEN xx.keses / @elmeletiOraPercben ELSE 0 END) AS kesesIgazolatlanElmeletiOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'T' and isIgazolt='T' THEN xx.keses / @gyakorlatiOraPercben ELSE 0 END) AS kesesIgazoltGyakorlatiOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'T' and isIgazolt='F' THEN xx.keses / @gyakorlatiOraPercben ELSE 0 END) AS kesesIgazolatlanGyakorlatiOraban
|
||||
FROM (
|
||||
SELECT
|
||||
m.C_ORATANULOIID AS tanuloId
|
||||
,tanulok.tanulocsoportid
|
||||
,m.C_IGAZOLT isIgazolt
|
||||
,t.C_GYAKORLATI AS isGyakorlati
|
||||
,SUM(m.C_KESESPERCBEN) AS keses
|
||||
FROM T_TANULOMULASZTAS_OSSZES m
|
||||
INNER JOIN @Tanulok tanulok ON tanulok.TanuloId = m.C_ORATANULOIID
|
||||
INNER JOIN T_TANITASIORA_OSSZES tn ON tn.ID = m.C_TANITASIORAKID
|
||||
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = tn.C_TANTARGYID
|
||||
LEFT JOIN T_CSOPORT_OSSZES cs ON tn.C_OSZTALYCSOPORTID = cs.ID AND cs.C_TIPUSA NOT IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@tanevId))
|
||||
LEFT JOIN T_CSOPORT_OSSZES csmuv ON tn.C_OSZTALYCSOPORTID = csmuv.ID AND csmuv.C_TIPUSA IN (SELECT CsoportTipusId FROM @SzurtCsoportTipusok)
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = tn.C_OSZTALYCSOPORTID and tanulok.TanuloId = tcs.C_TANULOID AND tcs.TOROLT = 'F'
|
||||
WHERE m.C_TANEVID = @tanevId
|
||||
AND
|
||||
(
|
||||
(@isMuveszetOktatasi = 0 AND (cs.ID IS NULL OR cs.C_TIPUSA IN (SELECT CsoportTipusId FROM @SzurtCsoportTipusok)))
|
||||
OR
|
||||
(@isMuveszetOktatasi = 1 AND csmuv.ID IS NOT NULL)
|
||||
)
|
||||
AND m.C_TIPUS = 1499
|
||||
AND m.TOROLT = 'F'
|
||||
AND tn.Torolt ='F'
|
||||
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA <> 1533 OR C_IGAZOLASTIPUSA IS NULL))
|
||||
AND tcs.C_BELEPESDATUM <= tn.C_DATUM
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > tn.C_DATUM)
|
||||
AND tanulok.BelepesDatum <= tn.C_DATUM
|
||||
AND (tanulok.KilepesDatum IS NULL OR tanulok.KilepesDatum > tn.C_DATUM)
|
||||
AND tn.C_DATUM BETWEEN @IdoszakKezdete AND @IdoszakVege
|
||||
GROUP BY m.C_ORATANULOIID, tanulok.TanuloCsoportId, m.C_IGAZOLT, t.C_GYAKORLATI
|
||||
) xx
|
||||
GROUP BY tanuloId, TanuloCsoportId, xx.isIgazolt
|
||||
) x
|
||||
) p
|
||||
PIVOT (
|
||||
MAX(kesesOraban)
|
||||
FOR piv IN (
|
||||
kesesIgazolandoTanoraiPluszOra, kesesIgazoltTanoraiPluszOra, kesesIgazolatlanTanoraiPluszOra
|
||||
)
|
||||
) AS pvt
|
||||
GROUP BY tanuloId, TanuloCsoportId
|
||||
) kp ON m.tanuloId = kp.tanuloId
|
||||
) m on m.tanuloId=t.tanuloId and m.TanuloCsoportId = t.TanuloCsoportId
|
||||
END
|
||||
GO
|
||||
|
@@ -0,0 +1,326 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('sp_GetErtesitesAltEsMulAdatok') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE [sp_GetErtesitesAltEsMulAdatok]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetErtesitesAltEsMulAdatok]
|
||||
@pOsztalyId INT,
|
||||
@pTanevId INT,
|
||||
@pTankoteles BIT,
|
||||
@pIskolaErdekuSzamit BIT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
--Mulasztasok
|
||||
DECLARE @Mulasztasok TABLE (
|
||||
TanuloId INT
|
||||
,TanuloCsoportId INT
|
||||
,Igazolt INT
|
||||
,Igazolatlan INT
|
||||
,ElmeletIgazolt INT
|
||||
,ElmeletIgazolatlan INT
|
||||
,GyakorlatIgazolt INT
|
||||
,GyakorlatIgazolatlan INT
|
||||
,ElmeletOsszes INT
|
||||
,GyakorlatOsszes INT
|
||||
,Osszes INT
|
||||
)
|
||||
|
||||
INSERT INTO @Mulasztasok
|
||||
EXEC sp_GetDokumentumMulasztasok
|
||||
@osztalyID = @pOsztalyId,
|
||||
@tanevId = @pTanevId,
|
||||
@elmeletGyakorlat = 0,
|
||||
@kesesTipus = 1499,
|
||||
@elmeletiOraPercben = 45,
|
||||
@gyakorlatiOraPercben = 45,
|
||||
@ertekelesTipus = 1520, --évvégi
|
||||
@iskolaErdekuSzamit = @pIskolaErdekuSzamit
|
||||
|
||||
SELECT
|
||||
TanuloId Id
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,ISNULL(KilepesDatum, GETDATE()) KilepesDatum
|
||||
INTO #students
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T')
|
||||
|
||||
DECLARE @Gondviselok TABLE (TanuloId INT, GondviseloId INT)
|
||||
INSERT INTO @Gondviselok
|
||||
SELECT
|
||||
TanuloId
|
||||
,gondviselo.Id
|
||||
FROM T_GONDVISELO_OSSZES gondviselo
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulo ON tanulo.TanuloId = gondviselo.C_TANULOID AND gondviselo.TOROLT = 'F'
|
||||
|
||||
DECLARE @CimTableTemp TABLE (FelhasznaloId INT, Cim NVARCHAR(MAX), CimTipus INT, GondviseloId INT)
|
||||
INSERT INTO @CimTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_IRANYITOSZAM + ' ' + C_VAROS + ', ' + C_KOZTERULET + ' ' + kozterulet.C_NAME + ' ' + C_HAZSZAM
|
||||
,C_CIMTIPUSA
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulo
|
||||
INNER JOIN T_CIM_OSSZES cim ON cim.C_FELHASZNALOID = TanuloId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES kozterulet ON kozterulet.Id = C_KOZTERULETJELLEGE AND kozterulet.C_TANEVID = @pTanevId
|
||||
WHERE
|
||||
cim.TOROLT = 'F'
|
||||
AND cim.C_TANEVID = @pTanevId
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_IRANYITOSZAM + ' ' + C_VAROS + ', ' + C_KOZTERULET + ' ' + kozterulet.C_NAME + ' ' + C_HAZSZAM
|
||||
,C_CIMTIPUSA
|
||||
,GondviseloId
|
||||
FROM @Gondviselok gonviselo
|
||||
INNER JOIN T_CIM_OSSZES cim ON cim.C_GONDVISELOID = GondviseloId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES kozterulet ON kozterulet.Id = C_KOZTERULETJELLEGE AND kozterulet.C_TANEVID = @pTanevId
|
||||
WHERE
|
||||
cim.TOROLT = 'F'
|
||||
AND cim.C_TANEVID = @pTanevId
|
||||
|
||||
DECLARE @TanuloCimTable TABLE (FelhasznaloId INT, Cim NVARCHAR(MAX), Cimtipusa INT)
|
||||
INSERT INTO @TanuloCimTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(Btemp.Cim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @CimTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
AND temp.CimTipus = btemp.CimTipus
|
||||
AND GondviseloId IS NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
,CimTipus
|
||||
FROM @CimTableTemp temp
|
||||
WHERE
|
||||
GondviseloId IS NULL
|
||||
|
||||
DECLARE @GondViseloCimTable TABLE (FelhasznaloId INT, GondviseloId INT, Cim NVARCHAR(MAX), Cimtipusa INT)
|
||||
INSERT INTO @GondViseloCimTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,GondviseloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Cim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @CimTableTemp btemp
|
||||
WHERE
|
||||
temp.GondviseloId = btemp.GondviseloId
|
||||
AND temp.CimTipus = btemp.CimTipus
|
||||
AND GondviseloId IS NOT NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
,CimTipus
|
||||
FROM @CimTableTemp temp
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipusa ON cimTipusa.Id = Cimtipus
|
||||
WHERE
|
||||
GondviseloId IS NOT NULL
|
||||
AND CimTipus = 907
|
||||
|
||||
DECLARE @EmailCimTableTemp TABLE (FelhasznaloId INT, EmailCim NVARCHAR(MAX), GondviseloId INT)
|
||||
INSERT INTO @EmailCimTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulo
|
||||
INNER JOIN T_EMAIL_OSSZES email ON email.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
email.TOROLT = 'F'
|
||||
AND email.C_TANEVID = @pTanevId
|
||||
AND LEN(C_EMAILCIM) > 0
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
,GondviseloId
|
||||
FROM @Gondviselok
|
||||
INNER JOIN T_EMAIL_OSSZES email ON email.C_GONDVISELOID = GondviseloId
|
||||
WHERE
|
||||
email.TOROLT = 'F'
|
||||
AND email.C_TANEVID = @pTanevId
|
||||
AND LEN(C_EMAILCIM) > 0
|
||||
|
||||
DECLARE @EmailCimTanuloTable TABLE (FelhasznaloId INT, EmailCim NVARCHAR(MAX))
|
||||
INSERT INTO @EmailCimTanuloTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.EmailCim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @EmailCimTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
AND btemp.GondviseloId IS NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Email
|
||||
FROM @EmailCimTableTemp temp
|
||||
WHERE
|
||||
GondviseloId IS NULL
|
||||
|
||||
DECLARE @EmailCimGondviseloTable TABLE (FelhasznaloId INT, GondviseloId INT, EmailCim NVARCHAR(MAX))
|
||||
INSERT INTO @EmailCimGondviseloTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,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
|
||||
|
||||
DECLARE @TelefonTableTemp TABLE (FelhasznaloId INT, Telefon NVARCHAR(MAX), GondviseloId INT)
|
||||
INSERT INTO @TelefonTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @pTanevId
|
||||
AND LEN(telefon.C_TELEFONSZAM) > 0
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
,GondviseloId
|
||||
FROM @Gondviselok gondviselo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_GONDVISELOID = GondviseloId
|
||||
WHERE
|
||||
telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @pTanevId
|
||||
AND LEN(telefon.C_TELEFONSZAM) > 0
|
||||
|
||||
DECLARE @TanuloTelefonTable TABLE (FelhasznaloId INT, Telefon NVARCHAR(MAX))
|
||||
INSERT INTO @TanuloTelefonTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Telefon AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @TelefonTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
AND GondviseloId IS NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
FROM @TelefonTableTemp temp
|
||||
WHERE
|
||||
GondviseloId IS NULL
|
||||
|
||||
DECLARE @GondviseloTelefonTable TABLE (FelhasznaloID INT, GondviseloId INT, Telefon NVARCHAR(MAX))
|
||||
INSERT INTO @GondviseloTelefonTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,GondviseloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Telefon AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @TelefonTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
and temp.GondviseloId = btemp.GondviseloId
|
||||
AND GondviseloId IS NOT NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
FROM @TelefonTableTemp temp
|
||||
WHERE
|
||||
GondviseloId IS NOT NULL
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,Gondviselok.GondviseloId
|
||||
,GondviseloAdatok.C_NEV GondviseloNev
|
||||
,Cim GondviseloAllandoCim
|
||||
,Telefon GondviseloTelefon
|
||||
,RokonsagiFok.C_NAME GondviseloRokonsagiFoka
|
||||
INTO #GondviseloAdatok
|
||||
FROM @Gondviselok Gondviselok
|
||||
INNER JOIN T_GONDVISELO_OSSZES GondviseloAdatok ON GondviseloAdatok.Id = Gondviselok.GondviseloId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES RokonsagiFok ON RokonsagiFok.Id = GondviseloAdatok.C_ROKONSAGFOKA AND RokonsagiFok.C_TANEVID = @pTanevId
|
||||
LEFT JOIN @GondViseloCimTable GondviseloCim ON GondviseloCim.GondviseloId = Gondviselok.GondviseloId
|
||||
LEFT JOIN @GondviseloTelefonTable GondviseloTelefon ON GondviseloTelefon.GondviseloId = Gondviselok.GondviseloId
|
||||
ORDER BY TanuloId
|
||||
|
||||
--Tanulói adatok
|
||||
SELECT DISTINCT
|
||||
TanuloAdatok.ID
|
||||
,OsztalyTanuloi.TanuloCsoportId
|
||||
,TanuloAdatok.C_NYOMTATASINEV TANULONEV
|
||||
,TanuloAdatok.C_ANYJANEVE ANYJANEVE
|
||||
,TanuloAdatok.C_SZULETESIHELY SZULETESIHELY
|
||||
,TanuloAdatok.C_SZULETESIDATUM SZULETESIDATUM
|
||||
,TanuloAdatok.C_NYILVANTARTASISZAM TorzslapSzam
|
||||
,IntezmenyAdatok.C_IGAZGATONEVE INT_IGAZGATO_NEV
|
||||
,IntezmenyAdatok.C_NEV INT_NEV
|
||||
,IntezmenyAdatok.C_OMKOD INT_OMKOD
|
||||
,IntezmenyAdatok.C_VAROS INT_VAROS
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@pTanevId) INT_CIM
|
||||
,(SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId) OSZTALYCSOPORT_NEV
|
||||
,Osztalyfonok.C_NYOMTATASINEV OSZTFO_NEV
|
||||
,ISNULL(Mulasztas.Igazolt,0) IGAZOLT
|
||||
,ISNULL(Mulasztas.Igazolatlan,0) IGAZOLATLAN
|
||||
,GondviseloAdatok.GondviseloNev
|
||||
,GondviseloAdatok.GondviseloAllandoCim
|
||||
,GondviseloAdatok.GondviseloTelefon
|
||||
,GondviseloRokonsagiFoka
|
||||
,TanuloAllandoCimTable.CIM TanuloAllandoCim
|
||||
,TanuloTartozkodasiCimTable.Cim TanuloTartozkodasiCim
|
||||
FROM #students OsztalyTanuloi
|
||||
INNER JOIN T_FELHASZNALO_OSSZES TanuloAdatok ON TanuloAdatok.ID = OsztalyTanuloi.ID AND TanuloAdatok.TOROLT = 'F'
|
||||
INNER JOIN T_TANULO_OSSZES Tanulo ON Tanulo.ID = TanuloAdatok.ID AND Tanulo.TOROLT = 'F'
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES IntezmenyAdatok ON IntezmenyAdatok.C_TANEVID = TanuloAdatok.C_TANEVID
|
||||
AND IntezmenyAdatok.TOROLT = 'F'
|
||||
LEFT JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = @pOsztalyId AND Osztaly.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES Osztalyfonok ON Osztalyfonok.ID = Osztaly.C_OSZTALYFONOKID AND Osztalyfonok.TOROLT = 'F'
|
||||
LEFT JOIN @Mulasztasok Mulasztas ON Mulasztas.TanuloId = TanuloAdatok.ID AND Mulasztas.TanuloCsoportId = OsztalyTanuloi.TanuloCsoportId
|
||||
LEFT JOIN #GondviseloAdatok GondviseloAdatok ON GondviseloAdatok.TanuloId = OsztalyTanuloi.ID
|
||||
LEFT JOIN @TanuloCimTable TanuloAllandoCimTable ON TanuloAllandoCimTable.FelhasznaloId = OsztalyTanuloi.ID AND TanuloAllandoCimTable.Cimtipusa = 907
|
||||
LEFT JOIN @TanuloCimTable TanuloTartozkodasiCimTable ON TanuloTartozkodasiCimTable.FelhasznaloId = OsztalyTanuloi.ID AND TanuloTartozkodasiCimTable.Cimtipusa = 908
|
||||
WHERE
|
||||
Tanulo.C_TANKOTELEZETT = IIF(@pTankoteles = 0, 'F', 'T')
|
||||
ORDER BY TanuloAdatok.C_NYOMTATASINEV
|
||||
|
||||
|
||||
--Mulasztások részletezése
|
||||
SELECT
|
||||
Mulasztasok.TanuloId
|
||||
,Mulasztasok.TanuloCsoportId
|
||||
,Mulasztasok.OsztalyCsoportId
|
||||
,Mulasztasok.OsztalyCsoportNev
|
||||
,MulasztasTipus.C_NAME Tipusa
|
||||
,Mulasztasok.Igazolt
|
||||
,Mulasztasok.IgazolasTipusa
|
||||
,Mulasztasok.KesesPercben
|
||||
,Mulasztasok.Datum
|
||||
,Mulasztasok.Oraszam
|
||||
,Mulasztasok.TantargyId
|
||||
,Mulasztasok.TantargyNev
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes(@pTanevId, @pOsztalyId, @pIskolaErdekuSzamit, DEFAULT, DEFAULT, DEFAULT, DEFAULT) Mulasztasok
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES MulasztasTipus ON MulasztasTipus.Id = Mulasztasok.Tipusa AND MulasztasTipus.C_TANEVID = @pTanevId
|
||||
WHERE
|
||||
Igazolt = 'F'
|
||||
|
||||
DROP TABLE #GondviseloAdatok
|
||||
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,323 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetErtesitoNyomtatvany]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetErtesitoNyomtatvany]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =====================================================================
|
||||
-- Description: értesítõ nyomtatvány (félévi, év végi, I. negyedévi...)
|
||||
-- =====================================================================
|
||||
CREATE PROCEDURE [dbo].[sp_GetErtesitoNyomtatvany]
|
||||
@pOsztalyId INT,
|
||||
@pTanevId INT,
|
||||
@pErtekelesTipus INT,
|
||||
@pElmeletGyakorlat BIT = 0,
|
||||
@pKesesTipus INT = 1499,
|
||||
@pElmeletiOraPercben INT = 45,
|
||||
@pGyakorlatiOraPercben INT = 45,
|
||||
@pIskolaErdekuSzamit BIT,
|
||||
@pIsKozossegiSzolgalat BIT,
|
||||
@pTanuloId INT = NULL,
|
||||
@pIsMuveszetOktatasi BIT = 0,
|
||||
@pIsShowTanuloiAtlag BIT = 0
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @EsemenyTipus INT
|
||||
SET @EsemenyTipus = (SELECT
|
||||
CASE
|
||||
WHEN @pErtekelesTipus = 1519 THEN 1547 --félévi
|
||||
WHEN @pErtekelesTipus = 1520 THEN 1548 --év végi
|
||||
WHEN @pErtekelesTipus = 1522 THEN 1549 --I. negyedévi
|
||||
WHEN @pErtekelesTipus = 1524 THEN 1550 --II. negyedévi
|
||||
WHEN @pErtekelesTipus = 1523 THEN 1551 --III. negyedévi
|
||||
END
|
||||
)
|
||||
|
||||
DECLARE @IdoszakVegeTanevRendje INT
|
||||
SET @IdoszakVegeTanevRendje =
|
||||
CASE @pErtekelesTipus
|
||||
WHEN 1519 THEN 1400 --félévi
|
||||
WHEN 1520 THEN 1395 --év végi
|
||||
WHEN 1522 THEN 1403 --I. negyedévi
|
||||
WHEN 1524 THEN 1400 --II. negyedévi
|
||||
WHEN 1523 THEN 1404 --III. negyedévi
|
||||
END
|
||||
|
||||
DECLARE @IdoszakVege DATE = (SELECT TOP 1 ISNULL(C_DATUM, GETDATE()) FROM T_TANEVRENDJE_OSSZES tr WHERE C_NAPTIPUSA = @IdoszakVegeTanevRendje AND C_TANEVID = @pTanevId AND TOROLT = 'F')
|
||||
|
||||
-- Fejléc
|
||||
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
|
||||
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
|
||||
dbo.fnGetDokumentumIntezmenyCime(@pTanevId) IntezmenyCime,
|
||||
T_INTEZMENYADATOK_OSSZES.C_OMKOD OMKod,
|
||||
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
|
||||
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
|
||||
T_TANEV_OSSZES.C_NEV TANEV,
|
||||
T_INTEZMENYADATOK_OSSZES.C_VAROS VAROS,
|
||||
(SELECT OFO.C_NYOMTATASINEV FROM T_OSZTALY_OSSZES
|
||||
INNER JOIN T_FELHASZNALO_OSSZES OFO
|
||||
ON OFO.ID = T_OSZTALY_OSSZES.C_OSZTALYFONOKID
|
||||
WHERE T_OSZTALY_OSSZES.ID=@pOsztalyId
|
||||
AND T_OSZTALY_OSSZES.TOROLT = 'F') OSZTALYFONOK,
|
||||
(SELECT to2.C_NEV FROM T_OSZTALYCSOPORT_OSSZES to2 WHERE ID = @pOsztalyId AND TOROLT = 'F') OSZTALYNEV,
|
||||
GETDATE() Datum
|
||||
FROM T_INTEZMENYADATOK_OSSZES
|
||||
INNER JOIN T_TANEV_OSSZES
|
||||
ON T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID AND T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.ID = @pTanevId
|
||||
|
||||
-- TANULÓK
|
||||
DECLARE @Tanulok TABLE
|
||||
(
|
||||
TANULOID INT
|
||||
,TanuloCsoportId INT
|
||||
,BelepesDatum DATE
|
||||
,KilepesDatum DATE
|
||||
,TANULONEV NVARCHAR(MAX)
|
||||
,OKTATASIAZONOSITO NVARCHAR(MAX)
|
||||
,TORZSLAPSZAM NVARCHAR(MAX)
|
||||
,SZULHELY NVARCHAR(MAX), SZULIDO NVARCHAR(MAX)
|
||||
,ANYJANEVE NVARCHAR(MAX)
|
||||
)
|
||||
|
||||
IF @pTanuloId IS NOT NULL BEGIN
|
||||
INSERT INTO @Tanulok
|
||||
SELECT
|
||||
tanulok.TanuloId
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
,felhasznalo.C_NYOMTATASINEV
|
||||
,felhasznalo.C_OKTATASIAZONOSITO
|
||||
,felhasznalo.C_NYILVANTARTASISZAM
|
||||
,felhasznalo.C_SZULETESIHELY
|
||||
,dbo.fnGetDokumentumDatumFormatum(felhasznalo.C_SZULETESIDATUM)
|
||||
,felhasznalo.C_ANYJANEVE
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulok
|
||||
INNER JOIN T_FELHASZNALO_OSSZES felhasznalo on felhasznalo.Id=tanulok.TanuloId
|
||||
WHERE
|
||||
tanulok.TanuloId = @pTanuloId
|
||||
|
||||
SELECT
|
||||
TANULOID
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
,TANULONEV
|
||||
,OKTATASIAZONOSITO
|
||||
,TORZSLAPSZAM
|
||||
,SZULHELY
|
||||
,SZULIDO
|
||||
,ANYJANEVE
|
||||
FROM @Tanulok
|
||||
ORDER BY TANULONEV
|
||||
|
||||
END
|
||||
ELSE BEGIN
|
||||
|
||||
INSERT INTO @Tanulok
|
||||
SELECT
|
||||
tanulok.TanuloId
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
,felhasznalo.C_NYOMTATASINEV
|
||||
,felhasznalo.C_OKTATASIAZONOSITO
|
||||
,felhasznalo.C_NYILVANTARTASISZAM
|
||||
,felhasznalo.C_SZULETESIHELY
|
||||
,dbo.fnGetDokumentumDatumFormatum(felhasznalo.C_SZULETESIDATUM)
|
||||
,felhasznalo.C_ANYJANEVE
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulok
|
||||
INNER JOIN T_FELHASZNALO_OSSZES felhasznalo on felhasznalo.Id=tanulok.TanuloId
|
||||
|
||||
SELECT
|
||||
TANULOID
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
,TANULONEV
|
||||
,OKTATASIAZONOSITO
|
||||
,TORZSLAPSZAM
|
||||
,SZULHELY
|
||||
,SZULIDO
|
||||
,ANYJANEVE
|
||||
FROM @Tanulok
|
||||
ORDER BY TANULONEV
|
||||
|
||||
END
|
||||
|
||||
-- ÉRTÉKELÉSEK
|
||||
DECLARE @Ertekelesek TABLE (
|
||||
TanuloId INT
|
||||
,TanuloCsoportId INT
|
||||
,Targy NVARCHAR(MAX)
|
||||
,Jegyzet NVARCHAR(MAX)
|
||||
,Ertekeles NVARCHAR(MAX)
|
||||
,ErtekelesValue FLOAT
|
||||
,ErtekelesJegyzettel NVARCHAR(MAX)
|
||||
,Oraszam INT
|
||||
,RENDEZ1 INT
|
||||
,RENDEZ2 NVARCHAR(MAX)
|
||||
,RENDEZ3 INT
|
||||
,RENDEZ4 INT
|
||||
,RENDEZ5 NVARCHAR(MAX)
|
||||
)
|
||||
|
||||
INSERT INTO @Ertekelesek
|
||||
EXEC sp_GetDokumentumErtekelesek
|
||||
@osztalyId = @pOsztalyId,
|
||||
@tanevId = @pTanevId,
|
||||
@ertekelesTipus = @pErtekelesTipus,
|
||||
@isMuveszetOktatasi = @pIsMuveszetOktatasi
|
||||
|
||||
SELECT
|
||||
ertekeles.TanuloId
|
||||
,ertekeles.TanuloCsoportId
|
||||
,Targy
|
||||
,Jegyzet
|
||||
,Ertekeles
|
||||
,ErtekelesValue
|
||||
,ErtekelesJegyzettel
|
||||
,Oraszam
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
,'' TanarNev
|
||||
FROM @Ertekelesek ertekeles
|
||||
INNER JOIN @Tanulok Tanulok ON Tanulok.TANULOID = ertekeles.TanuloId AND Tanulok.TanuloCsoportId = ertekeles.TanuloCsoportId
|
||||
ORDER BY RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
|
||||
IF(@pIsShowTanuloiAtlag = 1) BEGIN
|
||||
--Tanuló Átlaga
|
||||
SELECT
|
||||
TanuloId TanuloId
|
||||
,TanuloCsoportId
|
||||
,AVG(ErtekelesValue) ErtekelesAtlag
|
||||
FROM @Ertekelesek
|
||||
GROUP BY TanuloId, TanuloCsoportId
|
||||
END
|
||||
|
||||
|
||||
-- MULASZTÁSOK
|
||||
DECLARE @Mulasztasok TABLE (
|
||||
TanuloId INT
|
||||
,TanuloCsoportId INT
|
||||
,Igazolt INT
|
||||
,Igazolatlan INT
|
||||
,ElmeletIgazolt INT
|
||||
,ElmeletIgazolatlan INT
|
||||
,GyakorlatIgazolt INT
|
||||
,GyakorlatIgazolatlan INT
|
||||
,ElmeletOsszes INT
|
||||
,GyakorlatOsszes INT
|
||||
,Osszes INT
|
||||
)
|
||||
|
||||
INSERT INTO @Mulasztasok
|
||||
EXEC sp_GetDokumentumMulasztasok
|
||||
@osztalyId = @pOsztalyId,
|
||||
@tanevId = @pTanevId,
|
||||
@elmeletGyakorlat = @pElmeletGyakorlat,
|
||||
@kesesTipus = @pKesesTipus,
|
||||
@elmeletiOraPercben = @pElmeletiOraPercben,
|
||||
@gyakorlatiOraPercben = @pGyakorlatiOraPercben,
|
||||
@ertekelesTipus = @pErtekelesTipus,
|
||||
@iskolaErdekuSzamit = @pIskolaErdekuSzamit,
|
||||
@isMuveszetOktatasi = @pIsMuveszetOktatasi
|
||||
|
||||
SELECT
|
||||
mulasztasok.TanuloId
|
||||
,mulasztasok.TanuloCsoportId
|
||||
,Igazolt
|
||||
,Igazolatlan
|
||||
,ElmeletIgazolt
|
||||
,ElmeletIgazolatlan
|
||||
,GyakorlatIgazolt
|
||||
,GyakorlatIgazolatlan
|
||||
,ElmeletOsszes
|
||||
,GyakorlatOsszes
|
||||
,Osszes
|
||||
FROM @Mulasztasok mulasztasok
|
||||
INNER JOIN @Tanulok Tanulok ON Tanulok.TANULOID = mulasztasok.TanuloId AND Tanulok.TanuloCsoportId = mulasztasok.TanuloCsoportId
|
||||
|
||||
-- TANTÁRGYI MENTESSÉGEK
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,TantargyNev
|
||||
,MentessegOka
|
||||
FROM fnGetDokumentumTanuloMentessegei(@pTanevId, @pOsztalyId)
|
||||
|
||||
--Bejegyzések
|
||||
SELECT
|
||||
TanuloTable.TanuloId
|
||||
,TanuloTable.TanuloCsoportId
|
||||
,'A félév során ' + CAST(SUM(Oraszam) AS NVARCHAR(MAX)) + ' óra közösségi szolgálatot teljesített.' Bejegyzes
|
||||
FROM fnGetDokumentumKozossegiSzolgalatOsztalyonkent (@pTanevId, @pOsztalyId) bejegyzes
|
||||
INNER JOIN @Tanulok TanuloTable ON bejegyzes.TanuloId = TanuloTable.TanuloId AND bejegyzes.TanuloCsoportId = TanuloTable.TanuloCsoportId
|
||||
WHERE
|
||||
@pIsKozossegiSzolgalat = 1
|
||||
AND Datum <= @IdoszakVege
|
||||
GROUP BY TanuloTable.TanuloId, TanuloTable.TanuloCsoportId
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
bejegyzes.TanuloId TanuloId
|
||||
,TanuloCsoportId
|
||||
,Tartalom Bejegyzes
|
||||
FROM fnGetDokumentumTanulokFeljegyzesei(@pTanevId, @pOsztalyId) bejegyzes
|
||||
INNER JOIN @Tanulok TanuloTable ON bejegyzes.TanuloId = TanuloTable.TanuloId
|
||||
WHERE
|
||||
Tipusa IN (1546, @EsemenyTipus)
|
||||
AND BelepesDatum <= Datum
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= Datum)
|
||||
|
||||
UNION
|
||||
|
||||
-- Határozatok
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,Bejegyzes Zaradek
|
||||
FROM fnGetDokumentumTanuloZaradekai(@pOsztalyId, @pTanevId)
|
||||
WHERE
|
||||
@pErtekelesTipus = 1520
|
||||
|
||||
--TANULÓ elérhetőségei
|
||||
SELECT DISTINCT
|
||||
tanulo.TanuloId tanuloID
|
||||
,Gondviselo.C_NEV + IIF(Gondviselo.C_ISTORVENYESKEPVISELO = 'T', ' (törvényes)', '') GondviseloNeve
|
||||
|
||||
FROM T_GONDVISELO_OSSZES Gondviselo
|
||||
INNER JOIN @Tanulok TanuloTable ON Gondviselo.C_TANULOID = TanuloTable.TanuloId
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'F') tanulo ON tanulo.TanuloId = Gondviselo.C_TANULOID
|
||||
WHERE
|
||||
Gondviselo.TOROLT = 'F'
|
||||
|
||||
|
||||
SELECT DISTINCT
|
||||
TanuloTable.TanuloId tanuloID
|
||||
,C_IRANYITOSZAM + ' ' + C_VAROS + ', ' + C_KOZTERULET + ' ' + kozterulet.C_NAME + ' ' + C_HAZSZAM CimText
|
||||
,cimTipus.C_NAME CimTipusa
|
||||
FROM @Tanulok TanuloTable
|
||||
INNER JOIN T_CIM_OSSZES cim ON cim.C_FELHASZNALOID = TanuloTable.TanuloId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES kozterulet ON kozterulet.Id = C_KOZTERULETJELLEGE AND kozterulet.C_TANEVID = @pTanevId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipus ON cim.C_CIMTIPUSA = cimTipus.ID AND cimTipus.C_TANEVID = @pTanevId
|
||||
WHERE
|
||||
cim.TOROLT = 'F'
|
||||
AND cim.C_TANEVID = @pTanevId
|
||||
|
||||
END
|
||||
|
||||
GO
|
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,320 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('sp_GetTorzslap') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE sp_GetTorzslap
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_GetTorzslap
|
||||
@osztalyId INT,
|
||||
@tanevId INT,
|
||||
@ertekelesTipus INT,
|
||||
@kesesTipus INT,
|
||||
@elmeletiOraPercben INT = 45,
|
||||
@gyakorlatiOraPercben INT = 45,
|
||||
@iskolaErdekuSzamit BIT,
|
||||
@isNemet BIT ,
|
||||
@isKozossegiSzolgalat BIT
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
SELECT
|
||||
OsztalyTanuloi.TanuloId TanuloId
|
||||
,OsztalyTanuloi.NaploSorszam NaploSorszam
|
||||
,OsztalyTanuloi.TorzslapSzam TorzslapSzam
|
||||
,OsztalyTanuloi.TanuloCsoportId TanuloCsoportId
|
||||
,OsztalyTanuloi.BelepesDatum BelepesDatum
|
||||
,OsztalyTanuloi.KilepesDatum KilepesDatum
|
||||
,Agazat.C_NAME Agazat
|
||||
,Szakkep.C_NAME Szakkepesites
|
||||
,ReszSzakkep.C_NAME ReszSzakkepesites
|
||||
,SzakmaCsop.C_NAME SzakmaCsoport
|
||||
INTO #students
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') OsztalyTanuloi
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES Agazat ON Agazat.ID = OsztalyTanuloi.AgazatId AND Agazat.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES Szakkep ON Szakkep.ID = OsztalyTanuloi.SzakkepesitesId AND Szakkep.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ReszSzakkep ON ReszSzakkep.ID = OsztalyTanuloi.ReszSzakkepeitesId AND ReszSzakkep.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES SzakmaCsop ON SzakmaCsop.ID = OsztalyTanuloi.SzakmaCsoportId AND SzakmaCsop.C_TANEVID = @tanevId
|
||||
|
||||
--Intézmény, tanév
|
||||
SELECT DISTINCT
|
||||
OsztalyCsoport.C_NEV OsztalyNev
|
||||
,Osztaly.C_OSZTALYNAPLOLEIRASA OsztalyMegjegyzes
|
||||
,Osztaly.C_OSZTALYFONOKID PartnerID
|
||||
,IIF(@isNemet = 0, ofo.C_NYOMTATASINEV, ofo.C_UTONEV + ' ' + ofo.C_VEZETEKNEV) Osztalyfonok
|
||||
,i.C_IGAZGATONEVE IntezmenyVezeto
|
||||
,i.C_NEV IntezmenyNeve
|
||||
,i.C_VAROS IntezmenyVaros
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) IntezmenyCime
|
||||
,i.C_OMKOD IntezmenyOMKod
|
||||
,IIF(@isNemet = 0, dbo.fnGetDokumentumDatumFormatum(Osztaly.C_OSZTALYNAPLOMEGNYITASA), FORMAT(Osztaly.C_OSZTALYNAPLOMEGNYITASA, 'dd. MM. yyyy')) NaploMegnyitasanakDatuma
|
||||
,IIF(@isNemet = 0, dbo.fnGetDokumentumDatumFormatum(Osztaly.C_OSZTALYNAPLOZARASA), FORMAT(Osztaly.C_OSZTALYNAPLOZARASA, 'dd. MM. yyyy')) NaploZarasanakDatuma
|
||||
,tanev.C_NEV Tanev
|
||||
,(SELECT COUNT(TanuloId) FROM #students) TanuloSzam
|
||||
,(SELECT MIN(NaploSorszam) FROM #students) MinNaploSorszam
|
||||
,(SELECT MAX(NaploSorszam) FROM #students) MaxNaploSorszam
|
||||
FROM T_OSZTALYCSOPORT_OSSZES OsztalyCsoport
|
||||
INNER JOIN T_OSZTALY_OSSZES Osztaly ON OsztalyCsoport.ID = Osztaly.ID AND Osztaly.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ofo ON ofo.ID = Osztaly.C_OSZTALYFONOKID
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES i on i.C_INTEZMENYID = OsztalyCsoport.C_INTEZMENYID AND i.C_TANEVID = @tanevId
|
||||
INNER JOIN T_TANEV_OSSZES tanev ON tanev.ID = i.C_TANEVID and tanev.TOROLT = 'F'
|
||||
WHERE OsztalyCsoport.ID = @osztalyId
|
||||
|
||||
--Osztály, évfolyam
|
||||
SELECT
|
||||
OsztalyCsoport.C_NEV
|
||||
,EvfolyamTipusa.C_NAME C_EVFOLYAMTIPUSA_DNAME
|
||||
FROM T_OSZTALYCSOPORT_OSSZES OsztalyCsoport
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES EvfolyamTipusa ON EvfolyamTipusa.Id = OsztalyCsoport.C_EVFOLYAMTIPUSA
|
||||
WHERE
|
||||
OsztalyCsoport.ID = @osztalyId
|
||||
AND EvfolyamTipusa.C_TANEVID = @tanevId
|
||||
|
||||
--Tanuló adatok
|
||||
SELECT
|
||||
felhasznalo.ID TanuloId
|
||||
,felhasznalo.Azonosito Azonosito
|
||||
,IIF(@isNemet = 0, felhasznalo.Nev, felhasznalo.Elotag + ' ' + felhasznalo.VezetekNev)
|
||||
Nev
|
||||
,IIF(@isNemet = 0, dbo.fnGetDokumentumDatumFormatum(felhasznalo.SzuletesiDatum), FORMAT(felhasznalo.SzuletesiDatum, 'dd. MM. yyyy'))
|
||||
SzuletesiDatum
|
||||
,felhasznalo.SzuletesiHely SzuletesiHely
|
||||
,IIF(@isNemet = 0, allampolgarsag.C_NAME, dbo.fnGetDokumentumNemet(felhasznalo.Allampolgarsag))
|
||||
Allampolgarsag
|
||||
,felhasznalo.Anyjaneve AnyjaNeve
|
||||
,IIF(@isNemet = 0, szorszag.C_NAME, dbo.fnGetDokumentumNemet(felhasznalo.SzuletesiOrszag))
|
||||
SzuletesiOrszag
|
||||
,OsztalyTanuloi.TorzslapSzam TorzslapSzam
|
||||
,gondviselo.Gondviselok GondviseloNeve
|
||||
,OsztalyTanuloi.NaploSorszam NaploSorszam
|
||||
,felhasznalo.Nev Nev2
|
||||
,Tanulo.C_SAJATOSNEVELESU SajatosNevelesu
|
||||
,OsztalyTanuloi.TanuloCsoportId TanuloCsoportId
|
||||
,OsztalyTanuloi.BelepesDatum BelepesDatum
|
||||
,OsztalyTanuloi.KilepesDatum KilepesDatum
|
||||
,OsztalyTanuloi.Agazat Agazat
|
||||
,OsztalyTanuloi.Szakkepesites Szakkepesites
|
||||
,OsztalyTanuloi.ReszSzakkepesites ReszSzakkepesites
|
||||
,OsztalyTanuloi.SzakmaCsoport SzakmaCsoport
|
||||
INTO #TanuloAdatok
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
ID ID
|
||||
,C_OKTATASIAZONOSITO Azonosito
|
||||
,C_NYOMTATASINEV Nev
|
||||
,C_VEZETEKNEV VezetekNev
|
||||
,C_UTONEV Elotag
|
||||
,C_SZULETESIDATUM SzuletesiDatum
|
||||
,C_SZULETESIHELY SzuletesiHely
|
||||
,C_SZULETESIORSZAG SzuletesiOrszag
|
||||
,C_ALLAMPOLGARSAGA Allampolgarsag
|
||||
,IIF(@isNemet = 0, C_ANYJANEVE, LTRIM(SUBSTRING(C_ANYJANEVE, C_ANYJANEVEELVALASZTO + 1 , LEN(C_ANYJANEVE) - C_ANYJANEVEELVALASZTO)) + ' ' + LTRIM(SUBSTRING(C_ANYJANEVE, 0, C_ANYJANEVEELVALASZTO + 1)))
|
||||
Anyjaneve
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
) felhasznalo
|
||||
INNER JOIN T_TANULO_OSSZES Tanulo ON Tanulo.Id = felhasznalo.Id
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES allampolgarsag ON allampolgarsag.ID = felhasznalo.Allampolgarsag AND allampolgarsag.C_TANEVID = @tanevId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES szorszag ON szorszag.ID = felhasznalo.SzuletesiOrszag AND szorszag.C_TANEVID = @tanevId
|
||||
LEFT JOIN
|
||||
(
|
||||
SELECT DISTINCT
|
||||
g.C_TANULOID TanuloId
|
||||
,STUFF((SELECT C_NEV + IIF(@isNemet = 0, ' (' + d.C_NAME +')', '') + CHAR(13) + CHAR(10)
|
||||
FROM T_GONDVISELO_OSSZES bg
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d on d.ID = bg.C_ROKONSAGFOKA AND d.C_TANEVID = bg.C_TANEVID
|
||||
WHERE
|
||||
bg.C_TANULOID=g.C_TANULOID
|
||||
AND bg.C_ISTORVENYESKEPVISELO = 'T'
|
||||
AND bg.TOROLT = 'F'
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Gondviselok
|
||||
FROM T_GONDVISELO_OSSZES g
|
||||
) gondviselo on felhasznalo.ID = gondviselo.TanuloId
|
||||
INNER JOIN #students OsztalyTanuloi ON OsztalyTanuloi.TanuloId = felhasznalo.ID
|
||||
ORDER BY felhasznalo.Nev
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,Azonosito
|
||||
,Nev
|
||||
,SzuletesiDatum
|
||||
,SzuletesiHely
|
||||
,Allampolgarsag
|
||||
,Anyjaneve
|
||||
,SzuletesiOrszag
|
||||
,TorzslapSzam
|
||||
,GondviseloNeve
|
||||
,NaploSorszam
|
||||
,Nev2
|
||||
,SajatosNevelesu
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
FROM #TanuloAdatok ORDER BY NaploSorszam
|
||||
|
||||
--Határozat
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,Bejegyzes
|
||||
FROM fnGetDokumentumTanuloZaradekai(@osztalyId, @tanevId)
|
||||
|
||||
--Egyéb bejegyzések
|
||||
SELECT
|
||||
Tanuloid
|
||||
,TanuloCsoportId
|
||||
,Bejegyzes
|
||||
,Tipus_DNAME
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
bejegyzes.TanuloId TanuloId
|
||||
,s.TanuloCsoportId
|
||||
,Tartalom Bejegyzes
|
||||
,C_NAME Tipus_DNAME
|
||||
,dbo.fnGetDokumentumDatumFormatum(bejegyzes.Datum) Datum
|
||||
FROM fnGetDokumentumTanulokFeljegyzesei(@tanevId, @osztalyId) bejegyzes
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.ID = Tipusa AND C_TANEVID = @tanevId AND d.TOROLT = 'F'
|
||||
INNER JOIN #students s ON s.TanuloId = bejegyzes.TanuloId
|
||||
WHERE
|
||||
Tipusa IN (1539, 1545, 1546, 1547, 1548, 1549, 1550, 1551, 1552, 1553, 5477, 5478, 5478, 5479, 5481, 5480)
|
||||
AND BelepesDatum <= Datum
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= Datum)
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,TantargyNev
|
||||
,MentessegOka
|
||||
,dbo.fnGetDokumentumDatumFormatum(Kezdete)
|
||||
FROM fnGetDokumentumTanuloMentessegei(@tanevId, @osztalyId)
|
||||
)a
|
||||
ORDER BY Datum
|
||||
|
||||
-- MULASZTÁSOK
|
||||
DECLARE @Mulasztasok TABLE (
|
||||
TanuloId INT
|
||||
,TanuloCsoportId INT
|
||||
,Igazolt INT
|
||||
,Igazolatlan INT
|
||||
,ElmeletIgazolt INT
|
||||
,ElmeletIgazolatlan INT
|
||||
,GyakorlatIgazolt INT
|
||||
,GyakorlatIgazolatlan INT
|
||||
,ElmeletOsszes INT
|
||||
,GyakorlatOsszes INT
|
||||
,Osszes INT
|
||||
)
|
||||
|
||||
INSERT INTO @Mulasztasok
|
||||
EXEC sp_GetDokumentumMulasztasok
|
||||
@osztalyId = @osztalyId,
|
||||
@tanevId = @tanevId,
|
||||
@elmeletGyakorlat = 0,
|
||||
@kesesTipus = @kesesTipus,
|
||||
@elmeletiOraPercben = @elmeletiOraPercben,
|
||||
@gyakorlatiOraPercben = @gyakorlatiOraPercben,
|
||||
@ertekelesTipus = @ertekelesTipus,
|
||||
@iskolaErdekuSzamit = @iskolaErdekuSzamit
|
||||
|
||||
SELECT
|
||||
TanuloTable.TanuloId
|
||||
,TanuloTable.TanuloCsoportId
|
||||
,Igazolt
|
||||
,Igazolatlan
|
||||
,ElmeletIgazolt
|
||||
,ElmeletIgazolatlan
|
||||
,GyakorlatIgazolt
|
||||
,GyakorlatIgazolatlan
|
||||
,ElmeletOsszes
|
||||
,GyakorlatOsszes
|
||||
,Osszes
|
||||
FROM @Mulasztasok mulasztasok
|
||||
INNER JOIN #students TanuloTable ON mulasztasok.TanuloId = TanuloTable.TanuloId AND TanuloTable.TanuloCsoportId = mulasztasok.TanuloCsoportId
|
||||
|
||||
-- ÉRTÉKELÉSEK
|
||||
DECLARE @Ertekelesek TABLE (
|
||||
TanuloId INT
|
||||
,TanuloCsoportId INT
|
||||
,Targy NVARCHAR(MAX)
|
||||
,Jegyzet NVARCHAR(MAX)
|
||||
,Ertekeles NVARCHAR(MAX)
|
||||
,ErtekelesValue INT
|
||||
,ErtekelesJegyzettel NVARCHAR(MAX)
|
||||
,Oraszam INT
|
||||
,RENDEZ1 INT
|
||||
,RENDEZ2 NVARCHAR(MAX)
|
||||
,RENDEZ3 INT
|
||||
,RENDEZ4 INT
|
||||
,RENDEZ5 NVARCHAR(MAX)
|
||||
)
|
||||
|
||||
INSERT INTO @Ertekelesek
|
||||
EXEC sp_GetDokumentumErtekelesek
|
||||
@osztalyId = @osztalyId,
|
||||
@tanevId = @tanevId,
|
||||
@ertekelesTipus =@ertekelesTipus,
|
||||
@isNemet = @isNemet
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,Targy
|
||||
,Jegyzet
|
||||
,Ertekeles
|
||||
,ErtekelesJegyzettel
|
||||
,Oraszam
|
||||
,RENDEZ1 RENDEZ
|
||||
FROM @Ertekelesek
|
||||
ORDER BY RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
|
||||
--Tanuló lista
|
||||
SELECT
|
||||
Nev
|
||||
,NaploSorszam
|
||||
,TorzslapSzam
|
||||
,dbo.fnGetDokumentumDatumFormatum (KilepesDatum) KilepesDatum
|
||||
FROM #TanuloAdatok
|
||||
ORDER BY NaploSorszam
|
||||
|
||||
--Közösségi szolgálat
|
||||
SELECT DISTINCT
|
||||
OsztalyTanuloi.TanuloId
|
||||
,OsztalyTanuloi.TanuloCsoportId
|
||||
,dbo.fnGetDokumentumDatumFormatum(Datum) Datum
|
||||
,ISNULL(' - ' + Megjegyzes, '') Megjegyzes
|
||||
,Oraszam
|
||||
,TeljesitesHelye
|
||||
,FeljegyzoNeve
|
||||
,Tipus
|
||||
,KozossegiSzolgalatId
|
||||
FROM fnGetDokumentumKozossegiSzolgalatOsztalyonkent(@tanevId, @osztalyId) KozossegiSzolgalat
|
||||
INNER JOIN #students OsztalyTanuloi ON OsztalyTanuloi.TanuloId = KozossegiSzolgalat.TanuloId
|
||||
WHERE
|
||||
BelepesDatum <= Datum
|
||||
AND (OsztalyTanuloi.KilepesDatum IS NULL OR OsztalyTanuloi.KilepesDatum >= Datum)
|
||||
AND @isKozossegiSzolgalat = 1
|
||||
ORDER BY Datum
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
FROM #TanuloAdatok
|
||||
WHERE
|
||||
SajatosNevelesu = 'T'
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= GETDATE())
|
||||
|
||||
DROP TABLE #students
|
||||
DROP TABLE #TanuloAdatok
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,115 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetUzenofuzetErtekelolap]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetUzenofuzetErtekelolap]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetUzenofuzetErtekelolap]
|
||||
@osztalyId INT,
|
||||
@tanevId INT
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
--Intézmény, tanév
|
||||
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
|
||||
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
|
||||
dbo.fnGetDokumentumIntezmenyCime(@tanevId) IntezmenyCime,
|
||||
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
|
||||
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
|
||||
T_INTEZMENYADATOK_OSSZES.C_OMKOD IntezmenyOMKod,
|
||||
T_INTEZMENYADATOK_OSSZES.C_IGAZGATONEVE Intezmenyvezeto,
|
||||
(SELECT C_OSZTALYFONOKID FROM T_OSZTALY_OSSZES WHERE T_OSZTALY_OSSZES.ID = @osztalyId AND T_OSZTALY_OSSZES.C_ALTANEVID = @tanevId AND T_OSZTALY_OSSZES.TOROLT = 'F') PartnerID,
|
||||
T_TANEV_OSSZES.C_NEV TANEV
|
||||
FROM T_INTEZMENYADATOK_OSSZES
|
||||
INNER JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID AND T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
WHERE
|
||||
T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.ID = @tanevId
|
||||
|
||||
--Osztály, évfolyam
|
||||
SELECT T_OSZTALYCSOPORT_OSSZES.C_NEV,
|
||||
T_OSZTALYCSOPORT_OSSZES.C_EVFOLYAMTIPUSA,
|
||||
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV Osztalyfonok
|
||||
FROM T_OSZTALYCSOPORT_OSSZES
|
||||
INNER JOIN T_OSZTALY_OSSZES ON T_OSZTALYCSOPORT_OSSZES.id = T_OSZTALY_OSSZES.ID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES ON T_FELHASZNALO_OSSZES.id = T_OSZTALY_OSSZES.c_osztalyfonokid
|
||||
WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT='F'
|
||||
AND T_OSZTALYCSOPORT_OSSZES.ID = @osztalyId
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_TANEVID = @tanevId
|
||||
|
||||
|
||||
--Tanuló adatai
|
||||
SELECT
|
||||
TanuloId Id
|
||||
,TanuloCsoportId TanuloCsoportId
|
||||
,OsztalyTanuloi.BelepesDatum BelepesDatum
|
||||
,OsztalyTanuloi.KilepesDatum KilepesDatum
|
||||
INTO #studentsWithTanuloCsoport
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') OsztalyTanuloi
|
||||
|
||||
SELECT
|
||||
T_FELHASZNALO_OSSZES.ID TANULOID,
|
||||
TanuloCsoportId,
|
||||
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TANULONEV,
|
||||
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO OKTATASIAZONOSITO
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN #studentsWithTanuloCsoport Tanulok ON Tanulok.Id = T_FELHASZNALO_OSSZES.Id
|
||||
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
|
||||
|
||||
SELECT
|
||||
Datum
|
||||
,TipusId
|
||||
,ErtekelesSzoveg
|
||||
,ErtekelesOsztalyzatId
|
||||
,ErtekelesOsztalyzatValue
|
||||
,ErtekelesOsztalyzatNev
|
||||
,ErtekelesSzazalek
|
||||
,MagatartasOsztalyzatId
|
||||
,MagatartasOsztalyzatNev
|
||||
,MagatartasSzoveg
|
||||
,MagatartasErtekId
|
||||
,MagatartasErtek
|
||||
,SzorgalomOsztalyzatId
|
||||
,SzorgalomOsztalyzatNev
|
||||
,SzorgalomSzoveg
|
||||
,SzorgalomErtekId
|
||||
,SzorgalomErtek
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,OsztalyCsoportId
|
||||
,TantargyId
|
||||
,TantargyNevZarojellel
|
||||
,TantargyNev
|
||||
,TantargyNevNyomtatvanyban
|
||||
,TargyKategoriaId
|
||||
,FotargyE
|
||||
,FotargyId
|
||||
,Altantargy
|
||||
,ErtekelesTema
|
||||
,Jeloles
|
||||
,JelolesAndErtekelesTema
|
||||
,isMagatartasSzorgalom
|
||||
INTO #ErtekelesekTemp
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@tanevId, @osztalyId, DEFAULT, DEFAULT, DEFAULT, DEFAULT)
|
||||
|
||||
EXEC sp_GetDokumentumErtekelesekIdoszakonkent
|
||||
@tanevId = @tanevId,
|
||||
@osztalyCsoportId = @osztalyId,
|
||||
@ertekelesTipusa = NULL,
|
||||
@csakTanorai = 1,
|
||||
@csakKivlasztottOsztalyCsoport = 0,
|
||||
@atsoroltTanuloErtekelesek = 0,
|
||||
@fuggolegesTantargyak = 0,
|
||||
@isMegjegyzesMegjelenjen = 0
|
||||
|
||||
DROP TABLE #studentsWithTanuloCsoport
|
||||
END
|
||||
|
||||
GO
|
Reference in New Issue
Block a user