This commit is contained in:
2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View File

@@ -0,0 +1,74 @@
IF OBJECT_ID('fnGetDokumentumIdegenNyelv') IS NOT NULL BEGIN
DROP FUNCTION fnGetDokumentumIdegenNyelv
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION fnGetDokumentumIdegenNyelv (@nyomtatvanyNyelvEnum INT, @Id INT)
RETURNS NVARCHAR(MAX)
BEGIN
DECLARE @value NVARCHAR(MAX)
SELECT @value =
CASE @nyomtatvanyNyelvEnum
WHEN 1 THEN
CASE @Id
--értékelések
WHEN 1505 THEN 'Sehr gut (5)'
WHEN 1504 THEN 'Gut (4)'
WHEN 1503 THEN 'Befriedigend (3)'
WHEN 1502 THEN 'Ausreichend (2)'
WHEN 1501 THEN 'Ungenügend (1)'
--magatartás
WHEN 1555 THEN 'Vorbildlich'
WHEN 1556 THEN 'Gut'
WHEN 1557 THEN 'Wechselnd'
WHEN 1558 THEN 'Schlecht'
--szorgalom
WHEN 1559 THEN 'Vorbildlich'
WHEN 1560 THEN 'Gut'
WHEN 1561 THEN 'Wechselnd'
WHEN 1562 THEN 'Schlecht'
--országok
WHEN 765 THEN 'Ungarn'
WHEN 677 THEN 'Österreich'
WHEN 748 THEN 'Deutschland'
WHEN 874 THEN 'Schweiz'
--nemzetiség
WHEN 217 THEN 'ungarisch'
WHEN 232 THEN 'austrian'
WHEN 381 THEN 'deutsch'
WHEN 424 THEN 'swiss'
END
WHEN 2 THEN
CASE @Id
--értékelések
WHEN 1505 THEN 'Excellent (5)'
WHEN 1504 THEN 'Good (4)'
WHEN 1503 THEN 'Satisfactory (3)'
WHEN 1502 THEN 'Pass (2)'
WHEN 1501 THEN 'Fail (1)'
--magatartás
WHEN 1555 THEN 'Examplary'
WHEN 1556 THEN 'Good'
WHEN 1557 THEN 'Could do better'
WHEN 1558 THEN 'Poor'
--szorgalom
WHEN 1559 THEN 'Examplary'
WHEN 1560 THEN 'Good'
WHEN 1561 THEN 'Could do better'
WHEN 1562 THEN 'Poor'
--országok
WHEN 765 THEN 'Hungary'
--nemzetiség
WHEN 217 THEN 'Hungarian'
END
END
RETURN @value
END;

View File

@@ -0,0 +1,294 @@
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,
@nyomtatvanyNyelvEnum INT = 0,
@isMuveszetOktatasi BIT = 0,
@tanitasiHetekSzamaVegzos INT = 32,
@tanitasiHetekSzamaNemVegzos INT = 36,
@isAltantargyBeszamitasa 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 FLOAT)
INSERT INTO @Oraszamok
SELECT TanuloId, TantargyId, Oraszam FROM fnGetDokumentumTanulokEvesOraszamaiOsztalynkonet(@tanevId, @osztalyId, @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos, @isAltantargyBeszamitasa)
--É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 FLOAT
,RENDEZ1 INT
,RENDEZ2 NVARCHAR(MAX)
,RENDEZ3 INT
,RENDEZ4 INT
,RENDEZ5 NVARCHAR(MAX)
)
DECLARE @NyelvesitettMagatartasNev NVARCHAR(MAX) = CASE @nyomtatvanyNyelvEnum WHEN 0 THEN 'MAGATARTAS' WHEN 1 THEN 'Betragen' WHEN 2 THEN 'Conduct' END
INSERT INTO #temp
SELECT
ErtekelesTemp.TanuloId TANULOID
,TanuloTable.TanuloCsoportId TanuloCsoportId
,@NyelvesitettMagatartasNev TARGY
,NULL
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@nyomtatvanyNyelvEnum = 0, MagatartasErtek, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, MagatartasOsztalyzatId))), ISNULL(MagatartasSzoveg, IIF(@nyomtatvanyNyelvEnum = 0, MagatartasOsztalyzatNev, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, MagatartasOsztalyzatId))))
,NULL
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@nyomtatvanyNyelvEnum = 0, MagatartasErtek, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, MagatartasOsztalyzatId))), ISNULL(MagatartasSzoveg, IIF(@nyomtatvanyNyelvEnum = 0, MagatartasOsztalyzatNev, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, 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 --????
DECLARE @NyelvesitettSzorgalomNev NVARCHAR(MAX) = CASE @nyomtatvanyNyelvEnum WHEN 0 THEN 'SZORGALOM' WHEN 1 THEN 'Fleiss' WHEN 2 THEN 'Effort' END
INSERT INTO #TEMP
SELECT
ErtekelesTemp.TanuloId TANULOID
,TanuloTable.TanuloCsoportId TanuloCsoportId
,@NyelvesitettSzorgalomNev TARGY
,NULL
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@nyomtatvanyNyelvEnum = 0, SzorgalomErtek, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, SzorgalomOsztalyzatId))), ISNULL(SzorgalomSzoveg, IIF(@nyomtatvanyNyelvEnum = 0, SzorgalomOsztalyzatNev, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, SzorgalomOsztalyzatId))))
,NULL
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@nyomtatvanyNyelvEnum = 0, SzorgalomErtek, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, SzorgalomOsztalyzatId))), ISNULL(SzorgalomSzoveg, IIF(@nyomtatvanyNyelvEnum = 0, SzorgalomOsztalyzatNev, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, 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(@nyomtatvanyNyelvEnum = 0, ErtekelesTemp.ErtekelesOsztalyzatNev, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, ErtekelesTemp.ErtekelesOsztalyzatId))), ISNULL(ErtekelesTemp.ErtekelesSzoveg, CONVERT(NVARCHAR(MAX),ErtekelesTemp.ErtekelesSzazalek)))
,ErtekelesTemp.ErtekelesOsztalyzatValue
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@nyomtatvanyNyelvEnum = 0, ErtekelesTemp.ErtekelesOsztalyzatNev, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, 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

View File

@@ -0,0 +1,348 @@
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,
@nyomtatvanyNyelvEnum INT,
@isKozossegiSzolgalat BIT,
@tanitasiHetekSzamaVegzos INT,
@tanitasiHetekSzamaNemVegzos INT,
@isAltantargyBeszamitasa 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(@nyomtatvanyNyelvEnum = 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(@nyomtatvanyNyelvEnum = 0, dbo.fnGetDokumentumDatumFormatum(Osztaly.C_OSZTALYNAPLOMEGNYITASA), FORMAT(Osztaly.C_OSZTALYNAPLOMEGNYITASA, 'dd. MM. yyyy')) NaploMegnyitasanakDatuma
,IIF(@nyomtatvanyNyelvEnum = 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(@nyomtatvanyNyelvEnum = 0, felhasznalo.Nev, felhasznalo.Elotag + ' ' + felhasznalo.VezetekNev)
Nev
,IIF(@nyomtatvanyNyelvEnum = 0, dbo.fnGetDokumentumDatumFormatum(felhasznalo.SzuletesiDatum), FORMAT(felhasznalo.SzuletesiDatum, 'dd. MM. yyyy'))
SzuletesiDatum
,felhasznalo.SzuletesiHely SzuletesiHely
,IIF(@nyomtatvanyNyelvEnum = 0, LOWER(allampolgarsag.C_NAME), dbo.fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, felhasznalo.Allampolgarsag))
Allampolgarsag
,felhasznalo.Anyjaneve AnyjaNeve
,IIF(@nyomtatvanyNyelvEnum = 0, szorszag.C_NAME, dbo.fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, 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
,ISNULL(Tanulo.C_SNIKIALLITOINTEZMENY, '') SNIKiallitoIntezmeny
,dbo.fnGetDokumentumDatumFormatum(Tanulo.C_SNIOKMANYERVENYESSEGKEZDETE) SNIKezdete
,dbo.fnGetDokumentumDatumFormatum(Tanulo.C_SNIKONTROLLIDOPONT) SNIKontrolIdopont
,ISNULL(Tanulo.C_ERTELMIFOGYATEKOSOKMANYSZAM + '(Értelmi fogyatékos okmányszám) ', '')
+ISNULL(Tanulo.C_LATASSERULTOKMANYSZAM + '(Látássérült okmányszám) ', '')
+ISNULL(Tanulo.C_HALLASSERULTOKMANYSZAM + '(Hallássérült okmányszám) ', '')
+ISNULL(Tanulo.C_BESZEDFOGYATEKOSOKMANYSZAM + '(Beszédfogyatékos okmányszám) ', '')
+ISNULL(Tanulo.C_MOZGASSERULTOKMANYSZAM + '(Mozgáskorlátozott okmányszám) ', '')
+ISNULL(Tanulo.C_DISZGRAFIAOKMANYSZAM + '(Diszlexia okmányszám) ', '')
+ISNULL(Tanulo.C_DISZKALKULIAOKMANYSZAM + '(Diszkalkulina okmányszám) ', '')
+ISNULL(Tanulo.C_DISZLEXIAOKMANYSZAM + '(Diszgráfia okmányszám) ', '') SNIOkmanyszamok
,ISNULL(Tanulo.C_BEILLESZKEDESIPROBLEMAVALKUZ, '') BTM
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(@nyomtatvanyNyelvEnum = 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
g.C_TANULOID TanuloId
,STUFF((SELECT C_NEV + IIF(@nyomtatvanyNyelvEnum = 0, ' (' + LOWER(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'
AND g.C_TANEVID = @tanevId
FOR XML PATH(''), TYPE)
.value('.','NVARCHAR(MAX)'),1,0,'') Gondviselok
FROM T_GONDVISELO_OSSZES g
WHERE
g.TOROLT = 'F'
AND g.C_ISTORVENYESKEPVISELO = 'T'
AND g.C_TANEVID = @tanevId
) 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
,Szakkepesites
,SNIKiallitoIntezmeny
,SNIKezdete
,SNIKontrolIdopont
,SNIOkmanyszamok
,BTM
FROM #TanuloAdatok ORDER BY LEN(TorzslapSzam), TorzslapSzam
--Határozat
SELECT
TanuloId
,TanuloCsoportId
,Bejegyzes
FROM fnGetDokumentumTanuloZaradekai(@tanevId, @osztalyId)
--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 FLOAT
,RENDEZ1 INT
,RENDEZ2 NVARCHAR(MAX)
,RENDEZ3 INT
,RENDEZ4 INT
,RENDEZ5 NVARCHAR(MAX)
)
INSERT INTO @Ertekelesek
EXEC sp_GetDokumentumErtekelesek
@osztalyId = @osztalyId,
@tanevId = @tanevId,
@ertekelesTipus =@ertekelesTipus,
@nyomtatvanyNyelvEnum = @nyomtatvanyNyelvEnum,
@tanitasiHetekSzamaVegzos = @tanitasiHetekSzamaVegzos,
@tanitasiHetekSzamaNemVegzos = @tanitasiHetekSzamaNemVegzos,
@isAltantargyBeszamitasa = @isAltantargyBeszamitasa
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 LEN(TorzslapSzam), TorzslapSzam
--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