@@ -0,0 +1,341 @@
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 , ia . c_cime 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_FOGLALKOZASOK_TANAROK ft ON ft . c_foglalkozasokid = fog . id
LEFT JOIN T_FELHASZNALO_OSSZES f ON f . id = ft . c_tanarokid 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_FOGLALKOZASOK_TANAROK ft ON ft . C_FOGLALKOZASOKID = fog . id
LEFT JOIN T_FELHASZNALO_OSSZES f ON f . id = ft . C_TANAROKID 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