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

View file

@ -0,0 +1,125 @@
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),
TantargyAngolNev NVARCHAR(MAX),
TantargyNemetNev 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,
TantargyAngolNev,
TantargyNemetNev,
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

View file

@ -0,0 +1,210 @@
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),
TantargyAngolNev NVARCHAR(MAX),
TantargyNemetNev 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,
tanuloErtekeles.C_DATUM,
tanuloErtekeles.C_TIPUSID,
tanuloErtekeles.C_ERTEKELESSZOVEG,
tanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV,
tanuloErtekeles.C_ERTEKELESOSZTALYZATID,
ertekelesOsztalyzat.C_VALUE,
ertekelesOsztalyzat.C_NAME,
IIF(tanuloErtekeles.C_ERTEKELESSZAZALEK IS NOT NULL, CONVERT(NVARCHAR(3), tanuloErtekeles.C_ERTEKELESSZAZALEK)+'%', NULL),
tanuloErtekeles.C_MAGATARTASOSZTALYZATID,
magatartasOsztalyzat.C_VALUE,
magatartasOsztalyzat.C_NAME,
tanuloErtekeles.C_MAGATARTASSZOVEG,
tanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV,
tanuloErtekeles.C_MAGATARTASERTEKID,
magatartasErtek.C_NAME,
magatartasErtek.C_VALUE + 1,
tanuloErtekeles.C_SZORGALOMOSZTALYZATID,
szorgalomOsztalyzat.C_VALUE,
szorgalomOsztalyzat.C_NAME,
tanuloErtekeles.C_SZORGALOMSZOVEG,
tanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV,
tanuloErtekeles.C_SZORGALOMERTEKID,
szorgalomErtek.C_NAME,
szorgalomErtek.C_VALUE + 1,
tanuloErtekeles.C_TANULOID,
TanuloCsoportId,
tanuloErtekeles.C_OSZTALYCSOPORTID,
tanuloErtekeles.C_TANTARGYID,
IIF(tantargy.C_NEV <> tantargy.C_NEVNYOMTATVANYBAN AND tantargy.C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN +' ('+tantargy.C_NEV+')', tantargy.C_NEV),
tantargy.C_NEVNYOMTATVANYBAN,
tantargy.C_NEV,
tantargy.C_ANGOLNEV,
tantargy.C_NEMETNEV,
tantargy.C_TARGYKATEGORIA,
tantargy.C_FOTARGYE,
tantargy.C_ALTANTARGYKENTNYOMTATVANYBAN,
tantargy.C_FOTARGYID,
tanuloErtekeles.C_ERTEKELESTEMA,
tanuloErtekeles.C_ERTEKELOID,
tanuloErtekeles.C_ERTEKELESMODID,
tanuloErtekeles.C_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>',
''),
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,
'')
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 (@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)
)
)
)
AND BelepesDatum <= tanuloErtekeles.C_DATUM
AND (KilepesDatum IS NULL OR KilepesDatum >= tanuloErtekeles.C_DATUM)
option (recompile);
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

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 'Veränderlich'
WHEN 1558 THEN 'Nicht angemessen'
--szorgalom
WHEN 1559 THEN 'Vorbildlich'
WHEN 1560 THEN 'Gut'
WHEN 1561 THEN 'Veränderlich'
WHEN 1562 THEN 'Nachlässig'
--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,307 @@
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),
TantargyAngolNev NVARCHAR(MAX),
TantargyNemetNev 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
,TantargyAngolNev
,TantargyNemetNev
,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
,NULL
,NULL
,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, MagatartasErtekId))), ISNULL(MagatartasSzoveg, IIF(@nyomtatvanyNyelvEnum = 0, MagatartasOsztalyzatNev, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, MagatartasOsztalyzatId))))
,NULL
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@nyomtatvanyNyelvEnum = 0, MagatartasErtek, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, MagatartasErtekId))), 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, SzorgalomErtekId))), ISNULL(SzorgalomSzoveg, IIF(@nyomtatvanyNyelvEnum = 0, SzorgalomOsztalyzatNev, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, SzorgalomOsztalyzatId))))
,NULL
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@nyomtatvanyNyelvEnum = 0, SzorgalomErtek, [dbo].fnGetDokumentumIdegenNyelv(@nyomtatvanyNyelvEnum, SzorgalomErtekId))), 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
,CASE
WHEN @nyomtatvanyNyelvEnum = 0 THEN
ISNULL(ErtekelesTemp.TantargyNevNyomtatvanyban, ErtekelesTemp.TantargyNev)
WHEN @nyomtatvanyNyelvEnum = 1 THEN
ISNULL(TantargyNemetNev, ISNULL(ErtekelesTemp.TantargyNevNyomtatvanyban, ErtekelesTemp.TantargyNev))
WHEN @nyomtatvanyNyelvEnum = 2 THEN
ISNULL(TantargyAngolNev, ISNULL(ErtekelesTemp.TantargyNevNyomtatvanyban, ErtekelesTemp.TantargyNev))
END 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,334 @@
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,
@tanitasiHetekSzamaVegzos INT = 32,
@tanitasiHetekSzamaNemVegzos INT = 36,
@isAltantargyBeszamitasa BIT = 0,
@nyomtatvanyNyelvEnum INT
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_IGAZGATONEVE IntezmenyVezeto,
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
,IIF(@nyomtatvanyNyelvEnum = 0, felhasznalo.C_NYOMTATASINEV, felhasznalo.C_UTONEV + ' ' + felhasznalo.C_VEZETEKNEV)
,felhasznalo.C_OKTATASIAZONOSITO
,tanulok.Torzslapszam
,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
,IIF(@nyomtatvanyNyelvEnum = 0, felhasznalo.C_NYOMTATASINEV, felhasznalo.C_UTONEV + ' ' + felhasznalo.C_VEZETEKNEV)
,felhasznalo.C_OKTATASIAZONOSITO
,tanulok.Torzslapszam
,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 FLOAT
,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,
@tanitasiHetekSzamaVegzos = @tanitasiHetekSzamaVegzos,
@tanitasiHetekSzamaNemVegzos = @tanitasiHetekSzamaNemVegzos,
@isAltantargyBeszamitasa = @isAltantargyBeszamitasa,
@nyomtatvanyNyelvEnum = @nyomtatvanyNyelvEnum
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 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'
AND Gondviselo.C_ISTORVENYESKEPVISELO = 'T'
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_GONDVISELOID IS NULL
AND cim.C_ALAPERTELMEZETT = 'T'
AND cim.C_TANEVID = @pTanevId
END
GO

View file

@ -0,0 +1,397 @@
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,
@isMuveszetOktatasi BIT = 0
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
,IIF(Szakkep.ID = 5527, '', Szakkep.C_NAME + '(szakképesítés)') Szakkepesites
,IIF(ReszSzakkep.ID = 6108, '', ReszSzakkep.C_NAME + '(részszakképesítés)') ReszSzakkepesites
,SzakmaCsop.C_NAME SzakmaCsoport
,ROW_NUMBER() OVER(ORDER BY LEN(TorzslapSzam), TorzslapSzam) AS Row#
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
DECLARE @minTorzslapszam NVARCHAR(MAX) = (SELECT TorzslapSzam FROM #students WHERE Row# = (SELECT MIN(Row#) FROM #students))
DECLARE @maxTorzslapszam NVARCHAR(MAX) = (SELECT TorzslapSzam FROM #students WHERE Row# = (SELECT MAX(Row#) FROM #students))
DECLARE @csoportVezeto NVARCHAR(MAX) =
( SELECT
C_NYOMTATASINEV
FROM T_FELHASZNALO_OSSZES felhasznalo
INNER JOIN T_CSOPORT_OSSZES csoport ON felhasznalo.ID = csoport.C_CSOPORTVEZETOID
WHERE csoport.ID = @osztalyId
)
DECLARE @osztalyFonok NVARCHAR(MAX) =
( SELECT
C_NYOMTATASINEV
FROM T_FELHASZNALO_OSSZES felhasznalo
INNER JOIN T_OSZTALY_OSSZES osztaly ON felhasznalo.ID = osztaly.C_OSZTALYFONOKID
WHERE osztaly.ID = @osztalyId
)
--Intézmény, tanév
if @isMuveszetOktatasi = 0
begin
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
,@minTorzslapszam MinNaploSorszam
,@maxTorzslapszam 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
END
ELSE
BEGIN
SELECT DISTINCT
OsztalyCsoport.C_NEV OsztalyNev
,csoport.C_CSOPORTNAPLOLEIRAS OsztalyMegjegyzes
,csoport.C_CSOPORTVEZETOID 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(csoport.C_CSOPORTNAPLOMEGNYITASA), FORMAT(csoport.C_CSOPORTNAPLOMEGNYITASA, 'dd. MM. yyyy')) NaploMegnyitasanakDatuma
,IIF(@nyomtatvanyNyelvEnum = 0, dbo.fnGetDokumentumDatumFormatum(csoport.C_CSOPORTNAPLOZARASA), FORMAT(csoport.C_CSOPORTNAPLOZARASA, 'dd. MM. yyyy')) NaploZarasanakDatuma
,tanev.C_NEV Tanev
,(SELECT COUNT(TanuloId) FROM #students) TanuloSzam
,@minTorzslapszam MinNaploSorszam
,@maxTorzslapszam MaxNaploSorszam
FROM T_OSZTALYCSOPORT_OSSZES OsztalyCsoport
INNER JOIN T_CSOPORT_OSSZES csoport ON OsztalyCsoport.ID = csoport.ID AND csoport.TOROLT = 'F'
LEFT JOIN T_FELHASZNALO_OSSZES ofo ON ofo.ID = csoport.C_CSOPORTVEZETOID
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
END
--Osztály, évfolyam
SELECT
OsztalyCsoport.C_NEV
,EvfolyamTipusa.C_NAME_1 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 DISTINCT
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
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
,ReszSzakkepesites
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, 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,
@isMuveszetOktatasi = @isMuveszetOktatasi
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,
@isMuveszetOktatasi = @isMuveszetOktatasi
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 Nev
--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
s.TanuloId TanuloId
,s.TanuloCsoportId TanuloCsoportId
,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 + '(Diszgráfia okmányszám) ', '')
+ISNULL(Tanulo.C_DISZKALKULIAOKMANYSZAM + '(Diszkalkulia okmányszám) ', '')
+ISNULL(Tanulo.C_DISZLEXIAOKMANYSZAM + '(Diszlexia okmányszám) ', '')
+ISNULL(TANULO.C_VISELKEDESORGANIKUSOKMANYSZA + '(Viselkedés fejlődésének rendellenesége okmányszám) ', '')
+ISNULL(TANULO.C_VISELKEDESNEMORGANIKUSOKMANY + '(Viselkedés fejlődésének rendellenesége okmányszám) ', '')
+ISNULL(TANULO.C_MEGISMEROORGANIKUSOKMANYSZAM + '(Megismerő funkciók rendellenesége okmányszám) ', '')
+ISNULL(TANULO.C_MEGISMERONEMORGANIKUSOKMANYS + '(Megismerő funkciók rendellenesége okmányszám) ', '') SNIOkmanyszamok
,ISNULL(Tanulo.C_BEILLESZKEDESIPROBLEMAVALKUZ, '') BTM
FROM #students s
INNER JOIN T_TANULO_OSSZES Tanulo ON Tanulo.Id = s.TanuloId
WHERE
Tanulo.C_SAJATOSNEVELESU = 'T'
DROP TABLE #students
DROP TABLE #TanuloAdatok
END