kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20171018145459_KRETA_3821/sp_GetNapkozisNaplo.sql
2024-03-13 00:33:46 +01:00

339 lines
18 KiB
Transact-SQL

IF OBJECT_ID('[DBO].[sp_GetNapkozisNaplo]') IS NOT NULL BEGIN
DROP PROCEDURE [DBO].[sp_GetNapkozisNaplo]
END
GO
CREATE PROCEDURE [DBO].[sp_GetNapkozisNaplo]
@tanevId INT
,@intezmenyId INT
,@csoportId INT
,@iskolaErdekuSzamit BIT
AS
BEGIN
SET NOCOUNT ON;
--Tanulók adatai, elérhetőségei
DECLARE @tanulok table (
Id int, Nev nvarchar(max), Osztaly nvarchar(max), Sorszam nvarchar(max), Torzslapszam nvarchar(max), Allampolgarsaga nvarchar(max), DiakIg nvarchar(max),
SzulHely nvarchar(max), SzulIdo nvarchar(max), Anyja nvarchar(max), Taj nvarchar(max), OktAzon nvarchar(max), Kilepes nvarchar(max), Kepzes nvarchar(max),
TanuloCimTipus nvarchar(max), TanuloCim nvarchar(max), TanuloEmail nvarchar(max), szoc nvarchar(max)
)
INSERT INTO @tanulok
SELECT DISTINCT
t.id Id
,iif(tcs.c_kilepesdatum is not null,f.c_nyomtatasinev+' (kilépett)', f.c_nyomtatasinev) as Nev
,dbo.fnGetDokumentumTanuloAktualisOsztaly(t.Id) as Osztaly
,t.c_naplosorszam as Sorszam
,t.c_beirasinaplosorszam as Torzslapszam
,Allampolgarsaga.Allampolgarsaga as Allampolgarsag
,t.c_diakigazolvanyszam as DiakIg
,f.c_szuletesihely as SzulHely
,FORMAT(f.c_szuletesidatum, 'yyyy.MM.dd.') as SzulIdo
,f.c_anyjaneve as Anyja
,f.c_tajszam as Taj
,f.c_oktatasiazonosito as OktAzon
,FORMAT(tcs.c_kilepesdatum, 'yyyy.MM.dd.') as Kilepes
,tt.c_nev as Kepzes
,cim.Tipus
,cim.cim
,email.c_emailcim as TanuloEmail
,IIF(t.C_MAGANTANULO = 'T', 'Magántanuló (eü. ok), ', '') +
IIF(t.C_JOGVISZONYATSZUNETELTETO = 'T', 'Jogviszony szüneteltetve, ', '') +
IIF(t.C_SZAKMAIGYAKORLATON = 'T', 'Szakmai gyakorlat, ', '') +
IIF(t.C_SZOCIALISTAMOGATAS = 'T', 'Szociális támogatás, ', '') AS szoc
FROM T_TANULOCSOPORT_OSSZES tcs
INNER JOIN T_FELHASZNALO_OSSZES f ON f.id=tcs.c_tanuloid AND f.torolt='F'
INNER JOIN T_TANULO_OSSZES t ON t.ID = f.ID
INNER JOIN T_TANTERV_OSSZES tt ON tt.ID = t.C_TANTERVID AND tt.TOROLT = 'F' AND tt.C_TANEVID = @tanevId
INNER JOIN (SELECT distinct d.id Id, d.c_name Allampolgarsaga FROM T_DICTIONARYITEMBASE_OSSZES d) Allampolgarsaga ON Allampolgarsaga.Id=f.c_allampolgarsaga
INNER JOIN (
SELECT f.id Tanulo, dt.c_name Tipus, c.c_iranyitoszam+', '+c.c_varos+' '+c.c_kozterulet+' '+dj.c_name+' '+c.c_hazszam as Cim
FROM t_cim c
INNER JOIN (SELECT distinct d.id, d.c_name FROM t_dictionaryitembase_osszes d )dt ON dt.id=c.c_cimtipusa
INNER JOIN t_felhasznalo_osszes f ON f.id=c.c_felhasznaloid
INNER JOIN (SELECT distinct d.id, d.c_name FROM t_dictionaryitembase_osszes d)dj ON dj.id=c.c_kozteruletjellege
WHERE c.c_cimtipusa=907 AND c.c_gondviseloid is null AND c.torolt='F' AND c.c_intezmenyid=@intezmenyid)cim ON cim.Tanulo=tcs.c_tanuloid
LEFT JOIN T_TELEFON_OSSZES tel ON tel.c_felhasznaloid=f.id AND tel.c_gondviseloid is null AND tel.torolt='F' AND tel.c_alapertelmezett='T'
LEFT JOIN T_EMAIL_OSSZES email ON email.c_felhasznaloid=tcs.c_tanuloid AND email.c_gondviseloid is null AND email.torolt='F' AND email.c_alapertelmezett='T'
WHERE tcs.c_osztalycsoportid=@csoportId AND tcs.c_tanevid=@tanevid AND tcs.torolt='F'
--Kezdőoldal
SELECT ia.c_nev as IntezmenyNev, dbo.fnGetDokumentumIntezmenyCime(@tanevId) as IntezmenyCim, ia.c_omkod as OMKOD, ia.c_igazgatoneve as IntezmenyVezeto, ocs.c_nev NapkozisCsoport, iif(len(ocs.c_nev)>17, SUBSTRING (ocs.c_nev, 1 , 17)+'...', ocs.c_nev) RovidNev,
isnull(f.c_nyomtatasinev,'-') as CsoportVezeto, isnull(cs.c_csoportnaploleiras,'-') as CsoportNaploLeiras, FORMAT(cs.c_csoportnaplomegnyitasa, 'yyyy.MM.dd.') as Megnyitas,
isnull(FORMAT(cs.c_csoportnaplozarasa, 'yyyy.MM.dd.'),'-') as Lezaras
FROM T_INTEZMENY_OSSZES i
INNER JOIN T_INTEZMENYADATOK_OSSZES ia ON ia.c_intezmenyid = i.id
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.c_intezmenyid=i.id AND ocs.c_tanevid = @tanevid AND ocs.id = @csoportId
INNER JOIN T_CSOPORT_OSSZES cs ON cs.id = ocs.id
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.id = cs.c_csoportvezetoid
WHERE i.id = @intezmenyid
AND ia.c_tanevid = @tanevid
--Csoportot vezette
SELECT isnull(f.c_nyomtatasinev,'-') as CsoportVezeto FROM T_CSOPORT_OSSZES cs
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.id=cs.c_csoportvezetoid
WHERE cs.id=@csoportId AND cs.c_altanevid=@tanevid AND cs.c_alintezmenyid=@intezmenyid
--Tanulók
SELECT DISTINCT Nev, Osztaly, OktAzon
FROM @tanulok
ORDER BY Nev
--Naplóhetek
DECLARE @elsonap as date
DECLARE @utolsonap as date
IF (
SELECT c_osztalycsoportid FROM T_OSZTALYCSOPORT_TANEVRENDJE otr
INNER JOIN t_tanevrendje_osszes tr ON tr.id=otr.c_tanevrendjeid AND tr.c_naptipusa=1394
WHERE c_osztalycsoportid=@csoportid
) IS NULL begin
SET @elsonap= (SELECT top 1 c_datum FROM t_tanevrendje_osszes tr WHERE c_naptipusa=1394 AND c_tanevid=@tanevId AND c_intezmenyid=@intezmenyId AND torolt='F' AND c_osszescsoportravonatkozik='T')
END
ELSE BEGIN
SET @elsonap = (
SELECT top 1 tr.C_DATUM
FROM T_OSZTALYCSOPORT_TANEVRENDJE otr
INNER JOIN t_tanevrendje_osszes tr ON tr.id=otr.c_tanevrendjeid AND tr.c_naptipusa=1394
WHERE c_osztalycsoportid=@csoportid)
END
IF (
SELECT c_osztalycsoportid
FROM T_OSZTALYCSOPORT_TANEVRENDJE otr
INNER JOIN t_tanevrendje_osszes tr ON tr.id=otr.c_tanevrendjeid AND tr.c_naptipusa=1395
WHERE c_osztalycsoportid=@csoportId
) IS NULL
BEGIN
SET @utolsonap = (SELECT top 1 c_datum FROM t_tanevrendje_osszes tr WHERE c_naptipusa=1395 AND c_tanevid=@tanevId AND c_intezmenyid=@intezmenyId AND torolt='F' AND c_osszescsoportravonatkozik='T')
END
ELSE BEGIN
SET @utolsonap = (
SELECT top 1 tr.C_DATUM
FROM T_OSZTALYCSOPORT_TANEVRENDJE otr
INNER JOIN t_tanevrendje_osszes tr ON tr.id=otr.c_tanevrendjeid AND tr.c_naptipusa=1395
WHERE c_osztalycsoportid=@csoportId)
END
SELECT
nn.C_HETSORSZAMA Het
,FORMAT(MIN(nn.C_NAPDATUMA), 'yyyy.MM.dd.') HetEleje
,FORMAT(MAX(nn.C_NAPDATUMA), 'yyyy.MM.dd.') HetVege
FROM T_NAPTARINAP_OSSZES nn
WHERE
nn.C_NAPDATUMA BETWEEN @ElsoNap AND @UtolsoNap
AND nn.C_HETNAPJA BETWEEN 1407 AND 1413
AND nn.TOROLT='F'
AND nn.c_tanevId = @tanevId
GROUP BY nn.C_HETSORSZAMA
ORDER BY MIN(nn.C_NAPDATUMA)
--Tanuló adatok
SELECT * FROM @tanulok ORDER BY Nev
--Mulasztások
DECLARE @Mulasztasok TABLE ( IgazoltE nvarchar(1), Tanulo int, Tipus int)
DECLARE @FelevVege DATE = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES tr WHERE C_NAPTIPUSA = 1400 AND C_TANEVID=@tanevId AND TOROLT = 'F')
SELECT
DATEPART(MONTH,tao.C_DATUM) Honap
,tm.ID Id
,C_IGAZOLT IgazoltE
,tm.C_ORATANULOIID TanuloId
,C_IGAZOLASTIPUSA IgazolasTipus
,C_DATUM Datum
,C_TIPUS Tipus
,C_KESESPERCBEN KesesPercben
INTO #mulasztasTmp
FROM T_TANULOMULASZTAS_OSSZES tm
INNER JOIN T_TANITASIORA_OSSZES tao ON tao.ID = tm.C_TANITASIORAKID
INNER JOIN @tanulok tanulok ON tanulok.ID = tm.C_ORATANULOIID
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = tao.C_OSZTALYCSOPORTID and tanulok.ID = tcs.C_TANULOID
WHERE
tm.TOROLT = 'F'
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA <> 1533 OR C_IGAZOLASTIPUSA IS NULL))
AND tcs.C_BELEPESDATUM <= tao.C_DATUM
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= tao.C_DATUM)
INSERT INTO @Mulasztasok
SELECT 'T', ID, Tipus FROM @tanulok
CROSS JOIN (SELECT DISTINCT Id FROM T_DICTIONARYITEMBASE_OSSZES WHERE C_TANEVID = @tanevId AND C_TYPE LIKE 'igazolastipus' AND (@iskolaErdekuSzamit = 1 OR Id <> 1533) ) Tipus (Tipus)
--hiányzás
--Összes
SELECT s.id tanuloId, cast('mulasztás' as nvarchar(100)) tipus,
isnull(ni.[9],0) '09.', isnull(ni.[10],0) '10.', isnull(ni.[11],0) '11.', isnull(ni.[12],0) '12.',
isnull(ni.[1],0) '01.', isnull(ni.[2],0) '02.', isnull(ni.[3],0) '03.', isnull(ni.[4],0) '04.', isnull(ni.[5],0) '05.', isnull(ni.[6],0) '06.',
isnull(Felev,0) 'felev', [9]+[10]+[11]+[12]+[1]+[2]+[3]+[4]+[5]+[6] 'osszesen', 1 Rendez
INTO #MulasztasVegleges
FROM @tanulok s
LEFT JOIN (SELECT * FROM (SELECT Id, TanuloId, Honap FROM #mulasztasTmp WHERE Tipus = 1500) a PIVOT (COUNT(ID) FOR Honap IN ([9], [10], [11], [12], [1], [2], [3], [4], [5], [6]))piv )ni on ni.TanuloId=s.Id
LEFT JOIN (SELECT COUNT(Id) Felev, TanuloId FROM #mulasztasTmp WHERE Tipus = 1500 AND Datum <= @FelevVege GROUP BY TanuloId) felev on felev.TanuloId=s.id
--igazolt
INSERT INTO #MulasztasVegleges
SELECT s.id, 'igazolt',
isnull(ni.[9],0) '09.', isnull(ni.[10],0) '10.', isnull(ni.[11],0) '11.', isnull(ni.[12],0) '12.',
isnull(ni.[1],0) '01.', isnull(ni.[2],0) '02.', isnull(ni.[3],0) '03.', isnull(ni.[4],0) '04.', isnull(ni.[5],0) '05.', isnull(ni.[6],0) '06.',
isnull(Felev,0) 'felev', [9]+[10]+[11]+[12]+[1]+[2]+[3]+[4]+[5]+[6] 'osszesen', 2 Rendez
FROM @tanulok s
LEFT JOIN (SELECT * FROM (SELECT Id, Honap, TanuloId, IgazoltE, Tipus FROM #mulasztasTmp) a PIVOT (COUNT(ID) FOR Honap IN ([9], [10], [11], [12], [1], [2], [3], [4], [5], [6]))piv WHERE IgazoltE = 'T' AND Tipus = 1500 )ni on ni.TanuloId=s.Id
LEFT JOIN (SELECT COUNT(Id) Felev, TanuloId FROM #mulasztasTmp WHERE IgazoltE = 'T' AND Tipus = 1500 AND Datum <= @FelevVege GROUP BY TanuloId) felev on felev.TanuloId=s.id
--igazolatlan
INSERT INTO #MulasztasVegleges
SELECT s.id, 'igazolatlan',
isnull(ni.[9],0) '09.', isnull(ni.[10],0) '10.', isnull(ni.[11],0) '11.', isnull(ni.[12],0) '12.',
isnull(ni.[1],0) '01.', isnull(ni.[2],0) '02.', isnull(ni.[3],0) '03.', isnull(ni.[4],0) '04.', isnull(ni.[5],0) '05.', isnull(ni.[6],0) '06.',
isnull(Felev,0) 'felev', [9]+[10]+[11]+[12]+[1]+[2]+[3]+[4]+[5]+[6] 'osszesen', 4999 Rendez
FROM @tanulok s
LEFT JOIN (SELECT * FROM (SELECT Id, Honap, TanuloId, IgazoltE, Tipus FROM #mulasztasTmp) a PIVOT (COUNT(ID) FOR Honap IN ([9], [10], [11], [12], [1], [2], [3], [4], [5], [6]))piv WHERE IgazoltE = 'F' AND Tipus = 1500 )ni on ni.TanuloId=s.Id
LEFT JOIN (SELECT COUNT(Id) Felev, TanuloId FROM #mulasztasTmp WHERE IgazoltE = 'F' AND Tipus = 1500 AND Datum <= @FelevVege GROUP BY TanuloId, IgazolasTipus) felev on felev.TanuloId=s.id
--KÉSÉS
INSERT INTO #MulasztasVegleges
SELECT s.ID, 'késés (p)',
isnull(ni.[9],0) '09.', isnull(ni.[10],0) '10.', isnull(ni.[11],0) '11.', isnull(ni.[12],0) '12.',
isnull(ni.[1],0) '01.', isnull(ni.[2],0) '02.', isnull(ni.[3],0) '03.', isnull(ni.[4],0) '04.', isnull(ni.[5],0) '05.', isnull(ni.[6],0) '06.',
isnull(Felev,0) 'felev',
isnull(ni.[9],0)+isnull(ni.[10],0)+isnull(ni.[11],0)+isnull(ni.[12],0)+ isnull(ni.[1],0)+
isnull(ni.[2],0)+isnull(ni.[3],0)+isnull(ni.[4],0)+isnull(ni.[5],0)+isnull(ni.[6],0)
'osszesen', 5000 Rendez
FROM @tanulok s
LEFT JOIN (SELECT * FROM (SELECT KesesPercben, Honap, TanuloId FROM #mulasztasTmp WHERE Tipus = 1499) a PIVOT (SUM(KesesPercben) FOR Honap IN ([9], [10], [11], [12], [1], [2], [3], [4], [5], [6]))piv)ni on ni.TanuloId=s.Id
LEFT JOIN (SELECT SUM(KesesPercben) Felev, TanuloId FROM #mulasztasTmp WHERE Tipus = 1499 AND Datum <= @FelevVege GROUP BY TanuloId) felev on felev.TanuloId=s.id
--igazolt
INSERT INTO #MulasztasVegleges
select s.id, '* igazolt (p)',
isnull(ni.[9],0) '09.', isnull(ni.[10],0) '10.', isnull(ni.[11],0) '11.', isnull(ni.[12],0) '12.',
isnull(ni.[1],0) '01.', isnull(ni.[2],0) '02.', isnull(ni.[3],0) '03.', isnull(ni.[4],0) '04.', isnull(ni.[5],0) '05.', isnull(ni.[6],0) '06.',
isnull(Felev,0) 'felev',
isnull(ni.[9],0)+isnull(ni.[10],0)+isnull(ni.[11],0)+isnull(ni.[12],0)+ isnull(ni.[1],0)+
isnull(ni.[2],0)+isnull(ni.[3],0)+isnull(ni.[4],0)+isnull(ni.[5],0)+isnull(ni.[6],0)'osszesen', 5001 Rendez
FROM @tanulok s
LEFT JOIN (SELECT * FROM (SELECT KesesPercben, Honap, TanuloId, IgazoltE, Tipus FROM #mulasztasTmp) a PIVOT (SUM(KesesPercben) FOR Honap IN ([9], [10], [11], [12], [1], [2], [3], [4], [5], [6]))piv WHERE IgazoltE = 'T' AND Tipus = 1499)ni on ni.TanuloId=s.Id
LEFT JOIN (SELECT SUM(KesesPercben) Felev, TanuloId FROM #mulasztasTmp WHERE IgazoltE = 'T' AND Tipus = 1499 AND Datum <= @FelevVege GROUP BY TanuloId) felev on felev.TanuloId=s.id
--igazolatlan
INSERT INTO #MulasztasVegleges
SELECT s.id, '* igazolatlan (p)',
isnull(ni.[9],0) '09.', isnull(ni.[10],0) '10.', isnull(ni.[11],0) '11.', isnull(ni.[12],0) '12.',
isnull(ni.[1],0) '01.', isnull(ni.[2],0) '02.', isnull(ni.[3],0) '03.', isnull(ni.[4],0) '04.', isnull(ni.[5],0) '05.', isnull(ni.[6],0) '06.',
isnull(Felev,0) 'felev',
isnull(ni.[9],0)+isnull(ni.[10],0)+isnull(ni.[11],0)+isnull(ni.[12],0)+ isnull(ni.[1],0)+
isnull(ni.[2],0)+isnull(ni.[3],0)+isnull(ni.[4],0)+isnull(ni.[5],0)+isnull(ni.[6],0) 'osszesen', 5002 Rendez
from @tanulok s
LEFT JOIN (SELECT * FROM (SELECT KesesPercben, Honap, TanuloId, IgazoltE, Tipus FROM #mulasztasTmp) a PIVOT (SUM(KesesPercben) FOR Honap IN ([9], [10], [11], [12], [1], [2], [3], [4], [5], [6]))piv WHERE IgazoltE = 'F' AND Tipus = 1499)ni on ni.TanuloId=s.Id
LEFT JOIN (SELECT SUM(KesesPercben) Felev, TanuloId FROM #mulasztasTmp WHERE IgazoltE = 'F' AND Tipus = 1499 AND Datum <= @FelevVege GROUP BY TanuloId) felev on felev.TanuloId=s.id
SELECT DISTINCT Mulasztas.tanuloid, Mulasztas.tipus, Mulasztas.[09.] sz, Mulasztas.[10.] o, Mulasztas.[11.] n, Mulasztas.[12.] d,
Mulasztas.[01.] j, Mulasztas.[02.] f, Mulasztas.[03.] m, Mulasztas.[04.] a, Mulasztas.[05.] ma, Mulasztas.[06.] jun,
mulasztas.felev felev, ISNULL(Mulasztas.osszesen,0) Osszesen, mulasztas.Rendez
FROM #MulasztasVegleges Mulasztas
ORDER BY Rendez
--Napló
SELECT distinct nn.c_hetsorszama as Het, d.Nap as Nap, FORMAT(nn.c_napdatuma, 'yyyy. MMMM dd.', 'hu-hu') as Datum FROM T_NAPTARINAP_OSSZES nn
LEFT JOIN T_TANITASIORA_OSSZES tao ON tao.c_datum=nn.c_napdatuma AND tao.c_osztalycsoportid=@csoportid AND tao.torolt='F'
LEFT JOIN (SELECT distinct d.id as ID, d.c_name Nap FROM T_DICTIONARYITEMBASE_OSSZES d) d ON d.id=nn.c_hetnapja
LEFT JOIN T_FOGLALKOZAS_OSSZES fog ON fog.id=tao.c_foglalkozasid AND fog.c_tanevid=@tanevid
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.id=fog.c_tanarid AND f.torolt='F'
WHERE nn.c_napdatuma>=@elsonap AND nn.c_napdatuma<=@utolsonap
ORDER BY nn.c_hetsorszama,FORMAT(nn.c_napdatuma, 'yyyy. MMMM dd.', 'hu-hu')
--Napló adatok
SELECT DISTINCT
tao.C_ORASZAM Oraszam
,tao.C_HETSORSZAMA Het
,FORMAT(tao.C_DATUM, 'yyyy. MMMM dd.', 'hu-hu') Datum
,tao.C_DATUM
,f.C_NYOMTATASINEV Tanar
,tao.C_TEMA Tema
,ROW_NUMBER() OVER (ORDER BY tao.C_ORAKEZDETE) OraSorszam
,C_ORAKEZDETE
FROM T_TANITASIORA_OSSZES tao
LEFT JOIN T_FOGLALKOZAS_OSSZES fog ON fog.id = tao.C_FOGLALKOZASID AND fog.TOROLT = 'F'
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.id = fog.C_TANARID AND f.TOROLT = 'F'
WHERE
tao.C_OSZTALYCSOPORTID = @csoportid
AND tao.TOROLT = 'F'
ORDER BY tao.C_ORAKEZDETE, tao.C_ORASZAM
--Napló mulasztás
SELECT C_HETSORSZAMA Het, C_NYOMTATASINEV Tanulo,
MAX([1]) AS [Hetfo], MAX([2]) AS [Kedd], MAX([3]) AS [Szerda],
MAX([4]) AS [Csutortok], MAX([5]) AS [Pentek], MAX([6]) AS [Szombat]
FROM (
SELECT C_HETSORSZAMA, C_NYOMTATASINEV, [0], [1], [2], [3], [4], [5], [6]
FROM (
SELECT DISTINCT n.C_NAPTARINAPID, DATEPART(dw,n.C_DATUM) AS NAP, t.C_NYOMTATASINEV, n.C_HETSORSZAMA,
'[' + STUFF((
SELECT ', ' + CAST(o.C_ORASZAM AS VARCHAR(3)) + IIF(tm.C_TIPUS = 1499, '(k)','')
FROM T_TANULOMULASZTAS_OSSZES tm
INNER JOIN T_TANITASIORA_OSSZES o ON o.ID = tm.C_TANITASIORAKID
WHERE n.C_NAPTARINAPID = o.C_NAPTARINAPID
AND m.C_ORATANULOIID = tm.C_ORATANULOIID
AND tm.C_TANEVID = @tanevId
and tm.torolt='F' and tm.c_intezmenyId=@intezmenyId and o.c_tanevId=@tanevId
and o.C_OSZTALYCSOPORTID = @csoportId
and o.TOROLT = 'F'
ORDER BY o.C_NAPTARINAPID, o.C_ORASZAM
FOR XML PATH(''), TYPE).value('.', 'varchar(max)'),1,2,'') + '] ' + CAST(SUM(IIF(m.C_IGAZOLT = 'T', 1, 0)) AS varchar(2)) + '/' + CAST(SUM(IIF(m.C_IGAZOLT = 'F', 1, 0)) AS varchar(2)) AS hianyzas
FROM T_TANITASIORA_OSSZES n
INNER JOIN T_TANULOMULASZTAS_OSSZES m ON m.C_TANITASIORAKID = n.ID and m.torolt='F'
INNER JOIN T_FELHASZNALO_OSSZES t ON t.ID = m.C_ORATANULOIID
WHERE
n.C_TANEVID = @tanevId
AND m.C_TANEVID = @tanevId
AND (@iskolaErdekuSzamit = 1 OR C_IGAZOLASTIPUSA <> 1533)
and n.C_OSZTALYCSOPORTID = @csoportId
and n.TOROLT = 'F'
GROUP BY n.C_NAPTARINAPID, C_ORATANULOIID, C_NYOMTATASINEV, n.C_HETSORSZAMA, n.C_DATUM) AS SUB
PIVOT
(
MAX(HIANYZAS)
FOR NAP IN ([0], [1], [2], [3], [4], [5], [6])
) AS PivotTable
) AS ASD
GROUP BY C_HETSORSZAMA, C_NYOMTATASINEV
ORDER BY C_HETSORSZAMA
--Tanuló feljegyzései
SELECT
tte.C_TANULOID AS Tanulo
,FORMAT(tao.c_datum, 'yyyy.MM.dd.') AS Idopont
,d.C_NAME AS Tipus
,te.C_TARTALOM AS Feljegyzes
,f.C_NYOMTATASINEV AS Feljegyzo
FROM T_TANULO_TANULOESEMENY tte
INNER JOIN T_TANULOESEMENY_OSSZES te ON te.Id = tte.C_TANULOESEMENYID
INNER JOIN T_TANITASIORA_OSSZES tao ON tao.Id = te.C_TANITASIORAID
INNER JOIN T_FELHASZNALO_OSSZES f ON f.Id = te.C_FELJEGYZOID
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.Id = te.C_TIPUS
WHERE
C_OSZTALYCSOPORTID = @csoportId
AND te.TOROLT = 'F'
AND C_TIPUS <> 1534
--Tanuló gondviselői
SELECT 'Gondviselő ('+Rokonsag.Rokonsag+'):' as Fejlec, tcs.c_tanuloid Tanulo, g.c_nev Gondviselo, gcim.Tipus Tipus,gcim.Cim as Cim, gtel.c_telefonszam Telefon, gemail.C_EMAILCIM Email
FROM T_TANULOCSOPORT_OSSZES tcs
INNER JOIN T_GONDVISELO_OSSZES g ON g.c_tanuloid=tcs.c_tanuloid AND g.torolt='F'
LEFT JOIN (
SELECT g.id Gondviselo, dt.c_name Tipus, c.c_iranyitoszam+', '+c.c_varos+' '+c.c_kozterulet+' '+dj.c_name+' '+c.c_hazszam as Cim
FROM T_CIM_OSSZES c
INNER JOIN (SELECT distinct d.id, d.c_name FROM T_DICTIONARYITEMBASE_OSSZES d )dt ON dt.id=c.c_cimtipusa
INNER JOIN t_gondviselo_osszes g ON g.id=c.c_gondviseloid AND g.torolt='F'
INNER JOIN (SELECT distinct d.id, d.c_name FROM T_DICTIONARYITEMBASE_OSSZES d )dj ON dj.id=c.c_kozteruletjellege
)gcim ON gcim.Gondviselo=g.id
LEFT JOIN T_TELEFON_OSSZES gtel ON gtel.c_gondviseloid=g.id AND gtel.torolt='F'
LEFT JOIN T_EMAIL_OSSZES gemail ON gemail.c_gondviseloid=g.id AND gemail.torolt='F'
LEFT JOIN (SELECT distinct d.id Id, d.c_name Rokonsag FROM T_DICTIONARYITEMBASE_OSSZES d) Rokonsag ON Rokonsag.Id=g.c_rokonsagfoka
WHERE tcs.c_osztalycsoportid=@csoportId AND tcs.c_tanevid=@tanevid AND tcs.torolt='F'
END
GO