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,113 @@
IF OBJECT_ID('fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent') IS NOT NULL BEGIN
DROP FUNCTION fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent (@tanevId INT, @osztalyId INT, @tanitasiHetekSzamaVegzos INT, @tanitasiHetekSzamaNemVegzos INT, @isFotantargyAltantargyEgyben BIT)
RETURNS @result TABLE
(
TanuloId INT,
TantargyId INT,
Oraszam FLOAT
)
AS
BEGIN
DECLARE @isVegzos NVARCHAR(1) = (SELECT C_VEGZOSEVFOLYAM FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyId)
DECLARE @utolsoNap DATE = IIF( @isVegzos = 'T',
(SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_TANEVID = @tanevId AND TOROLT = 'F' AND C_NAPTIPUSA = 1402), --végzős
(SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_TANEVID = @tanevId AND TOROLT = 'F' AND C_NAPTIPUSA = 1395) --nem végzős
)
DECLARE @temp TABLE (TanuloId INT, FotargyId INT, TantargyId INT, Oraszam FLOAT, isFotargy NVARCHAR(1), isAltantargykentNyomtatvanyban nvarchar(1))
INSERT INTO @temp
SELECT
C_TANULOID TanuloId
,t.C_FOTARGYID FotargyId
,t.ID TantargyId
,fog.C_ORASZAM Oraszam
,t.C_FOTARGYE isFotargy
,t.C_ALTANTARGYKENTNYOMTATVANYBAN isAltantargy
FROM T_TANULOCSOPORT_OSSZES tcs
INNER JOIN T_FOGLALKOZAS_OSSZES fog ON fog.C_OSZTALYCSOPORTID = tcs.C_OSZTALYCSOPORTID AND fog.TOROLT = 'F' AND fog.C_TANEVID = @tanevId
INNER JOIN T_TANTARGY_OSSZES t on t.ID = fog.C_TANTARGYID AND t.C_TANEVID = @tanevId
WHERE
tcs.C_TANULOID IN (SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T'))
AND ((tcs.C_OSZTALYCSOPORTID IN (SELECT ID FROM T_OSZTALY_OSSZES)) OR (tcs.C_OSZTALYCSOPORTID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@tanevId)))))
AND tcs.TOROLT = 'F'
AND tcs.C_TANEVID = @tanevId
AND ISNULL(tcs.C_KILEPESDATUM, @utolsoNap) >= @utolsoNap
DECLARE @default TABLE (TanuloId INT, TantargyId INT, Orasszam FLOAT)
INSERT INTO @default
SELECT
TanuloId
,TantargyId
,Oraszam * IIF(@isVegzos = 'T', @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos)
FROM @temp
WHERE
isFotargy = 'T'
UNION ALL
SELECT
TanuloId
,TantargyId
,Oraszam * IIF(@isVegzos = 'T', @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos)
FROM @temp
WHERE
isAltantargykentNyomtatvanyban = 'T'
UNION ALL
SELECT
TanuloId
,FotargyId
,0
FROM @temp t1
WHERE
(isFotargy = 'F' OR isFotargy IS NULL) AND (isAltantargykentNyomtatvanyban = 'F' OR isAltantargykentNyomtatvanyban IS NULL)
AND NOT EXISTS (SELECT TOP 1 t2.FotargyId FROM @temp t2 WHERE t2.FotargyId = t1. TantargyId)
DECLARE @altargy TABLE (TanuloId INT, FotargyId INT, Oraszam FLOAT)
IF @isFotantargyAltantargyEgyben = 1
BEGIN
INSERT INTO @altargy
SELECT
TanuloId
,FotargyId
,SUM(Oraszam) * IIF(@isVegzos = 'T', @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos)
FROM @temp t
WHERE
(isFotargy = 'F' OR isFotargy IS NULL) AND (isAltantargykentNyomtatvanyban = 'F' OR isAltantargykentNyomtatvanyban IS NULL)
GROUP BY TanuloId, FotargyId
END
IF @isFotantargyAltantargyEgyben = 0
BEGIN
INSERT INTO @result
SELECT
defaultTable.TanuloId
,defaultTable.TantargyId
,SUM(defaultTable.Orasszam)
FROM @default defaultTable
GROUP BY defaultTable.TanuloId, defaultTable.TantargyId
END
ELSE
BEGIN
INSERT INTO @result
SELECT
defaultTable.TanuloId
,defaultTable.TantargyId
,SUM(defaultTable.Orasszam) + ISNULL(altargy.Oraszam, 0)
FROM @default defaultTable
LEFT JOIN @altargy altargy ON altargy.TanuloId = defaultTable.TanuloId AND altargy.FotargyId = defaultTable.TantargyId
GROUP BY defaultTable.TanuloId ,defaultTable.TantargyId, altargy.Oraszam
END
RETURN
END
GO

View File

@@ -0,0 +1,21 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent') IS NOT NULL
BEGIN
DROP FUNCTION fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent
END
GO
CREATE FUNCTION fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent (@tanevId INT, @osztalyCsoportId INT, @atsoroltTanuloOrak BIT = 1, @tanitasiHetekSzamaVegzos INT, @tanitasiHetekSzamaNemVegzos INT, @isAltantargyBeszamitasa BIT)
RETURNS TABLE
RETURN (
SELECT Megtarthato.Oraszam AS Orakszama, Megtarthato.TanuloId, Megtarthato.TantargyId,
ISNULL(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TantargyNev, C_FOTARGYE AS Fotargye, C_ALTANTARGYKENTNYOMTATVANYBAN AS Altargye, C_GYAKORLATI AS Gyakorlati
FROM fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent (@tanevId, @osztalyCsoportId, @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos, @isAltantargyBeszamitasa) AS Megtarthato
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = Megtarthato.TantargyId
)
GO

View File

@@ -0,0 +1,319 @@
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),
RENDEZ1 INT,
RENDEZ2 NVARCHAR(MAX),
RENDEZ3 INT,
RENDEZ4 INT,
RENDEZ5 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
,RENDEZ1
,RENDEZ2
,RENDEZ3
,RENDEZ4
,RENDEZ5
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
,RENDEZ1
,RENDEZ2
,RENDEZ3
,RENDEZ4
,RENDEZ5
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 fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent(@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
,-2
,RENDEZ2
,RENDEZ3
,RENDEZ4
,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
,-1
,RENDEZ2
,RENDEZ3
,RENDEZ4
,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
,RENDEZ1
,RENDEZ2
,RENDEZ3
,RENDEZ4
,RENDEZ5
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
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
,REPLACE(Ertekeles, '(', ' (')
,ErtekelesValue
,REPLACE(ErtekelesJegyzettel, '(', ' (')
,Oraszam
,RENDEZ1
,RENDEZ2
,RENDEZ3
,RENDEZ4
,RENDEZ5
FROM #temp
ORDER BY RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
END
GO

View File

@@ -0,0 +1,59 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('sp_GetOsztalyokEvesOraszama') IS NOT NULL BEGIN
DROP PROCEDURE sp_GetOsztalyokEvesOraszama
END
GO
CREATE PROCEDURE sp_GetOsztalyokEvesOraszama
@tanevID int,
@tanitasiHetekSzamaVegzos INT = 32,
@tanitasiHetekSzamaNemVegzos INT = 36,
@isAltantargyBeszamitasa BIT
AS
BEGIN
DECLARE kurzor CURSOR FOR
SELECT OsztalyId FROM fnGetDokumentumOsztalyokTanevenkent(@tanevID)
LEFT JOIN (
SELECT
COUNT(T_TANULOCSOPORT_OSSZES.C_TANULOID) tanuloCount,
T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID
FROM
T_TANULOCSOPORT_OSSZES
INNER JOIN
T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID AND ocs.TOROLT = 'F'
WHERE
T_TANULOCSOPORT_OSSZES.TOROLT = 'F' AND
T_TANULOCSOPORT_OSSZES.C_TANEVID = @tanevID
GROUP BY T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID
) tanuloSzam ON tanuloSzam.C_OSZTALYCSOPORTID = OsztalyId
WHERE
tanuloCount > 0
DECLARE @OsztalyId int
OPEN kurzor
FETCH NEXT FROM kurzor INTO @OsztalyId
WHILE @@FETCH_STATUS = 0 BEGIN
SELECT DISTINCT
tanulo.C_NYOMTATASINEV TanuloNev
,tantargy.C_NEV TantargyNev
,oraszamok.Oraszam EvesOraszam
,(SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @OsztalyId) OsztalyNev
FROM fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent(@tanevID, @OsztalyId, @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos, @isAltantargyBeszamitasa) oraszamok
INNER JOIN T_FELHASZNALO_OSSZES tanulo ON tanulo.ID = oraszamok.TanuloId
INNER JOIN T_TANTARGY_OSSZES tantargy ON tantargy.ID = oraszamok.TantargyID
FETCH NEXT FROM kurzor INTO @OsztalyId
END
CLOSE kurzor
DEALLOCATE kurzor
END
GO