1938 lines
		
	
	
		
			61 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			1938 lines
		
	
	
		
			61 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
DROP PROCEDURE IF EXISTS uspGetOsztalynaplo
 | 
						|
GO
 | 
						|
 | 
						|
CREATE PROCEDURE uspGetOsztalynaplo
 | 
						|
   @intezmenyId int
 | 
						|
  ,@tanevId int
 | 
						|
  ,@osztalyId int
 | 
						|
  ,@isSzovegesNaplo bit = 0
 | 
						|
  ,@iskolaErdekuSzamit bit
 | 
						|
  ,@fuggolegesTantargyak bit
 | 
						|
  ,@aktivTanevId int
 | 
						|
  ,@isReszletesMulasztasok bit
 | 
						|
  ,@isEgyebFoglalkozasok bit
 | 
						|
  ,@minTanoraSzam int
 | 
						|
  ,@isEllenorzo bit = 0
 | 
						|
  ,@orarendErvenyessegiDatum date
 | 
						|
  ,@tanuloId int = NULL
 | 
						|
AS BEGIN
 | 
						|
  SET NOCOUNT ON;
 | 
						|
 | 
						|
  DECLARE
 | 
						|
     @ElsoNapTanevRendje date
 | 
						|
    ,@UtolsoNapTanevRendje date
 | 
						|
    ,@ElsoNapTanev date
 | 
						|
    ,@UtolsoNapTanev date
 | 
						|
    ,@isVegzos varchar (1)
 | 
						|
    ,@FelevVege date
 | 
						|
    ,@ElsoNap date
 | 
						|
    ,@UtolsoNap date
 | 
						|
    ,@VizsgaltNap date
 | 
						|
    ,@VegzosUtolsoNap date
 | 
						|
    ,@ocsId int
 | 
						|
    ,@MaxOraszam int
 | 
						|
    ,@MinOraszam int
 | 
						|
    ,@TanitasiNapokSzama int
 | 
						|
    ,@TanulokSzama int
 | 
						|
    ,@HetUtolsoNapjaMegtartottOra int
 | 
						|
    ,@HetUtolsoNapjaTanevendje int
 | 
						|
    ,@HetUtolsoNapja int
 | 
						|
    ,@selectList nvarchar (max)
 | 
						|
    ,@pivotList nvarchar (max)
 | 
						|
    ,@tantargyakNevvel nvarchar (max)
 | 
						|
    ,@sql nvarchar (max)
 | 
						|
 | 
						|
  CREATE TABLE #Gondviselok (
 | 
						|
     TanuloId int
 | 
						|
    ,GondviseloId int PRIMARY KEY CLUSTERED
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE TABLE #HetAdatok (
 | 
						|
     C_HETSORSZAMA int
 | 
						|
    ,KezdoDatum date
 | 
						|
    ,VegeDatum date
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE TABLE #EvVegiMulasztasok (
 | 
						|
     TanuloId int
 | 
						|
    ,TanuloCsoportId int
 | 
						|
    ,Igazolt int
 | 
						|
    ,Igazolatlan int
 | 
						|
    ,ElmeletIgazolt int
 | 
						|
    ,ElmeletIgazolatlan int
 | 
						|
    ,GyakorlatIgazolt int
 | 
						|
    ,GyakorlatIgazolatlan int
 | 
						|
    ,ElmeletOsszes int
 | 
						|
    ,GyakorlatOsszes int
 | 
						|
    ,Osszes int
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE TABLE #FeleviMulasztasok (
 | 
						|
     TanuloId int
 | 
						|
    ,TanuloCsoportId int
 | 
						|
    ,Igazolt int
 | 
						|
    ,Igazolatlan int
 | 
						|
    ,ElmeletIgazolt int
 | 
						|
    ,ElmeletIgazolatlan int
 | 
						|
    ,GyakorlatIgazolt int
 | 
						|
    ,GyakorlatIgazolatlan int
 | 
						|
    ,ElmeletOsszes int
 | 
						|
    ,GyakorlatOsszes int
 | 
						|
    ,Osszes int
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE TABLE #NapSorszamTemp (Datum date)
 | 
						|
 | 
						|
  CREATE TABLE #NapSorszam (
 | 
						|
     Datum date
 | 
						|
    ,Sorszam nvarchar(4)
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE TABLE #OsszesOra (
 | 
						|
     Datum datetime
 | 
						|
    ,FormatDate nvarchar (100)
 | 
						|
    ,Oraszam int
 | 
						|
    ,HetSorszama int
 | 
						|
    ,HetNapja nvarchar (100)
 | 
						|
    ,Megjegyzes nvarchar (1000)
 | 
						|
    ,Sorszam nvarchar (30)
 | 
						|
  )
 | 
						|
 | 
						|
  DECLARE @TanuloCimTable TABLE (
 | 
						|
     FelhasznaloId int
 | 
						|
    ,Cim nvarchar (max)
 | 
						|
    ,Cimtipusa nvarchar (max)
 | 
						|
  )
 | 
						|
 | 
						|
  DECLARE @GondViseloCimTable TABLE (
 | 
						|
     GondviseloId int
 | 
						|
    ,Cim nvarchar (max)
 | 
						|
    ,Cimtipusa nvarchar (max)
 | 
						|
  )
 | 
						|
 | 
						|
  DECLARE @EmailCimTableTemp TABLE (
 | 
						|
     FelhasznaloId int
 | 
						|
    ,EmailCim nvarchar (max)
 | 
						|
    ,GondviseloId int
 | 
						|
  )
 | 
						|
 | 
						|
  DECLARE @EmailCimTanuloTable TABLE (
 | 
						|
     FelhasznaloId int
 | 
						|
    ,EmailCim nvarchar (max)
 | 
						|
  )
 | 
						|
 | 
						|
  DECLARE @EmailCimGondviseloTable TABLE (
 | 
						|
     GondviseloId int
 | 
						|
    ,EmailCim nvarchar (max)
 | 
						|
  )
 | 
						|
 | 
						|
  DECLARE @TelefonTableTemp TABLE (
 | 
						|
     FelhasznaloId int
 | 
						|
    ,Telefon nvarchar (max)
 | 
						|
    ,GondviseloId int
 | 
						|
  )
 | 
						|
 | 
						|
  DECLARE @TanuloTelefonTable TABLE (
 | 
						|
     FelhasznaloId int
 | 
						|
    ,Telefon nvarchar (max)
 | 
						|
  )
 | 
						|
 | 
						|
  DECLARE @GondviseloTelefonTable TABLE (
 | 
						|
     GondviseloId int
 | 
						|
    ,Telefon nvarchar (max)
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE TABLE #Tantargyak (
 | 
						|
     ID int
 | 
						|
    ,C_FOTARGYID int
 | 
						|
    ,C_NEV nvarchar(255) COLLATE DATABASE_DEFAULT
 | 
						|
    ,C_NEVNYOMTATVANYBAN nvarchar(255) COLLATE DATABASE_DEFAULT
 | 
						|
    ,C_TARGYKATEGORIA int
 | 
						|
    ,c_tanuloid int
 | 
						|
    ,c_tanulocsoportid int
 | 
						|
    ,RENDEZ1 int
 | 
						|
    ,RENDEZ2 nvarchar(255) COLLATE DATABASE_DEFAULT
 | 
						|
    ,RENDEZ3 int
 | 
						|
    ,RENDEZ4 int
 | 
						|
    ,RENDEZ5 nvarchar(255) COLLATE DATABASE_DEFAULT
 | 
						|
    ,C_INTEZMENYID int
 | 
						|
    ,C_TANEVID int
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE TABLE #retTanuloErtekeles (
 | 
						|
     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
 | 
						|
    ,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)
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE TABLE #osztalycsoportok (
 | 
						|
     OsztalyCsoportId int PRIMARY KEY
 | 
						|
    ,Kezdete date
 | 
						|
    ,Vege date
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE TABLE #OraSorszamTemp (
 | 
						|
     TanitasioraId int
 | 
						|
    ,OraSorszam int
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE TABLE #OraSorszam (
 | 
						|
     TanitasioraId int PRIMARY KEY
 | 
						|
    ,OraSorszam int
 | 
						|
  )
 | 
						|
 | 
						|
  SELECT TOP 1
 | 
						|
     @ElsoNapTanev = t.C_ELSOTANITASINAP
 | 
						|
    ,@UtolsoNapTanev = t.C_UTOLSOTANITASINAP
 | 
						|
  FROM t.T_TANEV_OSSZES t
 | 
						|
  WHERE t.ID = @tanevId
 | 
						|
    AND t.TOROLT = 'F'
 | 
						|
 | 
						|
  SELECT TOP 1
 | 
						|
    @ElsoNapTanevRendje = tr.C_DATUM
 | 
						|
  FROM T_TANEVRENDJE_OSSZES tr
 | 
						|
  WHERE tr.C_NAPTIPUSA = 1394
 | 
						|
    AND tr.C_TANEVID = @tanevId
 | 
						|
    AND tr.TOROLT = 'F'
 | 
						|
 | 
						|
  SELECT TOP 1
 | 
						|
    @UtolsoNapTanevRendje = tr.C_DATUM
 | 
						|
  FROM T_TANEVRENDJE_OSSZES tr
 | 
						|
  WHERE tr.C_NAPTIPUSA = 1395
 | 
						|
    AND tr.C_TANEVID = @tanevId
 | 
						|
    AND tr.TOROLT = 'F'
 | 
						|
 | 
						|
  SELECT TOP 1
 | 
						|
     @isVegzos = o.C_VEGZOSEVFOLYAM
 | 
						|
  FROM T_OSZTALYCSOPORT_OSSZES o
 | 
						|
  WHERE o.ID = @osztalyId
 | 
						|
 | 
						|
  SELECT TOP 1
 | 
						|
    @FelevVege = tr.C_DATUM
 | 
						|
  FROM T_TANEVRENDJE_OSSZES tr
 | 
						|
  WHERE tr.C_NAPTIPUSA = 1400
 | 
						|
    AND tr.C_TANEVID = @tanevId
 | 
						|
    AND tr.TOROLT = 'F'
 | 
						|
 | 
						|
  SET @VegzosUtolsoNap = (SELECT dbo.fnGetOsztalyVegzosTanitasiNap(@osztalyId, @intezmenyId, @tanevId))
 | 
						|
  SET @ElsoNap = ISNULL(@ElsoNapTanevRendje, @ElsoNapTanev)
 | 
						|
  SET @UtolsoNap = IIF(@isVegzos = 'T', COALESCE(@VegzosUtolsoNap, @UtolsoNapTanevRendje, @UtolsoNapTanev), ISNULL(@UtolsoNapTanevRendje, @UtolsoNapTanev))
 | 
						|
 | 
						|
  IF @tanevId = @AktivtanevId AND @orarendErvenyessegiDatum <= @UtolsoNap
 | 
						|
      IF @orarendErvenyessegiDatum <= @ElsoNap
 | 
						|
 | 
						|
        SET @VizsgaltNap = (
 | 
						|
          SELECT TOP 1
 | 
						|
            C_HETKEZDONAPJA
 | 
						|
          FROM T_NAPTARIHET_OSSZES
 | 
						|
          WHERE C_HETSORSZAMA = 1
 | 
						|
            AND TOROLT = 'F'
 | 
						|
            AND C_TANEVID = @tanevId
 | 
						|
        )
 | 
						|
 | 
						|
      ELSE
 | 
						|
 | 
						|
        SET @VizsgaltNap = CONVERT(date, @orarendErvenyessegiDatum)
 | 
						|
 | 
						|
  ELSE
 | 
						|
 | 
						|
      SET @VizsgaltNap = (
 | 
						|
        SELECT TOP 1
 | 
						|
          nh.C_HETUTOLSONAPJA
 | 
						|
        FROM T_NAPTARIHET_OSSZES AS nh
 | 
						|
        WHERE @UtolsoNap >= CONVERT(date, nh.C_HETKEZDONAPJA)
 | 
						|
          AND @UtolsoNap <= CONVERT(date, nh.C_HETUTOLSONAPJA)
 | 
						|
          AND nh.TOROLT = 'F'
 | 
						|
          AND nh.C_TANEVID = @tanevId
 | 
						|
      )
 | 
						|
 | 
						|
 | 
						|
  INSERT INTO #NapSorszamTemp (Datum)
 | 
						|
  EXEC sp_GetDokumentumTanitasiNapokSorszama
 | 
						|
     @tanevId = @tanevId
 | 
						|
    ,@osztalyId = @osztalyId
 | 
						|
 | 
						|
  INSERT INTO #NapSorszam (
 | 
						|
     Datum
 | 
						|
    ,Sorszam
 | 
						|
  )
 | 
						|
  SELECT
 | 
						|
     Sorszam.Datum AS Datum
 | 
						|
    ,CAST(DENSE_RANK() OVER(ORDER BY Sorszam.Datum) AS nvarchar(4))
 | 
						|
  FROM #NapSorszamTemp AS Sorszam
 | 
						|
    INNER JOIN fnGetDokumentumOsztalyMegtartottOrakSzama(@tanevId, @osztalyId) AS OrakSzama ON OrakSzama.Datum = Sorszam.Datum
 | 
						|
  WHERE Sorszam.Datum <= @UtolsoNap
 | 
						|
    AND (@minTanoraSzam = 0 OR OrakSzama.OrakSzama IS NOT NULL OR OrakSzama.OrakSzama >= @minTanoraSzam)
 | 
						|
 | 
						|
  SELECT
 | 
						|
     TanuloId AS Id
 | 
						|
    ,tanugyiAdatok.C_NAPLOSORSZAM AS NaploSorszam
 | 
						|
    ,tanugyiAdatok.C_TORZSLAPSZAM AS TorzslapSzam
 | 
						|
    ,TanuloCsoport.Id AS TanuloCsoportId
 | 
						|
    ,OsztalyTanuloi.BelepesDatum AS BelepesDatum
 | 
						|
    ,OsztalyTanuloi.KilepesDatum AS KilepesDatum
 | 
						|
  INTO #studentsWithTanuloCsoport
 | 
						|
  FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') AS OsztalyTanuloi
 | 
						|
    INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON TanuloCsoport.Id = OsztalyTanuloi.TanuloCsoportId
 | 
						|
    INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tanugyiAdatok ON tanugyiAdatok.C_TANULOCSOPORTID = tanuloCsoport.ID
 | 
						|
      AND tanugyiAdatok.TOROLT = 'F'
 | 
						|
  WHERE @tanuloId IS NULL
 | 
						|
    OR TanuloId = @tanuloId
 | 
						|
 | 
						|
  SELECT DISTINCT
 | 
						|
    Id
 | 
						|
  INTO
 | 
						|
    #students
 | 
						|
  FROM #studentsWithTanuloCsoport
 | 
						|
 | 
						|
  SELECT
 | 
						|
     DATEPART(MONTH, Datum) AS Honap
 | 
						|
    ,TantargyId AS Id
 | 
						|
    ,Igazolt AS IgazoltE
 | 
						|
    ,TanuloId AS TanuloId
 | 
						|
    ,TanuloCsoportId AS TanuloCsoportId
 | 
						|
    ,IgazolasTipusa AS IgazolasTipus
 | 
						|
    ,Datum AS Datum
 | 
						|
    ,Tipusa AS Tipus
 | 
						|
    ,KesesPercben AS KesesPercben
 | 
						|
    ,HetSorszama AS HetSorszama
 | 
						|
    ,Oraszam AS Oraszam
 | 
						|
    ,CAST(DATEPART(MONTH, Datum) AS nvarchar(10)) + IIF(C_GYAKORLATI = 'T', 'G', 'E') AS ElmeletGyakorlat
 | 
						|
    ,C_GYAKORLATI AS isGyakorlat
 | 
						|
  INTO #mulasztasTmp
 | 
						|
  FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes(@tanevId, @osztalyId, @iskolaErdekuSzamit, DEFAULT, 0, DEFAULT, DEFAULT, DEFAULT) AS TanulokMulasztasai
 | 
						|
    INNER JOIN T_TANTARGY_OSSZES Tantargy ON Tantargy.Id = TanulokMulasztasai.TantargyId
 | 
						|
  WHERE @tanuloId IS NULL
 | 
						|
    OR TanuloId = @tanuloId
 | 
						|
 | 
						|
  SELECT
 | 
						|
     CAST(SUM(IIF(IgazoltE = 'T', 1, 0)) AS varchar(5)) + '/' + CAST(SUM(IIF(IgazoltE = 'F', 1, 0)) AS varchar(5)) AS HetiMulasztas
 | 
						|
    ,HetSorszama
 | 
						|
    ,TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
  INTO #HetiMulasztasok
 | 
						|
  FROM #mulasztasTmp
 | 
						|
  GROUP BY
 | 
						|
     HetSorszama
 | 
						|
    ,TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
 | 
						|
  CREATE CLUSTERED INDEX ci1 ON #mulasztasTmp (
 | 
						|
     tanuloid
 | 
						|
    ,datum
 | 
						|
  )
 | 
						|
 | 
						|
  CREATE CLUSTERED INDEX ci5 ON #HetiMulasztasok (HetSorszama)
 | 
						|
 | 
						|
  SELECT
 | 
						|
     Datum
 | 
						|
    ,TipusId
 | 
						|
    ,ErtekelesSzoveg
 | 
						|
    ,ErtekelesSzovegRovidNev
 | 
						|
    ,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
 | 
						|
    ,RENDEZ1
 | 
						|
    ,RENDEZ2
 | 
						|
    ,RENDEZ3
 | 
						|
    ,RENDEZ4
 | 
						|
    ,RENDEZ5
 | 
						|
  INTO #ErtekelesekTemp
 | 
						|
  FROM fnGetDokumentumErtekelesekOsztalyonkent(@tanevId, @osztalyId, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT)
 | 
						|
  WHERE @tanuloId IS NULL
 | 
						|
    OR TanuloId = @tanuloId
 | 
						|
 | 
						|
  CREATE CLUSTERED INDEX ci111 ON #ErtekelesekTemp (
 | 
						|
     datum
 | 
						|
    ,tanulocsoportid
 | 
						|
  )
 | 
						|
 | 
						|
  -- Naplo fooldal
 | 
						|
  INSERT INTO #osztalycsoportok (
 | 
						|
     OsztalyCsoportId
 | 
						|
    ,Kezdete
 | 
						|
    ,Vege
 | 
						|
  )
 | 
						|
  SELECT
 | 
						|
     OsztalyCsoportok.Id
 | 
						|
    ,OsztalyCsoportok.Kezdete
 | 
						|
    ,OsztalyCsoportok.Vege
 | 
						|
  FROM fnGetKapcsolodoOsztalyCsoportokByDateRange(@osztalyId, @ElsoNap, @UtolsoNap, @intezmenyId, @tanevId) AS OsztalyCsoportok
 | 
						|
    INNER JOIN fnGetDokumentumOsztalyVagyTanoraiCsoport(@tanevId) AS TanoraiCeluOsztalyCsoportok  ON TanoraiCeluOsztalyCsoportok.ID = OsztalyCsoportok.Id
 | 
						|
 | 
						|
  DECLARE csoport_cursor CURSOR
 | 
						|
  FOR
 | 
						|
    SELECT
 | 
						|
      OsztalyCsoportId
 | 
						|
    FROM #osztalycsoportok
 | 
						|
 | 
						|
    OPEN csoport_cursor
 | 
						|
 | 
						|
    FETCH NEXT FROM csoport_cursor
 | 
						|
      INTO @ocsId
 | 
						|
 | 
						|
    WHILE @@FETCH_STATUS = 0
 | 
						|
      BEGIN
 | 
						|
 | 
						|
        INSERT INTO #OraSorszamTemp
 | 
						|
        EXEC sp_GetOraSorszamByOsztaly
 | 
						|
           @osztalyCsoportId = @ocsId
 | 
						|
          ,@datum = @UtolsoNap
 | 
						|
          ,@intezmenyId = @intezmenyId
 | 
						|
          ,@tanevId = @tanevId
 | 
						|
 | 
						|
        FETCH NEXT FROM csoport_cursor INTO
 | 
						|
          @ocsId
 | 
						|
      END
 | 
						|
 | 
						|
    CLOSE csoport_cursor
 | 
						|
  DEALLOCATE csoport_cursor
 | 
						|
 | 
						|
  INSERT INTO #OraSorszam
 | 
						|
  SELECT DISTINCT
 | 
						|
     TanitasioraId
 | 
						|
    ,OraSorszam
 | 
						|
  FROM #OraSorszamTemp
 | 
						|
 | 
						|
  SELECT
 | 
						|
     tao.Id AS TanitasioraId
 | 
						|
    ,tao.C_DATUM AS Datum
 | 
						|
    ,IIF(tao.C_ORASZAM IS NULL, dbo.fnGetDokumentumOrakezdetToOraszam(CONVERT(varchar(5), tao.C_ORAKEZDETE, 108), @tanevId), tao.C_ORASZAM) AS Oraszam
 | 
						|
    ,pedagogus.ID AS PedagogusId
 | 
						|
    ,IIF(C_MEGTARTOTT = 'T', pedagogus.C_NYOMTATASINEV, '-') AS PedagogusNev
 | 
						|
    ,IIF(C_MEGTARTOTT = 'T', ISNULL(CONVERT(nvarchar(max), OraSorszam) + '.', '-'), '-') AS OraSorszam
 | 
						|
    ,IIF(C_MEGTARTOTT = 'T', IIF(C_CSENGETESIRENDORAID IS NULL, '(' + CONVERT(varchar(5), C_ORAKEZDETE, 108) + ' - '
 | 
						|
      + CONVERT(varchar(5), C_ORAVEGE, 108) + ') ', '') + REPLACE(REPLACE(C_TEMA, CHAR(0x0007), ''),CHAR(0x000B), ''), 'Elmaradt')
 | 
						|
      + IIF(C_HELYETTESITESTIPUSA = 1496, ' (Óraösszevonás: ' + helyettesito.C_NYOMTATASINEV + ')', '')
 | 
						|
      + IIF(C_HELYETTESITESTIPUSA IN(1494, 1495),'(Helyettesitve: ' + helyettesito.C_NYOMTATASINEV + ') ', '') AS Tema
 | 
						|
    ,IIF(C_MEGTARTOTT = 'T', IIF(C_CSENGETESIRENDORAID IS NULL, '(' + CONVERT(varchar(5), C_ORAKEZDETE, 108) + ' - '
 | 
						|
      + CONVERT(varchar(5), C_ORAVEGE, 108) + ') ', '') + ISNULL(CONVERT(nvarchar(max), OraSorszam), '-') + '.: '
 | 
						|
      + IIF(C_HELYETTESITESTIPUSA = 1496, ' (Óraösszevonás, ' + helyettesito.C_NYOMTATASINEV + ') ', '')
 | 
						|
      + IIF(C_HELYETTESITESTIPUSA IN(1494, 1495), '(Helyettesitve: ' + helyettesito.C_NYOMTATASINEV + ') ', '')
 | 
						|
      + REPLACE(REPLACE(C_TEMA, CHAR(0x0007), ''), CHAR(0x000B), ''), 'Elmaradt') AS TemaOraSzammal
 | 
						|
    ,tao.C_HETNAPJA AS HetNapja
 | 
						|
    ,nh.C_HETSORSZAMA AS HetSorszama
 | 
						|
    ,C_MEGTARTOTT AS Megtartott
 | 
						|
    ,tao.C_TANTARGYID AS TantargyId
 | 
						|
    ,IIF(tantargy.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + tantargy.C_NEV + ')', tantargy.C_NEV) AS Tantargynev
 | 
						|
    ,tao.C_OSZTALYCSOPORTID AS OsztalyCsoportId
 | 
						|
    ,IIF(tantargy.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, IIF(LEN(C_NEVNYOMTATVANYBAN) + LEN(tantargy.C_NEV) < 90,C_NEVNYOMTATVANYBAN
 | 
						|
      + ' (' + tantargy.C_NEV + ')', C_NEVNYOMTATVANYBAN), tantargy.C_NEV) + '-' + CHAR(13) + CHAR(10) + REPLACE(REPLACE(pedagogus.C_NYOMTATASINEV, '[', '('), ']', ')') AS TantargyPedagogussal
 | 
						|
  INTO #megtartottOrak
 | 
						|
  FROM T_TANITASIORA_OSSZES tao
 | 
						|
    LEFT JOIN T_FELHASZNALO_OSSZES pedagogus ON pedagogus.Id = tao.C_TANARID
 | 
						|
    LEFT JOIN T_FELHASZNALO_OSSZES helyettesito ON helyettesito.Id = tao.C_HELYETTESITOTANARID
 | 
						|
    INNER JOIN T_TANTARGY_OSSZES tantargy ON tantargy.Id = tao.C_TANTARGYID
 | 
						|
    LEFT JOIN (
 | 
						|
      SELECT DISTINCT
 | 
						|
         TanitasioraId
 | 
						|
        ,OraSorszam
 | 
						|
      FROM #OraSorszam
 | 
						|
    ) AS oraSorszam ON oraSorszam.TanitasioraId = tao.Id
 | 
						|
    INNER JOIN T_NAPTARIHET_OSSZES nh ON tao.C_DATUM BETWEEN nh.C_HETKEZDONAPJA AND nh.C_HETUTOLSONAPJA
 | 
						|
      AND nh.C_TANEVID = @tanevId
 | 
						|
      AND nh.TOROLT = 'F'
 | 
						|
    INNER JOIN #osztalycsoportok OsztalyCsoportok ON OsztalyCsoportok.OsztalyCsoportId = tao.C_OSZTALYCSOPORTID
 | 
						|
      AND tao.C_DATUM BETWEEN OsztalyCsoportok.Kezdete
 | 
						|
      AND OsztalyCsoportok.Vege
 | 
						|
   WHERE tao.TOROLT = 'F'
 | 
						|
 | 
						|
  CREATE CLUSTERED INDEX ciMegtartottOrak ON #megtartottOrak (Datum)
 | 
						|
 | 
						|
  SELECT
 | 
						|
     @MaxOraszam = ISNULL(MAX(Oraszam), 4)
 | 
						|
    ,@MinOraszam = ISNULL(MIN(Oraszam), 1)
 | 
						|
  FROM #megtartottOrak
 | 
						|
 | 
						|
  SELECT
 | 
						|
    @TanulokSzama = COUNT(DISTINCT TanuloId)
 | 
						|
  FROM #ErtekelesekTemp
 | 
						|
  WHERE TipusId = 1520
 | 
						|
 | 
						|
  SELECT
 | 
						|
    @TanitasiNapokSzama = MAX(CAST(Sorszam AS int))
 | 
						|
  FROM #NapSorszam
 | 
						|
 | 
						|
  SELECT DISTINCT
 | 
						|
     @osztalyId AS OsztalyId
 | 
						|
    ,ocs.C_NEV AS OsztalyNev
 | 
						|
    ,o.C_OSZTALYNAPLOLEIRASA AS OsztalyMegjegyzes
 | 
						|
    ,o.C_OSZTALYFONOKID AS PartnerID
 | 
						|
    ,ofo.C_NYOMTATASINEV AS Osztalyfonok
 | 
						|
    ,o.C_OFOHELYETTESID AS OsztalyfonokHelyettesId
 | 
						|
    ,i.C_IGAZGATONEVE AS IntezmenyVezeto
 | 
						|
    ,i.C_NEV AS IntezmenyNeve
 | 
						|
    ,i.C_VAROS AS IntezmenyVaros
 | 
						|
    ,dbo.fnGetDokumentumIntezmenyCime(@tanevId) AS IntezmenyCime
 | 
						|
    ,i.C_OMKOD AS IntezmenyOMKod
 | 
						|
    ,dbo.fnGetDokumentumDatumFormatum(o.C_OSZTALYNAPLOMEGNYITASA) AS NaploMegnyitasanakDatuma
 | 
						|
    ,dbo.fnGetDokumentumDatumFormatum(o.C_OSZTALYNAPLOZARASA) AS NaploZarasanakDatuma
 | 
						|
    ,o.C_OSZTALYNAPLOZARASA AS NaplozarasDateFormat
 | 
						|
    ,@TanulokSzama AS TanulokSzama
 | 
						|
    ,@TanitasiNapokSzama AS TanitasiNapokSzama
 | 
						|
    ,@MaxOraszam AS MaxOraszam
 | 
						|
    ,@MinOraszam AS MinOraszam
 | 
						|
    ,@tanevId AS TanevId
 | 
						|
    ,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
 | 
						|
    ,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
 | 
						|
    ,o.C_TANTERVID AS TantervId
 | 
						|
    ,o.C_KEPZESIFORMA AS KepzesiForma
 | 
						|
    ,o.C_AGAZAT AS Agazat
 | 
						|
    ,o.C_SZAKMACSOPORT AS SzakmaCsoport
 | 
						|
    ,o.C_SZAKKEPESITES AS Szakkepesites
 | 
						|
    ,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
 | 
						|
    ,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
 | 
						|
    ,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
 | 
						|
    ,o.C_TECHNIKAIOSZTALY AS OJTechnikaiOsztaly
 | 
						|
    ,o.C_NEMZETISEGI AS OJNemzetisegi
 | 
						|
    ,o.C_KETTANNYELVU AS OJKettannyelvu
 | 
						|
    ,o.C_NYELVIELOKESZITO AS OJNyelviElokeszito
 | 
						|
    ,o.C_LOGOPEDIAI AS OJLogopediai
 | 
						|
    ,o.C_SPORT AS OJSportOsztaly
 | 
						|
    ,o.C_AJPROGRAM AS OJAranyJanosProgram
 | 
						|
    ,o.C_GYOGYPEDAGOGIAI AS OJGyogypedagogiai
 | 
						|
  FROM T_OSZTALYCSOPORT_OSSZES ocs
 | 
						|
    INNER JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID
 | 
						|
      AND o.torolt = 'F'
 | 
						|
    LEFT JOIN T_FELHASZNALO_OSSZES ofo ON ofo.ID = o.C_OSZTALYFONOKID
 | 
						|
    INNER JOIN T_INTEZMENYADATOK_OSSZES i ON i.C_INTEZMENYID = ocs.C_INTEZMENYID
 | 
						|
      AND i.C_TANEVID = ocs.C_TANEVID
 | 
						|
      AND i.Torolt = 'F'
 | 
						|
  WHERE ocs.ID = @osztalyId
 | 
						|
 | 
						|
  -- Tanarok
 | 
						|
  IF @isEllenorzo = 0
 | 
						|
 | 
						|
    SELECT DISTINCT
 | 
						|
       targy.C_NEV AS TargyNev
 | 
						|
      ,IIF(munkaugyiAdat.C_BETOLTETLENALLASHELY = 'T', '', tanar.C_NYOMTATASINEV) AS TanarNev
 | 
						|
      ,targykategoria.C_ORDER
 | 
						|
      ,tanar.ID AS TanarId
 | 
						|
      ,tanar.C_OKTATASIAZONOSITO AS TanarOktAzon
 | 
						|
    FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevID, @osztalyId, 'T') AS tanulok
 | 
						|
      INNER JOIN T_TANULOCSOPORT_OSSZES AS tcs ON tcs.C_TANULOID = tanulok.TanuloId
 | 
						|
        AND tcs.C_BELEPESDATUM >= tanulok.BelepesDatum
 | 
						|
        AND (tanulok.KilepesDatum IS NULL OR tcs.C_BELEPESDATUM < tanulok.KilepesDatum)
 | 
						|
        AND tcs.TOROLT = 'F'
 | 
						|
      INNER JOIN T_OSZTALYCSOPORT_OSSZES AS ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID
 | 
						|
      INNER JOIN T_FOGLALKOZAS_OSSZES AS fogl ON fogl.C_OSZTALYCSOPORTID = tcs.C_OSZTALYCSOPORTID
 | 
						|
        AND fogl.TOROLT = 'F'
 | 
						|
      INNER JOIN T_FELHASZNALO_OSSZES AS tanar ON fogl.C_TANARID = tanar.ID
 | 
						|
        AND tanar.TOROLT = 'F'
 | 
						|
      INNER JOIN T_MUNKAUGYIADATOK_OSSZES AS munkaugyiAdat ON munkaugyiAdat.C_ALKALMAZOTTID = tanar.ID
 | 
						|
        AND munkaugyiAdat.TOROLT = 'F'
 | 
						|
      INNER JOIN T_TANTARGY_OSSZES AS targy ON targy.ID = fogl.C_TANTARGYID
 | 
						|
        AND targy.TOROLT = 'F'
 | 
						|
      INNER JOIN T_TARGYKATEGORIATIPUS_OSSZES ON T_TARGYKATEGORIATIPUS_OSSZES.ID = targy.C_TARGYKATEGORIA
 | 
						|
      INNER JOIN T_DICTIONARYITEMBASE_OSSZES AS targykategoria ON targykategoria.ID = T_TARGYKATEGORIATIPUS_OSSZES.ID
 | 
						|
        AND targykategoria.TOROLT = 'F'
 | 
						|
        AND targykategoria.C_TANEVID = @tanevID
 | 
						|
    WHERE fogl.C_OSZTALYCSOPORTID IN (SELECT Id FROM fnGetDokumentumOsztalyVagyTanoraiCsoport(@tanevId))
 | 
						|
    ORDER BY
 | 
						|
       targykategoria.C_ORDER
 | 
						|
      ,targy.C_NEV
 | 
						|
      ,IIF(munkaugyiAdat.C_BETOLTETLENALLASHELY = 'T','',tanar.C_NYOMTATASINEV)
 | 
						|
 | 
						|
  ELSE
 | 
						|
 | 
						|
    SELECT DISTINCT
 | 
						|
       Tanulok.Id AS TanuloId
 | 
						|
      ,Tantargy.C_NEV AS TargyNev
 | 
						|
      ,Tanar.C_NYOMTATASINEV AS TanarNev
 | 
						|
      ,C_ORDER
 | 
						|
    FROM #students AS Tanulok
 | 
						|
      INNER JOIN T_TANULOCSOPORT_OSSZES AS TanuloCsoport ON TanuloCsoport.C_TANULOID = Tanulok.Id
 | 
						|
        AND TanuloCsoport.TOROLT = 'F'
 | 
						|
        AND @VizsgaltNap BETWEEN C_BELEPESDATUM AND ISNULL(C_KILEPESDATUM,@UtolsoNap)
 | 
						|
      INNER JOIN T_FOGLALKOZAS_OSSZES AS Foglalkozas ON Foglalkozas.C_OSZTALYCSOPORTID = TanuloCsoport.C_OSZTALYCSOPORTID
 | 
						|
        AND Foglalkozas.TOROLT = 'F'
 | 
						|
      INNER JOIN T_FELHASZNALO_OSSZES AS Tanar ON Tanar.Id = Foglalkozas.C_TANARID
 | 
						|
      INNER JOIN T_TANTARGY_OSSZES AS Tantargy ON Tantargy.Id = Foglalkozas.C_TANTARGYID
 | 
						|
      INNER JOIN T_TARGYKATEGORIATIPUS_OSSZES AS TargyKategoria ON TargyKategoria.ID = Tantargy.C_TARGYKATEGORIA
 | 
						|
      INNER JOIN T_DICTIONARYITEMBASE_OSSZES AS TargyKategoria_order ON TargyKategoria.ID = TargyKategoria_order.ID
 | 
						|
        AND TargyKategoria_order.TOROLT = 'F'
 | 
						|
        AND TargyKategoria_order.C_TANEVID = @tanevId
 | 
						|
    ORDER BY
 | 
						|
      C_ORDER
 | 
						|
 | 
						|
  -- Orarend
 | 
						|
  EXEC sp_GetOrarendOsztalyonkent
 | 
						|
     @intezmenyId
 | 
						|
    ,@tanevID
 | 
						|
    ,@osztalyid
 | 
						|
    ,@aktivTanevId
 | 
						|
    ,@isEgyebFoglalkozasok
 | 
						|
    ,@orarendErvenyessegiDatum
 | 
						|
 | 
						|
  -- Oralatogatasok
 | 
						|
  SELECT
 | 
						|
     dbo.fnGetDokumentumDatumFormatum(T_ORALATOGATAS_OSSZES.C_DATUM) AS DATUM
 | 
						|
    ,TANITASIORA.C_ORASZAM AS ORASZAM
 | 
						|
    ,TARGY.C_NEV AS TARGYNEV
 | 
						|
    ,T_FELHASZNALO_OSSZES.C_NYOMTATASINEV AS LATOGATO
 | 
						|
    ,T_ORALATOGATAS_OSSZES.C_ORALATOGATOBEOSZTASA AS LATOGATOBEOSZTAS
 | 
						|
    ,T_ORALATOGATAS_OSSZES.C_MEGJEGYZES AS ESZREVETEL
 | 
						|
  INTO #Oralatogatas
 | 
						|
  FROM T_ORALATOGATAS_OSSZES
 | 
						|
    INNER JOIN T_FELHASZNALO_OSSZES ON T_FELHASZNALO_OSSZES.ID = T_ORALATOGATAS_OSSZES.C_ERTEKELOID
 | 
						|
    INNER JOIN (
 | 
						|
      SELECT
 | 
						|
         ID
 | 
						|
        ,C_TANTARGYID
 | 
						|
        ,C_ORASZAM
 | 
						|
        ,C_OSZTALYCSOPORTID
 | 
						|
      FROM T_TANITASIORA_OSSZES
 | 
						|
    ) AS TANITASIORA ON TANITASIORA.ID = T_ORALATOGATAS_OSSZES.C_MEGTARTOTTORAID
 | 
						|
    INNER JOIN T_TANTARGY_OSSZES AS TARGY ON TARGY.ID = TANITASIORA.C_TANTARGYID
 | 
						|
    INNER JOIN #osztalycsoportok AS ocs ON ocs.OsztalyCsoportId = C_OSZTALYCSOPORTID
 | 
						|
  WHERE T_ORALATOGATAS_OSSZES.TOROLT = 'F'
 | 
						|
    AND T_ORALATOGATAS_OSSZES.c_tanevId = @tanevId
 | 
						|
    AND T_ORALATOGATAS_OSSZES.C_INTEZMENYID = @intezmenyId
 | 
						|
   ORDER BY
 | 
						|
      T_ORALATOGATAS_OSSZES.C_DATUM
 | 
						|
     ,TANITASIORA.C_ORASZAM
 | 
						|
 | 
						|
  IF (SELECT COUNT(1) FROM #Oralatogatas) = 0
 | 
						|
 | 
						|
    SELECT
 | 
						|
       NULL AS DATUM
 | 
						|
      ,NULL AS ORASZAM
 | 
						|
      ,NULL AS TARGYNEV
 | 
						|
      ,NULL AS LATOGATO
 | 
						|
      ,NULL AS LATOGATOBEOSZTAS
 | 
						|
      ,'' AS ESZREVETEL
 | 
						|
 | 
						|
  ELSE
 | 
						|
 | 
						|
    SELECT
 | 
						|
       DATUM
 | 
						|
      ,ORASZAM
 | 
						|
      ,TARGYNEV
 | 
						|
      ,LATOGATO
 | 
						|
      ,LATOGATOBEOSZTAS
 | 
						|
      ,ESZREVETEL
 | 
						|
    FROM #Oralatogatas
 | 
						|
    ORDER BY
 | 
						|
      DATUM
 | 
						|
 | 
						|
  -- Naploellenorzesek
 | 
						|
  SELECT DISTINCT
 | 
						|
     dbo.fnGetDokumentumDatumFormatum(C_ELLENORZESDATUMA) AS ELLENORZESDATUMA
 | 
						|
    ,ELLENORZO.C_NYOMTATASINEV AS ELLENORZOSZEMELY
 | 
						|
    ,T_NAPLOELLENORZES_OSSZES.C_ESZREVETEL AS ESZREVETEL
 | 
						|
  INTO #NaploEllenorzes
 | 
						|
  FROM T_NAPLOELLENORZES_OSSZES
 | 
						|
    INNER JOIN T_FELHASZNALO_OSSZES AS ELLENORZO ON ELLENORZO.ID = T_NAPLOELLENORZES_OSSZES.C_ELLENORZOSZEMELYID
 | 
						|
  WHERE C_OSZTALYID = @osztalyId
 | 
						|
    AND T_NAPLOELLENORZES_OSSZES.TOROLT = 'F'
 | 
						|
    AND T_NAPLOELLENORZES_OSSZES.c_tanevId = @tanevId
 | 
						|
 | 
						|
  IF (SELECT COUNT(1) FROM #NaploEllenorzes) = 0
 | 
						|
 | 
						|
    SELECT
 | 
						|
       NULL AS ELLENORZESDATUMA
 | 
						|
      ,NULL AS ELLENORZOSZEMELY
 | 
						|
      ,NULL AS ESZREVETEL
 | 
						|
 | 
						|
  ELSE
 | 
						|
 | 
						|
    SELECT
 | 
						|
       ELLENORZESDATUMA
 | 
						|
      ,ELLENORZOSZEMELY
 | 
						|
      ,ESZREVETEL
 | 
						|
    FROM #NaploEllenorzes
 | 
						|
 | 
						|
  SELECT
 | 
						|
    @HetUtolsoNapjaMegtartottOra = IIF(MAX(HetNapja) IS NULL OR MAX(HetNapja) <= 1412, 1412, MAX(HetNapja))
 | 
						|
  FROM #megtartottOrak
 | 
						|
 | 
						|
  SELECT
 | 
						|
    @HetUtolsoNapjaTanevendje = ISNULL(MAX(C_HETNAPJA), 1412)
 | 
						|
  FROM #NapSorszam AS NapSorszam
 | 
						|
    INNER JOIN T_NAPTARINAP_OSSZES AS NaptariNap ON NaptariNap.C_NAPDATUMA = NapSorszam.Datum
 | 
						|
      AND NaptariNap.C_TANEVID = @tanevId
 | 
						|
 | 
						|
  SET @HetUtolsoNapja = IIF(@HetUtolsoNapjaMegtartottOra >= @HetUtolsoNapjaTanevendje, @HetUtolsoNapjaMegtartottOra, @HetUtolsoNapjaTanevendje)
 | 
						|
 | 
						|
  INSERT INTO #HetAdatok (
 | 
						|
     C_HETSORSZAMA
 | 
						|
    ,KezdoDatum
 | 
						|
    ,VegeDatum
 | 
						|
  )
 | 
						|
  SELECT
 | 
						|
     nh.C_HETSORSZAMA
 | 
						|
    ,MIN(nn.C_NAPDATUMA) AS HetKezdete
 | 
						|
    ,IIF(ISNULL(MAX(tr.C_DATUM), MAX(nn.C_NAPDATUMA)) > MAX(nn.C_NAPDATUMA), MAX(tr.C_DATUM), MAX(nn.C_NAPDATUMA)) AS HetVege
 | 
						|
  FROM T_NAPTARIHET_OSSZES AS nh
 | 
						|
    INNER JOIN T_NAPTARINAP_OSSZES AS nn ON nn.C_NAPDATUMA BETWEEN nh.C_HETKEZDONAPJA AND nh.C_HETUTOLSONAPJA
 | 
						|
      AND nn.C_INTEZMENYID = @intezmenyId
 | 
						|
      AND nn.C_TANEVID = @tanevId
 | 
						|
      AND nn.C_ALAPHETNAPJA <= 1412
 | 
						|
      AND nn.C_HETSORSZAMA = nh.C_HETSORSZAMA
 | 
						|
      AND nn.C_NAPDATUMA BETWEEN @ElsoNap AND @UtolsoNap
 | 
						|
      AND nn.TOROLT = 'F'
 | 
						|
    LEFT JOIN T_TANEVRENDJE_OSSZES AS tr ON tr.C_INTEZMENYID = @intezmenyId
 | 
						|
      AND tr.C_TANEVID = @tanevId
 | 
						|
      AND tr.TOROLT = 'F'
 | 
						|
      AND tr.C_DATUM BETWEEN nh.C_HETKEZDONAPJA AND nh.C_HETUTOLSONAPJA
 | 
						|
  WHERE nh.TOROLT = 'F'
 | 
						|
    AND nh.C_TANEVID = @tanevId
 | 
						|
    AND nh.C_INTEZMENYID = @intezmenyId
 | 
						|
  GROUP BY
 | 
						|
    nh.C_HETSORSZAMA
 | 
						|
  ORDER BY
 | 
						|
    nh.C_HETSORSZAMA
 | 
						|
 | 
						|
  SELECT
 | 
						|
     ha.C_HETSORSZAMA
 | 
						|
    ,dbo.fnGetDokumentumDatumFormatum(ha.KezdoDatum)
 | 
						|
    ,dbo.fnGetDokumentumDatumFormatum(ha.VegeDatum)
 | 
						|
  FROM #HetAdatok AS ha
 | 
						|
 | 
						|
  INSERT INTO #OsszesOra (
 | 
						|
     Datum
 | 
						|
    ,FormatDate
 | 
						|
    ,Oraszam
 | 
						|
    ,HetSorszama
 | 
						|
    ,HetNapja
 | 
						|
    ,Megjegyzes
 | 
						|
    ,Sorszam
 | 
						|
  )
 | 
						|
  SELECT
 | 
						|
     Datum
 | 
						|
    ,FormatDate
 | 
						|
    ,Oraszam
 | 
						|
    ,HetSorszama
 | 
						|
    ,HetNapja
 | 
						|
    ,IIF(RIGHT(Megjegyzes, 1) = ',', LEFT(Megjegyzes, LEN(Megjegyzes) - 1), Megjegyzes) AS Megjegyzes
 | 
						|
    ,Sorszam
 | 
						|
  FROM (
 | 
						|
    SELECT
 | 
						|
       C_NAPDATUMA AS Datum
 | 
						|
      ,dbo.fnGetDokumentumDatumFormatum(C_NAPDATUMA) AS FormatDate
 | 
						|
      ,oraszam AS Oraszam
 | 
						|
      ,ha.C_HETSORSZAMA AS HetSorszama
 | 
						|
      ,AlapHetnapja.C_NAME AS HetNapja
 | 
						|
      ,ISNULL(trNaptipus.C_NAME + ',', '') + IIF(LEN(ISNULL(tr.C_MEGJEGYZES, '')) = 0, '', ' ' + tr.C_MEGJEGYZES + ',')
 | 
						|
        + IIF(LEN(ISNULL(osztalyCsoportTanevRendje.Megjegyzes, '')) = 0, '', ' ' + osztalyCsoportTanevRendje.Megjegyzes + ',')
 | 
						|
        + IIF(tr.C_HETNAPJA <> nn.C_ALAPHETNAPJA, ' (' + Hetnapja.C_NAME + ')', '') AS Megjegyzes
 | 
						|
      ,ISNULL(Sorszam, '-') AS Sorszam
 | 
						|
    FROM T_NAPTARINAP_OSSZES AS nn
 | 
						|
      INNER JOIN #HetAdatok AS ha ON nn.C_NAPDATUMA BETWEEN ha.KezdoDatum AND ha.VegeDatum
 | 
						|
      LEFT JOIN #NapSorszam AS sorszam ON sorszam.Datum = nn.C_NAPDATUMA
 | 
						|
      LEFT JOIN T_TANEVRENDJE_OSSZES AS tr ON tr.C_DATUM = nn.C_NAPDATUMA
 | 
						|
        AND tr.C_TANEVID = nn.C_TANEVID
 | 
						|
        AND tr.TOROLT = 'F'
 | 
						|
        AND tr.C_OSSZESCSOPORTRAVONATKOZIK = 'T'
 | 
						|
      LEFT JOIN (
 | 
						|
        SELECT
 | 
						|
           C_DATUM
 | 
						|
          ,ISNULL(trNaptipus.C_NAME + ', ', '') + ISNULL('(' + HetNapja.C_NAME + ')', '') + ISNULL(C_MEGJEGYZES, '') AS Megjegyzes
 | 
						|
        FROM T_OSZTALYCSOPORT_TANEVRENDJE AS ocstr
 | 
						|
          INNER JOIN T_TANEVRENDJE_OSSZES AS tr ON tr.Id = ocstr.C_TANEVRENDJEID
 | 
						|
          LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS HetNapja ON HetNapja.ID = tr.C_HETNAPJA
 | 
						|
            AND HetNapja.C_TANEVID = @tanevId
 | 
						|
          LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS trNaptipus ON trNaptipus.ID = tr.C_NAPTIPUSA
 | 
						|
            AND trNaptipus.C_TANEVID = @tanevId
 | 
						|
            AND tr.C_NAPTIPUSA <> 1385
 | 
						|
        WHERE C_OSZTALYCSOPORTID = @osztalyId
 | 
						|
          AND tr.TOROLT = 'F'
 | 
						|
          AND tr.C_OSSZESCSOPORTRAVONATKOZIK = 'F'
 | 
						|
      ) AS osztalyCsoportTanevRendje ON osztalyCsoportTanevRendje.C_DATUM = nn.C_NAPDATUMA
 | 
						|
      LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS trNaptipus ON trNaptipus.ID = tr.C_NAPTIPUSA
 | 
						|
        AND trNaptipus.C_TANEVID = @tanevId
 | 
						|
        AND tr.C_NAPTIPUSA <> 1385
 | 
						|
      LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS AlapHetnapja ON AlapHetnapja.Id = nn.C_ALAPHETNAPJA
 | 
						|
        AND AlapHetnapja.C_TANEVID = @tanevId
 | 
						|
      LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS Hetnapja ON Hetnapja.Id = nn.C_HETNAPJA
 | 
						|
        AND Hetnapja.C_TANEVID = @tanevId
 | 
						|
      CROSS JOIN(VALUES
 | 
						|
        (0),
 | 
						|
        (1),
 | 
						|
        (2),
 | 
						|
        (3),
 | 
						|
        (4),
 | 
						|
        (5),
 | 
						|
        (6),
 | 
						|
        (7),
 | 
						|
        (8),
 | 
						|
        (9),
 | 
						|
        (10),
 | 
						|
        (11),
 | 
						|
        (12),
 | 
						|
        (13),
 | 
						|
        (14),
 | 
						|
        (15),
 | 
						|
        (16),
 | 
						|
        (17),
 | 
						|
        (18),
 | 
						|
        (19),
 | 
						|
        (20),
 | 
						|
        (21),
 | 
						|
        (22),
 | 
						|
        (23),
 | 
						|
        (24),
 | 
						|
        (25)) AS oraszam(oraszam)
 | 
						|
    WHERE nn.C_TANEVID = @tanevId
 | 
						|
      AND nn.TOROLT = 'F'
 | 
						|
      AND nn.C_NAPDATUMA <= @UtolsoNap
 | 
						|
      AND oraszam <= @MaxOraszam
 | 
						|
      AND nn.C_HETNAPJA BETWEEN 1407 AND @HetUtolsoNapja
 | 
						|
  ) AS NapAdatok
 | 
						|
 | 
						|
  IF @MinOraszam > 0
 | 
						|
 | 
						|
    DELETE
 | 
						|
    FROM #OsszesOra
 | 
						|
    WHERE
 | 
						|
      Oraszam = 0
 | 
						|
 | 
						|
  IF @isSzovegesNaplo = 0
 | 
						|
  BEGIN   /* NORMÁL OSZTÁLYNAPLÓ */
 | 
						|
    SELECT
 | 
						|
       MulasztasokKulso.Datum AS Datum
 | 
						|
      ,Felhasznalo.C_NYOMTATASINEV + ' [' + STUFF(
 | 
						|
        (
 | 
						|
          SELECT
 | 
						|
            ', ' + CAST(MulasztasokBelso.Oraszam AS varchar(3)) + IIF(MulasztasokBelso.Tipus = 1499, '(k)', '')
 | 
						|
          FROM #mulasztasTmp AS MulasztasokBelso
 | 
						|
          WHERE MulasztasokBelso.Datum = MulasztasokKulso.Datum
 | 
						|
            AND MulasztasokBelso.TanuloId = MulasztasokKulso.TanuloId
 | 
						|
            AND MulasztasokBelso.TanuloCsoportId = MulasztasokKulso.TanuloCsoportId
 | 
						|
          ORDER BY
 | 
						|
             Datum
 | 
						|
            ,Oraszam
 | 
						|
          FOR XML PATH(''), TYPE
 | 
						|
        ) .value
 | 
						|
        ('.', 'NVARCHAR(MAX)'), 1, 2, ''
 | 
						|
      ) + '] ' + CAST(SUM(IIF(MulasztasokKulso.IgazoltE = 'T', 1, 0)) AS varchar(5)) + '/' + CAST(SUM(IIF(MulasztasokKulso.IgazoltE = 'F', 1, 0)) AS varchar(5)) AS Hianyzas
 | 
						|
    INTO #hianyzasokTMP
 | 
						|
    FROM #mulasztasTmp AS MulasztasokKulso
 | 
						|
      INNER JOIN T_FELHASZNALO_OSSZES AS Felhasznalo ON Felhasznalo.Id = MulasztasokKulso.TanuloId
 | 
						|
    GROUP BY
 | 
						|
       MulasztasokKulso.Datum
 | 
						|
      ,MulasztasokKulso.TanuloId
 | 
						|
      ,TanuloCsoportId
 | 
						|
      ,Felhasznalo.C_NYOMTATASINEV
 | 
						|
 | 
						|
    CREATE CLUSTERED INDEX ci2 ON #hianyzasokTMP (datum)
 | 
						|
 | 
						|
    SELECT
 | 
						|
       Datum
 | 
						|
      ,STUFF(
 | 
						|
        (
 | 
						|
          SELECT
 | 
						|
            CHAR(13) + CHAR(10) + Hianyzas
 | 
						|
          FROM #hianyzasokTMP AS bHianyzasok
 | 
						|
          WHERE Hianyzasok.Datum = bHianyzasok.Datum
 | 
						|
          FOR XML PATH(''), TYPE
 | 
						|
        ) .value
 | 
						|
        ('.', 'NVARCHAR(MAX)'), 1, 2, ''
 | 
						|
      ) AS Hianyzas
 | 
						|
    INTO #hianyzasok
 | 
						|
    FROM #hianyzasokTMP AS Hianyzasok
 | 
						|
 | 
						|
    SELECT DISTINCT
 | 
						|
       Datum
 | 
						|
      ,HetSorszama
 | 
						|
      ,HetNapja
 | 
						|
      ,Oraszam
 | 
						|
      ,STUFF(
 | 
						|
        (
 | 
						|
          SELECT
 | 
						|
            CAST(bmto.TantargyNev AS nvarchar(max)) + CHAR(13) + CHAR(10)
 | 
						|
          FROM #megtartottOrak AS bmto
 | 
						|
          WHERE bmto.Datum = mto.Datum
 | 
						|
            AND bmto.Oraszam = mto.Oraszam
 | 
						|
          FOR XML PATH(''), TYPE
 | 
						|
        ) .value
 | 
						|
        ('.', 'NVARCHAR(MAX)'), 1, 0, ''
 | 
						|
      ) AS Tantargy
 | 
						|
    INTO #Orarend
 | 
						|
    FROM #megtartottOrak AS mto
 | 
						|
 | 
						|
    SELECT DISTINCT
 | 
						|
       Datum
 | 
						|
      ,@MinOraszam AS Oraszam
 | 
						|
      ,TantargyPedagogussal
 | 
						|
      ,STUFF(
 | 
						|
        (
 | 
						|
          SELECT DISTINCT
 | 
						|
            CAST(bmto.TemaOraSzammal AS nvarchar(max)) + CHAR(13) + CHAR(10)
 | 
						|
          FROM #megtartottOrak AS bmto
 | 
						|
          WHERE bmto.Datum = mto.Datum
 | 
						|
            AND bmto.TantargyPedagogussal = mto.TantargyPedagogussal
 | 
						|
          FOR XML PATH(''), TYPE
 | 
						|
        ) .value
 | 
						|
        ('.', 'NVARCHAR(MAX)'), 1, 0, ''
 | 
						|
      ) AS Tema
 | 
						|
    INTO #1nap1TantargyTobbOra
 | 
						|
    FROM #megtartottOrak AS mto
 | 
						|
 | 
						|
    SELECT
 | 
						|
      @tantargyakNevvel = ISNULL(@tantargyakNevvel + ', ', '') + '[' + IIF(LEN(TantargyPedagogussal) > 128, SUBSTRING(TantargyPedagogussal, 1, 120) + '...', TantargyPedagogussal) + ']'
 | 
						|
    FROM (
 | 
						|
      SELECT DISTINCT
 | 
						|
         TantargyPedagogussal
 | 
						|
        ,C_TARGYKATEGORIA
 | 
						|
      FROM #megtartottOrak AS m
 | 
						|
        INNER JOIN T_TANTARGY_OSSZES AS t ON t.Id = m.TantargyId
 | 
						|
    ) AS t
 | 
						|
    ORDER BY
 | 
						|
      C_TARGYKATEGORIA
 | 
						|
 | 
						|
    SET @sql = '
 | 
						|
      SELECT
 | 
						|
         Datum
 | 
						|
        ,Oraszam
 | 
						|
        , ' + @tantargyakNevvel + '
 | 
						|
      INTO #naplo
 | 
						|
      FROM #1nap1TantargyTobbOra
 | 
						|
      PIVOT (MAX(Tema) FOR TantargyPedagogussal IN (' + @tantargyakNevvel + ')) piv
 | 
						|
 | 
						|
      SELECT DISTINCT
 | 
						|
         OsszesOra.FormatDate	AS C_NAPDATUMA
 | 
						|
        ,Hianyzas	AS Mulasztas
 | 
						|
        ,OsszesOra.Oraszam	AS ORASZAM
 | 
						|
        ,NULL	AS T1ID
 | 
						|
        ,NULL	AS T2ID
 | 
						|
        ,NULL	AS T3ID
 | 
						|
        ,Orarend.Tantargy	AS TANTARGY
 | 
						|
        ,OsszesOra.HetSorszama AS C_HETSORSZAMA
 | 
						|
        ,OsszesOra.HetNapja	AS C_HETNAPJA_DNAME
 | 
						|
        ,OsszesOra.Sorszam AS NapSorszama
 | 
						|
        ,OsszesOra.Megjegyzes AS Megjegyzés
 | 
						|
        ,' + @tantargyakNevvel + '
 | 
						|
      FROM #OsszesOra OsszesOra
 | 
						|
        LEFT JOIN #Orarend Orarend ON Orarend.Datum = OsszesOra.Datum AND Orarend.Oraszam = OsszesOra.Oraszam
 | 
						|
        LEFT JOIN #naplo Naplo ON Naplo.Datum = OsszesOra.Datum AND OsszesOra.Oraszam = @MinOraszam
 | 
						|
        LEFT JOIN #hianyzasok Hianyzasok ON Hianyzasok.Datum = OsszesOra.Datum
 | 
						|
      ORDER BY
 | 
						|
         OsszesOra.FormatDate
 | 
						|
        ,Oraszam
 | 
						|
    ';
 | 
						|
 | 
						|
    IF @sql IS NULL
 | 
						|
 | 
						|
      SELECT
 | 
						|
         NULL AS C_NAPDATUMA
 | 
						|
        ,NULL AS Mulasztas
 | 
						|
        ,NULL AS Megjegyzés
 | 
						|
        ,NULL AS ORASZAM
 | 
						|
        ,NULL AS T1ID
 | 
						|
        ,NULL AS T2ID
 | 
						|
        ,NULL AS T3ID
 | 
						|
        ,NULL AS TANTARGY
 | 
						|
        ,NULL AS C_HETSORSZAMA
 | 
						|
        ,NULL AS C_HETNAPJA_DNAME
 | 
						|
        ,NULL AS NapSorszama
 | 
						|
 | 
						|
    ELSE
 | 
						|
 | 
						|
        EXEC sp_executesql
 | 
						|
           @sql
 | 
						|
          ,N'@MinOraszam int'
 | 
						|
          ,@MinOraszam
 | 
						|
 | 
						|
    DROP TABLE #1nap1TantargyTobbOra;
 | 
						|
    DROP TABLE #OsszesOra;
 | 
						|
    DROP TABLE #hianyzasokTMP;
 | 
						|
    DROP TABLE #hianyzasok;
 | 
						|
    DROP TABLE #Orarend;
 | 
						|
 | 
						|
  END -- NORMÁL OSZTÁLYNAPLÓ
 | 
						|
  ELSE
 | 
						|
  BEGIN -- SZÖVEGES OSZTÁLYNAPLÓ
 | 
						|
    SELECT
 | 
						|
       OsszesOra.Datum AS C_NAPDATUMA
 | 
						|
      ,OsszesOra.HetNapja AS Napneve
 | 
						|
      ,OsszesOra.Megjegyzes AS C_MEGJEGYZES
 | 
						|
      ,nh.C_HETKEZDONAPJA AS C_HETKEZDONAPJA
 | 
						|
      ,nh.C_HETUTOLSONAPJA AS C_HETUTOLSONAPJA
 | 
						|
      ,OsszesOra.HetSorszama AS C_HETSORSZAMA
 | 
						|
      ,OsszesOra.Oraszam AS OraSorszam
 | 
						|
      ,OsszesOra.Sorszam AS Napszam
 | 
						|
      ,Tantargynev AS Tantargy
 | 
						|
      ,PedagogusNev AS Tanar
 | 
						|
      ,Tema AS Oraanyaga
 | 
						|
      ,OraSorszam AS C_ORAEVESSORSZAM
 | 
						|
    INTO #szoveges
 | 
						|
    FROM #OsszesOra AS OsszesOra
 | 
						|
      LEFT JOIN #megtartottOrak AS mto ON mto.Datum = OsszesOra.Datum
 | 
						|
        AND OsszesOra.Oraszam = mto.Oraszam
 | 
						|
      INNER JOIN T_NAPTARIHET_OSSZES AS nh ON OsszesOra.Datum BETWEEN nh.C_HETKEZDONAPJA AND nh.C_HETUTOLSONAPJA
 | 
						|
        AND nh.C_TANEVID = @tanevId
 | 
						|
        AND nh.torolt = 'F'
 | 
						|
 | 
						|
    CREATE CLUSTERED INDEX ci4 ON #szoveges (C_NAPDATUMA)
 | 
						|
 | 
						|
    SELECT DISTINCT
 | 
						|
       dbo.fnGetDokumentumDatumFormatum(C_NAPDATUMA) AS C_NAPDATUMA
 | 
						|
      ,Napneve
 | 
						|
      ,C_MEGJEGYZES
 | 
						|
      ,C_HETKEZDONAPJA
 | 
						|
      ,C_HETUTOLSONAPJA
 | 
						|
      ,C_HETSORSZAMA
 | 
						|
      ,OraSorszam
 | 
						|
      ,Napszam
 | 
						|
      ,(
 | 
						|
        SELECT
 | 
						|
          CAST(bszov.TANTARGY AS nvarchar (max)) + NCHAR(10)
 | 
						|
        FROM #szoveges AS bszov
 | 
						|
        WHERE bszov.C_NAPDATUMA = szov.C_NAPDATUMA
 | 
						|
          AND bszov.ORASORSZAM = szov.ORASORSZAM
 | 
						|
          AND bszov.napszam = szov.napszam
 | 
						|
        FOR XML PATH('')
 | 
						|
      ) AS TANTARGY
 | 
						|
      ,(
 | 
						|
        SELECT
 | 
						|
          CAST(bszov.TANAR AS nvarchar (max)) + NCHAR(10)
 | 
						|
        FROM #szoveges AS bszov
 | 
						|
        WHERE bszov.C_NAPDATUMA = szov.C_NAPDATUMA
 | 
						|
          AND bszov.ORASORSZAM = szov.ORASORSZAM
 | 
						|
          AND bszov.napszam = szov.napszam
 | 
						|
        FOR XML PATH('')
 | 
						|
      ) AS TANAR
 | 
						|
      ,(
 | 
						|
        SELECT
 | 
						|
          CAST(bszov.ORAANYAGA AS nvarchar (max)) + NCHAR(10)
 | 
						|
        FROM #szoveges AS bszov
 | 
						|
        WHERE bszov.C_NAPDATUMA = szov.C_NAPDATUMA
 | 
						|
          AND bszov.ORASORSZAM = szov.ORASORSZAM
 | 
						|
          AND bszov.napszam = szov.napszam
 | 
						|
        FOR XML PATH('')
 | 
						|
      ) AS ORAANYAGA
 | 
						|
      ,(
 | 
						|
        SELECT
 | 
						|
          CAST(bszov.C_ORAEVESSORSZAM AS nvarchar (max)) + NCHAR(10)
 | 
						|
        FROM #szoveges AS bszov
 | 
						|
        WHERE bszov.C_NAPDATUMA = szov.C_NAPDATUMA
 | 
						|
          AND bszov.ORASORSZAM = szov.ORASORSZAM
 | 
						|
          AND bszov.napszam = szov.napszam
 | 
						|
        FOR XML PATH('')
 | 
						|
      ) AS OraEvesSorszama
 | 
						|
    FROM #szoveges AS szov
 | 
						|
    ORDER BY
 | 
						|
       dbo.fnGetDokumentumDatumFormatum(C_NAPDATUMA)
 | 
						|
      ,orasorszam
 | 
						|
 | 
						|
    /*Hiányzások*/
 | 
						|
    SELECT
 | 
						|
       NapiMulasztas.HetSorszama
 | 
						|
      ,TanuloNeve
 | 
						|
      ,NapiMulasztas.TanuloId
 | 
						|
      ,MAX(Hetfo) AS Hetfo
 | 
						|
      ,MAX(Kedd) AS Kedd
 | 
						|
      ,MAX(Szerda) AS Szerda
 | 
						|
      ,MAX(Csutortok) AS Csutortok
 | 
						|
      ,MAX(Pentek) AS Pentek
 | 
						|
      ,MAX(Szombat) AS Szombat
 | 
						|
      ,HetiMulasztas
 | 
						|
    FROM (
 | 
						|
      SELECT
 | 
						|
         HetSorszama
 | 
						|
        ,TanuloNeve
 | 
						|
        ,TanuloId
 | 
						|
        ,TanuloCsoportId
 | 
						|
        ,[1408] AS Hetfo
 | 
						|
        ,[1409] AS Kedd
 | 
						|
        ,[1410] AS Szerda
 | 
						|
        ,[1411] AS Csutortok
 | 
						|
        ,[1412] AS Pentek
 | 
						|
        ,[1413] AS Szombat
 | 
						|
      FROM (
 | 
						|
        SELECT DISTINCT
 | 
						|
           HetSorszama
 | 
						|
          ,C_NYOMTATASINEV AS TanuloNeve
 | 
						|
          ,TanuloId
 | 
						|
          ,TanuloCsoportId
 | 
						|
          ,Datum
 | 
						|
          ,C_ALAPHETNAPJA AS Hetnapja
 | 
						|
          ,'[' + STUFF(
 | 
						|
            (
 | 
						|
              SELECT
 | 
						|
                ', ' + CAST(MulasztasokBelso.Oraszam AS varchar(3)) + IIF(MulasztasokBelso.Tipus = 1499, '(k)', '')
 | 
						|
              FROM #mulasztasTmp AS MulasztasokBelso
 | 
						|
              WHERE MulasztasokBelso.Datum = MulasztasokKulso.Datum
 | 
						|
                AND MulasztasokBelso.TanuloId = MulasztasokKulso.TanuloId
 | 
						|
                AND MulasztasokBelso.TanuloCsoportId = MulasztasokKulso.TanuloCsoportId
 | 
						|
              ORDER BY
 | 
						|
                 Datum
 | 
						|
                ,Oraszam
 | 
						|
              FOR XML PATH(''), TYPE
 | 
						|
            ) .value
 | 
						|
            ('.', 'VARCHAR(MAX)'), 1, 2, ''
 | 
						|
          ) + '] ' + CAST(SUM(IIF(MulasztasokKulso.IgazoltE = 'T', 1, 0)) AS varchar(5)) + '/' + CAST(SUM(IIF(MulasztasokKulso.IgazoltE = 'F', 1, 0)) AS varchar(5)) AS Hianyzas
 | 
						|
        FROM #mulasztasTmp AS MulasztasokKulso
 | 
						|
          INNER JOIN T_FELHASZNALO_OSSZES AS Felhasznalo ON Felhasznalo.Id = MulasztasokKulso.TanuloId
 | 
						|
          INNER JOIN T_NAPTARINAP_OSSZES AS NaptariNap ON NaptariNap.C_NAPDATUMA = MulasztasokKulso.Datum
 | 
						|
            AND NaptariNap.C_TANEVID = @tanevId
 | 
						|
        GROUP BY
 | 
						|
           Hetsorszama
 | 
						|
          ,C_NYOMTATASINEV
 | 
						|
          ,TanuloId
 | 
						|
          ,TanuloCsoportId
 | 
						|
          ,Datum
 | 
						|
          ,C_ALAPHETNAPJA
 | 
						|
          ,TanuloId
 | 
						|
      ) AS OsszefuzottMulasztasok PIVOT(MAX(Hianyzas) FOR HetNapja IN(
 | 
						|
         [1408]
 | 
						|
        ,[1409]
 | 
						|
        ,[1410]
 | 
						|
        ,[1411]
 | 
						|
        ,[1412]
 | 
						|
        ,[1413])) piv
 | 
						|
    ) AS NapiMulasztas
 | 
						|
    INNER JOIN #HetiMulasztasok AS HetiMulasztasok ON HetiMulasztasok.HetSorszama = NapiMulasztas.HetSorszama
 | 
						|
      AND HetiMulasztasok.TanuloId = NapiMulasztas.TanuloId
 | 
						|
      AND HetiMulasztasok.TanuloCsoportId = NapiMulasztas.TanuloCsoportId
 | 
						|
    GROUP BY
 | 
						|
       NapiMulasztas.HetSorszama
 | 
						|
      ,TanuloNeve
 | 
						|
      ,NapiMulasztas.TanuloId
 | 
						|
      ,HetiMulasztas
 | 
						|
 | 
						|
  END
 | 
						|
 | 
						|
  /*TANULÓ adatai*/
 | 
						|
  SELECT
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,Sorszam
 | 
						|
    ,TorzslapSzam
 | 
						|
    ,OktAzon
 | 
						|
    ,TajSzam
 | 
						|
    ,AnyjaNeve
 | 
						|
    ,SzulHely
 | 
						|
    ,SzulIdo
 | 
						|
    ,SocAdat
 | 
						|
    ,Kepzes
 | 
						|
    ,TanuloNeve
 | 
						|
    ,Allampolgarsaga
 | 
						|
    ,DiakIgazolvanySzam
 | 
						|
    ,KilepesDatum
 | 
						|
    ,BeirasiNaploSorszam
 | 
						|
    ,AktualisOsztaly AS OsztalyNev
 | 
						|
  INTO #TanuloAlapAdatok
 | 
						|
  FROM fnGetDokumentumTanulokAdatai(@tanevId, @osztalyId)
 | 
						|
  WHERE @tanuloId IS NULL
 | 
						|
    OR TanuloId = @tanuloId
 | 
						|
 | 
						|
  SELECT
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,Sorszam
 | 
						|
    ,TorzslapSzam
 | 
						|
    ,OktAzon
 | 
						|
    ,TajSzam
 | 
						|
    ,AnyjaNeve
 | 
						|
    ,SzulHely
 | 
						|
    ,SzulIdo
 | 
						|
    ,SocAdat
 | 
						|
    ,Kepzes
 | 
						|
    ,TanuloNeve
 | 
						|
    ,Allampolgarsaga
 | 
						|
    ,DiakIgazolvanySzam
 | 
						|
    ,KilepesDatum
 | 
						|
    ,BeirasiNaploSorszam
 | 
						|
    ,OsztalyNev
 | 
						|
  FROM #TanuloAlapAdatok
 | 
						|
  ORDER BY
 | 
						|
    Sorszam
 | 
						|
 | 
						|
  INSERT INTO #Gondviselok (
 | 
						|
     TanuloId
 | 
						|
    ,GondviseloId
 | 
						|
  )
 | 
						|
  SELECT
 | 
						|
     TanuloId
 | 
						|
    ,GondviseloId
 | 
						|
  FROM fnGetDokumentumGondviselok(@osztalyId, @tanevId, 'F', 'T')
 | 
						|
  WHERE @tanuloId IS NULL
 | 
						|
    OR TanuloId = @tanuloId
 | 
						|
 | 
						|
 /*TANULÓ elérhetőségei */
 | 
						|
  INSERT INTO @TanuloCimTable (
 | 
						|
     FelhasznaloId
 | 
						|
    ,Cim
 | 
						|
    ,Cimtipusa
 | 
						|
  )
 | 
						|
  SELECT DISTINCT
 | 
						|
     TanuloId
 | 
						|
    ,STUFF(
 | 
						|
      (
 | 
						|
        SELECT DISTINCT
 | 
						|
          CAST(Btemp.Cim AS nvarchar (max))  + char(13) + char(10)
 | 
						|
        FROM fnGetDokumentumTanuloOrGondviseloCim (0, @tanevId, @osztalyId) btemp
 | 
						|
        WHERE temp.TanuloId = btemp.TanuloId
 | 
						|
          AND temp.CimTipusa = btemp.CimTipusa
 | 
						|
        FOR XML PATH(''), TYPE
 | 
						|
      ).value
 | 
						|
      ('.', 'NVARCHAR(MAX)'), 1, 0, ''
 | 
						|
    )
 | 
						|
    ,cimTipusa.C_NAME
 | 
						|
  FROM fnGetDokumentumTanuloOrGondviseloCim (0, @tanevId, @osztalyId) temp
 | 
						|
    INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipusa ON cimTipusa.Id = temp.CimTipusa
 | 
						|
      AND cimTipusa.C_TANEVID = @tanevId
 | 
						|
 | 
						|
  INSERT INTO @GondViseloCimTable (
 | 
						|
     GondviseloId
 | 
						|
    ,Cim
 | 
						|
    ,Cimtipusa
 | 
						|
  )
 | 
						|
  SELECT DISTINCT
 | 
						|
     GondviseloId
 | 
						|
    ,STUFF(
 | 
						|
      (
 | 
						|
        SELECT DISTINCT
 | 
						|
          CAST(Btemp.Cim AS nvarchar (max))  + char(13) + char(10)
 | 
						|
        FROM fnGetDokumentumTanuloOrGondviseloCim (1, @tanevId, @osztalyId) btemp
 | 
						|
        WHERE temp.GondviseloId = btemp.GondviseloId
 | 
						|
          AND temp.CimTipusa = btemp.CimTipusa
 | 
						|
        FOR XML PATH(''), TYPE
 | 
						|
      ).value
 | 
						|
      ('.', 'NVARCHAR(MAX)'), 1 ,0, ''
 | 
						|
    )
 | 
						|
    ,cimTipusa.C_NAME
 | 
						|
  FROM fnGetDokumentumTanuloOrGondviseloCim (1, @tanevId, @osztalyId) temp
 | 
						|
    INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipusa ON cimTipusa.Id = temp.CimTipusa
 | 
						|
       AND cimTipusa.C_TANEVID = @tanevId
 | 
						|
 | 
						|
  INSERT INTO @EmailCimTableTemp (
 | 
						|
     FelhasznaloId
 | 
						|
    ,EmailCim
 | 
						|
    ,GondviseloId
 | 
						|
  )
 | 
						|
  SELECT
 | 
						|
     TanuloId
 | 
						|
    ,C_EMAILCIM
 | 
						|
    ,C_GONDVISELOID
 | 
						|
  FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') tanulo
 | 
						|
    INNER JOIN T_EMAIL_OSSZES email ON email.C_FELHASZNALOID = TanuloId
 | 
						|
  WHERE email.TOROLT = 'F'
 | 
						|
    AND email.C_TANEVID = @tanevId
 | 
						|
    AND LEN(C_EMAILCIM) > 0
 | 
						|
 | 
						|
  INSERT INTO @EmailCimTanuloTable (
 | 
						|
     FelhasznaloId
 | 
						|
    ,EmailCim
 | 
						|
  )
 | 
						|
  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
 | 
						|
 | 
						|
  INSERT INTO @EmailCimGondviseloTable (
 | 
						|
     GondviseloId
 | 
						|
    ,EmailCim
 | 
						|
  )
 | 
						|
  SELECT DISTINCT
 | 
						|
    GondviseloId
 | 
						|
    ,STUFF(
 | 
						|
      (
 | 
						|
        SELECT DISTINCT
 | 
						|
          CAST(btemp.EmailCim AS nvarchar (max)) + char(13) + char(10)
 | 
						|
        FROM @EmailCimTableTemp btemp
 | 
						|
        WHERE temp.GondviseloId = btemp.GondviseloId
 | 
						|
          AND btemp.GondviseloId IS NOT NULL
 | 
						|
        FOR XML PATH(''), TYPE
 | 
						|
      ).value
 | 
						|
      ('.', 'NVARCHAR(MAX)'), 1 ,0, ''
 | 
						|
    ) Email
 | 
						|
  FROM @EmailCimTableTemp temp
 | 
						|
  WHERE GondviseloId IS NOT NULL
 | 
						|
 | 
						|
  INSERT INTO @TelefonTableTemp (
 | 
						|
     FelhasznaloId
 | 
						|
    ,Telefon
 | 
						|
    ,GondviseloId
 | 
						|
  )
 | 
						|
  SELECT
 | 
						|
    TanuloId
 | 
						|
    ,C_TELEFONSZAM
 | 
						|
    ,C_GONDVISELOID
 | 
						|
  FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') tanulo
 | 
						|
    INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_FELHASZNALOID = TanuloId
 | 
						|
  WHERE
 | 
						|
    telefon.TOROLT = 'F'
 | 
						|
    AND telefon.C_TANEVID = @tanevId
 | 
						|
    AND LEN(telefon.C_TELEFONSZAM) > 0
 | 
						|
 | 
						|
  INSERT INTO @TanuloTelefonTable (
 | 
						|
     FelhasznaloId
 | 
						|
    ,Telefon
 | 
						|
  )
 | 
						|
  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
 | 
						|
 | 
						|
  INSERT INTO @GondviseloTelefonTable (
 | 
						|
     GondviseloId
 | 
						|
    ,Telefon
 | 
						|
  )
 | 
						|
  SELECT DISTINCT
 | 
						|
     GondviseloId
 | 
						|
    ,STUFF(
 | 
						|
      (
 | 
						|
        SELECT DISTINCT
 | 
						|
          CAST(btemp.Telefon AS nvarchar (max)) + char(13) + char(10)
 | 
						|
        FROM @TelefonTableTemp btemp
 | 
						|
        WHERE temp.GondviseloId = btemp.GondviseloId
 | 
						|
          AND temp.FelhasznaloId = btemp.FelhasznaloId
 | 
						|
          AND GondviseloId IS NOT NULL
 | 
						|
        FOR XML PATH(''), TYPE
 | 
						|
      ).value
 | 
						|
      ('.', 'NVARCHAR(MAX)'), 1 ,0, ''
 | 
						|
    )
 | 
						|
  FROM @TelefonTableTemp temp
 | 
						|
  WHERE GondviseloId IS NOT NULL
 | 
						|
 | 
						|
  SELECT
 | 
						|
     s.Id AS tanuloid
 | 
						|
    ,cim.Cimtipusa AS cimtipus
 | 
						|
    ,cim.Cim
 | 
						|
    ,email.EmailCim AS email
 | 
						|
    ,telefon.Telefon AS telefonszam
 | 
						|
  FROM #students s
 | 
						|
    LEFT JOIN @TanuloCimTable cim ON cim.FelhasznaloId = s.Id
 | 
						|
    LEFT JOIN @EmailCimTanuloTable email ON email.FelhasznaloId = s.Id
 | 
						|
    LEFT JOIN @TanuloTelefonTable telefon ON telefon.FelhasznaloId = s.Id
 | 
						|
  ORDER BY Cimtipusa
 | 
						|
 | 
						|
  /* TANULÓ mentesség */
 | 
						|
  SELECT
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,ROW_NUMBER() OVER(PARTITION BY TanuloId, TanuloCsoportId ORDER BY TanuloId, TanuloCsoportId) AS Sorszam
 | 
						|
    ,TantargyNev
 | 
						|
    ,MentessegOka
 | 
						|
  FROM fnGetDokumentumTanuloMentessegei(@tanevId, @osztalyId, DEFAULT)
 | 
						|
  WHERE @tanuloId IS NULL
 | 
						|
    OR TanuloId = @tanuloId
 | 
						|
 | 
						|
  /* TANULÓ határozatok */
 | 
						|
  SELECT
 | 
						|
     s.ID AS tanuloID
 | 
						|
    ,s.TanuloCsoportId
 | 
						|
    ,ROW_NUMBER() OVER(PARTITION BY s.ID, s.TanuloCsoportId ORDER BY s.ID, s.TanuloCsoportId) AS sorszam
 | 
						|
    ,dbo.fnGetDokumentumDatumFormatum(Datum) AS datum
 | 
						|
    ,d.C_NAME AS tipus
 | 
						|
    ,Tartalom AS tartalom
 | 
						|
    ,FeljegyzoNeve AS tanar
 | 
						|
  FROM #studentsWithTanuloCsoport AS s
 | 
						|
    INNER JOIN fnGetDokumentumTanulokFeljegyzesei(@tanevId, @osztalyId) AS feljegyzes ON feljegyzes.TanuloId = s.ID
 | 
						|
    INNER JOIN T_DICTIONARYITEMBASE_OSSZES AS d ON d.ID = Tipusa
 | 
						|
      AND d.C_TANEVID = @tanevId
 | 
						|
  WHERE BelepesDatum <= feljegyzes.Datum
 | 
						|
    AND (KilepesDatum IS NULL OR KilepesDatum >= feljegyzes.Datum)
 | 
						|
    AND Tipusa IN (
 | 
						|
       1543
 | 
						|
      ,1544
 | 
						|
      ,1547
 | 
						|
      ,1548
 | 
						|
      ,1549
 | 
						|
      ,1550
 | 
						|
      ,1551
 | 
						|
      ,1552
 | 
						|
      ,1553
 | 
						|
    )
 | 
						|
 | 
						|
  /* TANULÓ feljegyzései */
 | 
						|
  SELECT
 | 
						|
     s.ID AS TanuloID
 | 
						|
    ,s.TanuloCsoportId AS TanuloCsoportId
 | 
						|
    ,ROW_NUMBER() OVER(PARTITION BY s.ID, s.TanuloCsoportId ORDER BY s.ID, s.TanuloCsoportId) AS Sorszam
 | 
						|
    ,dbo.fnGetDokumentumDatumFormatum(Datum) AS Datum
 | 
						|
    ,d.C_NAME AS Tipus
 | 
						|
    ,Tartalom AS Tartalom
 | 
						|
    ,FeljegyzoNeve AS Tanar
 | 
						|
  FROM #studentsWithTanuloCsoport s
 | 
						|
    INNER JOIN fnGetDokumentumTanulokFeljegyzesei(@tanevId, @osztalyId) feljegyzes ON feljegyzes.TanuloId = s.ID
 | 
						|
    INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.ID = Tipusa
 | 
						|
      AND d.C_TANEVID = @tanevId
 | 
						|
  WHERE BelepesDatum <= feljegyzes.Datum
 | 
						|
    AND (KilepesDatum IS NULL OR KilepesDatum >= feljegyzes.Datum)
 | 
						|
    AND (@isEllenorzo = 1
 | 
						|
      AND Tipusa NOT IN (
 | 
						|
         1543
 | 
						|
        ,1544
 | 
						|
        ,1547
 | 
						|
        ,1548
 | 
						|
        ,1549
 | 
						|
        ,1550
 | 
						|
        ,1551
 | 
						|
        ,1552
 | 
						|
        ,1553
 | 
						|
      )
 | 
						|
      OR Tipusa IN (
 | 
						|
         1535
 | 
						|
        ,1536
 | 
						|
        ,1540
 | 
						|
        ,1541
 | 
						|
        ,1542
 | 
						|
        ,6491
 | 
						|
        ,6906
 | 
						|
        ,6907
 | 
						|
        ,6950
 | 
						|
        ,6970
 | 
						|
      )
 | 
						|
      OR Tipusa BETWEEN 5450 AND 5481
 | 
						|
      OR Tipusa BETWEEN 6312 AND 6328
 | 
						|
      OR Tipusa BETWEEN 6870 AND 6875
 | 
						|
      OR Tipusa BETWEEN 6945 AND 6947
 | 
						|
    )
 | 
						|
  ORDER BY
 | 
						|
    dbo.fnGetDokumentumDatumFormatum(Datum)
 | 
						|
 | 
						|
  /* TANULO mulasztása */
 | 
						|
  EXEC sp_GetDokumentumMulasztasokIdoszakonkent
 | 
						|
     @tanevId = @tanevId
 | 
						|
    ,@osztalyCsoportId = @osztalyId
 | 
						|
    ,@iskolaErdekuSzamit = @iskolaErdekuSzamit
 | 
						|
    ,@isReszletesMulasztasok = @isReszletesMulasztasok
 | 
						|
 | 
						|
  /*gondviselő elérhetőségei */
 | 
						|
  SELECT DISTINCT
 | 
						|
     Gondviselok.TanuloId AS TanuloId
 | 
						|
    ,Gondviselok.GondviseloNev + ' (' + RokonsagiFok.C_NAME + ')' AS C_NEV
 | 
						|
    ,cim.Cimtipusa AS C_CIMTIPUSA
 | 
						|
    ,cim.cim AS C_OSSZETETTCIM
 | 
						|
    ,telefon.telefon AS C_TELEFONSZAM
 | 
						|
    ,email.emailcim AS C_EMAILCIM
 | 
						|
  FROM fnGetDokumentumGondviselok (@osztalyId, @tanevId, 'F', 'T') Gondviselok
 | 
						|
    INNER JOIN T_DICTIONARYITEMBASE_OSSZES RokonsagiFok ON RokonsagiFok.ID = Gondviselok.RokonsagifokId AND RokonsagiFok.C_TANEVID = @tanevId
 | 
						|
    LEFT JOIN @EmailCimGondviseloTable email ON email.GondviseloId = Gondviselok.GondviseloId
 | 
						|
    LEFT JOIN @GondviseloTelefonTable telefon ON telefon.GondviseloId = Gondviselok.GondviseloId
 | 
						|
    LEFT JOIN @GondViseloCimTable cim ON cim.GondviseloId = Gondviselok.GondviseloId
 | 
						|
  ORDER BY cim.Cimtipusa
 | 
						|
 | 
						|
  /*TANULÓ osztályzatai*/
 | 
						|
  --Osztályhoz tartozó értékelések
 | 
						|
  EXEC sp_GetDokumentumErtekelesekIdoszakonkent
 | 
						|
     @tanevId = @tanevId
 | 
						|
    ,@osztalyCsoportId = @osztalyId
 | 
						|
    ,@ertekelesTipusa = NULL
 | 
						|
    ,@csakTanorai = 1
 | 
						|
    ,@csakKivlasztottOsztalyCsoport = 0
 | 
						|
    ,@atsoroltTanuloErtekelesek = 0
 | 
						|
    ,@fuggolegesTantargyak = @fuggolegesTantargyak
 | 
						|
    ,@intezmenyId = @intezmenyId
 | 
						|
 | 
						|
  /* TANULÓ záradékai */
 | 
						|
  SELECT
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,Bejegyzes AS Zaradek
 | 
						|
  FROM fnGetDokumentumTanuloZaradekai(@tanevId, @osztalyId, @isEllenorzo)
 | 
						|
  WHERE @tanuloId IS NULL
 | 
						|
    OR TanuloId = @tanuloId
 | 
						|
 | 
						|
  /*Szöveges minosítések*/
 | 
						|
  SELECT
 | 
						|
     a.tanuloId
 | 
						|
    ,a.TanuloCsoportId
 | 
						|
    ,a.Honap
 | 
						|
    ,a.Tantargy
 | 
						|
    ,a.Ertekeles
 | 
						|
    ,a.Tipus
 | 
						|
  FROM (
 | 
						|
    SELECT
 | 
						|
       s.id AS tanuloId
 | 
						|
      ,s.TanuloCsoportId
 | 
						|
      ,szoveges.Honap
 | 
						|
      ,szoveges.Tantargy
 | 
						|
      ,szoveges.Ertekeles
 | 
						|
      ,szoveges.Tipus
 | 
						|
      ,szoveges.RendezHonap
 | 
						|
      FROM #studentsWithTanuloCsoport AS s
 | 
						|
        INNER JOIN (
 | 
						|
          SELECT
 | 
						|
             TanuloId AS tanuloId
 | 
						|
            ,TanuloCsoportId
 | 
						|
            ,'[' + CONVERT(nvarchar (max), DATEPART(MONTH, Datum)) + '. hónap]' AS Honap
 | 
						|
            ,IIF(TantargyNev <> TantargyNevNyomtatvanyban AND TantargyNevNyomtatvanyban IS NOT NULL, TantargyNevNyomtatvanyban + ' (' + TantargyNev + ')', TantargyNev) AS Tantargy
 | 
						|
            ,ErtekelesSzoveg + ISNULL(' *' + ErtekelesTema,'') AS Ertekeles
 | 
						|
            ,ErtekelesTipusDictionary.C_NAME AS Tipus
 | 
						|
            ,CASE WHEN DATEPART(MONTH, Datum) = 1 THEN 5
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 2 THEN 6
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 3 THEN 7
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 4 THEN 8
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 5 THEN 9
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 6 THEN 10
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 7 THEN 11
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 8 THEN 12
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 9 THEN 1
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 10 THEN 2
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 11 THEN 3
 | 
						|
              WHEN DATEPART(MONTH, Datum) = 12 THEN 4 END AS RendezHonap
 | 
						|
          FROM #ErtekelesekTemp ErtekelesTemp
 | 
						|
            INNER JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesTipusDictionary ON ErtekelesTipusDictionary.ID = ErtekelesTemp.TipusId
 | 
						|
              AND ErtekelesTipusDictionary.C_TANEVID = @tanevId
 | 
						|
          WHERE ErtekelesSzoveg IS NOT NULL
 | 
						|
        ) AS szoveges ON szoveges.TANULOID = s.Id
 | 
						|
          AND szoveges.TanuloCsoportId = s.TanuloCsoportId
 | 
						|
 | 
						|
    UNION
 | 
						|
 | 
						|
    SELECT
 | 
						|
       s.id AS tanuloId
 | 
						|
      ,s.TanuloCsoportId
 | 
						|
      ,szoveges.Honap
 | 
						|
      ,szoveges.Tantargy
 | 
						|
      ,szoveges.Ertekeles
 | 
						|
      ,szoveges.Tipus
 | 
						|
      ,szoveges.RendezHonap
 | 
						|
    FROM #studentsWithTanuloCsoport AS s
 | 
						|
      INNER JOIN (
 | 
						|
        SELECT
 | 
						|
           ErtekelesTemp.TanuloId AS tanuloId
 | 
						|
          ,ErtekelesTemp.TanuloCsoportId
 | 
						|
          ,'[' + CONVERT(nvarchar (max), DATEPART(MONTH, Datum)) + '. hónap]' AS Honap
 | 
						|
          ,'Magatartás' AS Tantargy
 | 
						|
          ,ErtekelesTemp.MagatartasSzoveg + ISNULL(' *' + ErtekelesTema, '') AS Ertekeles
 | 
						|
          ,ErtekelesTipusDictionary.C_NAME AS Tipus
 | 
						|
          ,CASE WHEN DATEPART(MONTH, Datum) = 1 THEN 5
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 2 THEN 6
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 3 THEN 7
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 4 THEN 8
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 5 THEN 9
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 6 THEN 10
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 7 THEN 11
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 8 THEN 12
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 9 THEN 1
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 10 THEN 2
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 11 THEN 3
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 12 THEN 4 END AS RendezHonap
 | 
						|
        FROM #ErtekelesekTemp ErtekelesTemp
 | 
						|
          INNER JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesTipusDictionary ON ErtekelesTipusDictionary.ID = ErtekelesTemp.TipusId
 | 
						|
            AND ErtekelesTipusDictionary.C_TANEVID = @tanevId
 | 
						|
        WHERE ErtekelesTemp.MagatartasSzoveg IS NOT NULL
 | 
						|
      ) AS szoveges ON szoveges.TANULOID = s.Id
 | 
						|
        AND szoveges.TanuloCsoportId = s.TanuloCsoportId
 | 
						|
 | 
						|
    UNION
 | 
						|
 | 
						|
    SELECT
 | 
						|
       s.id AS tanuloId
 | 
						|
      ,s.TanuloCsoportId
 | 
						|
      ,szoveges.Honap
 | 
						|
      ,szoveges.Tantargy
 | 
						|
      ,szoveges.Ertekeles
 | 
						|
      ,szoveges.Tipus
 | 
						|
      ,szoveges.RendezHonap
 | 
						|
    FROM #studentsWithTanuloCsoport AS s
 | 
						|
      INNER JOIN (
 | 
						|
        SELECT
 | 
						|
           ErtekelesTemp.TanuloId AS tanuloId
 | 
						|
          ,TanuloCsoportId
 | 
						|
          ,'[' + CONVERT(nvarchar (max), DATEPART(MONTH, Datum)) + '. hónap]' AS Honap
 | 
						|
          ,'Szorgalom' AS Tantargy
 | 
						|
          ,ErtekelesTemp.SzorgalomSzoveg + ISNULL(' *' + ErtekelesTema, '') AS Ertekeles
 | 
						|
          ,ErtekelesTipusDictionary.C_NAME AS Tipus
 | 
						|
          ,CASE WHEN DATEPART(MONTH, Datum) = 1 THEN 5
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 2 THEN 6
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 3 THEN 7
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 4 THEN 8
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 5 THEN 9
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 6 THEN 10
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 7 THEN 11
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 8 THEN 12
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 9 THEN 1
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 10 THEN 2
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 11 THEN 3
 | 
						|
            WHEN DATEPART(MONTH, Datum) = 12 THEN 4 END AS RendezHonap
 | 
						|
        FROM #ErtekelesekTemp ErtekelesTemp
 | 
						|
          INNER JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesTipusDictionary ON ErtekelesTipusDictionary.ID = ErtekelesTemp.TipusId
 | 
						|
            AND ErtekelesTipusDictionary.C_TANEVID = @tanevId
 | 
						|
        WHERE ErtekelesTemp.SzorgalomSzoveg IS NOT NULL
 | 
						|
      ) AS szoveges ON szoveges.TANULOID = s.Id
 | 
						|
        AND szoveges.TanuloCsoportId = s.TanuloCsoportId
 | 
						|
  ) AS a
 | 
						|
  ORDER BY
 | 
						|
     RendezHonap
 | 
						|
    ,Tantargy
 | 
						|
 | 
						|
  --Közösségi szolgálat
 | 
						|
  SELECT
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,Datum
 | 
						|
    ,ISNULL(' - ' + Megjegyzes, '') AS Megjegyzes
 | 
						|
    ,Oraszam
 | 
						|
    ,TeljesitesHelye
 | 
						|
    ,FeljegyzoNeve
 | 
						|
    ,Tipus
 | 
						|
  FROM fnGetDokumentumKozossegiSzolgalatOsztalyonkent(@tanevId, @osztalyId) AS KozossegiSzolgalat
 | 
						|
  WHERE @tanuloId IS NULL
 | 
						|
    OR TanuloId = @tanuloId
 | 
						|
  ORDER BY
 | 
						|
    IntervallumKezdete
 | 
						|
 | 
						|
  --Félévi, év végi mulasztások
 | 
						|
  INSERT INTO #FeleviMulasztasok (
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,Igazolt
 | 
						|
    ,Igazolatlan
 | 
						|
    ,ElmeletIgazolt
 | 
						|
    ,ElmeletIgazolatlan
 | 
						|
    ,GyakorlatIgazolt
 | 
						|
    ,GyakorlatIgazolatlan
 | 
						|
    ,ElmeletOsszes
 | 
						|
    ,GyakorlatOsszes
 | 
						|
    ,Osszes
 | 
						|
  )
 | 
						|
  EXEC sp_GetDokumentumMulasztasok
 | 
						|
     @osztalyId = @osztalyId
 | 
						|
    ,@tanevId = @tanevId
 | 
						|
    ,@elmeletiOraPercben = 45
 | 
						|
    ,@gyakorlatiOraPercben = 45
 | 
						|
    ,@ertekelesTipus = 1519
 | 
						|
    ,@iskolaErdekuSzamit = @iskolaErdekuSzamit
 | 
						|
 | 
						|
  INSERT INTO #EvVegiMulasztasok (
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,Igazolt
 | 
						|
    ,Igazolatlan
 | 
						|
    ,ElmeletIgazolt
 | 
						|
    ,ElmeletIgazolatlan
 | 
						|
    ,GyakorlatIgazolt
 | 
						|
    ,GyakorlatIgazolatlan
 | 
						|
    ,ElmeletOsszes
 | 
						|
    ,GyakorlatOsszes
 | 
						|
    ,Osszes
 | 
						|
  )
 | 
						|
  EXEC sp_GetDokumentumMulasztasok
 | 
						|
     @osztalyId = @osztalyId
 | 
						|
    ,@tanevId = @tanevId
 | 
						|
    ,@elmeletiOraPercben = 45
 | 
						|
    ,@gyakorlatiOraPercben = 45
 | 
						|
    ,@ertekelesTipus = 1520
 | 
						|
    ,@iskolaErdekuSzamit = @iskolaErdekuSzamit
 | 
						|
 | 
						|
  SELECT
 | 
						|
     TanuloAlapAdatok.tanuloId AS TanuloId
 | 
						|
    ,ISNULL(FeleviMulasztasok.ElmeletIgazolt, 0) AS FeleviElmeletIgazolt
 | 
						|
    ,ISNULL(FeleviMulasztasok.ElmeletIgazolatlan, 0) AS FeleviElmeletIgazolatlan
 | 
						|
    ,ISNULL(FeleviMulasztasok.GyakorlatIgazolT, 0) AS FeleviGyakorlatIgazolt
 | 
						|
    ,ISNULL(FeleviMulasztasok.GyakorlatIgazolatlan, 0) AS FeleviGyakorlatIgazolatlan
 | 
						|
    ,ISNULL(FeleviMulasztasok.ElmeletIgazolt + FeleviMulasztasok.ElmeletIgazolatlan, 0) AS FeleviElmelet
 | 
						|
    ,ISNULL(FeleviMulasztasok.GyakorlatIgazolt + FeleviMulasztasok.GyakorlatIgazolatlan, 0) AS FeleviGyakorlat
 | 
						|
    ,ISNULL(EvVegiMulasztasok.ElmeletIgazolt, 0) AS EvVegiElmeletIgazolt
 | 
						|
    ,ISNULL(EvVegiMulasztasok.ElmeletIgazolatlan, 0) AS EvVegiElmeletIgazolatlan
 | 
						|
    ,ISNULL(EvVegiMulasztasok.GyakorlatIgazolt, 0) AS EvVegiGyakorlatIgazolt
 | 
						|
    ,ISNULL(EvVegiMulasztasok.GyakorlatIgazolatlan, 0) AS EvVegiGyakorlatIgazolatlan
 | 
						|
    ,ISNULL(EvVegiMulasztasok.ElmeletIgazolt + EvVegiMulasztasok.ElmeletIgazolatlan, 0) AS EvVegiElmelet
 | 
						|
    ,ISNULL(EvVegiMulasztasok.GyakorlatIgazolt + EvVegiMulasztasok.GyakorlatIgazolatlan, 0) AS EvVegiGyakorlat
 | 
						|
    ,ISNULL(FeleviMulasztasok.Osszes, 0) AS FeleviOsszes
 | 
						|
    ,ISNULL(FeleviMulasztasok.Igazolt, 0) AS FeleviIgazolt
 | 
						|
    ,ISNULL(FeleviMulasztasok.Igazolatlan, 0) AS FeleviIgazolatlan
 | 
						|
    ,ISNULL(EvVegiMulasztasok.Osszes, 0) AS EvVegiOsszes
 | 
						|
    ,ISNULL(EvVegiMulasztasok.Igazolt, 0) AS EvVegiIgazolt
 | 
						|
    ,ISNULL(EvVegiMulasztasok.Igazolatlan, 0) AS EvVegiIgazolatlan
 | 
						|
    ,oktAzon AS oktAzon
 | 
						|
    ,tanuloNeve AS tanuloNeve
 | 
						|
  FROM #TanuloAlapAdatok TanuloAlapAdatok
 | 
						|
    LEFT JOIN #EvVegiMulasztasok EvVegiMulasztasok ON EvVegiMulasztasok.TanuloId = TanuloAlapAdatok.TanuloId
 | 
						|
      AND EvVegiMulasztasok.TanuloCsoportId = TanuloAlapAdatok.TanuloCsoportId
 | 
						|
    LEFT JOIN #FeleviMulasztasok FeleviMulasztasok ON FeleviMulasztasok.TanuloId = TanuloAlapAdatok.TanuloId
 | 
						|
      AND FeleviMulasztasok.TanuloCsoportId = TanuloAlapAdatok.TanuloCsoportId
 | 
						|
  ORDER BY
 | 
						|
    sorszam
 | 
						|
 | 
						|
  --értékelésekhez tartozó feljegyzések 1. félév
 | 
						|
  SELECT DISTINCT
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,STUFF(
 | 
						|
      (
 | 
						|
        SELECT DISTINCT
 | 
						|
          ', ' + JelolesAndErtekelesTema
 | 
						|
        FROM #ErtekelesekTemp AS ErtekelesTemavalOsszefuz
 | 
						|
        WHERE LEN(JelolesAndErtekelesTema) > 0
 | 
						|
          AND Datum <= @FelevVege
 | 
						|
          AND ErtekelesTemavalOsszefuz.TanuloId = ErtekelesTemaval.TanuloId
 | 
						|
          AND ErtekelesTemavalOsszefuz.TanuloCsoportId = ErtekelesTemaval.TanuloCsoportId
 | 
						|
          AND ErtekelesTemavalOsszefuz.ErtekelesSzoveg IS NULL
 | 
						|
          AND ErtekelesTemavalOsszefuz.MagatartasSzoveg IS NULL
 | 
						|
          AND ErtekelesTemavalOsszefuz.SzorgalomSzoveg IS NULL
 | 
						|
        FOR XML PATH(''), TYPE
 | 
						|
      ) .value
 | 
						|
      ('.', 'NVARCHAR(MAX)'), 1, 2, ''
 | 
						|
    ) AS JelolesTemaval
 | 
						|
  FROM #ErtekelesekTemp AS ErtekelesTemaval
 | 
						|
  WHERE LEN(JelolesAndErtekelesTema) > 0
 | 
						|
    AND Datum <= @FelevVege
 | 
						|
    AND ErtekelesTemaval.ErtekelesSzoveg IS NULL
 | 
						|
    AND ErtekelesTemaval.MagatartasSzoveg IS NULL
 | 
						|
    AND ErtekelesTemaval.SzorgalomSzoveg IS NULL
 | 
						|
 | 
						|
  --értékelésekhez tartozó feljegyzések 2. félév
 | 
						|
  SELECT DISTINCT
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,STUFF(
 | 
						|
      (
 | 
						|
        SELECT DISTINCT
 | 
						|
          ', ' + JelolesAndErtekelesTema
 | 
						|
        FROM #ErtekelesekTemp AS ErtekelesTemavalOsszefuz
 | 
						|
        WHERE LEN(JelolesAndErtekelesTema) > 0
 | 
						|
          AND Datum > @FelevVege
 | 
						|
          AND ErtekelesTemavalOsszefuz.TanuloId = ErtekelesTemaval.TanuloId
 | 
						|
          AND ErtekelesTemavalOsszefuz.TanuloCsoportId = ErtekelesTemaval.TanuloCsoportId
 | 
						|
          AND ErtekelesTemavalOsszefuz.ErtekelesSzoveg IS NULL
 | 
						|
          AND ErtekelesTemavalOsszefuz.MagatartasSzoveg IS NULL
 | 
						|
          AND ErtekelesTemavalOsszefuz.SzorgalomSzoveg IS NULL
 | 
						|
        FOR XML PATH(''), TYPE
 | 
						|
      ) .value
 | 
						|
      ('.', 'NVARCHAR(MAX)'), 1, 2, ''
 | 
						|
    ) AS JelolesTemaval
 | 
						|
  FROM #ErtekelesekTemp AS ErtekelesTemaval
 | 
						|
  WHERE LEN(JelolesAndErtekelesTema) > 0
 | 
						|
    AND Datum > @FelevVege
 | 
						|
    AND ErtekelesTemaval.ErtekelesSzoveg IS NULL
 | 
						|
    AND ErtekelesTemaval.MagatartasSzoveg IS NULL
 | 
						|
    AND ErtekelesTemaval.SzorgalomSzoveg IS NULL
 | 
						|
 | 
						|
    --értékelésekhez tartozó feljegyzések
 | 
						|
  SELECT DISTINCT
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,STUFF(
 | 
						|
      (
 | 
						|
        SELECT DISTINCT
 | 
						|
          ', ' + JelolesAndErtekelesTema
 | 
						|
        FROM #ErtekelesekTemp AS ErtekelesTemavalOsszefuz
 | 
						|
        WHERE LEN(JelolesAndErtekelesTema) > 0
 | 
						|
          AND ErtekelesTemavalOsszefuz.TanuloId = ErtekelesTemaval.TanuloId
 | 
						|
          AND ErtekelesTemavalOsszefuz.TanuloCsoportId = ErtekelesTemaval.TanuloCsoportId
 | 
						|
          AND ErtekelesTemavalOsszefuz.ErtekelesSzoveg IS NULL
 | 
						|
          AND ErtekelesTemavalOsszefuz.MagatartasSzoveg IS NULL
 | 
						|
          AND ErtekelesTemavalOsszefuz.SzorgalomSzoveg IS NULL
 | 
						|
        FOR XML PATH(''), TYPE
 | 
						|
      ) .value
 | 
						|
      ('.', 'NVARCHAR(MAX)'), 1, 2, ''
 | 
						|
    ) AS JelolesTemaval
 | 
						|
  FROM #ErtekelesekTemp AS ErtekelesTemaval
 | 
						|
  WHERE LEN(JelolesAndErtekelesTema) > 0
 | 
						|
    AND ErtekelesTemaval.ErtekelesSzoveg IS NULL
 | 
						|
    AND ErtekelesTemaval.MagatartasSzoveg IS NULL
 | 
						|
    AND ErtekelesTemaval.SzorgalomSzoveg IS NULL
 | 
						|
 | 
						|
  --összefüggő szakmai gyakorlat
 | 
						|
  SELECT
 | 
						|
     TanuloId
 | 
						|
    ,TanuloCsoportId
 | 
						|
    ,isTeljesitett
 | 
						|
    ,Ertekeles
 | 
						|
    ,Megjegyzes
 | 
						|
    ,Datum
 | 
						|
  FROM fnGetDokumentumOsszefuggoSzakmaiGyakorlat(@tanevId, @osztalyId)
 | 
						|
  WHERE @tanuloId IS NULL
 | 
						|
    OR TanuloId = @tanuloId
 | 
						|
 | 
						|
  --Tanuló tanult tantárgyai
 | 
						|
  SELECT DISTINCT
 | 
						|
     TANULO.ID AS TanuloId
 | 
						|
    ,TANULO.TanuloCsoportId AS TanuloCsoportId
 | 
						|
    ,STUFF(
 | 
						|
      (
 | 
						|
        SELECT
 | 
						|
          ', ' + IIF(LEN(TANTARGYAK.C_NEV) > 128, SUBSTRING(TANTARGYAK.C_NEV, 1, 120) + '...', TANTARGYAK.C_NEV) AS TantargyNev
 | 
						|
        FROM #Tantargyak AS TANTARGYAK
 | 
						|
          LEFT JOIN T_TANULOCSOPORT_OSSZES AS tcs ON tcs.C_TANULOID = TANTARGYAK.c_tanuloid
 | 
						|
            AND tcs.C_OSZTALYCSOPORTID = @osztalyId
 | 
						|
        WHERE TANTARGYAK.c_tanuloid = TANULO.Id
 | 
						|
          AND tcs.ID = TANULO.TanuloCsoportId
 | 
						|
          AND TANTARGYAK.C_NEV NOT IN ('Magatartás', 'Szorgalom')
 | 
						|
        ORDER BY
 | 
						|
          TANTARGYAK.C_NEV
 | 
						|
        FOR XML PATH(''), TYPE
 | 
						|
      ).value
 | 
						|
      ('.', 'NVARCHAR(MAX)'), 1, 2, ''
 | 
						|
    ) AS TantargyNev
 | 
						|
  FROM #studentsWithTanuloCsoport AS TANULO
 | 
						|
 | 
						|
  -- Osztály és csoportok a naplóban, az iktatáskor szükséges többszörös Csoport név kulcsszóhoz
 | 
						|
  SELECT
 | 
						|
    *
 | 
						|
  FROM #osztalycsoportok
 | 
						|
  WHERE OsztalyCsoportId != @osztalyId
 | 
						|
 | 
						|
  -- gyors feljegyzés statisztikák
 | 
						|
  -- Házifeladat hiány
 | 
						|
  SELECT
 | 
						|
     s.ID AS TanuloId
 | 
						|
    ,s.TanuloCsoportId
 | 
						|
    ,feljegyzes.Tantargy
 | 
						|
    ,feljegyzes.Szeptember
 | 
						|
    ,feljegyzes.Oktober
 | 
						|
    ,feljegyzes.November
 | 
						|
    ,feljegyzes.December
 | 
						|
    ,feljegyzes.Januar
 | 
						|
    ,feljegyzes.Februar
 | 
						|
    ,feljegyzes.Marcius
 | 
						|
    ,feljegyzes.Aprilis
 | 
						|
    ,feljegyzes.Majus
 | 
						|
    ,feljegyzes.Junius
 | 
						|
    ,feljegyzes.Felev
 | 
						|
    ,feljegyzes.Ossz
 | 
						|
  FROM #studentsWithTanuloCsoport AS s
 | 
						|
    CROSS APPLY fnGetDokumentumTanulokGyorsFeljegyzeseiHavibontasban(@tanevId, @osztalyId, 6325, 0, @FelevVege, s.BelepesDatum, s.KilepesDatum) AS feljegyzes
 | 
						|
  WHERE feljegyzes.TanuloId = s.ID
 | 
						|
 | 
						|
  -- Felszerelés hiány
 | 
						|
  SELECT
 | 
						|
     s.ID AS TanuloId
 | 
						|
    ,s.TanuloCsoportId
 | 
						|
    ,feljegyzes.Tantargy
 | 
						|
    ,feljegyzes.Szeptember
 | 
						|
    ,feljegyzes.Oktober
 | 
						|
    ,feljegyzes.November
 | 
						|
    ,feljegyzes.December
 | 
						|
    ,feljegyzes.Januar
 | 
						|
    ,feljegyzes.Februar
 | 
						|
    ,feljegyzes.Marcius
 | 
						|
    ,feljegyzes.Aprilis
 | 
						|
    ,feljegyzes.Majus
 | 
						|
    ,feljegyzes.Junius
 | 
						|
    ,feljegyzes.Felev
 | 
						|
    ,feljegyzes.Ossz
 | 
						|
  FROM #studentsWithTanuloCsoport AS s
 | 
						|
    CROSS APPLY fnGetDokumentumTanulokGyorsFeljegyzeseiHavibontasban(@tanevId, @osztalyId, 6324, 0, @FelevVege, s.BelepesDatum, s.KilepesDatum) AS feljegyzes
 | 
						|
  WHERE feljegyzes.TanuloId = s.ID
 | 
						|
 | 
						|
  -- Felmentés
 | 
						|
  SELECT
 | 
						|
     s.ID AS TanuloId
 | 
						|
    ,s.TanuloCsoportId
 | 
						|
    ,feljegyzes.Tantargy
 | 
						|
    ,feljegyzes.Szeptember
 | 
						|
    ,feljegyzes.Oktober
 | 
						|
    ,feljegyzes.November
 | 
						|
    ,feljegyzes.December
 | 
						|
    ,feljegyzes.Januar
 | 
						|
    ,feljegyzes.Februar
 | 
						|
    ,feljegyzes.Marcius
 | 
						|
    ,feljegyzes.Aprilis
 | 
						|
    ,feljegyzes.Majus
 | 
						|
    ,feljegyzes.Junius
 | 
						|
    ,feljegyzes.Felev
 | 
						|
    ,feljegyzes.Ossz
 | 
						|
  FROM #studentsWithTanuloCsoport AS s
 | 
						|
    CROSS APPLY fnGetDokumentumTanulokGyorsFeljegyzeseiHavibontasban(@tanevId, @osztalyId, 1542, 0, @FelevVege, s.BelepesDatum, s.KilepesDatum) AS feljegyzes
 | 
						|
  WHERE feljegyzes.TanuloId = s.ID
 | 
						|
 | 
						|
  --Dicséret
 | 
						|
  SELECT
 | 
						|
     s.ID AS TanuloId
 | 
						|
    ,s.TanuloCsoportId
 | 
						|
    ,feljegyzes.Tantargy
 | 
						|
    ,feljegyzes.Szeptember
 | 
						|
    ,feljegyzes.Oktober
 | 
						|
    ,feljegyzes.November
 | 
						|
    ,feljegyzes.December
 | 
						|
    ,feljegyzes.Januar
 | 
						|
    ,feljegyzes.Februar
 | 
						|
    ,feljegyzes.Marcius
 | 
						|
    ,feljegyzes.Aprilis
 | 
						|
    ,feljegyzes.Majus
 | 
						|
    ,feljegyzes.Junius
 | 
						|
    ,feljegyzes.Felev
 | 
						|
    ,feljegyzes.Ossz
 | 
						|
  FROM #studentsWithTanuloCsoport AS s
 | 
						|
    CROSS APPLY fnGetDokumentumTanulokGyorsFeljegyzeseiHavibontasban(@tanevId, @osztalyId, 1536, 1, @FelevVege, s.BelepesDatum, s.KilepesDatum) AS feljegyzes
 | 
						|
  WHERE feljegyzes.TanuloId = s.ID
 | 
						|
 | 
						|
END
 | 
						|
GO
 |