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

View file

@ -0,0 +1,78 @@
IF OBJECT_ID('stage.sp_MrgDictionaryItemBase') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgDictionaryItemBase
END
GO
CREATE PROCEDURE stage.sp_MrgDictionaryItemBase
AS
BEGIN
MERGE stage.T_DICTIONARYITEMBASE_STAGE AS trg
USING (
SELECT
d.ID AS C_DICTIONARYITEMBASEID,
NULL AS C_INTEZMENYID,
MIN(d.C_NAME) AS C_NAME,
MIN(d.C_TYPE) AS C_TYPE,
te.C_NEV AS C_TANEVNEV,
d.TOROLT
FROM dbo.T_DICTIONARYITEMBASE d
INNER JOIN dbo.T_TANEV te ON te.ID = d.C_TANEVID
WHERE d.ID < 100000
AND d.TOROLT = 'F' AND te.TOROLT = 'F'
AND d.C_TYPE IN ('MunkaviszonyTipus', 'MunkakorTipus', 'Nem', 'MunkaviszonyTipus', 'Kepesites', 'TargyKategoriaTipus',
'EvfolyamTipus', 'CsoportTipus', 'EletpalyamodellFokozatTipus', 'MunkaidoKedvezmenyOka', 'OktatasiNevelesiFeladat', 'ESLAdatTipus', 'TeremTipus', 'OrszagTipus', 'KozteruletJelleg', 'FelvetelStatuszaTipus')
GROUP BY d.ID, te.C_NEV, d.TOROLT
UNION ALL
SELECT
d.ID AS C_DICTIONARYITEMBASEID,
d.C_INTEZMENYID AS C_INTEZMENYID,
d.C_NAME AS C_NAME,
d.C_TYPE AS C_TYPE,
te.C_NEV AS C_TANEVNEV,
d.TOROLT
FROM dbo.T_DICTIONARYITEMBASE d
INNER JOIN dbo.T_TANEV te ON te.ID = d.C_TANEVID AND te.TOROLT = 'F'
INNER JOIN dbo.T_INTEZMENY i ON i.ID = d.C_INTEZMENYID AND i.TOROLT = 'F'
WHERE d.ID >= 100000
AND d.TOROLT = 'F' AND te.TOROLT = 'F' AND i.TOROLT = 'F'
AND d.C_TYPE IN ('MunkaviszonyTipus', 'MunkakorTipus', 'Nem', 'MunkaviszonyTipus', 'Kepesites', 'TargyKategoriaTipus',
'EvfolyamTipus', 'CsoportTipus', 'EletpalyamodellFokozatTipus', 'MunkaidoKedvezmenyOka', 'OktatasiNevelesiFeladat', 'ESLAdatTipus', 'TeremTipus', 'OrszagTipus', 'KozteruletJelleg', 'FelvetelStatuszaTipus')
) src ON src.C_DICTIONARYITEMBASEID = trg.C_DICTIONARYITEMBASEID AND src.C_TANEVNEV = trg.C_TANEVNEV
WHEN MATCHED AND
(trg.C_NAME <> src.C_NAME OR (trg.C_NAME IS NULL AND src.C_NAME IS NOT NULL) OR (trg.C_NAME IS NOT NULL AND src.C_NAME IS NULL))
OR (trg.C_TYPE <> src.C_TYPE OR (trg.C_TYPE IS NULL AND src.C_TYPE IS NOT NULL) OR (trg.C_TYPE IS NOT NULL AND src.C_TYPE IS NULL))
THEN
UPDATE SET
trg.C_NAME = src.C_NAME
,trg.C_TYPE = src.C_TYPE
,trg.TOROLT = src.TOROLT
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_DICTIONARYITEMBASEID,
C_INTEZMENYID,
C_NAME,
C_TYPE,
C_TANEVNEV,
TOROLT,
SERIAL,
LASTCHANGED,
CREATED
) VALUES (
src.C_DICTIONARYITEMBASEID,
src.C_INTEZMENYID,
src.C_NAME,
src.C_TYPE,
src.C_TANEVNEV,
src.TOROLT,
0,
GETDATE(),
GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,65 @@
IF OBJECT_ID('stage.sp_MrgEslAdat') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgEslAdat
END
GO
CREATE PROCEDURE stage.sp_MrgEslAdat
AS
BEGIN
MERGE stage.T_ESLADAT_STAGE AS trg
USING (
SELECT
esl.C_INTEZMENYID AS C_INTEZMENYID
,t.C_NEV AS C_TANEVNEV
,esl.ID AS C_ESLADATID
,esl.C_DATUM
,esl.C_ERTEK
,esl.C_TIPUS
,d.C_NAME AS C_TIPUSNEV
FROM dbo.T_ESLADAT esl
INNER JOIN dbo.T_TANEV t ON t.ID = esl.C_TANEVID
INNER JOIN dbo.T_DICTIONARYITEMBASE d ON esl.C_TIPUS = d.ID AND esl.C_INTEZMENYID = d.C_INTEZMENYID AND esl.C_TANEVID = d.C_TANEVID
WHERE esl.TOROLT = 'F'
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_ESLADATID = src.C_ESLADATID)
WHEN MATCHED AND
(trg.C_DATUM <> src.C_DATUM OR (trg.C_DATUM IS NULL AND src.C_DATUM IS NOT NULL) OR (trg.C_DATUM IS NOT NULL AND src.C_DATUM IS NULL))
OR (trg.C_ERTEK <> src.C_ERTEK OR (trg.C_ERTEK IS NULL AND src.C_ERTEK IS NOT NULL) OR (trg.C_ERTEK IS NOT NULL AND src.C_ERTEK IS NULL))
OR (trg.C_TIPUS <> src.C_TIPUS OR (trg.C_TIPUS IS NULL AND src.C_TIPUS IS NOT NULL) OR (trg.C_TIPUS IS NOT NULL AND src.C_TIPUS IS NULL))
OR (trg.C_TIPUSNEV <> src.C_TIPUSNEV OR (trg.C_TIPUSNEV IS NULL AND src.C_TIPUSNEV IS NOT NULL) OR (trg.C_TIPUSNEV IS NOT NULL AND src.C_TIPUSNEV IS NULL))
THEN
UPDATE SET
trg.C_DATUM = src.C_DATUM
,trg.C_ERTEK = src.C_ERTEK
,trg.C_TIPUS = src.C_TIPUS
,trg.C_TIPUSNEV = src.C_TIPUSNEV
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID
,C_TANEVNEV
,C_DATUM
,C_ERTEK
,C_TIPUS
,C_TIPUSNEV
,TOROLT
,LASTCHANGED
,CREATED
) VALUES (
src.C_INTEZMENYID
,src.C_TANEVNEV
,src.C_DATUM
,src.C_ERTEK
,src.C_TIPUS
,src.C_TIPUSNEV
,'F'
,GETDATE()
,GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,63 @@
IF OBJECT_ID('stage.sp_MrgFeladatellatasiHely') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgFeladatellatasiHely
END
GO
CREATE PROCEDURE stage.sp_MrgFeladatellatasiHely
AS
BEGIN
MERGE stage.T_FELADATELLATASIHELY_STAGE AS trg
USING (
SELECT
fh.C_INTEZMENYID AS C_INTEZMENYID
,fh.ID AS C_FELADATELLATASIHELYID
,fh.C_OKTATASINEVELESIFELADATTIPUS
,t.C_NEV AS C_TANEVNEV
,CONCAT(mh.C_NEV, ' - ', d.C_NAME) AS C_FELADATELLATASIHELYNEV
,mh.ID AS C_MUKODESIHELYID
FROM dbo.T_FELADATELLATASIHELY fh
INNER JOIN dbo.T_MUKODESIHELY mh ON mh.ID = fh.C_MUKODESIHELYID
INNER JOIN dbo.T_DICTIONARYITEMBASE d ON d.ID = fh.C_OKTATASINEVELESIFELADATTIPUS AND d.C_INTEZMENYID = fh.C_INTEZMENYID AND d.C_TANEVID = fh.C_TANEVID
INNER JOIN dbo.T_TANEV t ON t.ID = fh.C_TANEVID
WHERE fh.TOROLT = 'F' AND mh.TOROLT = 'F'
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_FELADATELLATASIHELYID = src.C_FELADATELLATASIHELYID)
WHEN MATCHED AND
(trg.C_FELADATELLATASIHELYNEV <> src.C_FELADATELLATASIHELYNEV OR (trg.C_FELADATELLATASIHELYNEV IS NULL AND src.C_FELADATELLATASIHELYNEV IS NOT NULL) OR (trg.C_FELADATELLATASIHELYNEV IS NOT NULL AND src.C_FELADATELLATASIHELYNEV IS NULL))
OR (trg.C_OKTATASINEVELESIFELADATTIPUS <> src.C_OKTATASINEVELESIFELADATTIPUS OR (trg.C_OKTATASINEVELESIFELADATTIPUS IS NULL AND src.C_OKTATASINEVELESIFELADATTIPUS IS NOT NULL) OR (trg.C_OKTATASINEVELESIFELADATTIPUS IS NOT NULL AND src.C_OKTATASINEVELESIFELADATTIPUS IS NULL))
OR (trg.C_MUKODESIHELYID <> src.C_MUKODESIHELYID OR (trg.C_MUKODESIHELYID IS NULL AND src.C_MUKODESIHELYID IS NOT NULL) OR (trg.C_MUKODESIHELYID IS NOT NULL AND src.C_MUKODESIHELYID IS NULL))
THEN
UPDATE SET
trg.C_FELADATELLATASIHELYNEV = src.C_FELADATELLATASIHELYNEV
,trg.C_OKTATASINEVELESIFELADATTIPUS = src.C_OKTATASINEVELESIFELADATTIPUS
,trg.C_MUKODESIHELYID = src.C_MUKODESIHELYID
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID
,C_TANEVNEV
,C_FELADATELLATASIHELYID
,C_FELADATELLATASIHELYNEV
,C_OKTATASINEVELESIFELADATTIPUS
,C_MUKODESIHELYID
,TOROLT
,LASTCHANGED
,CREATED
) VALUES (
src.C_INTEZMENYID
,src.C_TANEVNEV
,src.C_FELADATELLATASIHELYID
,src.C_FELADATELLATASIHELYNEV
,src.C_OKTATASINEVELESIFELADATTIPUS
,src.C_MUKODESIHELYID
,'F'
,GETDATE()
,GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE()
,trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,95 @@
IF OBJECT_ID('stage.sp_MrgFelhasznaloBelepes') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgFelhasznaloBelepes
END
GO
CREATE PROCEDURE stage.sp_MrgFelhasznaloBelepes
AS
BEGIN
MERGE stage.T_FELHASZNALOBELEPES_STAGE AS trg
USING (
SELECT
fb.C_INTEZMENYID AS C_INTEZMENYID
,t.C_NEV AS C_TANEVNEV
,fb.ID AS C_FELHASZNALOBELEPESID
,fb.C_UTOLSOBELEPES
,fb.C_FELHASZNALOID
,fb.C_GONDVISELOID
,ISNULL(g.C_NEV, fh.C_NYOMTATASINEV) AS C_NYOMTATASINEV
,IIF(C_SZEREPKORTIPUS = 1758, 'T', 'F') C_ISADMIN
,IIF(fb.C_GONDVISELOID IS NULL, 'F', 'T') AS C_ISGONDVISELO
,IIF(a.ID IS NULL AND fb.C_GONDVISELOID IS NULL, 'F', 'T') AS C_ISALKALMAZOTT
,IIF(ta.ID IS NULL AND fb.C_GONDVISELOID IS NULL, 'F', 'T') AS C_ISTANULO
FROM dbo.T_FELHASZNALOBELEPES fb
INNER JOIN dbo.T_FELHASZNALO fh ON fh.ID = fb.C_FELHASZNALOID
LEFT JOIN dbo.T_ALKALMAZOTT a ON fb.C_FELHASZNALOID = a.ID
LEFT JOIN dbo.T_TANULO ta ON fb.C_FELHASZNALOID = ta.ID
LEFT JOIN dbo.T_GONDVISELO g ON g.ID = fb.C_GONDVISELOID
LEFT JOIN (
SELECT fsz.C_FELHASZNALOID, sz.C_SZEREPKORTIPUS
FROM dbo.T_FELHASZNALO_SZEREPKOR fsz
INNER JOIN dbo.T_SZEREPKOR sz ON fsz.C_SZEREPKORID = sz.ID
WHERE sz.C_SZEREPKORTIPUS = 1758) sz ON sz.C_FELHASZNALOID = fb.C_FELHASZNALOID
INNER JOIN dbo.T_TANEV t ON t.ID = fb.C_TANEVID
WHERE fb.TOROLT = 'F'
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_FELHASZNALOBELEPESID = src.C_FELHASZNALOBELEPESID)
WHEN MATCHED AND
(trg.C_UTOLSOBELEPES <> src.C_UTOLSOBELEPES OR (trg.C_UTOLSOBELEPES IS NULL AND src.C_UTOLSOBELEPES IS NOT NULL) OR (trg.C_UTOLSOBELEPES IS NOT NULL AND src.C_UTOLSOBELEPES IS NULL))
OR (trg.C_FELHASZNALOID <> src.C_FELHASZNALOID OR (trg.C_FELHASZNALOID IS NULL AND src.C_FELHASZNALOID IS NOT NULL) OR (trg.C_FELHASZNALOID IS NOT NULL AND src.C_FELHASZNALOID IS NULL))
OR (trg.C_GONDVISELOID <> src.C_GONDVISELOID OR (trg.C_GONDVISELOID IS NULL AND src.C_GONDVISELOID IS NOT NULL) OR (trg.C_GONDVISELOID IS NOT NULL AND src.C_GONDVISELOID IS NULL))
OR (trg.C_NYOMTATASINEV <> src.C_NYOMTATASINEV OR (trg.C_NYOMTATASINEV IS NULL AND src.C_NYOMTATASINEV IS NOT NULL) OR (trg.C_NYOMTATASINEV IS NOT NULL AND src.C_NYOMTATASINEV IS NULL))
OR (trg.C_ISADMIN <> src.C_ISADMIN OR (trg.C_ISADMIN IS NULL AND src.C_ISADMIN IS NOT NULL) OR (trg.C_ISADMIN IS NOT NULL AND src.C_ISADMIN IS NULL))
OR (trg.C_ISGONDVISELO <> src.C_ISGONDVISELO OR (trg.C_ISGONDVISELO IS NULL AND src.C_ISGONDVISELO IS NOT NULL) OR (trg.C_ISGONDVISELO IS NOT NULL AND src.C_ISGONDVISELO IS NULL))
OR (trg.C_ISALKALMAZOTT <> src.C_ISALKALMAZOTT OR (trg.C_ISALKALMAZOTT IS NULL AND src.C_ISALKALMAZOTT IS NOT NULL) OR (trg.C_ISALKALMAZOTT IS NOT NULL AND src.C_ISALKALMAZOTT IS NULL))
OR (trg.C_ISTANULO <> src.C_ISTANULO OR (trg.C_ISTANULO IS NULL AND src.C_ISTANULO IS NOT NULL) OR (trg.C_ISTANULO IS NOT NULL AND src.C_ISTANULO IS NULL))
THEN
UPDATE SET
trg.C_UTOLSOBELEPES = src.C_UTOLSOBELEPES
,trg.C_FELHASZNALOID = src.C_FELHASZNALOID
,trg.C_GONDVISELOID = src.C_GONDVISELOID
,trg.C_NYOMTATASINEV = src.C_NYOMTATASINEV
,trg.C_ISADMIN = src.C_ISADMIN
,trg.C_ISGONDVISELO = src.C_ISGONDVISELO
,trg.C_ISALKALMAZOTT = src.C_ISALKALMAZOTT
,trg.C_ISTANULO = src.C_ISTANULO
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID
,C_TANEVNEV
,C_FELHASZNALOBELEPESID
,C_UTOLSOBELEPES
,C_FELHASZNALOID
,C_GONDVISELOID
,C_NYOMTATASINEV
,C_ISADMIN
,C_ISGONDVISELO
,C_ISALKALMAZOTT
,C_ISTANULO
,TOROLT
,LASTCHANGED
,CREATED
) VALUES (
src.C_INTEZMENYID
,src.C_TANEVNEV
,src.C_FELHASZNALOBELEPESID
,src.C_UTOLSOBELEPES
,src.C_FELHASZNALOID
,src.C_GONDVISELOID
,src.C_NYOMTATASINEV
,src.C_ISADMIN
,src.C_ISGONDVISELO
,src.C_ISALKALMAZOTT
,src.C_ISTANULO
,'F'
,GETDATE()
,GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,58 @@
IF OBJECT_ID('stage.sp_MrgFelhasznaloBelepesTortenet') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgFelhasznaloBelepesTortenet
END
GO
CREATE PROCEDURE stage.sp_MrgFelhasznaloBelepesTortenet
AS
BEGIN
MERGE stage.T_FELHASZNALOBELEPESTORTENET_S AS trg
USING (
SELECT
fh.C_INTEZMENYID AS C_INTEZMENYID
,t.C_NEV AS C_TANEVNEV
,fbt.ID AS C_FELHASZNALOBELEPESTORTENETID
,fbt.C_FELHASZNALOID
,fbt.C_LOGINDATE
,fbt.C_LASTACTIVITY
FROM dbo.T_FELHASZNALOBELEPESTORTENET fbt
INNER JOIN T_FELHASZNALO fh ON fh.ID = fbt.C_FELHASZNALOID
INNER JOIN dbo.T_TANEV t ON t.ID = fh.C_TANEVID
WHERE fbt.TOROLT = 'F'
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_FELHASZNALOBELEPESTORTENETID = src.C_FELHASZNALOBELEPESTORTENETID)
WHEN MATCHED AND
(trg.C_LASTACTIVITY <> src.C_LASTACTIVITY OR (trg.C_LASTACTIVITY IS NULL AND src.C_LASTACTIVITY IS NOT NULL) OR (trg.C_LASTACTIVITY IS NOT NULL AND src.C_LASTACTIVITY IS NULL))
THEN
UPDATE SET
trg.C_LASTACTIVITY = src.C_LASTACTIVITY
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID
,C_TANEVNEV
,C_FELHASZNALOBELEPESTORTENETID
,C_FELHASZNALOID
,C_LOGINDATE
,C_LASTACTIVITY
,TOROLT
,LASTCHANGED
,CREATED
) VALUES (
src.C_INTEZMENYID
,src.C_TANEVNEV
,src.C_FELHASZNALOBELEPESTORTENETID
,src.C_FELHASZNALOID
,src.C_LOGINDATE
,src.C_LASTACTIVITY
,'F'
,GETDATE()
,GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,135 @@
IF OBJECT_ID('stage.sp_MrgIntezmenyHasznalat') IS NOT NULL
BEGIN
DROP PROCEDURE stage.sp_MrgIntezmenyHasznalat
END
GO
CREATE PROCEDURE stage.sp_MrgIntezmenyHasznalat
AS
BEGIN
MERGE stage.T_INTEZMENYHASZNALAT_STAGE AS trg
using (
SELECT
IntezmenyAdatok.C_INTEZMENYID AS intezmenyId,
IntezmenyAdatok.C_NEV AS intezmenyNev,
IntezmenyAdatok.C_KRETATIPUS AS kretaTipus, --3025 - Teljes KRÉTA; 3024 - Csak adatszolgáltatás
Tanev.C_NEV AS tanevNev,
(SELECT COUNT(1) FROM T_TANULO adat WHERE adat.TOROLT = 'F' AND adat.C_ALINTEZMENYID = Intezmeny.ID) AS tanulokSzama,
(SELECT COUNT(1) FROM T_ALKALMAZOTT adat WHERE adat.TOROLT = 'F' AND adat.C_ALINTEZMENYID = Intezmeny.ID) AS pedagogusokSzama,
(SELECT COUNT(1) FROM T_GONDVISELO adat WHERE adat.TOROLT = 'F' AND adat.C_INTEZMENYID = Intezmeny.ID) AS gondviselokSzama,
(SELECT COUNT(1) FROM T_OSZTALY adat WHERE adat.TOROLT = 'F' AND adat.C_ALINTEZMENYID = Intezmeny.ID) AS osztalyokSzama,
(SELECT COUNT(1) FROM T_CSOPORT adat WHERE adat.TOROLT = 'F' AND adat.C_ALINTEZMENYID = Intezmeny.ID) AS csoportokSzama,
(SELECT COUNT(1) FROM T_FOGLALKOZAS adat WHERE adat.TOROLT = 'F' AND adat.C_INTEZMENYID = Intezmeny.ID) AS ttfElemekSzama,
(SELECT COUNT(1) FROM T_TANULOERTEKELES adat WHERE adat.TOROLT = 'F' AND adat.C_INTEZMENYID = Intezmeny.ID) AS ertekelesekSzama,
(SELECT COUNT(1) FROM T_TANITASIORA adat WHERE adat.TOROLT = 'F' AND adat.C_INTEZMENYID = Intezmeny.ID) AS naplozottTanorakSzama,
--(SELECT COUNT(1) FROM T_ORARENDIORA adat WHERE adat.TOROLT = 'F' AND adat.C_INTEZMENYID = Intezmeny.ID) AS Órarendi órák száma',
(SELECT COUNT(1) FROM T_TANULOESEMENY adat WHERE adat.TOROLT = 'F' AND adat.C_INTEZMENYID = Intezmeny.ID) AS feljegyzesekSzama,
(SELECT MAX(FelhasznaloBelepes.C_UTOLSOBELEPES)
FROM T_FELHASZNALO adat
INNER JOIN T_FELHASZNALO_SZEREPKOR FelhasznaloSzerepkor ON FelhasznaloSzerepkor.C_FELHASZNALOID = adat.ID
LEFT JOIN T_SZEREPKOR Szerepkor ON Szerepkor.ID = FelhasznaloSzerepkor.C_SZEREPKORID
INNER JOIN T_FELHASZNALOBELEPES FelhasznaloBelepes ON FelhasznaloBelepes.C_FELHASZNALOID = adat.ID
WHERE
adat.TOROLT = 'F'
AND FelhasznaloBelepes.TOROLT = 'F'
AND Szerepkor.C_SZEREPKORTIPUS = 1758 -- Admin
AND adat.C_INTEZMENYID = Intezmeny.ID) AS utolsoAdminBejelentkezesDatuma,
(SELECT MAX(FelhasznaloBelepes.C_UTOLSOBELEPES)
FROM T_ALKALMAZOTT Alkalmazott
INNER JOIN T_FELHASZNALOBELEPES FelhasznaloBelepes ON FelhasznaloBelepes.C_FELHASZNALOID = Alkalmazott.ID
WHERE
Alkalmazott.TOROLT = 'F'
AND FelhasznaloBelepes.TOROLT = 'F'
AND Alkalmazott.C_ALINTEZMENYID = Intezmeny.ID) AS utolsoTanariBejelentkezesDatuma,
(SELECT MAX(FelhasznaloBelepes.C_UTOLSOBELEPES)
FROM T_FELHASZNALOBELEPES FelhasznaloBelepes
WHERE
FelhasznaloBelepes.C_GONDVISELOID IS NOT NULL
AND FelhasznaloBelepes.C_INTEZMENYID = Intezmeny.ID) AS utolsoSzuloiBejelentkezesDatuma
FROM T_INTEZMENYADATOK IntezmenyAdatok
INNER JOIN T_INTEZMENY Intezmeny ON Intezmeny.ID = IntezmenyAdatok.C_INTEZMENYID
INNER JOIN T_TANEV Tanev ON Tanev.ID = IntezmenyAdatok.C_TANEVID
WHERE
Intezmeny.TOROLT = 'F'
AND IntezmenyAdatok.TOROLT = 'F'
AND Intezmeny.C_FENNTARTOAZONOSITO <> 0
) src ON (trg.C_INTEZMENYID = src.IntezmenyId AND trg.C_TANEVNEV = src.tanevNev)
WHEN MATCHED
AND (trg.C_NEV <> src.intezmenyNev OR (trg.C_NEV IS NULL AND src.intezmenyNev IS NOT NULL) OR (trg.C_NEV IS NOT NULL AND src.intezmenyNev IS NULL))
OR (trg.C_KRETATIPUS <> src.kretaTipus OR (trg.C_KRETATIPUS IS NULL AND src.kretaTipus IS NOT NULL) OR (trg.C_KRETATIPUS IS NOT NULL AND src.kretaTipus IS NULL))
OR (trg.C_TANULOKSZAMA <> src.tanulokSzama OR (trg.C_TANULOKSZAMA IS NULL AND src.tanulokSzama IS NOT NULL) OR (trg.C_TANULOKSZAMA IS NOT NULL AND src.tanulokSzama IS NULL))
OR (trg.C_PEDAGOGUSOKSZAMA <> src.pedagogusokSzama OR (trg.C_PEDAGOGUSOKSZAMA IS NULL AND src.pedagogusokSzama IS NOT NULL) OR (trg.C_PEDAGOGUSOKSZAMA IS NOT NULL AND src.pedagogusokSzama IS NULL))
OR (trg.C_GONDVISELOKSZAMA <> src.gondviselokSzama OR (trg.C_GONDVISELOKSZAMA IS NULL AND src.gondviselokSzama IS NOT NULL) OR (trg.C_GONDVISELOKSZAMA IS NOT NULL AND src.gondviselokSzama IS NULL))
OR (trg.C_OSZTALYOKSZAMA <> src.osztalyokSzama OR (trg.C_OSZTALYOKSZAMA IS NULL AND src.osztalyokSzama IS NOT NULL) OR (trg.C_OSZTALYOKSZAMA IS NOT NULL AND src.osztalyokSzama IS NULL))
OR (trg.C_CSOPORTOKSZAMA <> src.csoportokSzama OR (trg.C_CSOPORTOKSZAMA IS NULL AND src.csoportokSzama IS NOT NULL) OR (trg.C_CSOPORTOKSZAMA IS NOT NULL AND src.csoportokSzama IS NULL))
OR (trg.C_TTFELEMEKSZAMA <> src.ttfElemekSzama OR (trg.C_TTFELEMEKSZAMA IS NULL AND src.ttfElemekSzama IS NOT NULL) OR (trg.C_TTFELEMEKSZAMA IS NOT NULL AND src.ttfElemekSzama IS NULL))
OR (trg.C_ERTEKELESEKSZAMA <> src.ertekelesekSzama OR (trg.C_ERTEKELESEKSZAMA IS NULL AND src.ertekelesekSzama IS NOT NULL) OR (trg.C_ERTEKELESEKSZAMA IS NOT NULL AND src.ertekelesekSzama IS NULL))
OR (trg.C_NAPLOZOTTTANORAKSZAMA <> src.naplozottTanorakSzama OR (trg.C_NAPLOZOTTTANORAKSZAMA IS NULL AND src.naplozottTanorakSzama IS NOT NULL) OR (trg.C_NAPLOZOTTTANORAKSZAMA IS NOT NULL AND src.naplozottTanorakSzama IS NULL))
OR (trg.C_FELJEGYZESEKSZAMA <> src.feljegyzesekSzama OR (trg.C_FELJEGYZESEKSZAMA IS NULL AND src.feljegyzesekSzama IS NOT NULL) OR (trg.C_FELJEGYZESEKSZAMA IS NOT NULL AND src.feljegyzesekSzama IS NULL))
OR (trg.C_UTOLSOADMINBEJELENTKEZESDATU <> src.utolsoAdminBejelentkezesDatuma OR (trg.C_UTOLSOADMINBEJELENTKEZESDATU IS NULL AND src.utolsoAdminBejelentkezesDatuma IS NOT NULL) OR (trg.C_UTOLSOADMINBEJELENTKEZESDATU IS NOT NULL AND src.utolsoAdminBejelentkezesDatuma IS NULL))
OR (trg.C_UTOLSOTANARIBEJELENTKEZESDAT <> src.utolsoTanariBejelentkezesDatuma OR (trg.C_UTOLSOTANARIBEJELENTKEZESDAT IS NULL AND src.utolsoTanariBejelentkezesDatuma IS NOT NULL) OR (trg.C_UTOLSOTANARIBEJELENTKEZESDAT IS NOT NULL AND src.utolsoTanariBejelentkezesDatuma IS NULL))
OR (trg.C_UTOLSOSZULOIBEJELENTKEZESDAT <> src.utolsoSzuloiBejelentkezesDatuma OR (trg.C_UTOLSOSZULOIBEJELENTKEZESDAT IS NULL AND src.utolsoSzuloiBejelentkezesDatuma IS NOT NULL) OR (trg.C_UTOLSOSZULOIBEJELENTKEZESDAT IS NOT NULL AND src.utolsoSzuloiBejelentkezesDatuma IS NULL))
THEN
UPDATE SET
trg.C_NEV = src.intezmenyNev,
trg.C_KRETATIPUS = src.kretaTipus,
trg.C_TANULOKSZAMA = src.tanulokSzama,
trg.C_PEDAGOGUSOKSZAMA = src.pedagogusokSzama,
trg.C_GONDVISELOKSZAMA = src.gondviselokSzama,
trg.C_OSZTALYOKSZAMA = src.osztalyokSzama,
trg.C_CSOPORTOKSZAMA = src.csoportokSzama,
trg.C_TTFELEMEKSZAMA = src.ttfElemekSzama,
trg.C_ERTEKELESEKSZAMA = src.ertekelesekSzama,
trg.C_NAPLOZOTTTANORAKSZAMA = src.naplozottTanorakSzama,
trg.C_FELJEGYZESEKSZAMA = src.feljegyzesekSzama,
trg.C_UTOLSOADMINBEJELENTKEZESDATU = src.utolsoAdminBejelentkezesDatuma,
trg.C_UTOLSOTANARIBEJELENTKEZESDAT = src.utolsoTanariBejelentkezesDatuma,
trg.C_UTOLSOSZULOIBEJELENTKEZESDAT = src.utolsoSzuloiBejelentkezesDatuma,
trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID,
C_NEV,
C_KRETATIPUS,
C_TANEVNEV,
C_TANULOKSZAMA,
C_PEDAGOGUSOKSZAMA,
C_GONDVISELOKSZAMA,
C_OSZTALYOKSZAMA,
C_CSOPORTOKSZAMA,
C_TTFELEMEKSZAMA,
C_ERTEKELESEKSZAMA,
C_NAPLOZOTTTANORAKSZAMA,
C_FELJEGYZESEKSZAMA,
C_UTOLSOADMINBEJELENTKEZESDATU,
C_UTOLSOTANARIBEJELENTKEZESDAT,
C_UTOLSOSZULOIBEJELENTKEZESDAT,
TOROLT,
LASTCHANGED,
CREATED)
VALUES (
src.intezmenyId,
src.intezmenyNev,
src.kretaTipus,
src.tanevNev,
src.tanulokSzama,
src.pedagogusokSzama,
src.gondviselokSzama,
src.osztalyokSzama,
src.csoportokSzama,
src.ttfElemekSzama,
src.ertekelesekSzama,
src.naplozottTanorakSzama,
src.feljegyzesekSzama,
src.utolsoAdminBejelentkezesDatuma,
src.utolsoTanariBejelentkezesDatuma,
src.utolsoSzuloiBejelentkezesDatuma,
'F',
GETDATE(),
GETDATE())
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T';
END
GO

View file

@ -0,0 +1,101 @@
IF OBJECT_ID('stage.sp_MrgMukodesihely') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgMukodesihely
END
GO
CREATE PROCEDURE stage.sp_MrgMukodesihely
AS
BEGIN
MERGE stage.T_MUKODESIHELY_STAGE AS trg
USING (
SELECT
m.C_INTEZMENYID AS C_INTEZMENYID
,t.C_NEV AS C_TANEVNEV
,m.ID AS C_MUKODESIHELYID
,m.C_NEV
,m.C_CIME
,m.C_EMAILCIM
,m.C_FAX
,m.C_IRANYITOSZAM
,m.C_TELEFONSZAM
,m.C_VAROS
,m.C_VEZETONEVE
,m.C_TAGINTEZMENY
,m.C_TAGINTEZMENYIKOD
,m.C_SZEKHELY
FROM dbo.T_MUKODESIHELY m
INNER JOIN dbo.T_TANEV t ON t.ID = m.C_TANEVID
WHERE m.TOROLT = 'F'
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_MUKODESIHELYID = src.C_MUKODESIHELYID)
WHEN MATCHED AND
(trg.C_NEV <> src.C_NEV OR (trg.C_NEV IS NULL AND src.C_NEV IS NOT NULL) OR (trg.C_NEV IS NOT NULL AND src.C_NEV IS NULL))
OR (trg.C_CIME <> src.C_CIME OR (trg.C_CIME IS NULL AND src.C_CIME IS NOT NULL) OR (trg.C_CIME IS NOT NULL AND src.C_CIME IS NULL))
OR (trg.C_EMAILCIM <> src.C_EMAILCIM OR (trg.C_EMAILCIM IS NULL AND src.C_EMAILCIM IS NOT NULL) OR (trg.C_EMAILCIM IS NOT NULL AND src.C_EMAILCIM IS NULL))
OR (trg.C_FAX <> src.C_FAX OR (trg.C_FAX IS NULL AND src.C_FAX IS NOT NULL) OR (trg.C_FAX IS NOT NULL AND src.C_FAX IS NULL))
OR (trg.C_IRANYITOSZAM <> src.C_IRANYITOSZAM OR (trg.C_IRANYITOSZAM IS NULL AND src.C_IRANYITOSZAM IS NOT NULL) OR (trg.C_IRANYITOSZAM IS NOT NULL AND src.C_IRANYITOSZAM IS NULL))
OR (trg.C_TELEFONSZAM <> src.C_TELEFONSZAM OR (trg.C_TELEFONSZAM IS NULL AND src.C_TELEFONSZAM IS NOT NULL) OR (trg.C_TELEFONSZAM IS NOT NULL AND src.C_TELEFONSZAM IS NULL))
OR (trg.C_VAROS <> src.C_VAROS OR (trg.C_VAROS IS NULL AND src.C_VAROS IS NOT NULL) OR (trg.C_VAROS IS NOT NULL AND src.C_VAROS IS NULL))
OR (trg.C_VEZETONEVE <> src.C_VEZETONEVE OR (trg.C_VEZETONEVE IS NULL AND src.C_VEZETONEVE IS NOT NULL) OR (trg.C_VEZETONEVE IS NOT NULL AND src.C_VEZETONEVE IS NULL))
OR (trg.C_TAGINTEZMENY <> src.C_TAGINTEZMENY OR (trg.C_TAGINTEZMENY IS NULL AND src.C_TAGINTEZMENY IS NOT NULL) OR (trg.C_TAGINTEZMENY IS NOT NULL AND src.C_TAGINTEZMENY IS NULL))
OR (trg.C_TAGINTEZMENYIKOD <> src.C_TAGINTEZMENYIKOD OR (trg.C_TAGINTEZMENYIKOD IS NULL AND src.C_TAGINTEZMENYIKOD IS NOT NULL) OR (trg.C_TAGINTEZMENYIKOD IS NOT NULL AND src.C_TAGINTEZMENYIKOD IS NULL))
OR (trg.C_SZEKHELY <> src.C_SZEKHELY OR (trg.C_SZEKHELY IS NULL AND src.C_SZEKHELY IS NOT NULL) OR (trg.C_SZEKHELY IS NOT NULL AND src.C_SZEKHELY IS NULL))
THEN
UPDATE SET
trg.C_NEV = src.C_NEV
,trg.C_CIME = src.C_CIME
,trg.C_EMAILCIM = src.C_EMAILCIM
,trg.C_FAX = src.C_FAX
,trg.C_IRANYITOSZAM = src.C_IRANYITOSZAM
,trg.C_TELEFONSZAM = src.C_TELEFONSZAM
,trg.C_VAROS = src.C_VAROS
,trg.C_VEZETONEVE = src.C_VEZETONEVE
,trg.C_TAGINTEZMENY = src.C_TAGINTEZMENY
,trg.C_TAGINTEZMENYIKOD = src.C_TAGINTEZMENYIKOD
,trg.C_SZEKHELY = src.C_SZEKHELY
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID
,C_TANEVNEV
,C_MUKODESIHELYID
,C_NEV
,C_CIME
,C_EMAILCIM
,C_FAX
,C_IRANYITOSZAM
,C_TELEFONSZAM
,C_VAROS
,C_VEZETONEVE
,C_TAGINTEZMENY
,C_TAGINTEZMENYIKOD
,C_SZEKHELY
,TOROLT
,LASTCHANGED
,CREATED
) VALUES (
src.C_INTEZMENYID
,src.C_TANEVNEV
,src.C_MUKODESIHELYID
,src.C_NEV
,src.C_CIME
,src.C_EMAILCIM
,src.C_FAX
,src.C_IRANYITOSZAM
,src.C_TELEFONSZAM
,src.C_VAROS
,src.C_VEZETONEVE
,src.C_TAGINTEZMENY
,src.C_TAGINTEZMENYIKOD
,src.C_SZEKHELY
,'F'
,GETDATE()
,GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,165 @@
IF OBJECT_ID('stage.sp_MrgNebulo') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgNebulo
END
GO
CREATE PROCEDURE stage.sp_MrgNebulo
AS
BEGIN
MERGE stage.T_NEBULO_STAGE AS trg
USING (
SELECT
nebulo.C_INTEZMENYID AS C_INTEZMENYID
,tanev.C_NEV AS C_TANEVNEV
,nebulo.ID AS C_NEBULOID
,nebulo.C_AJTO AS C_AJTO
,nebulo.C_EDESANYJASZULETESICSALADINEV AS C_EDESANYJASZULETESICSALADINEV
,nebulo.C_EDESANYJASZULETESIUTONEVE AS C_EDESANYJASZULETESIUTONEVE
,nebulo.C_ELOTAG AS C_ELOTAG
,nebulo.C_EMELET AS C_EMELET
,nebulo.C_ETIKAHITERKOLCSTAN AS C_ETIKAHITERKOLCSTAN
,nebulo.C_FELVETELSTATUSZA AS C_FELVETELSTATUSZA
,nebulo.C_HAZSZAM AS C_HAZSZAM
,nebulo.C_HELYSEGNEV AS C_HELYSEGNEV
,nebulo.C_IRANYITOSZAM AS C_IRANYITOSZAM
,nebulo.C_KOZTERULETJELLEGE AS C_KOZTERULETJELLEGE
,nebulo.C_KOZTERULETNEV AS C_KOZTERULETNEV
,nebulo.C_NEME AS C_NEME
,nebulo.C_OKTATASIAZONOSITOSZAMA AS C_OKTATASIAZONOSITOSZAMA
,nebulo.C_SZULETESICSALADINEVE AS C_SZULETESICSALADINEVE
,nebulo.C_SZULETESIHELY AS C_SZULETESIHELY
,nebulo.C_SZULETESIIDO AS C_SZULETESIIDO
,nebulo.C_SZULETESIORSZAG AS C_SZULETESIORSZAG
,nebulo.C_SZULETESIUTONEVE AS C_SZULETESIUTONEVE
,nebulo.C_TAGOZAT AS C_TAGOZAT
,nebulo.C_TANULOCSALADINEVE AS C_TANULOCSALADINEVE
,nebulo.C_TANULOUTONEVE AS C_TANULOUTONEVE
,nebulo.C_ELETVITELSZERUOTTLAKASKORZET AS C_ELETVITELSZERUOTTLAKASKORZET
,nebulo.C_FELADATELLATASIHELYID AS C_FELADATELLATASIHELYID
FROM dbo.T_NEBULO nebulo
INNER JOIN dbo.T_TANEV tanev ON tanev.ID = nebulo.C_TANEVID
WHERE nebulo.TOROLT = 'F'
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.ID = src.C_NEBULOID)
WHEN MATCHED AND
(trg.C_AJTO <> src.C_AJTO OR (trg.C_AJTO IS NULL AND src.C_AJTO IS NOT NULL) OR (trg.C_AJTO IS NOT NULL AND src.C_AJTO IS NULL))
OR (trg.C_EDESANYJASZULETESICSALADINEV <> src.C_EDESANYJASZULETESICSALADINEV OR (trg.C_EDESANYJASZULETESICSALADINEV IS NULL AND src.C_EDESANYJASZULETESICSALADINEV IS NOT NULL) OR (trg.C_EDESANYJASZULETESICSALADINEV IS NOT NULL AND src.C_EDESANYJASZULETESICSALADINEV IS NULL))
OR (trg.C_EDESANYJASZULETESIUTONEVE <> src.C_EDESANYJASZULETESIUTONEVE OR (trg.C_EDESANYJASZULETESIUTONEVE IS NULL AND src.C_EDESANYJASZULETESIUTONEVE IS NOT NULL) OR (trg.C_EDESANYJASZULETESIUTONEVE IS NOT NULL AND src.C_EDESANYJASZULETESIUTONEVE IS NULL))
OR (trg.C_ELOTAG <> src.C_ELOTAG OR (trg.C_ELOTAG IS NULL AND src.C_ELOTAG IS NOT NULL) OR (trg.C_ELOTAG IS NOT NULL AND src.C_ELOTAG IS NULL))
OR (trg.C_EMELET <> src.C_EMELET OR (trg.C_EMELET IS NULL AND src.C_EMELET IS NOT NULL) OR (trg.C_EMELET IS NOT NULL AND src.C_EMELET IS NULL))
OR (trg.C_ETIKAHITERKOLCSTAN <> src.C_ETIKAHITERKOLCSTAN OR (trg.C_ETIKAHITERKOLCSTAN IS NULL AND src.C_ETIKAHITERKOLCSTAN IS NOT NULL) OR (trg.C_ETIKAHITERKOLCSTAN IS NOT NULL AND src.C_ETIKAHITERKOLCSTAN IS NULL))
OR (trg.C_FELVETELSTATUSZA <> src.C_FELVETELSTATUSZA OR (trg.C_FELVETELSTATUSZA IS NULL AND src.C_FELVETELSTATUSZA IS NOT NULL) OR (trg.C_FELVETELSTATUSZA IS NOT NULL AND src.C_FELVETELSTATUSZA IS NULL))
OR (trg.C_HAZSZAM <> src.C_HAZSZAM OR (trg.C_HAZSZAM IS NULL AND src.C_HAZSZAM IS NOT NULL) OR (trg.C_HAZSZAM IS NOT NULL AND src.C_HAZSZAM IS NULL))
OR (trg.C_HELYSEGNEV <> src.C_HELYSEGNEV OR (trg.C_HELYSEGNEV IS NULL AND src.C_HELYSEGNEV IS NOT NULL) OR (trg.C_HELYSEGNEV IS NOT NULL AND src.C_HELYSEGNEV IS NULL))
OR (trg.C_IRANYITOSZAM <> src.C_IRANYITOSZAM OR (trg.C_IRANYITOSZAM IS NULL AND src.C_IRANYITOSZAM IS NOT NULL) OR (trg.C_IRANYITOSZAM IS NOT NULL AND src.C_IRANYITOSZAM IS NULL))
OR (trg.C_KOZTERULETJELLEGE <> src.C_KOZTERULETJELLEGE OR (trg.C_KOZTERULETJELLEGE IS NULL AND src.C_KOZTERULETJELLEGE IS NOT NULL) OR (trg.C_KOZTERULETJELLEGE IS NOT NULL AND src.C_KOZTERULETJELLEGE IS NULL))
OR (trg.C_KOZTERULETNEV <> src.C_KOZTERULETNEV OR (trg.C_KOZTERULETNEV IS NULL AND src.C_KOZTERULETNEV IS NOT NULL) OR (trg.C_KOZTERULETNEV IS NOT NULL AND src.C_KOZTERULETNEV IS NULL))
OR (trg.C_NEME <> src.C_NEME OR (trg.C_NEME IS NULL AND src.C_NEME IS NOT NULL) OR (trg.C_NEME IS NOT NULL AND src.C_NEME IS NULL))
OR (trg.C_OKTATASIAZONOSITOSZAMA <> src.C_OKTATASIAZONOSITOSZAMA OR (trg.C_OKTATASIAZONOSITOSZAMA IS NULL AND src.C_OKTATASIAZONOSITOSZAMA IS NOT NULL) OR (trg.C_OKTATASIAZONOSITOSZAMA IS NOT NULL AND src.C_OKTATASIAZONOSITOSZAMA IS NULL))
OR (trg.C_SZULETESICSALADINEVE <> src.C_SZULETESICSALADINEVE OR (trg.C_SZULETESICSALADINEVE IS NULL AND src.C_SZULETESICSALADINEVE IS NOT NULL) OR (trg.C_SZULETESICSALADINEVE IS NOT NULL AND src.C_SZULETESICSALADINEVE IS NULL))
OR (trg.C_SZULETESIHELY <> src.C_SZULETESIHELY OR (trg.C_SZULETESIHELY IS NULL AND src.C_SZULETESIHELY IS NOT NULL) OR (trg.C_SZULETESIHELY IS NOT NULL AND src.C_SZULETESIHELY IS NULL))
OR (trg.C_SZULETESIIDO <> src.C_SZULETESIIDO OR (trg.C_SZULETESIIDO IS NULL AND src.C_SZULETESIIDO IS NOT NULL) OR (trg.C_SZULETESIIDO IS NOT NULL AND src.C_SZULETESIIDO IS NULL))
OR (trg.C_SZULETESIORSZAG <> src.C_SZULETESIORSZAG OR (trg.C_SZULETESIORSZAG IS NULL AND src.C_SZULETESIORSZAG IS NOT NULL) OR (trg.C_SZULETESIORSZAG IS NOT NULL AND src.C_SZULETESIORSZAG IS NULL))
OR (trg.C_SZULETESIUTONEVE <> src.C_SZULETESIUTONEVE OR (trg.C_SZULETESIUTONEVE IS NULL AND src.C_SZULETESIUTONEVE IS NOT NULL) OR (trg.C_SZULETESIUTONEVE IS NOT NULL AND src.C_SZULETESIUTONEVE IS NULL))
OR (trg.C_TAGOZAT <> src.C_TAGOZAT OR (trg.C_TAGOZAT IS NULL AND src.C_TAGOZAT IS NOT NULL) OR (trg.C_TAGOZAT IS NOT NULL AND src.C_TAGOZAT IS NULL))
OR (trg.C_TANULOCSALADINEVE <> src.C_TANULOCSALADINEVE OR (trg.C_TANULOCSALADINEVE IS NULL AND src.C_TANULOCSALADINEVE IS NOT NULL) OR (trg.C_TANULOCSALADINEVE IS NOT NULL AND src.C_TANULOCSALADINEVE IS NULL))
OR (trg.C_TANULOUTONEVE <> src.C_TANULOUTONEVE OR (trg.C_TANULOUTONEVE IS NULL AND src.C_TANULOUTONEVE IS NOT NULL) OR (trg.C_TANULOUTONEVE IS NOT NULL AND src.C_TANULOUTONEVE IS NULL))
OR (trg.C_FELVETELSTATUSZA <> src.C_FELVETELSTATUSZA OR (trg.C_FELVETELSTATUSZA IS NULL AND src.C_FELVETELSTATUSZA IS NOT NULL) OR (trg.C_FELVETELSTATUSZA IS NOT NULL AND src.C_FELVETELSTATUSZA IS NULL))
OR (trg.C_ELETVITELSZERUOTTLAKASKORZET <> src.C_ELETVITELSZERUOTTLAKASKORZET OR (trg.C_ELETVITELSZERUOTTLAKASKORZET IS NULL AND src.C_ELETVITELSZERUOTTLAKASKORZET IS NOT NULL) OR (trg.C_ELETVITELSZERUOTTLAKASKORZET IS NOT NULL AND src.C_ELETVITELSZERUOTTLAKASKORZET IS NULL))
OR (trg.C_FELADATELLATASIHELYID <> src.C_FELADATELLATASIHELYID OR (trg.C_FELADATELLATASIHELYID IS NULL AND src.C_FELADATELLATASIHELYID IS NOT NULL) OR (trg.C_FELADATELLATASIHELYID IS NOT NULL AND src.C_FELADATELLATASIHELYID IS NULL))
THEN
UPDATE SET
trg.C_AJTO = src.C_AJTO
,trg.C_EDESANYJASZULETESICSALADINEV = src.C_EDESANYJASZULETESICSALADINEV
,trg.C_EDESANYJASZULETESIUTONEVE = src.C_EDESANYJASZULETESIUTONEVE
,trg.C_ELOTAG = src.C_ELOTAG
,trg.C_EMELET = src.C_EMELET
,trg.C_ETIKAHITERKOLCSTAN = src.C_ETIKAHITERKOLCSTAN
,trg.C_FELVETELSTATUSZA = src.C_FELVETELSTATUSZA
,trg.C_HAZSZAM = src.C_HAZSZAM
,trg.C_HELYSEGNEV = src.C_HELYSEGNEV
,trg.C_IRANYITOSZAM = src.C_IRANYITOSZAM
,trg.C_KOZTERULETJELLEGE = src.C_KOZTERULETJELLEGE
,trg.C_KOZTERULETNEV = src.C_KOZTERULETNEV
,trg.C_NEME = src.C_NEME
,trg.C_OKTATASIAZONOSITOSZAMA = src.C_OKTATASIAZONOSITOSZAMA
,trg.C_SZULETESICSALADINEVE = src.C_SZULETESICSALADINEVE
,trg.C_SZULETESIHELY = src.C_SZULETESIHELY
,trg.C_SZULETESIIDO = src.C_SZULETESIIDO
,trg.C_SZULETESIORSZAG = src.C_SZULETESIORSZAG
,trg.C_SZULETESIUTONEVE = src.C_SZULETESIUTONEVE
,trg.C_TAGOZAT = src.C_TAGOZAT
,trg.C_TANULOCSALADINEVE = src.C_TANULOCSALADINEVE
,trg.C_TANULOUTONEVE = src.C_TANULOUTONEVE
,trg.C_ELETVITELSZERUOTTLAKASKORZET = src.C_ELETVITELSZERUOTTLAKASKORZET
,trg.C_FELADATELLATASIHELYID = src.C_FELADATELLATASIHELYID
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID
,C_TANEVNEV
,C_NEBULOID
,C_AJTO
,C_EDESANYJASZULETESICSALADINEV
,C_EDESANYJASZULETESIUTONEVE
,C_ELOTAG
,C_EMELET
,C_ETIKAHITERKOLCSTAN
,C_FELVETELSTATUSZA
,C_HAZSZAM
,C_HELYSEGNEV
,C_IRANYITOSZAM
,C_KOZTERULETJELLEGE
,C_KOZTERULETNEV
,C_NEME
,C_OKTATASIAZONOSITOSZAMA
,C_SZULETESICSALADINEVE
,C_SZULETESIHELY
,C_SZULETESIIDO
,C_SZULETESIORSZAG
,C_SZULETESIUTONEVE
,C_TAGOZAT
,C_TANULOCSALADINEVE
,C_TANULOUTONEVE
,C_ELETVITELSZERUOTTLAKASKORZET
,C_FELADATELLATASIHELYID
,TOROLT
,LASTCHANGED
,CREATED
) VALUES (
src.C_INTEZMENYID
,src.C_TANEVNEV
,src.C_NEBULOID
,src.C_AJTO
,src.C_EDESANYJASZULETESICSALADINEV
,src.C_EDESANYJASZULETESIUTONEVE
,src.C_ELOTAG
,src.C_EMELET
,src.C_ETIKAHITERKOLCSTAN
,src.C_FELVETELSTATUSZA
,src.C_HAZSZAM
,src.C_HELYSEGNEV
,src.C_IRANYITOSZAM
,src.C_KOZTERULETJELLEGE
,src.C_KOZTERULETNEV
,src.C_NEME
,src.C_OKTATASIAZONOSITOSZAMA
,src.C_SZULETESICSALADINEVE
,src.C_SZULETESIHELY
,src.C_SZULETESIIDO
,src.C_SZULETESIORSZAG
,src.C_SZULETESIUTONEVE
,src.C_TAGOZAT
,src.C_TANULOCSALADINEVE
,src.C_TANULOUTONEVE
,src.C_ELETVITELSZERUOTTLAKASKORZET
,src.C_FELADATELLATASIHELYID
,'F'
,GETDATE()
,GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T';
END
GO

View file

@ -0,0 +1,90 @@
IF OBJECT_ID('stage.sp_MrgOsztalyCsoportLetszam') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgOsztalyCsoportLetszam
END
GO
CREATE PROCEDURE stage.sp_MrgOsztalyCsoportLetszam
AS
BEGIN
MERGE stage.T_OSZTALYCSOPORTLETSZAM_STAGE AS trg
USING (
SELECT
ocs.C_INTEZMENYID AS C_INTEZMENYID,
ocs.ID AS C_OSZTALYCSOPORTID,
MAX(cs.C_OSZTALYBONTASID) C_OSZTALYBONTASID,
MAX(ocs.C_EVFOLYAMTIPUSA) as C_EVFOLYAMTIPUSA,
SUM(IIF(tcs.ID IS NOT NULL, 1, 0)) AS C_OSZTALYCSOPORTLETSZAM,
MAX(te.C_NEV) AS C_TANEVNEV,
MAX(ocs.C_NEV) AS C_OSZTALYCSOPORTNEV,
MAX(cs.C_TIPUSA) AS C_CSOPORTTIPUS,
MAX(ocs.C_TERVEZETTLETSZAM) AS C_TERVEZETTLETSZAM,
MAX(IIF(cs.ID IS NULL, 'O', 'CS')) AS C_OSZTALYCSOPORTTIPUS,
MAX(ocs.C_FELADATELLATASIHELYID) AS C_FELADATELLATASIHELYID
FROM dbo.T_OSZTALYCSOPORT ocs
LEFT JOIN dbo.T_TANULOCSOPORT tcs ON ocs.ID = tcs.C_OSZTALYCSOPORTID
LEFT JOIN dbo.T_CSOPORT cs ON cs.ID = ocs.ID
INNER JOIN dbo.T_INTEZMENY i ON i.ID = ocs.C_INTEZMENYID AND i.TOROLT = 'F'
INNER JOIN dbo.T_TANEV te ON te.ID = ocs.C_TANEVID AND te.TOROLT = 'F' -- AND te.C_AKTIV = 'T'
WHERE ocs.TOROLT = 'F' AND i.TOROLT = 'F' AND te.TOROLT = 'F' AND tcs.TOROLT = 'F'
AND (cs.ID IS NULL OR (cs.ID IS NOT NULL AND cs.C_OSZTALYBONTASID IS NOT NULL))
AND tcs.ID IS NULL OR (tcs.C_BELEPESDATUM <= GETDATE() AND (tcs.C_KILEPESDATUM > GETDATE() OR tcs.C_KILEPESDATUM IS NULL))
GROUP BY ocs.ID, ocs.C_INTEZMENYID, ocs.C_TANEVID--, ia.C_ROVIDNEV, ia.C_OMKOD, te.C_NEV
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_OSZTALYCSOPORTID = src.C_OSZTALYCSOPORTID)
WHEN MATCHED AND
(trg.C_EVFOLYAMTIPUSA <> src.C_EVFOLYAMTIPUSA OR (trg.C_EVFOLYAMTIPUSA IS NULL AND src.C_EVFOLYAMTIPUSA IS NOT NULL) OR (trg.C_EVFOLYAMTIPUSA IS NOT NULL AND src.C_EVFOLYAMTIPUSA IS NULL))
OR (trg.C_OSZTALYCSOPORTLETSZAM <> src.C_OSZTALYCSOPORTLETSZAM OR (trg.C_OSZTALYCSOPORTLETSZAM IS NULL AND src.C_OSZTALYCSOPORTLETSZAM IS NOT NULL) OR (trg.C_OSZTALYCSOPORTLETSZAM IS NOT NULL AND src.C_OSZTALYCSOPORTLETSZAM IS NULL))
OR (trg.C_OSZTALYCSOPORTNEV <> src.C_OSZTALYCSOPORTNEV OR (trg.C_OSZTALYCSOPORTNEV IS NULL AND src.C_OSZTALYCSOPORTNEV IS NOT NULL) OR (trg.C_OSZTALYCSOPORTNEV IS NOT NULL AND src.C_OSZTALYCSOPORTNEV IS NULL))
OR (trg.C_OSZTALYBONTASID <> src.C_OSZTALYBONTASID OR (trg.C_OSZTALYBONTASID IS NULL AND src.C_OSZTALYBONTASID IS NOT NULL) OR (trg.C_OSZTALYBONTASID IS NOT NULL AND src.C_OSZTALYBONTASID IS NULL))
OR (trg.C_TERVEZETTLETSZAM <> src.C_TERVEZETTLETSZAM OR (trg.C_TERVEZETTLETSZAM IS NULL AND src.C_TERVEZETTLETSZAM IS NOT NULL) OR (trg.C_TERVEZETTLETSZAM IS NOT NULL AND src.C_TERVEZETTLETSZAM IS NULL))
OR (trg.C_CSOPORTTIPUS <> src.C_CSOPORTTIPUS OR (trg.C_CSOPORTTIPUS IS NULL AND src.C_CSOPORTTIPUS IS NOT NULL) OR (trg.C_CSOPORTTIPUS IS NOT NULL AND src.C_CSOPORTTIPUS IS NULL))
OR (trg.C_FELADATELLATASIHELYID <> src.C_FELADATELLATASIHELYID OR (trg.C_FELADATELLATASIHELYID IS NULL AND src.C_FELADATELLATASIHELYID IS NOT NULL) OR (trg.C_FELADATELLATASIHELYID IS NOT NULL AND src.C_FELADATELLATASIHELYID IS NULL))
THEN
UPDATE SET
trg.C_EVFOLYAMTIPUSA = src.C_EVFOLYAMTIPUSA,
trg.C_OSZTALYCSOPORTLETSZAM = src.C_OSZTALYCSOPORTLETSZAM,
trg.C_OSZTALYCSOPORTNEV = src.C_OSZTALYCSOPORTNEV,
trg.C_OSZTALYBONTASID = src.C_OSZTALYBONTASID,
trg.C_TERVEZETTLETSZAM = src.C_TERVEZETTLETSZAM,
trg.C_CSOPORTTIPUS = src.C_CSOPORTTIPUS,
trg.C_FELADATELLATASIHELYID = src.C_FELADATELLATASIHELYID,
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'F'
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID,
C_OSZTALYCSOPORTID,
C_OSZTALYBONTASID,
C_EVFOLYAMTIPUSA,
C_OSZTALYCSOPORTLETSZAM,
C_OSZTALYCSOPORTNEV,
C_TERVEZETTLETSZAM,
C_CSOPORTTIPUS,
C_OSZTALYCSOPORTTIPUS,
C_TANEVNEV,
C_FELADATELLATASIHELYID,
LASTCHANGED,
TOROLT,
CREATED
) VALUES (
src.C_INTEZMENYID,
src.C_OSZTALYCSOPORTID,
src.C_OSZTALYBONTASID,
src.C_EVFOLYAMTIPUSA,
src.C_OSZTALYCSOPORTLETSZAM,
src.C_OSZTALYCSOPORTNEV,
src.C_TERVEZETTLETSZAM,
src.C_CSOPORTTIPUS,
src.C_OSZTALYCSOPORTTIPUS,
src.C_TANEVNEV,
src.C_FELADATELLATASIHELYID,
GETDATE(),
'F',
GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,27 @@
IF OBJECT_ID('stage.sp_MrgStage') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgStage
END
GO
CREATE PROCEDURE stage.sp_MrgStage
AS
BEGIN
EXEC stage.sp_MrgOsztalyCsoportLetszam;
EXEC stage.sp_MrgTanarAdatok;
EXEC stage.sp_MrgTantargyfelosztas;
EXEC stage.sp_MrgDictionaryItemBase;
EXEC stage.sp_MrgTanuloAdatok;
EXEC stage.sp_MrgFeladatellatasiHely;
EXEC stage.sp_MrgTerem;
EXEC stage.sp_MrgTantargy;
EXEC stage.sp_MrgMukodesihely;
EXEC stage.sp_MrgEslAdat;
EXEC stage.sp_MrgFelhasznaloBelepes;
EXEC stage.sp_MrgFelhasznaloBelepesTortenet;
EXEC stage.sp_MrgIntezmenyHasznalat;
EXEC stage.sp_MrgNebulo;
END;
GO

View file

@ -0,0 +1,151 @@
IF OBJECT_ID('stage.sp_MrgTanarAdatok') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgTanarAdatok
END
GO
CREATE PROCEDURE stage.sp_MrgTanarAdatok
AS
BEGIN
MERGE stage.T_TANARADATOK_STAGE AS trg
USING (
SELECT
i.ID AS C_INTEZMENYID,
t.C_NEV AS C_TANEVNEV,
f.ID AS C_TANARID,
f.C_NYOMTATASINEV AS C_TANARNEV,
f.C_SZULETESIHELY AS C_TANARSZULETESIHELY,
f.C_SZULETESIDATUM AS C_TANARSZULETESIDATUM,
f.C_SZULETESINEV AS C_TANARSZULETESINEV,
f.C_ANYJANEVE AS C_TANARANYJANEVE,
m.C_KOTELEZOORASZAM AS C_KOTELEZOORASZAM,
f.C_NEME AS C_TANARNEME,
m.C_MUNKAKORTIPUSA AS C_MUNKAKORTIPUSA,
m.C_MUNKAVISZONYTIPUSA AS C_MUNKAVISZONYTIPUSA,
m.C_KEPESITES AS C_KEPESITES,
m.C_BETOLTETLENALLASHELY AS C_BETOLTETLENALLASHELY,
m.C_MUNKAIDOKEDVEZMENYORASZAM AS C_MUNKAIDOKEDVEZMENYORASZAM,
m.C_NYUGDIJAS AS C_NYUGDIJAS,
m.C_TARTOSHELYETTESITES AS C_TARTOSHELYETTESITES,
m.C_PEDAGOGUSSTATUSZA AS C_PEDAGOGUSSTATUSZA,
f.C_OKTATASIAZONOSITO AS C_TANAROMKOD,
m.C_FELADATELLATASIHELYID AS C_FELADATELLATASIHELYID,
(SELECT TOP(1) p.C_FOKOZAT FROM T_PEDAGOGUSELETPALYAMODELL p WHERE p.C_TANARID = f.ID ORDER BY p.C_MINOSITESDATUM DESC) AS C_TANARFOKOZAT,
f.C_ADOSZAM AS C_ADOSZAM,
m.C_MUNKAIDOKEDVEZMENYOKA AS C_MUNKAIDOKEDVEZMENYOKA,
f.TOROLT AS TOROLT
FROM T_FELHASZNALO f
INNER JOIN T_ALKALMAZOTT a ON a.ID = f.ID
INNER JOIN T_INTEZMENY i ON i.ID = f.C_INTEZMENYID
INNER JOIN T_TANEV t ON t.ID = f.C_TANEVID
INNER JOIN T_MUNKAUGYIADATOK m ON m.C_ALKALMAZOTTID = a.ID
WHERE f.TOROLT = 'F' AND m.TOROLT = 'F' AND t.TOROLT = 'F' AND i.TOROLT = 'F' AND a.TOROLT = 'F'
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_TANARID = src.C_TANARID)
WHEN MATCHED AND
(trg.C_TANARNEV <> src.C_TANARNEV OR (trg.C_TANARNEV IS NULL AND src.C_TANARNEV IS NOT NULL) OR (trg.C_TANARNEV IS NOT NULL AND src.C_TANARNEV IS NULL))
OR (trg.C_TANARSZULETESIHELY <> src.C_TANARSZULETESIHELY OR (trg.C_TANARSZULETESIHELY IS NULL AND src.C_TANARSZULETESIHELY IS NOT NULL) OR (trg.C_TANARSZULETESIHELY IS NOT NULL AND src.C_TANARSZULETESIHELY IS NULL))
OR (trg.C_TANARSZULETESIDATUM <> src.C_TANARSZULETESIDATUM OR (trg.C_TANARSZULETESIDATUM IS NULL AND src.C_TANARSZULETESIDATUM IS NOT NULL) OR (trg.C_TANARSZULETESIDATUM IS NOT NULL AND src.C_TANARSZULETESIDATUM IS NULL))
OR (trg.C_TANARANYJANEVE <> src.C_TANARANYJANEVE OR (trg.C_TANARANYJANEVE IS NULL AND src.C_TANARANYJANEVE IS NOT NULL) OR (trg.C_TANARANYJANEVE IS NOT NULL AND src.C_TANARANYJANEVE IS NULL))
OR (trg.C_TANARSZULETESINEV <> src.C_TANARSZULETESINEV OR (trg.C_TANARSZULETESINEV IS NULL AND src.C_TANARSZULETESINEV IS NOT NULL) OR (trg.C_TANARSZULETESINEV IS NOT NULL AND src.C_TANARSZULETESINEV IS NULL))
OR (trg.C_KOTELEZOORASZAM <> src.C_KOTELEZOORASZAM OR (trg.C_KOTELEZOORASZAM IS NULL AND src.C_KOTELEZOORASZAM IS NOT NULL) OR (trg.C_KOTELEZOORASZAM IS NOT NULL AND src.C_KOTELEZOORASZAM IS NULL))
OR (trg.C_TANARNEME <> src.C_TANARNEME OR (trg.C_TANARNEME IS NULL AND src.C_TANARNEME IS NOT NULL) OR (trg.C_TANARNEME IS NOT NULL AND src.C_TANARNEME IS NULL))
OR (trg.C_MUNKAKORTIPUSA <> src.C_MUNKAKORTIPUSA OR (trg.C_MUNKAKORTIPUSA IS NULL AND src.C_MUNKAKORTIPUSA IS NOT NULL) OR (trg.C_MUNKAKORTIPUSA IS NOT NULL AND src.C_MUNKAKORTIPUSA IS NULL))
OR (trg.C_MUNKAVISZONYTIPUSA <> src.C_MUNKAVISZONYTIPUSA OR (trg.C_MUNKAVISZONYTIPUSA IS NULL AND src.C_MUNKAVISZONYTIPUSA IS NOT NULL) OR (trg.C_MUNKAVISZONYTIPUSA IS NOT NULL AND src.C_MUNKAVISZONYTIPUSA IS NULL))
OR (trg.C_KEPESITES <> src.C_KEPESITES OR (trg.C_KEPESITES IS NULL AND src.C_KEPESITES IS NOT NULL) OR (trg.C_KEPESITES IS NOT NULL AND src.C_KEPESITES IS NULL))
OR (trg.C_BETOLTETLENALLASHELY <> src.C_BETOLTETLENALLASHELY OR (trg.C_BETOLTETLENALLASHELY IS NULL AND src.C_BETOLTETLENALLASHELY IS NOT NULL) OR (trg.C_BETOLTETLENALLASHELY IS NOT NULL AND src.C_BETOLTETLENALLASHELY IS NULL))
OR (trg.C_TANAROMKOD <> src.C_TANAROMKOD OR (trg.C_TANAROMKOD IS NULL AND src.C_TANAROMKOD IS NOT NULL) OR (trg.C_TANAROMKOD IS NOT NULL AND src.C_TANAROMKOD IS NULL))
OR (trg.C_MUNKAIDOKEDVEZMENYORASZAM <> src.C_MUNKAIDOKEDVEZMENYORASZAM OR (trg.C_MUNKAIDOKEDVEZMENYORASZAM IS NULL AND src.C_MUNKAIDOKEDVEZMENYORASZAM IS NOT NULL) OR (trg.C_MUNKAIDOKEDVEZMENYORASZAM IS NOT NULL AND src.C_MUNKAIDOKEDVEZMENYORASZAM IS NULL))
OR (trg.C_NYUGDIJAS <> src.C_NYUGDIJAS OR (trg.C_NYUGDIJAS IS NULL AND src.C_NYUGDIJAS IS NOT NULL) OR (trg.C_NYUGDIJAS IS NOT NULL AND src.C_NYUGDIJAS IS NULL))
OR (trg.C_TARTOSHELYETTESITES <> src.C_TARTOSHELYETTESITES OR (trg.C_TARTOSHELYETTESITES IS NULL AND src.C_TARTOSHELYETTESITES IS NOT NULL) OR (trg.C_TARTOSHELYETTESITES IS NOT NULL AND src.C_TARTOSHELYETTESITES IS NULL))
OR (trg.C_PEDAGOGUSSTATUSZA <> src.C_PEDAGOGUSSTATUSZA OR (trg.C_PEDAGOGUSSTATUSZA IS NULL AND src.C_PEDAGOGUSSTATUSZA IS NOT NULL) OR (trg.C_PEDAGOGUSSTATUSZA IS NOT NULL AND src.C_PEDAGOGUSSTATUSZA IS NULL))
OR (trg.C_FELADATELLATASIHELYID <> src.C_FELADATELLATASIHELYID OR (trg.C_FELADATELLATASIHELYID IS NULL AND src.C_FELADATELLATASIHELYID IS NOT NULL) OR (trg.C_FELADATELLATASIHELYID IS NOT NULL AND src.C_FELADATELLATASIHELYID IS NULL))
OR (trg.C_TANARFOKOZAT <> src.C_TANARFOKOZAT OR (trg.C_TANARFOKOZAT IS NULL AND src.C_TANARFOKOZAT IS NOT NULL) OR (trg.C_TANARFOKOZAT IS NOT NULL AND src.C_TANARFOKOZAT IS NULL))
OR (trg.C_ADOSZAM <> src.C_ADOSZAM OR (trg.C_ADOSZAM IS NULL AND src.C_ADOSZAM IS NOT NULL) OR (trg.C_ADOSZAM IS NOT NULL AND src.C_ADOSZAM IS NULL))
OR (trg.C_MUNKAIDOKEDVEZMENYOKA <> src.C_MUNKAIDOKEDVEZMENYOKA OR (trg.C_MUNKAIDOKEDVEZMENYOKA IS NULL AND src.C_MUNKAIDOKEDVEZMENYOKA IS NOT NULL) OR (trg.C_MUNKAIDOKEDVEZMENYOKA IS NOT NULL AND src.C_MUNKAIDOKEDVEZMENYOKA IS NULL))
THEN
UPDATE SET
trg.C_TANARNEV = src.C_TANARNEV
,trg.C_TANARSZULETESIHELY = src.C_TANARSZULETESIHELY
,trg.C_TANARSZULETESIDATUM = src.C_TANARSZULETESIDATUM
,trg.C_TANARSZULETESINEV = src.C_TANARSZULETESINEV
,trg.C_TANARANYJANEVE = src.C_TANARANYJANEVE
,trg.C_KOTELEZOORASZAM = src.C_KOTELEZOORASZAM
,trg.C_TANARNEME = src.C_TANARNEME
,trg.C_MUNKAKORTIPUSA = src.C_MUNKAKORTIPUSA
,trg.C_MUNKAVISZONYTIPUSA = src.C_MUNKAVISZONYTIPUSA
,trg.C_KEPESITES = src.C_KEPESITES
,trg.C_BETOLTETLENALLASHELY = src.C_BETOLTETLENALLASHELY
,trg.C_TANAROMKOD = src.C_TANAROMKOD
,trg.C_MUNKAIDOKEDVEZMENYORASZAM = src.C_MUNKAIDOKEDVEZMENYORASZAM
,trg.C_NYUGDIJAS = src.C_NYUGDIJAS
,trg.C_TARTOSHELYETTESITES = src.C_TARTOSHELYETTESITES
,trg.C_PEDAGOGUSSTATUSZA = src.C_PEDAGOGUSSTATUSZA
,trg.C_FELADATELLATASIHELYID = src.C_FELADATELLATASIHELYID
,trg.C_TANARFOKOZAT = src.C_TANARFOKOZAT
,trg.C_ADOSZAM = src.C_ADOSZAM
,trg.C_MUNKAIDOKEDVEZMENYOKA = src.C_MUNKAIDOKEDVEZMENYOKA
,trg.TOROLT = src.TOROLT
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID,
C_TANEVNEV,
C_TANARID,
C_TANARNEV,
C_TANARSZULETESIHELY,
C_TANARSZULETESIDATUM,
C_TANARSZULETESINEV,
C_TANARANYJANEVE,
C_TANAROMKOD,
C_KOTELEZOORASZAM,
C_TANARNEME,
C_MUNKAKORTIPUSA,
C_MUNKAVISZONYTIPUSA,
C_KEPESITES,
C_BETOLTETLENALLASHELY,
C_MUNKAIDOKEDVEZMENYORASZAM,
C_NYUGDIJAS,
C_TARTOSHELYETTESITES,
C_PEDAGOGUSSTATUSZA,
C_FELADATELLATASIHELYID,
C_TANARFOKOZAT,
C_ADOSZAM,
C_MUNKAIDOKEDVEZMENYOKA,
TOROLT,
LASTCHANGED,
CREATED
) VALUES (
src.C_INTEZMENYID,
src.C_TANEVNEV,
src.C_TANARID,
src.C_TANARNEV,
src.C_TANARSZULETESIHELY,
src.C_TANARSZULETESIDATUM,
src.C_TANARSZULETESINEV,
src.C_TANARANYJANEVE,
src.C_TANAROMKOD,
src.C_KOTELEZOORASZAM,
src.C_TANARNEME,
src.C_MUNKAKORTIPUSA,
src.C_MUNKAVISZONYTIPUSA,
src.C_KEPESITES,
src.C_BETOLTETLENALLASHELY,
src.C_MUNKAIDOKEDVEZMENYORASZAM,
src.C_NYUGDIJAS,
src.C_TARTOSHELYETTESITES,
src.C_PEDAGOGUSSTATUSZA,
src.C_FELADATELLATASIHELYID,
src.C_TANARFOKOZAT,
src.C_ADOSZAM,
src.C_MUNKAIDOKEDVEZMENYOKA,
'F',
GETDATE(),
GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,76 @@
IF OBJECT_ID('stage.sp_MrgTantargy') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgTantargy
END
GO
CREATE PROCEDURE stage.sp_MrgTantargy
AS
BEGIN
MERGE stage.T_TANTARGY_STAGE AS trg
USING (
SELECT
tt.C_INTEZMENYID AS C_INTEZMENYID
,t.C_NEV AS C_TANEVNEV
,tt.ID AS C_TANTARGYID
,tt.C_GYAKORLATI
,tt.C_NEV
,tt.C_ROVIDNEV
,tt.C_TARGYKATEGORIA
,tt.C_FOTARGYE
,tt.C_FOTARGYID
FROM dbo.T_TANTARGY tt
INNER JOIN dbo.T_TANEV t ON t.ID = tt.C_TANEVID
WHERE tt.TOROLT = 'F'
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_TANTARGYID = src.C_TANTARGYID)
WHEN MATCHED AND
(trg.C_GYAKORLATI <> src.C_GYAKORLATI OR (trg.C_GYAKORLATI IS NULL AND src.C_GYAKORLATI IS NOT NULL) OR (trg.C_GYAKORLATI IS NOT NULL AND src.C_GYAKORLATI IS NULL))
OR (trg.C_NEV <> src.C_NEV OR (trg.C_NEV IS NULL AND src.C_NEV IS NOT NULL) OR (trg.C_NEV IS NOT NULL AND src.C_NEV IS NULL))
OR (trg.C_ROVIDNEV <> src.C_ROVIDNEV OR (trg.C_ROVIDNEV IS NULL AND src.C_ROVIDNEV IS NOT NULL) OR (trg.C_ROVIDNEV IS NOT NULL AND src.C_ROVIDNEV IS NULL))
OR (trg.C_TARGYKATEGORIA <> src.C_TARGYKATEGORIA OR (trg.C_TARGYKATEGORIA IS NULL AND src.C_TARGYKATEGORIA IS NOT NULL) OR (trg.C_TARGYKATEGORIA IS NOT NULL AND src.C_TARGYKATEGORIA IS NULL))
OR (trg.C_FOTARGYE <> src.C_FOTARGYE OR (trg.C_FOTARGYE IS NULL AND src.C_FOTARGYE IS NOT NULL) OR (trg.C_FOTARGYE IS NOT NULL AND src.C_FOTARGYE IS NULL))
OR (trg.C_FOTARGYID <> src.C_FOTARGYID OR (trg.C_FOTARGYID IS NULL AND src.C_FOTARGYID IS NOT NULL) OR (trg.C_FOTARGYID IS NOT NULL AND src.C_FOTARGYID IS NULL))
THEN
UPDATE SET
trg.C_GYAKORLATI = src.C_GYAKORLATI
,trg.C_NEV = src.C_NEV
,trg.C_ROVIDNEV = src.C_ROVIDNEV
,trg.C_TARGYKATEGORIA = src.C_TARGYKATEGORIA
,trg.C_FOTARGYE = src.C_FOTARGYE
,trg.C_FOTARGYID = src.C_FOTARGYID
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID
,C_TANEVNEV
,C_TANTARGYID
,C_GYAKORLATI
,C_NEV
,C_ROVIDNEV
,C_TARGYKATEGORIA
,C_FOTARGYE
,C_FOTARGYID
,TOROLT
,LASTCHANGED
,CREATED
) VALUES (
src.C_INTEZMENYID
,src.C_TANEVNEV
,src.C_TANTARGYID
,src.C_GYAKORLATI
,src.C_NEV
,src.C_ROVIDNEV
,src.C_TARGYKATEGORIA
,src.C_FOTARGYE
,src.C_FOTARGYID
,'F'
,GETDATE()
,GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,85 @@
IF OBJECT_ID('stage.sp_MrgTantargyfelosztas') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgTantargyfelosztas
END
GO
CREATE PROCEDURE stage.sp_MrgTantargyfelosztas
AS
BEGIN
MERGE stage.T_TANTARGYFELOSZTAS_STAGE AS trg
USING (
SELECT
i.ID AS C_INTEZMENYID,
t.C_NEV AS C_TANEVNEV,
f.ID AS C_FOGLALKOZASID,
ft.C_TANAROKID AS C_TANARID,
f.C_OSZTALYCSOPORTID AS C_OSZTALYCSOPORTID,
IIF(o.ID IS NOT NULL, 'O', 'CS') AS C_OSZTALYCSOPORTTIPUS,
f.C_TANTARGYID AS C_TANTARGYID,
tt.C_NEV AS C_TANTARGYNEV,
tt.C_TARGYKATEGORIA AS C_TANTARGYKATEGORIA,
f.C_ORASZAM AS C_ORASZAM
FROM T_FOGLALKOZAS f
INNER JOIN T_INTEZMENY i ON i.ID = f.C_INTEZMENYID
INNER JOIN T_TANEV t ON t.ID = f.C_TANEVID
INNER JOIN T_FOGLALKOZASOK_TANAROK ft ON ft.C_FOGLALKOZASOKID = f.ID
INNER JOIN T_TANTARGY tt ON tt.ID = f.C_TANTARGYID
LEFT JOIN T_OSZTALY o ON o.ID = f.C_OSZTALYCSOPORTID
LEFT JOIN T_CSOPORT cs ON cs.ID = f.C_OSZTALYCSOPORTID
WHERE f.TOROLT = 'F' AND i.TOROLT = 'F' AND t.TOROLT = 'F' AND tt.TOROLT = 'F'
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_FOGLALKOZASID = src.C_FOGLALKOZASID)
WHEN MATCHED AND
(trg.C_OSZTALYCSOPORTID <> src.C_OSZTALYCSOPORTID OR (trg.C_OSZTALYCSOPORTID IS NULL AND src.C_OSZTALYCSOPORTID IS NOT NULL) OR (trg.C_OSZTALYCSOPORTID IS NOT NULL AND src.C_OSZTALYCSOPORTID IS NULL))
OR (trg.C_OSZTALYCSOPORTTIPUS <> src.C_OSZTALYCSOPORTTIPUS OR (trg.C_OSZTALYCSOPORTTIPUS IS NULL AND src.C_OSZTALYCSOPORTTIPUS IS NOT NULL) OR (trg.C_OSZTALYCSOPORTTIPUS IS NOT NULL AND src.C_OSZTALYCSOPORTTIPUS IS NULL))
OR (trg.C_TANTARGYID <> src.C_TANTARGYID OR (trg.C_TANTARGYID IS NULL AND src.C_TANTARGYID IS NOT NULL) OR (trg.C_TANTARGYID IS NOT NULL AND src.C_TANTARGYID IS NULL))
OR (trg.C_TANTARGYNEV <> src.C_TANTARGYNEV OR (trg.C_TANTARGYNEV IS NULL AND src.C_TANTARGYNEV IS NOT NULL) OR (trg.C_TANTARGYNEV IS NOT NULL AND src.C_TANTARGYNEV IS NULL))
OR (trg.C_TANTARGYKATEGORIA <> src.C_TANTARGYKATEGORIA OR (trg.C_TANTARGYKATEGORIA IS NULL AND src.C_TANTARGYKATEGORIA IS NOT NULL) OR (trg.C_TANTARGYKATEGORIA IS NOT NULL AND src.C_TANTARGYKATEGORIA IS NULL))
OR (trg.C_ORASZAM <> src.C_ORASZAM OR (trg.C_ORASZAM IS NULL AND src.C_ORASZAM IS NOT NULL) OR (trg.C_ORASZAM IS NOT NULL AND src.C_ORASZAM IS NULL))
THEN
UPDATE SET
trg.C_TANARID = src.C_TANARID
,trg.C_OSZTALYCSOPORTID = src.C_OSZTALYCSOPORTID
,trg.C_OSZTALYCSOPORTTIPUS = src.C_OSZTALYCSOPORTTIPUS
,trg.C_TANTARGYID = src.C_TANTARGYID
,trg.C_TANTARGYNEV = src.C_TANTARGYNEV
,trg.C_TANTARGYKATEGORIA = src.C_TANTARGYKATEGORIA
,trg.C_ORASZAM = src.C_ORASZAM
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID,
C_TANEVNEV,
C_FOGLALKOZASID,
C_TANARID,
C_OSZTALYCSOPORTID,
C_OSZTALYCSOPORTTIPUS,
C_TANTARGYID,
C_TANTARGYNEV,
C_TANTARGYKATEGORIA,
C_ORASZAM,
TOROLT,
LASTCHANGED,
CREATED
) VALUES (
src.C_INTEZMENYID,
src.C_TANEVNEV,
src.C_FOGLALKOZASID,
src.C_TANARID,
src.C_OSZTALYCSOPORTID,
src.C_OSZTALYCSOPORTTIPUS,
src.C_TANTARGYID,
src.C_TANTARGYNEV,
src.C_TANTARGYKATEGORIA,
src.C_ORASZAM,
'F',
GETDATE(),
GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,88 @@
IF OBJECT_ID('stage.sp_MrgTanuloAdatok') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgTanuloAdatok
END
GO
CREATE PROCEDURE stage.sp_MrgTanuloAdatok
AS
BEGIN
MERGE stage.T_TANULOADATOK_STAGE AS trg
USING (
SELECT
i.ID AS C_INTEZMENYID,
t.C_NEV AS C_TANEVNEV,
f.ID AS C_TANULOID,
f.C_NEME AS C_TANULONEME,
f.C_SZULETESIDATUM AS C_TANULOSZULETESIDATUM,
f.C_OKTATASIAZONOSITO AS C_OKTATASIAZONOSITO,
tn.C_SAJATOSNEVELESU AS C_SAJATOSNEVELESU,
tn.C_BTMPROBLEMAS AS C_BTMPROBLEMAS,
tn.C_SNILETSZAMSULY AS C_SNILETSZAMSULY,
tn.C_BTMLETSZAMSULY AS C_BTMLETSZAMSULY,
f.TOROLT AS TOROLT
FROM dbo.T_FELHASZNALO f
INNER JOIN dbo.T_TANULO tn ON tn.ID = f.ID
INNER JOIN dbo.T_INTEZMENY i ON i.ID = f.C_INTEZMENYID
INNER JOIN dbo.T_TANEV t ON t.ID = f.C_TANEVID
INNER JOIN dbo.T_TANULOCSOPORT tcs ON tcs.C_TANULOID = tn.ID
INNER JOIN dbo.T_OSZTALY o ON o.ID = tcs.C_OSZTALYCSOPORTID
INNER JOIN dbo.T_OSZTALYCSOPORT ocs ON ocs.ID = o.ID
WHERE f.TOROLT = 'F' AND i.TOROLT = 'F' AND t.TOROLT = 'F' AND tcs.TOROLT = 'F' AND o.TOROLT = 'F' AND ocs.TOROLT = 'F'
AND tcs.C_BELEPESDATUM <= GETDATE() AND (tcs.C_KILEPESDATUM > GETDATE() OR tcs.C_KILEPESDATUM IS NULL)
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_TANULOID = src.C_TANULOID)
WHEN MATCHED AND
(trg.C_TANULONEME <> src.C_TANULONEME OR (trg.C_TANULONEME IS NULL AND src.C_TANULONEME IS NOT NULL) OR (trg.C_TANULONEME IS NOT NULL AND src.C_TANULONEME IS NULL))
OR (trg.C_TANULOSZULETESIDATUM <> src.C_TANULOSZULETESIDATUM OR (trg.C_TANULOSZULETESIDATUM IS NULL AND src.C_TANULOSZULETESIDATUM IS NOT NULL) OR (trg.C_TANULOSZULETESIDATUM IS NOT NULL AND src.C_TANULOSZULETESIDATUM IS NULL))
OR (trg.C_SAJATOSNEVELESU <> src.C_SAJATOSNEVELESU OR (trg.C_SAJATOSNEVELESU IS NULL AND src.C_SAJATOSNEVELESU IS NOT NULL) OR (trg.C_SAJATOSNEVELESU IS NOT NULL AND src.C_SAJATOSNEVELESU IS NULL))
OR (trg.C_BTMPROBLEMAS <> src.C_BTMPROBLEMAS OR (trg.C_BTMPROBLEMAS IS NULL AND src.C_BTMPROBLEMAS IS NOT NULL) OR (trg.C_BTMPROBLEMAS IS NOT NULL AND src.C_BTMPROBLEMAS IS NULL))
OR (trg.C_SNILETSZAMSULY <> src.C_SNILETSZAMSULY OR (trg.C_SNILETSZAMSULY IS NULL AND src.C_SNILETSZAMSULY IS NOT NULL) OR (trg.C_SNILETSZAMSULY IS NOT NULL AND src.C_SNILETSZAMSULY IS NULL))
OR (trg.C_BTMLETSZAMSULY <> src.C_BTMLETSZAMSULY OR (trg.C_BTMLETSZAMSULY IS NULL AND src.C_BTMLETSZAMSULY IS NOT NULL) OR (trg.C_BTMLETSZAMSULY IS NOT NULL AND src.C_BTMLETSZAMSULY IS NULL))
OR (trg.C_OKTATASIAZONOSITO <> src.C_OKTATASIAZONOSITO OR (trg.C_OKTATASIAZONOSITO IS NULL AND src.C_OKTATASIAZONOSITO IS NOT NULL) OR (trg.C_OKTATASIAZONOSITO IS NOT NULL AND src.C_OKTATASIAZONOSITO IS NULL))
THEN
UPDATE SET
trg.C_TANULONEME = src.C_TANULONEME
,trg.C_TANULOSZULETESIDATUM = src.C_TANULOSZULETESIDATUM
,trg.C_SAJATOSNEVELESU = src.C_SAJATOSNEVELESU
,trg.C_BTMPROBLEMAS = src.C_BTMPROBLEMAS
,trg.C_SNILETSZAMSULY = src.C_SNILETSZAMSULY
,trg.C_BTMLETSZAMSULY = src.C_BTMLETSZAMSULY
,trg.C_OKTATASIAZONOSITO = src.C_OKTATASIAZONOSITO
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID,
C_TANEVNEV,
C_TANULOID,
C_TANULONEME,
C_TANULOSZULETESIDATUM,
C_SAJATOSNEVELESU,
C_BTMPROBLEMAS,
C_SNILETSZAMSULY,
C_BTMLETSZAMSULY,
C_OKTATASIAZONOSITO,
TOROLT,
LASTCHANGED,
CREATED
) VALUES (
src.C_INTEZMENYID,
src.C_TANEVNEV,
src.C_TANULOID,
src.C_TANULONEME,
src.C_TANULOSZULETESIDATUM,
src.C_SAJATOSNEVELESU,
src.C_BTMPROBLEMAS,
src.C_SNILETSZAMSULY,
src.C_BTMLETSZAMSULY,
src.C_OKTATASIAZONOSITO,
'F',
GETDATE(),
GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,91 @@
IF OBJECT_ID('stage.sp_MrgTerem') IS NOT NULL BEGIN
DROP PROCEDURE stage.sp_MrgTerem
END
GO
CREATE PROCEDURE stage.sp_MrgTerem
AS
BEGIN
MERGE stage.T_TEREM_STAGE AS trg
USING (
SELECT
tm.C_INTEZMENYID AS C_INTEZMENYID
,t.C_NEV AS C_TANEVNEV
,tm.ID AS C_TEREMID
,tm.C_AKTIV AS C_AKTIV
,tm.C_JELLEG AS C_JELLEG
,tm.C_KAPACITAS AS C_KAPACITAS
,tm.C_NEV AS C_NEV
,tm.C_TERULET AS C_TERULET
,tm.C_TOBBORATLEHETTARTANI AS C_TOBBORATLEHETTARTANI
,tm.C_VIZSGAKAPACITAS AS C_VIZSGAKAPACITAS
,tm.C_MUKODESIHELYID AS C_MUKODESIHELYID
,tm.C_TEREMFELELOSID AS C_TEREMFELELOSID
FROM dbo.T_TEREM tm
INNER JOIN dbo.T_TANEV t ON t.ID = tm.C_TANEVID
WHERE tm.TOROLT = 'F'
) src ON (trg.C_INTEZMENYID = src.C_INTEZMENYID AND trg.C_TEREMID = src.C_TEREMID)
WHEN MATCHED AND
(trg.C_AKTIV <> src.C_AKTIV OR (trg.C_AKTIV IS NULL AND src.C_AKTIV IS NOT NULL) OR (trg.C_AKTIV IS NOT NULL AND src.C_AKTIV IS NULL))
OR (trg.C_JELLEG <> src.C_JELLEG OR (trg.C_JELLEG IS NULL AND src.C_JELLEG IS NOT NULL) OR (trg.C_JELLEG IS NOT NULL AND src.C_JELLEG IS NULL))
OR (trg.C_KAPACITAS <> src.C_KAPACITAS OR (trg.C_KAPACITAS IS NULL AND src.C_KAPACITAS IS NOT NULL) OR (trg.C_KAPACITAS IS NOT NULL AND src.C_KAPACITAS IS NULL))
OR (trg.C_NEV <> src.C_NEV OR (trg.C_NEV IS NULL AND src.C_NEV IS NOT NULL) OR (trg.C_NEV IS NOT NULL AND src.C_NEV IS NULL))
OR (trg.C_TERULET <> src.C_TERULET OR (trg.C_TERULET IS NULL AND src.C_TERULET IS NOT NULL) OR (trg.C_TERULET IS NOT NULL AND src.C_TERULET IS NULL))
OR (trg.C_TOBBORATLEHETTARTANI <> src.C_TOBBORATLEHETTARTANI OR (trg.C_TOBBORATLEHETTARTANI IS NULL AND src.C_TOBBORATLEHETTARTANI IS NOT NULL) OR (trg.C_TOBBORATLEHETTARTANI IS NOT NULL AND src.C_TOBBORATLEHETTARTANI IS NULL))
OR (trg.C_VIZSGAKAPACITAS <> src.C_VIZSGAKAPACITAS OR (trg.C_VIZSGAKAPACITAS IS NULL AND src.C_VIZSGAKAPACITAS IS NOT NULL) OR (trg.C_VIZSGAKAPACITAS IS NOT NULL AND src.C_VIZSGAKAPACITAS IS NULL))
OR (trg.C_MUKODESIHELYID <> src.C_MUKODESIHELYID OR (trg.C_MUKODESIHELYID IS NULL AND src.C_MUKODESIHELYID IS NOT NULL) OR (trg.C_MUKODESIHELYID IS NOT NULL AND src.C_MUKODESIHELYID IS NULL))
OR (trg.C_TEREMFELELOSID <> src.C_TEREMFELELOSID OR (trg.C_TEREMFELELOSID IS NULL AND src.C_TEREMFELELOSID IS NOT NULL) OR (trg.C_TEREMFELELOSID IS NOT NULL AND src.C_TEREMFELELOSID IS NULL))
THEN
UPDATE SET
trg.C_AKTIV = src.C_AKTIV
,trg.C_JELLEG = src.C_JELLEG
,trg.C_KAPACITAS = src.C_KAPACITAS
,trg.C_NEV = src.C_NEV
,trg.C_TERULET = src.C_TERULET
,trg.C_TOBBORATLEHETTARTANI = src.C_TOBBORATLEHETTARTANI
,trg.C_VIZSGAKAPACITAS = src.C_VIZSGAKAPACITAS
,trg.C_MUKODESIHELYID = src.C_MUKODESIHELYID
,trg.C_TEREMFELELOSID = src.C_TEREMFELELOSID
,trg.LASTCHANGED = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (
C_INTEZMENYID
,C_TANEVNEV
,C_TEREMID
,C_AKTIV
,C_JELLEG
,C_KAPACITAS
,C_NEV
,C_TERULET
,C_TOBBORATLEHETTARTANI
,C_VIZSGAKAPACITAS
,C_MUKODESIHELYID
,C_TEREMFELELOSID
,TOROLT
,LASTCHANGED
,CREATED
) VALUES (
src.C_INTEZMENYID
,src.C_TANEVNEV
,src.C_TEREMID
,src.C_AKTIV
,src.C_JELLEG
,src.C_KAPACITAS
,src.C_NEV
,src.C_TERULET
,src.C_TOBBORATLEHETTARTANI
,src.C_VIZSGAKAPACITAS
,src.C_MUKODESIHELYID
,src.C_TEREMFELELOSID
,'F'
,GETDATE()
,GETDATE()
)
WHEN NOT MATCHED BY SOURCE AND trg.TOROLT = 'F' THEN
UPDATE SET
trg.LASTCHANGED = GETDATE(),
trg.TOROLT = 'T'
;
END
GO

View file

@ -0,0 +1,67 @@
GO
/****** Object: StoredProcedure [dbo].[sp_AscValidateOsztalyCsoportTantargy] Script Date: 2016.11.04. 9:39:21 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Badó Gábor
-- Create date: 2016.11.03.
-- Description: Az xml ből kapott tantargyakat, osztalyokat, csoportokat ellenörzi
-- =============================================
CREATE PROCEDURE [dbo].[sp_AscValidateOsztalyCsoportTantargy]
-- Add the parameters for the stored procedure here
@XML as XML
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @TEMPTANTARGYAK TABLE ( TANTARGYNEV NVARCHAR(255))
DECLARE @TEMPOSZTALYOK TABLE ( OSZTALYNEV NVARCHAR(255))
DECLARE @TEMPCSOPORTOK TABLE ( CSOPORTNEV NVARCHAR(255))
INSERT INTO @TEMPTANTARGYAK
SELECT DISTINCT TANTARGYNEV = Tantargy.value('(.)[1]', 'NVARCHAR(255)')
FROM @XML.nodes('/AscValidator/Tantargyak/string') as TANTARGYAK(Tantargy)
INSERT INTO @TEMPOSZTALYOK
SELECT DISTINCT OSZTALYNEV = Osztaly.value('(.)[1]', 'NVARCHAR(255)')
FROM @XML.nodes('/AscValidator/Osztalyok/string') as OSZTALYOK(Osztaly)
INSERT INTO @TEMPCSOPORTOK
SELECT DISTINCT CSOPORTNEV = Csoport.value('(.)[1]', 'NVARCHAR(255)')
FROM @XML.nodes('/AscValidator/Csoportok/string') as CSOPORTOK(Csoport)
Select TANTARGYAK.TANTARGYNEV ,COUNT(Tantargy.ID) TANTARGYAKSZAMA
from @TEMPTANTARGYAK TANTARGYAK
left join T_TANTARGY Tantargy on Tantargy.c_nev = ( RTRIM(LTRIM(TANTARGYAK.TANTARGYNEV)))
Group by TANTARGYAK.TANTARGYNEV,Tantargy.ID
Having (COUNT(Tantargy.ID) != 1)
Order by TANTARGYAK.TANTARGYNEV,Tantargy.ID
Select TEMPOSZTALYOK.OSZTALYNEV ,COUNT(OSZTALYOK.id) OSZTALYOKSZAMA
from @TEMPOSZTALYOK TEMPOSZTALYOK
left join T_OSZTALYCSOPORT OCS on OCS.C_NEV = ( RTRIM(LTRIM(TEMPOSZTALYOK.OSZTALYNEV)))
left join T_OSZTALY OSZTALYOK on OSZTALYOK.id = OCS.id
group by TEMPOSZTALYOK.OSZTALYNEV,OSZTALYOK.id
Having(COUNT(OSZTALYOK.id) != 1)
Order by TEMPOSZTALYOK.OSZTALYNEV,OSZTALYOK.id
Select TEMPCSOPORTOK.CSOPORTNEV ,COUNT(Cs.ID) CSOPORTOKSZAMA
from @TEMPCSOPORTOK TEMPCSOPORTOK
left join T_OSZTALYCSOPORT OCS on OCS.C_NEV = ( RTRIM(LTRIM(TEMPCSOPORTOK.CSOPORTNEV)))
left join T_Csoport Cs on Cs.id = OCS.id
group by TEMPCSOPORTOK.CSOPORTNEV,Cs.id
Having(COUNT(Cs.id) != 1)
Order by TEMPCSOPORTOK.CSOPORTNEV,Cs.id
END
GO

View file

@ -0,0 +1,45 @@
-- =============================================
-- Description: <Ellenőrizzuk, hogy a felhasználóhoz tartozik-e a paraméterben megadott szerepkor>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_CheckFelhasznaloHasSzerepkor]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_CheckFelhasznaloHasSzerepkor]
END
GO
CREATE PROCEDURE [dbo].[sp_CheckFelhasznaloHasSzerepkor]
@pFelhasznaloId AS INT,
@pSzerepkorTipusId AS INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
IF EXISTS(
SELECT 1
FROM
T_FELHASZNALO felhasznalo
LEFT JOIN
T_FELHASZNALO_SZEREPKOR felhasznaloSzerepkor ON
felhasznaloSzerepkor.C_FELHASZNALOID = felhasznalo.ID
LEFT JOIN
T_SZEREPKOR szerepkor ON
szerepkor.ID = felhasznaloSzerepkor.C_SZEREPKORID
WHERE
felhasznalo.TOROLT = 'F' AND
felhasznalo.ID = @pFelhasznaloId AND
szerepkor.TOROLT = 'F' AND
szerepkor.C_SZEREPKORTIPUS = @pSzerepkorTipusId
)
SELECT 1
ELSE
SELECT 0
END

View file

@ -0,0 +1,46 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_CheckOktatasiAzonositoUtkozesValidation]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_CheckOktatasiAzonositoUtkozesValidation]
END
GO
-- =============================================
-- Description: <Ellenőrizzuk, hogy a megadott oktatási azonosító szerepel e már valamelyik tanulónál vagy nebulónál>
-- =============================================
CREATE PROCEDURE [dbo].sp_CheckOktatasiAzonositoUtkozesValidation
@pNebuloId AS INT = NULL,
@pOktatasiAzonosito NVARCHAR(20)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
IF
EXISTS (SELECT 1
FROM
T_NEBULO
WHERE
T_NEBULO.TOROLT = 'F'
AND T_NEBULO.C_OKTATASIAZONOSITOSZAMA = @pOktatasiAzonosito
AND (@pNebuloId IS NULL OR T_NEBULO.ID != @pNebuloId)
) OR
EXISTS (SELECT 1
FROM
T_FELHASZNALO
WHERE
T_FELHASZNALO.TOROLT = 'F'
AND T_FELHASZNALO.C_OKTATASIAZONOSITO = @pOktatasiAzonosito
)
SELECT 1
ELSE
SELECT 0
END

View file

@ -0,0 +1,53 @@
GO
/****** Object: StoredProcedure [dbo].[sp_CheckTanarOra] Script Date: 2016.09.05. 16:45:02 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[sp_CheckTanarOra]
@tanarId int,
@start datetime,
@end datetime,
@IntezmenyId int,
@TanevId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
declare @startDate datetime;
set @startDate = CAST(@start AS DATE)
declare @csengetesiRendId int;
set @csengetesiRendId = (select C_AKTIVCSENGETESIRENDID from T_NAPTARINAP nn where nn.C_NAPDATUMA = @startDate and nn.C_INTEZMENYID = @IntezmenyId and nn.C_TANEVID = @TanevId and nn.TOROLT = 'F')
declare @hetNapId int;
set @hetNapId = (select C_HETNAPJA from T_NAPTARINAP nn where nn.C_NAPDATUMA = @startDate and nn.C_INTEZMENYID = @IntezmenyId and nn.C_TANEVID = @TanevId and nn.TOROLT = 'F')
if(@csengetesiRendId is null) set @csengetesiRendId = (select ID from T_CSENGETESIREND where C_INTEZMENYID = @IntezmenyId and C_TANEVID = @TanevId and C_AKTIV = 'T' and TOROLT = 'F')
declare @csengetesiRendOraId int;
set @csengetesiRendOraId = (select ID from T_CSENGETESIRENDORA where C_CSENGETESIRENDID = @csengetesiRendId and CAST(C_KEZDETE as TIME) = CAST(@start AS Time) and CAST(C_VEGE as TIME) = CAST(@end AS Time) and C_INTEZMENYID = @IntezmenyId and C_TANEVID = @TanevId and TOROLT = 'F')
if ((select count(*) from T_ORARENDIORA where C_TANARID = @tanarId and C_CSENGETESIRENDORAID = @csengetesiRendOraId and C_HETNAPJA = @hetNapId and C_INTEZMENYID = @IntezmenyId and C_TANEVID = @TanevId and TOROLT = 'F' and CAST(@start as date) >= C_ORAERVENYESSEGKEZDETE and CAST(@start as date) <= C_ORAERVENYESSEGVEGE and CAST(@end as date) >= C_ORAERVENYESSEGKEZDETE and CAST(@end as date) <= C_ORAERVENYESSEGVEGE) = 1)
begin
declare @orarendiOraId int;
set @orarendiOraId = (select ID from T_ORARENDIORA where C_TANARID = @tanarId and C_CSENGETESIRENDORAID = @csengetesiRendOraId and C_HETNAPJA = @hetNapId and C_INTEZMENYID = @IntezmenyId and C_TANEVID = @TanevId and TOROLT = 'F' and CAST(@start as date) >= C_ORAERVENYESSEGKEZDETE and CAST(@start as date) <= C_ORAERVENYESSEGVEGE and CAST(@end as date) >= C_ORAERVENYESSEGKEZDETE and CAST(@end as date) <= C_ORAERVENYESSEGVEGE)
declare @tanitasiOraId int;
set @tanitasiOraId = (select ID from T_TANITASIORA where C_ORARENDIORAID = @orarendiOraId and C_ORAKEZDETE = @start and C_ORAVEGE = @end and C_INTEZMENYID = @IntezmenyId and C_TANEVID = @TanevId and TOROLT = 'F')
if(@tanitasiOraId is null)
select C_FOGLALKOZASID, C_TEREMID, C_TANTARGYID, C_OSZTALYCSOPORTID, ID as C_ORARENDIORAID from T_ORARENDIORA where Id = @orarendiOraId and C_INTEZMENYID = @IntezmenyId and C_TANEVID = @TanevId and TOROLT = 'F'
else
select C_FOGLALKOZASID, C_TEREMID, C_TANTARGYID, C_OSZTALYCSOPORTID, ID as C_ORARENDIORAID from T_ORARENDIORA where Id = -1
end
else
begin
select C_FOGLALKOZASID, C_TEREMID, C_TANTARGYID, C_OSZTALYCSOPORTID, ID as C_ORARENDIORAID from T_ORARENDIORA where Id = -1
end
END

View file

@ -0,0 +1,60 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('dbo.[sp_CheckTanuloEgyszerAdhatoErtekelesValidation]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].sp_CheckTanuloEgyszerAdhatoErtekelesValidation
END
GO
-- =============================================
-- Author: <Szikora Zoltán>
-- Create date: <2016. 09. 01.>
-- Description: <Ellenőrizzuk, hogy a tanuló van-e már egyszer adható jegye, ha nincs akkor true, ha van akkor false>
-- =============================================
CREATE PROCEDURE [dbo].sp_CheckTanuloEgyszerAdhatoErtekelesValidation
@pErtekelesId AS INT,
@pErtekelesTipusId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @TanuloId AS INT
DECLARE @TantargyId AS INT
SELECT
@TanuloId = T_TANULOERTEKELES_OSSZES.C_TANULOID,
@TantargyId = T_TANULOERTEKELES_OSSZES.C_TANTARGYID
FROM
T_TANULOERTEKELES_OSSZES
WHERE
T_TANULOERTEKELES_OSSZES.ID = @pErtekelesId
SET @TanuloId = (SELECT
T_TANULOERTEKELES_OSSZES.C_TANULOID
FROM
T_TANULOERTEKELES_OSSZES
WHERE
T_TANULOERTEKELES_OSSZES.ID = @pErtekelesId)
IF EXISTS (SELECT 1
FROM
T_TANULOERTEKELES_OSSZES
WHERE
T_TANULOERTEKELES_OSSZES.TOROLT = 'F'
AND T_TANULOERTEKELES_OSSZES.C_ERTEKELESTIPUSA = @pErtekelesTipusId
AND T_TANULOERTEKELES_OSSZES.C_TANULOID = @TanuloId
AND T_TANULOERTEKELES_OSSZES.C_TANTARGYID = @TantargyId
AND T_TANULOERTEKELES_OSSZES.ID != @pErtekelesId
)
SELECT 1
ELSE
SELECT 0
END

View file

@ -0,0 +1,43 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('dbo.[sp_CheckTanuloListEgyszerAdhatoErtekelesMagatartasSzorgalomValidation]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_CheckTanuloListEgyszerAdhatoErtekelesMagatartasSzorgalomValidation]
END
GO
-- =============================================
-- Author: <Szikora Zoltán>
-- Create date: <2016. 09. 01.>
-- Description: <Ellenőrizzuk, hogy a tanulóknak van-e egyszer adható magatartás, szorgalom jegye, ha nincs akkor true, ha van akkor false>
-- =============================================
CREATE PROCEDURE [dbo].[sp_CheckTanuloListEgyszerAdhatoErtekelesMagatartasSzorgalomValidation]
@pTanuloIdList AS XML,
@pErtekelesTipusId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @tempTanuloIdList TABLE (tanuloId INT)
INSERT INTO @tempTanuloIdList
SELECT DISTINCT tanuloId = tanuloId.value('(.)[1]', 'INT')
FROM @pTanuloIdList.nodes('tanuloIdList/tanuloId') as tanuloIdList(tanuloId)
IF EXISTS ( SELECT 1
FROM T_TANULOERTEKELES_OSSZES
WHERE T_TANULOERTEKELES_OSSZES.TOROLT = 'F'
AND T_TANULOERTEKELES_OSSZES.C_ERTEKELESTIPUSA = @pErtekelesTipusId
AND T_TANULOERTEKELES_OSSZES.C_TANULOID IN (SELECT tanuloId FROM @tempTanuloIdList)
AND T_TANULOERTEKELES_OSSZES.C_TANTARGYID IS NULL)
SELECT 1
ELSE
SELECT 0
END

View file

@ -0,0 +1,44 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('dbo.[sp_CheckTanuloListEgyszerAdhatoErtekelesValidation]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_CheckTanuloListEgyszerAdhatoErtekelesValidation]
END
GO
-- =============================================
-- Author: <Szikora Zoltán>
-- Create date: <2016. 09. 01.>
-- Description: <Ellenőrizzuk, hogy a tanulóknak van-e egyszer adható jegye, ha nincs akkor true, ha van akkor false>
-- =============================================
CREATE PROCEDURE [dbo].[sp_CheckTanuloListEgyszerAdhatoErtekelesValidation]
@pTanuloIdList AS XML,
@pTantargyId INT = NULL,
@pErtekelesTipusId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @tempTanuloIdList TABLE (tanuloId INT)
INSERT INTO @tempTanuloIdList
SELECT DISTINCT tanuloId = tanuloId.value('(.)[1]', 'INT')
FROM @pTanuloIdList.nodes('tanuloIdList/tanuloId') as tanuloIdList(tanuloId)
IF EXISTS ( SELECT 1
FROM T_TANULOERTEKELES_OSSZES
WHERE T_TANULOERTEKELES_OSSZES.TOROLT = 'F'
AND T_TANULOERTEKELES_OSSZES.C_ERTEKELESTIPUSA = @pErtekelesTipusId
AND T_TANULOERTEKELES_OSSZES.C_TANULOID IN (SELECT tanuloId FROM @tempTanuloIdList)
AND T_TANULOERTEKELES_OSSZES.C_TANTARGYID = @pTantargyId)
SELECT 1
ELSE
SELECT 0
END

View file

@ -0,0 +1,99 @@
-- ==========================================================================================
-- Author: Telek Ákos
-- Create date: 2016.05.31.
-- Description: Törli az alkalmazottakat (akiknél csak az alapadatok vannak kitöltve)
-- ==========================================================================================
IF OBJECT_ID('sp_DeleteAlkalmazottak') IS NOT NULL BEGIN
DROP PROCEDURE sp_DeleteAlkalmazottak
END
GO
CREATE PROCEDURE sp_DeleteAlkalmazottak
@xml xml
AS
BEGIN
SET NOCOUNT ON
SET XACT_ABORT ON
DECLARE @alkalmazottId TABLE (id int);
DECLARE @torlendoId TABLE (id int);
DECLARE @inputId TABLE (id int);
INSERT INTO @inputId
SELECT
sor.value('.', 'int') AS id
FROM @xml.nodes('/Alkalmazottak/IdLista/Id') as sorok(sor)
INSERT INTO @alkalmazottId (id)
SELECT a.ID
FROM T_ALKALMAZOTT a
WHERE EXISTS (SELECT 1 FROM @inputId WHERE id = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_CSOPORT WHERE C_CSOPORTVEZETOID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_ESZKOZ WHERE C_FELELOSID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_FALIUJSAGBEJEGYZES WHERE C_BEJEGYZOID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZASOK_TANAROK WHERE C_TANAROKID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_HELYETTESITESIIDOSZAK WHERE C_HELYETTESTANAROKID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_IGAZOLAS WHERE C_ROGZITOID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_JOGYAKORLAT WHERE C_JOGYAKORLATTULAJDONOSID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_NAPLOELLENORZES WHERE C_ELLENORZOSZEMELYID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_ORAK_TANAROK WHERE C_TANAROKID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_ORALATOGATAS WHERE C_ERTEKELOID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_OSZTALY WHERE C_OFOHELYETTESID = a.ID OR C_OSZTALYFONOKID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANARITANTARGY WHERE C_ALKALMAZOTTID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANARTARGYATLAG WHERE C_TANARIATLAGOKID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANITASIORA WHERE C_HELYETTESITOTANARID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANITASIORA WHERE C_ORATULAJDONOSID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANMENET WHERE C_FELTOLTOID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOERTEKELES WHERE C_ERTEKELOID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOESEMENY WHERE C_FELJEGYZOID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOKOZOSSEGISZOLGALAT WHERE C_FELJEGYZOID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_TEREM WHERE C_TEREMFELELOSID = a.ID)
AND NOT EXISTS (SELECT 1 FROM T_TEVEKENYSEG WHERE C_ESEMENYTULAJDONOSID = a.ID)
INSERT INTO @torlendoId (id)
SELECT ID
FROM T_FELHASZNALO f
WHERE EXISTS (SELECT 1 FROM @alkalmazottId WHERE id = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_CIMTARCSOPORT WHERE C_TULAJDONOSID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_CIMZETT_FALIUJSAGBEJEGYZES WHERE C_CIMZETTID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_CSATOLTFELHASZNALOK_CSATOLTJ WHERE C_CSATOLTFELHASZNALOKID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_DIGESTMESSAGEQUEUE WHERE C_RECIPIENTID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_EMAILADATOK WHERE C_EMAILCIMZETTID = f.ID OR C_KULDOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_FELHASZNALOBELEPESTORTENET WHERE C_FELHASZNALOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_FELHASZNALOERTESITES WHERE C_FELHASZNALOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_FELHASZNALOERTESITESBEALLITA WHERE C_FELHASZNALOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_IKTATOTTDOKUMENTUMOK WHERE C_DOKUMENTUMPARTNEREID = f.ID OR C_FELTOLTOFELHASZNALOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_IMPOSITION WHERE C_BEFIZETESREKOTELEZETTFELHASZ = f.ID OR C_LETREHOZOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_JOGOSULTFELHASZNALOK_HOZZARE WHERE C_JOGOSULTFELHASZNALOKID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_JOGOSULTSAG_FELHASZNALO WHERE C_FELHASZNALOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_MESSAGE WHERE C_SENDERID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_OLDALLATOGATOTTSAG WHERE C_FELHASZNALOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_ONLINEUSER WHERE C_FELHASZNALOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_PEDAGOGUSELETPALYAMODELL WHERE C_TANARID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_PERSONMESSAGE WHERE C_RECIPIENTID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_RESZTVEVOK_TEVEKENYSEGEK WHERE C_RESZTVEVOKID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_SMS WHERE C_FELHASZNALOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_TRANSACTION WHERE C_BEFIZETOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_USERNOTIFICATION WHERE C_FELHASZNALOID = f.ID)
AND NOT EXISTS (SELECT 1 FROM T_USERPROFILE WHERE C_FELHASZNALOID = f.ID)
BEGIN TRY
BEGIN TRANSACTION
DELETE FROM T_FELHASZNALO_SZEREPKOR WHERE C_FELHASZNALOID IN (SELECT ID FROM @torlendoId)
DELETE FROM T_FELHASZNALOBELEPES WHERE C_FELHASZNALOID IN (SELECT ID FROM @torlendoId)
DELETE FROM T_EMAIL WHERE C_FELHASZNALOID IN (SELECT ID FROM @torlendoId)
DELETE FROM T_CIM WHERE C_FELHASZNALOID IN (SELECT ID FROM @torlendoId)
DELETE FROM T_TELEFON WHERE C_FELHASZNALOID IN (SELECT ID FROM @torlendoId)
DELETE FROM T_MUNKAUGYIADATOK WHERE C_ALKALMAZOTTID IN (SELECT ID FROM @torlendoId)
DELETE FROM T_CIMTAR WHERE C_TAGOKID IN (SELECT ID FROM @torlendoId)
DELETE FROM T_ALKALMAZOTT WHERE ID IN (SELECT ID FROM @torlendoId)
DELETE FROM T_FELHASZNALO WHERE ID IN (SELECT ID FROM @torlendoId)
select count(1) from @torlendoId
COMMIT TRANSACTION
END TRY
BEGIN CATCH
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
ROLLBACK TRAN;
THROW --RETHROW the ERROR
END CATCH
END
GO

View file

@ -0,0 +1,125 @@
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
IF OBJECT_ID('sp_DeleteAllTTF', 'P') IS NOT NULL BEGIN
DROP PROCEDURE sp_DeleteAllTTF
END
GO
CREATE PROCEDURE [sp_DeleteAllTTF]
@feladatellatasiHely int = null,
@tanevID int
AS
BEGIN
SET NOCOUNT ON;
IF @feladatellatasiHely IS NULL BEGIN
DELETE FROM T_FOGLALKOZASOK_TANAROK
WHERE C_FOGLALKOZASOKID IN (
SELECT ID FROM T_FOGLALKOZAS_OSSZES f
WHERE NOT EXISTS (SELECT 1 FROM T_ORARENDIORA_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TANITASIORA_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TEREM_FOGLALKOZAS_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOTARGYMULASZTASSTATISZT_OSSZES WHERE f.ID = C_TARGYMULASZTASSTATISZTIKAIID)
AND f.C_IMPORTALT = 'T'
AND f.C_TANEVID = @tanevID
)
DELETE FROM T_FOGLALKOZAS
WHERE ID IN (
SELECT ID FROM T_FOGLALKOZAS_OSSZES f
WHERE NOT EXISTS (SELECT 1 FROM T_ORARENDIORA_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TANITASIORA_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TEREM_FOGLALKOZAS_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOTARGYMULASZTASSTATISZT_OSSZES WHERE f.ID = C_TARGYMULASZTASSTATISZTIKAIID)
AND f.C_IMPORTALT = 'T'
AND f.C_TANEVID = @tanevID
)
END
ELSE BEGIN -- Csak a megadott feladatellátási helyen töröl
DELETE FROM T_FOGLALKOZASOK_TANAROK
WHERE C_FOGLALKOZASOKID IN (
SELECT ID FROM T_FOGLALKOZAS_OSSZES f
WHERE NOT EXISTS (SELECT 1 FROM T_ORARENDIORA_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TANITASIORA_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TEREM_FOGLALKOZAS_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOTARGYMULASZTASSTATISZT_OSSZES WHERE f.ID = C_TARGYMULASZTASSTATISZTIKAIID)
AND f.C_IMPORTALT = 'T'
AND f.C_OSZTALYCSOPORTID IN (
SELECT ID FROM T_OSZTALYCSOPORT_OSSZES WHERE C_FELADATELLATASIHELYID = @feladatellatasiHely and C_TANEVID = @tanevID
)
AND f.C_TANEVID = @tanevID
)
DELETE FROM T_FOGLALKOZAS
WHERE ID IN (
SELECT ID FROM T_FOGLALKOZAS_OSSZES f
WHERE NOT EXISTS (SELECT 1 FROM T_ORARENDIORA_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TANITASIORA_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TEREM_FOGLALKOZAS_OSSZES WHERE f.ID = C_FOGLALKOZASID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOTARGYMULASZTASSTATISZT_OSSZES WHERE f.ID = C_TARGYMULASZTASSTATISZTIKAIID)
AND f.C_IMPORTALT = 'T'
AND f.C_OSZTALYCSOPORTID IN (
SELECT ID FROM T_OSZTALYCSOPORT_OSSZES WHERE C_FELADATELLATASIHELYID = @feladatellatasiHely and C_TANEVID = @tanevID
)
AND f.C_TANEVID = @tanevID
)
END -- ENDIF
/*
* Innentől nem kell figyelni a feladatellátási helyet,
* mert a NOT EXISTS (SELECT 1 FROM T_FOGLALKOZAS szerepel mindenütt
*/
DELETE t
FROM T_TANTARGY t
WHERE NOT EXISTS (SELECT 1 FROM T_ORATERVTARGY_OSSZES WHERE C_TANTARGYID = t.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANARITANTARGY_OSSZES WHERE C_TANTARGYID = t.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANITASIORA_OSSZES WHERE C_TANTARGYID = t.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANMENET_OSSZES WHERE C_TANTARGYID = t.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOERTEKELES_OSSZES WHERE C_TANTARGYID = t.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOESEMENY_OSSZES WHERE C_TANTARGYID = t.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOMENTESSEG_OSSZES WHERE C_TANTARGYID = t.ID)
AND NOT EXISTS (SELECT 1 FROM T_TANTARGY_OSSZES WHERE C_FOTARGYID = t.ID)
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZAS_OSSZES WHERE C_TANTARGYID = t.ID)
AND C_IMPORTALT = 'T'
AND C_TANEVID = @tanevID
DELETE cso
FROM T_CSOPORTOK_OSZTALYOK cso
WHERE (EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_OSSZES ocs WHERE C_IMPORTALT = 'T' AND cso.C_CSOPORTOKID = ocs.ID AND ocs.TOROLT='F' )
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZAS_OSSZES WHERE C_OSZTALYCSOPORTID = cso.C_CSOPORTOKID))
OR
(EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_OSSZES ocs WHERE C_IMPORTALT = 'T' AND cso.C_OSZTALYOKID = ocs.ID AND ocs.TOROLT='F' )
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZAS_OSSZES WHERE C_OSZTALYCSOPORTID = cso.C_OSZTALYOKID))
DELETE cs
FROM T_CSOPORT cs
WHERE EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_OSSZES WHERE C_IMPORTALT = 'T' AND cs.ID = ID)
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZAS_OSSZES WHERE C_OSZTALYCSOPORTID = cs.ID)
AND NOT EXISTS (SELECT 1 FROM T_CSOPORTOK_OSZTALYOK WHERE C_CSOPORTOKID = cs.ID)
DELETE o
FROM T_OSZTALY o
WHERE NOT EXISTS (SELECT 1 FROM T_NAPLOELLENORZES_OSSZES WHERE o.ID = C_OSZTALYID)
AND EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_OSSZES WHERE C_IMPORTALT = 'T' AND o.ID = ID)
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZAS_OSSZES WHERE C_OSZTALYCSOPORTID = o.ID)
AND NOT EXISTS (SELECT 1 FROM T_CSOPORT_OSSZES WHERE C_OSZTALYBONTASID = o.ID)
AND NOT EXISTS (SELECT 1 FROM T_CSOPORTOK_OSZTALYOK WHERE C_OSZTALYOKID = o.ID)
AND C_ALTANEVID = @tanevID
DELETE ocs
FROM T_OSZTALYCSOPORT ocs
WHERE NOT EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_FALIUJSAGBEJE_OSSZES WHERE ocs.ID = C_OSZTALYCSOPORTID)
AND NOT EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_TANEVRENDJE_OSSZES WHERE ocs.ID = C_OSZTALYCSOPORTID)
AND NOT EXISTS (SELECT 1 FROM T_TANITASIORA_OSSZES WHERE ocs.ID = C_OSZTALYCSOPORTID)
AND NOT EXISTS (SELECT 1 FROM T_TANMENET_OSSZES WHERE ocs.ID = C_OSZTALYCSOPORTID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOCSOPORT_OSSZES WHERE ocs.ID = C_OSZTALYCSOPORTID)
AND NOT EXISTS (SELECT 1 FROM T_TANULOERTEKELES_OSSZES WHERE ocs.ID = C_OSZTALYCSOPORTID)
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZAS_OSSZES WHERE C_OSZTALYCSOPORTID = ocs.ID)
AND NOT EXISTS (SELECT 1 FROM T_OSZTALY_OSSZES WHERE ID = ocs.ID)
AND NOT EXISTS (SELECT 1 FROM T_CSOPORT_OSSZES WHERE ID = ocs.ID)
AND C_IMPORTALT = 'T'
AND C_TANEVID = @tanevID
END

View file

@ -0,0 +1,230 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[sp_ESLAdatgyujtes]
@tanevId int,
@intezmenyId int
AS
BEGIN
SET NOCOUNT ON;
--Tanulók száma
select count(distinct tcs.c_tanuloid) as TanulokSzama from t_tanulocsoport tcs
where tcs.torolt='F' and tcs.c_intezmenyid=@intezmenyid and tcs.c_tanevid=@tanevid
--Tanév kezdete óta távozott tanulók száma
declare @tanevkezdet date=(select c_datum from t_tanevrendje tr where c_naptipusa=1394 and c_tanevid=@tanevid and c_intezmenyid=@intezmenyid and torolt='F')
select count(distinct tcs.c_tanuloid) TanevKezdeteOtaTavozottTanulokSzama from t_tanulocsoport tcs
inner join t_osztaly o on o.id=tcs.c_osztalycsoportid and o.torolt='F'
where tcs.c_kilepesdatum >=@tanevkezdet and tcs.torolt='F' and tcs.c_intezmenyid=@intezmenyid and tcs.c_tanevid=@tanevid
--Tantárgyi átlag miatt veszélyeztetett tanulók száma
select count(distinct Tanulo) TantargyiAtlagMiattVeszelyeztetettTanulokSzama from
(select te.c_tanuloid Tanulo, te.c_tantargyid Tantargy, avg(convert(float, d.c_value)) as Atlag from t_tanuloertekeles te
inner join (select distinct d.id, d.c_value from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.torolt='F' and te.c_ertekelestipusa=1518 and te.c_intezmenyid=@intezmenyid and te.c_tanevid=@tanevid
group by te.c_tanuloid, te.c_tantargyid) atlag
where atlag.Atlag<3
--Félévi jegyek miatt veszélyeztetett tanulók száma
declare @feleviVeszelyeztetett table (Tanulo int, Tantargy int)
insert into @feleviVeszelyeztetett
select distinct te.c_tanuloid as Tanulo, te.c_tantargyid as Tantargy
from t_tanuloertekeles te
inner join (select distinct d.id, d.c_value, d.c_name from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.c_ertekelestipusa=1519 and d.c_value=1 and te.torolt='F' and te.c_intezmenyid=@intezmenyid and te.c_tanevid=@tanevid
select count(Tanulo) FeleviJegyekMiattVeszelyeztetettTanulokSzama, Tantargy from
(SELECT distinct Tanulo, STUFF((SELECT ', ' + CAST(t.c_nev AS VARCHAR(10)) [text()]
FROM @feleviVeszelyeztetett
inner join t_tantargy t on t.id=Tantargy
FOR XML PATH(''), TYPE)
.value('.','NVARCHAR(MAX)'),1,2,' ') Tantargy
FROM @feleviVeszelyeztetett fv
GROUP BY Tanulo) felevi
group by Tantargy
--Év végi jegyek miatt veszélyeztetett tanulók száma
declare @evvegiVeszelyeztetett table (Tanulo int, Tantargy int)
insert into @evvegiVeszelyeztetett
select distinct te.c_tanuloid as Tanulo, te.c_tantargyid as Tantargy
from t_tanuloertekeles te
inner join (select d.id, d.c_value, d.c_name from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.c_ertekelestipusa=1520 and d.c_value=1 and te.torolt='F' and te.c_intezmenyid=@intezmenyid and te.c_tanevid=@tanevid
select count(Tanulo) EvVegiJegyekMiattVeszelyeztetettTanulokSzama, Tantargy from (SELECT distinct Tanulo, STUFF((SELECT ', ' + CAST(t.c_nev AS VARCHAR(10)) [text()]
FROM @evvegiVeszelyeztetett
inner join t_tantargy t on t.id=Tantargy
FOR XML PATH(''), TYPE)
.value('.','NVARCHAR(MAX)'),1,2,' ') Tantargy
FROM @evvegiVeszelyeztetett ev
GROUP BY Tanulo) evvegi
group by Tantargy
--Év végi romlás miatt veszélyeztetett tanulók száma
declare @feleviatlag table (Tanulo int, Atlag float)
insert into @feleviatlag
select te.c_tanuloid as Tanulo, avg(convert(float, d.c_value)) Atlag from t_tanuloertekeles te
inner join (select distinct d.id, d.c_value, d.c_name from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.c_ertekelestipusa=1519 and te.torolt='F' and te.c_intezmenyid=@intezmenyid and te.c_tanevid=@tanevid
group by te.c_tanuloid
declare @evvegiatlag table (Tanulo int, Atlag float)
insert into @evvegiatlag
select te.c_tanuloid as Tanulo, avg(convert(float, d.c_value)) Atlag from t_tanuloertekeles te
inner join (select distinct d.id, d.c_value, d.c_name from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.c_ertekelestipusa=1520 and te.torolt='F' and te.c_intezmenyid=@intezmenyid and te.c_tanevid=@tanevid
group by te.c_tanuloid
select count(f.Tanulo) EvVegiRomlasMiattVeszelyeztetettTanulokSzama from @feleviatlag f
inner join @evvegiatlag e on f.Tanulo=e.Tanulo
where f.atlag-e.atlag>1.1
--Mulasztások miatt veszélyeztetett tanulók száma
select Tanulo as MulasztasokMiattVeszelyeztetettTanulokSzama from
(select tm.c_oratanuloiid Tanulo, count(tm.id) Mulasztas from t_tanulomulasztas tm
where tm.torolt='F' and tm.c_intezmenyid=@intezmenyid and tm.c_tanevid=@tanevid
group by tm.c_oratanuloiid)mul
where Mulasztas>=100
--Tantárgyi mulasztások miatt veszélyeztetett tanulók száma
declare @tanmulvesz table(Tanulo int, Foglalkozas int, Szamlalo float)
insert into @tanmulvesz
select tm.c_oratanuloiid as Tanulo, fog.id as Foglalkozas, count(tm.id)*fog.c_oraszam as Szamlalo from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid and tao.torolt='F' and tao.c_intezmenyid=@intezmenyid and tao.c_tanevid=@tanevid
inner join t_foglalkozas fog on fog.id=tao.c_foglalkozasid and fog.c_intezmenyid=@intezmenyid and fog.c_tanevid=@tanevid
inner join t_tanulo t on t.id=tm.c_oratanuloiid and t.c_magantanulo='F'
where tm.torolt='F' and tm.c_intezmenyid=@intezmenyid and tm.c_tanevid=@tanevid
group by tm.c_oratanuloiid, fog.id, fog.c_oraszam
select count(distinct Tanulo) TantargyiMulasztasokMiattVeszelyeztetettTanulokSzama from
(select tmv.Tanulo, tmv.foglalkozas, Szamlalo Oraszam from @tanmulvesz tmv
inner join t_foglalkozas fog on fog.id=tmv.Foglalkozas and fog.torolt='F')tmVeszelyeztetett
where Oraszam>0.3*36*Oraszam
--Tantárgyi mulasztások miatt előreláthatóan veszélyeztetett tanulók száma
declare @foglalkozasok table (Id int, AktOraszam float, OsszOraszam float)
insert into @foglalkozasok
select tao.c_foglalkozasid Foglalkozas, sum(fog.c_oraszam) AktOraszam, fog.c_oraszam*36 from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid and tao.torolt='F' and tao.c_intezmenyid=@intezmenyid and tao.c_tanevid=@tanevid
inner join t_foglalkozas fog on fog.id=tao.c_foglalkozasid and fog.torolt='F' and fog.c_intezmenyid=@intezmenyid and fog.c_tanevid=@tanevid
where tm.torolt='F' and tm.c_intezmenyid=@intezmenyid and tm.c_tanevid=@tanevid
group by tao.c_foglalkozasid, fog.c_oraszam
select count(tmv.Tanulo) TantargyiMulasztasokMiattElorelathatoanVeszelyeztetettTanulokSzama from @tanmulvesz tmv
inner join @foglalkozasok fog on fog.Id=tmv.Foglalkozas
where tmv.Szamlalo>fog.AktOraszam*0.3
--Igazolatlan mulasztások miatt veszélyeztetett tanulók száma
select count(Tanulo) IgazolatlanMulasztasokMiattVeszelyeztetettTanulokSzama from
(select tm.c_oratanuloiid Tanulo, count(tm.id) Igazolatlan from t_tanulomulasztas tm
inner join t_tanulo t on tm.c_oratanuloiid=t.id and t.c_magantanulo='F'
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_intezmenyid=@intezmenyid and tm.c_tanevid=@tanevid
group by tm.c_oratanuloiid) igazolatlan
where Igazolatlan>50
--Igazolatlan mulasztások miatt előreláthatóan veszélyeztetett tanulók száma
declare @hanyados float=(select convert(float, count(nn.id))/181 from t_naptarinap nn
where nn.c_napdatuma<getdate() and nn.c_orarendinap='T' and nn.torolt='F' and nn.c_intezmenyid=@intezmenyid and nn.c_tanevid=@tanevid)
select Tanulo IgazolatlanMulasztasokMiattElorelathatoanVeszelyeztetettTanulokSzama from
(select tm.c_oratanuloiid Tanulo, sum(fog.c_oraszam)/@hanyados Osszes from t_tanulomulasztas tm
inner join t_tanulo t on tm.c_oratanuloiid=t.id and t.c_magantanulo='F'
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid and tao.c_intezmenyid=@intezmenyid and tao.c_tanevid=@tanevid and tao.torolt='F'
inner join t_foglalkozas fog on fog.id=tao.c_foglalkozasid and fog.c_intezmenyid=@intezmenyid and fog.c_tanevid=@tanevid and fog.torolt='F'
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_intezmenyid=@intezmenyid and tm.c_tanevid=@tanevid
group by tm.c_oratanuloiid) Osszes
where Osszes.Osszes>50
--Alacsony magatartásértékelésű tanulók száma
select count(distinct te.c_tanuloid) AlacsonyMagatartasertekelesuTanulokSzama from t_osztalyfonokiertekeles oe
inner join t_tanuloertekeles te on te.id=oe.id and te.c_intezmenyid=@intezmenyid and te.c_tanevid=@tanevid and te.torolt='F'
where oe.c_magatartas=1558
--Alacsony szorgalomértékelésű tanulók száma
select count(distinct te.c_tanuloid) AlacsonySzorgalomertekelesuTanulokSzama from t_osztalyfonokiertekeles oe
inner join t_tanuloertekeles te on te.id=oe.id and te.torolt='F' and te.c_intezmenyid=@intezmenyid and te.c_tanevid=@tanevid
where oe.c_szorgalom=1558 and oe.torolt='F'
--TANULÓK
declare @tanulok table(Id int, Evismetlo nvarchar(1), MaganTanulo nvarchar(1), MaganTanulosagKezdete date, MenedekJoggalRendelkezo nvarchar(1), JogVSzunetelteto nvarchar(1), Allamigondozott nvarchar(1),
Veszelyeztetett nvarchar(1), SajatosNevelesu nvarchar(1), BeilleszkedesiProblema nvarchar(1), MagatartasProblema nvarchar(1), TanulasiProblema nvarchar(1), HalmozottanFogyatekos nvarchar(1), RendszeresGyVK nvarchar(max),
MaganTanulosagOka int, HatranyosH int )
insert into @tanulok
select t.id as Id, t.c_evismetlo, t.c_magantanulo, t.c_magantanulosagkezdete, t.c_menedekjoggalrendelkezo,
t.c_jogviszonyatszunetelteto, t.c_allamigondozott, t.c_veszelyeztetett, t.c_sajatosnevelesu,
t.c_beilleszkedesiproblemavalkuz, t.c_magatartasiproblemavalkuzd, t.c_tanulasiproblemavalkuzd,
c_halmozottanfogyatekos, t.c_rendszeresgyermekvedelmikedv, t.c_magantanulosaganakoka, c_hatranyoshelyzetu
from t_tanulo t where t.torolt='F' and t.c_alintezmenyid=@intezmenyid
--Évismétlő tanulók száma !!!
select count(Id) EvismetloTanulokSzama from @tanulok where Evismetlo='T'
--Magántanulók száma
select count(Id) MagantanulokSzama from @tanulok where MaganTanulo='T'
--Magántanulóvá vált tanulók száma
declare @tanevKezdete date=(select distinct c_datum from t_tanevrendje tr where tr.c_naptipusa=1394)
select count(Id) MagantanulovaValtTanulokSzama from @tanulok t where MaganTanulo='T' and MaganTanulosagKezdete>@tanevKezdete
--Magántanulóvá vált tanulók száma saját döntés alapján
select count(Id) MagantanulovaValtTanulokSzamaSajatDontesAlapjan from @tanulok t where MaganTanulo='T' and MaganTanulosagKezdete>@tanevKezdete and MaganTanulosagOka in (658,663,664)
--Menedékjoggal rendelkező tanulók száma
select count(Id) MenedekjoggalRendelkezoTanulokSzama from @tanulok t where MenedekJoggalRendelkezo='T'
--Jogviszonyt szüneteltető tanulók száma
select count(Id) JogviszonytSzuneteltetoTanulokSzama from @tanulok t where JogVSzunetelteto='T'
--Intézeti, állami nevelt tanulók száma
select count(Id) IntezetiAllamiNeveltTanulokSzama from @tanulok t where AllamiGondozott='T'
--Veszélyeztetett tanulók száma
select count(Id) VeszelyeztetettTanulokSzama from @tanulok t where Veszelyeztetett='T'
--Sajátos nevelési igényű (SNI) tanulók száma
select count(Id) SajatosNevelesiIgenyuSniTanulokSzama from @tanulok t where SajatosNevelesu='T'
--Beilleszkedési nehézségekkel rendelkező tanulók száma
select count(Id) BeilleszkedesiNehezsegekkelRendelkezoTanulokSzama from @tanulok t where BeilleszkedesiProblema='T'
--Magatartási problémával küzdő tanulók száma
select count(Id) MagatartasiProblemavalKuzdoTanulokSzama from @tanulok t where MagatartasProblema='T'
--Tanulási problémával küzdő tanulók száma
select count(Id) TanulasiProblemavalKuzdoTanulokSzama from @tanulok t where TanulasiProblema='T'
--Hátrányos helyzetű tanulók száma
select count(Id) HatranyosHelyzetuTanulokSzama from @tanulok t where HatranyosH=1122
--Halmozottan hátrányos helyzetű tanulók száma
select count(Id) HalmozottanHatranyosHelyzetuTanulokSzama from @tanulok t where HalmozottanFogyatekos='T'
--Rendszeres gyermekvédelmi kedvezményben részesülő tanulók száma
select count(Id) RendszeresGyermekvedelmiKedvezmenybenReszesuloTanulokSzama from @tanulok t where RendszeresGyVK is not null
--Alapfokú oktatásban résztvevő, tizenhatodik életévét betöltött tanulók száma
select count(distinct tcs.c_tanuloid) AlapfokuOktatasbanResztvevoTizenhatodikEletevetBetoltottTanulokSzama from t_tanulocsoport tcs
inner join t_osztalycsoport ocs on tcs.c_osztalycsoportid=ocs.id
inner join t_osztaly o on o.id=ocs.id
inner join t_feladatellatasihely fh on fh.id=ocs.c_feladatellatasihelyid and fh.c_oktatasinevelesifeladattipus=1158
inner join (select t.id Id, DATEDIFF(yy, f.c_szuletesidatum, @tanevKezdete) Eletkor from t_tanulo t
inner join t_felhasznalo f on f.id=t.id) tanulo on tanulo.Id=tcs.c_tanuloid
where tanulo.Eletkor>=16 and tcs.torolt='F' and tcs.c_intezmenyid=@intezmenyid and tcs.c_tanevid=@tanevid
--A középfokú oktatásba tizenhatodik életévük betöltését követően belépett tanulók száma
select count(distinct tcs.c_tanuloid) AKozepfokuOktatasbaTizenhatodikEletevukBetoltesetKovetoenBelepettTanulokSzama from t_tanulocsoport tcs
inner join t_osztalycsoport ocs on tcs.c_osztalycsoportid=ocs.id
inner join t_osztaly o on o.id=ocs.id
inner join t_feladatellatasihely fh on fh.id=ocs.c_feladatellatasihelyid and fh.c_oktatasinevelesifeladattipus=1158
inner join (select t.id Id, DATEDIFF(yy, f.c_szuletesidatum, @tanevKezdete) Eletkor from t_tanulo t
inner join t_felhasznalo f on f.id=t.id) tanulo on tanulo.Id=tcs.c_tanuloid
where tanulo.Eletkor>=16 and tcs.torolt='F' and tcs.c_intezmenyid=@intezmenyid and tcs.c_tanevid=@tanevid
End
go

View file

@ -0,0 +1,92 @@
IF OBJECT_ID('sp_FoglalkozasArchiv') IS NOT NULL BEGIN
DROP PROCEDURE sp_FoglalkozasArchiv
END;
GO
CREATE PROCEDURE sp_FoglalkozasArchiv
@intezmenyId int,
@tanevId int
AS
BEGIN
INSERT INTO T_FOGLALKOZASARCHIV (
[C_ALKALMAZOTTID] -- INT NULL,
,[C_ELFOGADASDATUMA] -- DATETIME NULL,
,[C_FELADATELLATASIHELYID] -- INT NULL,
,[C_FELADATELLATASIHELYNEVE] -- NVARCHAR (255) NULL,
,[C_ORASZAM] -- NUMERIC (10, 2) NULL,
,[C_OSZTALYCSOPORTID] -- INT NULL,
,[C_OSZTALYCSOPORTNEVE] -- NVARCHAR (255) NULL,
,[C_TANARKOTELEZOORASZAMA] -- NUMERIC (10, 2) NULL,
,[C_TANARMUNKAIDOKEDVEZMENYE] -- INT NULL,
,[C_TANARMUNKAIDOKEDVEZMENYOKA] -- NVARCHAR (255) NULL,
,[C_TANARMUNKAIDOKEDVEZMENYOKAID]-- INT NULL,
,[C_TANARMUNKAKORE] -- NVARCHAR (255) NULL,
,[C_TANARMUNKAKOREID] -- INT NULL,
,[C_TANARNEVE] -- NVARCHAR (255) NULL,
,[C_TANARPEDAGOGIAIKEPESITESE] -- NVARCHAR (255) NULL,
,[C_TANARPEDAGOGIAIKEPESITESEID]-- INT NULL,
,[C_TANEVNEVE] -- NVARCHAR (255) NULL,
,[C_TANTARGYID] -- INT NULL,
,[C_TANTARGYNEVE] -- NVARCHAR (255) NULL,
,[C_INTEZMENYID] -- INT NOT NULL,
,[C_TANEVID] -- INT NOT NULL,
,[TOROLT] -- CHAR (1) NULL,
,[SERIAL] -- INT NULL,
,[LASTCHANGED] -- DATETIME NULL,
,[CREATED] -- DATETIME NULL,
,[MODIFIER] -- INT NULL,
,[CREATOR] -- INT NULL,
) SELECT
u.ID AS [C_ALKALMAZOTTID] -- INT NULL,
,GETDATE() AS [C_ELFOGADASDATUMA] -- DATETIME NULL,
,fh.ID AS [C_FELADATELLATASIHELYID] -- INT NULL,
,'' AS [C_FELADATELLATASIHELYNEVE] -- NVARCHAR (255) NULL,
,f.C_ORASZAM AS [C_ORASZAM] -- NUMERIC (10, 2) NULL,
,ocs.ID AS [C_OSZTALYCSOPORTID] -- INT NULL,
,ocs.C_NEV AS [C_OSZTALYCSOPORTNEVE] -- NVARCHAR (255) NULL,
,m.C_KOTELEZOORASZAM AS [C_TANARKOTELEZOORASZAMA] -- NUMERIC (10, 2) NULL,
,m.C_MUNKAIDOKEDVEZMENYORASZAM AS [C_TANARMUNKAIDOKEDVEZMENYE] -- INT NULL,
,mk.C_NAME AS [C_TANARMUNKAIDOKEDVEZMENYOKA] -- NVARCHAR (255) NULL,
,m.C_MUNKAIDOKEDVEZMENYOKA AS [C_TANARMUNKAIDOKEDVEZMENYOKAID]-- INT NULL,
,k.C_NAME AS [C_TANARMUNKAKORE] -- NVARCHAR (255) NULL,
,m.C_MUNKAKORTIPUSA AS [C_TANARMUNKAKOREID] -- INT NULL,
,u.C_NYOMTATASINEV AS [C_TANARNEVE] -- NVARCHAR (255) NULL,
,kp.C_NAME AS [C_TANARPEDAGOGIAIKEPESITESE] -- NVARCHAR (255) NULL,
,m.C_KEPESITES AS [C_TANARPEDAGOGIAIKEPESITESEID]-- INT NULL,
,te.C_NEV AS [C_TANEVNEVE] -- NVARCHAR (255) NULL,
,t.ID AS [C_TANTARGYID] -- INT NULL,
,t.C_NEV AS [C_TANTARGYNEVE] -- NVARCHAR (255) NULL,
,f.C_INTEZMENYID AS [C_INTEZMENYID] -- INT NOT NULL,
,f.C_TANEVID AS [C_TANEVID] -- INT NOT NULL,
,'F' AS [TOROLT] -- CHAR (1) NULL,
,0 AS [SERIAL] -- INT NULL,
,NULL AS [LASTCHANGED] -- DATETIME NULL,
,GETDATE() AS [CREATED] -- DATETIME NULL,
,NULL AS [MODIFIER] -- INT NULL,
,NULL AS [CREATOR] -- INT NULL,
-- select count(1)
FROM T_FOGLALKOZAS f
INNER JOIN T_FOGLALKOZASOK_TANAROK ft ON ft.C_FOGLALKOZASOKID = f.ID
INNER JOIN T_FELHASZNALO u ON u.ID = ft.C_TANAROKID
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = f.C_OSZTALYCSOPORTID
INNER JOIN T_ALKALMAZOTT a ON a.ID = u.ID
INNER JOIN T_MUNKAUGYIADATOK m ON m.C_ALKALMAZOTTID = a.ID
INNER JOIN T_TANTARGY t ON f.C_TANTARGYID = t.ID
INNER JOIN T_TANEV te ON te.ID = f.C_TANEVID
LEFT JOIN T_DICTIONARYITEMBASE mk ON mk.ID = m.C_MUNKAIDOKEDVEZMENYOKA AND mk.C_TANEVID = f.C_TANEVID AND mk.C_INTEZMENYID = f.C_INTEZMENYID
LEFT JOIN T_DICTIONARYITEMBASE k ON k.ID = m.C_MUNKAKORTIPUSA AND k.C_TANEVID = f.C_TANEVID AND k.C_INTEZMENYID = f.C_INTEZMENYID
LEFT JOIN T_DICTIONARYITEMBASE kp ON kp.ID = m.C_KEPESITES AND kp.C_TANEVID = f.C_TANEVID AND kp.C_INTEZMENYID = f.C_INTEZMENYID
INNER JOIN T_FELADATELLATASIHELY fh ON fh.ID = m.C_FELADATELLATASIHELYID
WHERE f.TOROLT = 'F'
/*AND f.C_INTEZMENYID IN (
SELECT DISTINCT e.C_INTEZMENYID FROM T_ENTITYHISTORY e
INNER JOIN T_ENTITYATTRIBUTEHISTORY a ON a.C_ENTITYHISTORYID = e.ID
INNER JOIN T_INTEZMENYADATSZOLGALTATAS i ON i.C_INTEZMENYID = e.C_INTEZMENYID
WHERE e.C_ENTITYNAME IN ('T_INTEZMENYADATSZOLGALTATAS', 'INTEZMENYADATSZOLGALTATAS')
AND a.C_PROPERTYNAME = 'C_VEGLEGESTTF'
AND a.C_CURRENTVALUE = 'T'
AND i.C_VEGLEGESTTF = 'T'
)*/
AND f.C_INTEZMENYID = @intezmenyId AND f.C_TANEVID = @tanevId
END
GO

View file

@ -0,0 +1,209 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GenerateErtekelesekMagatartasSzorgalomTempTabla]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GenerateErtekelesekMagatartasSzorgalomTempTabla]
END
GO
-- =============================================
-- Description: <Elõszedi a magatartas szorgalom értékeléseket, havi bontásban osztálycsoport alapján>
-- NOTE: EZT A HÁROM TÁROLT ELJÁRÁST EGYBEN KELL KEZELNI, HA MÓDOSÍTJUK!!!
-- - sp_GenerateErtekelesekTempTabla
-- - sp_GenerateErtekelesekTempTablaByFoglalkozas
-- - sp_GenerateErtekelesekMagatartasSzorgalomTempTabla
-- =============================================
CREATE PROCEDURE [dbo].[sp_GenerateErtekelesekMagatartasSzorgalomTempTabla]
-- Add the parameters for the stored procedure here
@pOsztalyId INT,
@pFelevVege DATE,
@pEvkozi INT,
@pFelevi INT,
@pEvvegi INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @TempErtekeles TABLE (
ID INT,
ErtekelesDatuma NVARCHAR(255),
ErtekelesTipusa INT,
ErtekelesSzoveg NVARCHAR(MAX),
Honap NVARCHAR(2),
TanuloId INT,
Nev NVARCHAR(255),
Osztalyzat INT,
Magatartas INT,
Szorgalom INT
)
INSERT INTO @TempErtekeles
SELECT *
FROM (
SELECT
tanuloErtekeles.ID ID,
tanuloErtekeles.C_ERTEKELESDATUM ErtekelesDatuma,
tanuloErtekeles.C_ERTEKELESTIPUSA ErtekelesTipusa,
tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg,
CASE WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pFelevi
THEN 'I'
WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pEvvegi
THEN 'II'
ELSE
CASE
WHEN CAST(tanuloErtekeles.C_ERTEKELESDATUM AS DATE) > @pFelevVege
THEN CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) + 1 AS NVARCHAR(2))
ELSE CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) AS NVARCHAR(2))
END
END Honap,
tanuloCsoport.C_TANULOID TanuloId,
felhasznalo.C_NYOMTATASINEV Nev,
osztalyzat.C_VALUE Osztalyzat,
magatartas.C_Value Magatartas,
szorgalom.C_Value Szorgalom
FROM (
SELECT
[C_TANULOID]
FROM
[T_TANULOCSOPORT]
WHERE
[TOROLT] = 'F' AND
[C_BELEPESDATUM] < GETDATE() AND
([C_KILEPESDATUM] IS NULL OR [C_KILEPESDATUM] >= GETDATE()) AND
[C_OSZTALYCSOPORTID] = @pOsztalyId
) AS tanuloCsoport
INNER JOIN (
SELECT
[ID],
[C_NYOMTATASINEV]
FROM
[T_FELHASZNALO]
WHERE
[TOROLT] = 'F'
) AS felhasznalo
ON felhasznalo.ID = tanuloCsoport.C_TANULOID
LEFT JOIN (
SELECT
[ID],
[C_ERTEKELESDATUM],
[C_ERTEKELESTIPUSA],
[C_OSZTALYZAT],
[C_ERTEKELESSZOVEG],
[C_TANULOID]
FROM
[T_TANULOERTEKELES]
WHERE
[TOROLT] = 'F' AND
[C_TANTARGYID] IS NULL
) AS tanuloErtekeles
ON tanuloErtekeles.C_TANULOID = tanuloCsoport.C_TANULOID
LEFT JOIN (
SELECT
[ID],
[C_MAGATARTAS],
[C_SZORGALOM]
FROM
[T_OSZTALYFONOKIERTEKELES]
WHERE
[TOROLT] = 'F'
) AS osztalyfonokiErtekeles
ON osztalyfonokiErtekeles.ID = tanuloErtekeles.ID
LEFT JOIN (
SELECT
[ID],
[C_VALUE]
FROM
[T_DICTIONARYITEMBASE]
WHERE
[TOROLT] = 'F'
) AS osztalyzat
ON osztalyzat.ID = tanuloErtekeles.C_OSZTALYZAT
LEFT JOIN (
SELECT
[ID],
[C_VALUE]
FROM
[T_DICTIONARYITEMBASE]
WHERE
[TOROLT] = 'F'
) AS magatartas
ON magatartas.ID = osztalyfonokiErtekeles.C_MAGATARTAS
LEFT JOIN (
SELECT
[ID],
[C_VALUE]
FROM
[T_DICTIONARYITEMBASE]
WHERE
[TOROLT] = 'F'
) AS szorgalom
ON szorgalom.ID = osztalyfonokiErtekeles.C_SZORGALOM
) AS temp
SELECT *
FROM (
SELECT
pivotErtekelesek.TanuloId ID,
Nev Nev,
[9] [09],
[10] [10],
[11] [11],
[12] [12],
[1] [01I],
[2] [01II],
[3] [02],
[4] [03],
[5] [04],
[6] [05],
[7] [06],
[I] [I],
[II] [II],
'' Ertekeles,
'' ErtekelesSzoveg,
'' Magatartas,
'' Szorgalom
FROM (
SELECT DISTINCT
tempErtekeles1.Nev,
STUFF (
(SELECT
',' +
ISNULL(CAST(tempErtekeles2.Osztalyzat AS VARCHAR(1)), '') +
ISNULL(CAST(tempErtekeles2.Magatartas AS varchar(15)), '') + ',' + ISNULL(CAST(tempErtekeles2.Szorgalom AS varchar(15)), '') +
ISNULL(CAST(
CASE
WHEN tempErtekeles2.ErtekelesSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.ErtekelesSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
THEN NULL
ELSE
'sz'
END AS VARCHAR(2)), '')
FROM
@TempErtekeles tempErtekeles2
WHERE
tempErtekeles1.TanuloId = tempErtekeles2.TanuloId AND
tempErtekeles1.Honap = tempErtekeles2.Honap
FOR XML PATH ('')
), 1, 1, ''
) Ertekelesek,
tempErtekeles1.Honap,
tempErtekeles1.TanuloId
FROM
@TempErtekeles tempErtekeles1
) AS erdemjegyek
PIVOT (
MAX(Ertekelesek)
FOR Honap
IN ([I], [II], [9] ,[10] ,[11] ,[12] ,[1] ,[2] ,[3] ,[4] ,[5] ,[6], [7])
) AS pivotErtekelesek
) AS result
IF OBJECT_ID('tempdb..#TempErtekeles') IS NOT NULL DROP TABLE #TempErtekeles
END

View file

@ -0,0 +1,240 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GenerateErtekelesekTempTabla]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GenerateErtekelesekTempTabla]
END
GO
-- =============================================
-- Description: <Elõszedi az értékeléseket, havi bontásban tantárgy és osztálycsoport alapján>
-- NOTE: EZT A HÁROM TÁROLT ELJÁRÁST EGYBEN KELL KEZELNI, HA MÓDOSÍTJUK!!!
-- - sp_GenerateErtekelesekTempTabla
-- - sp_GenerateErtekelesekTempTablaByFoglalkozas
-- - sp_GenerateErtekelesekMagatartasSzorgalomTempTabla
-- =============================================
CREATE PROCEDURE [dbo].[sp_GenerateErtekelesekTempTabla]
-- Add the parameters for the stored procedure here
@pTantargyId INT,
@pOsztalyId INT,
@pFelevVege DATE,
@pEvkozi INT,
@pFelevi INT,
@pEvvegi INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @TempErtekeles TABLE (
ID INT,
ErtekelesDatuma NVARCHAR(255),
ErtekelesTipusa INT,
ErtekelesSzoveg NVARCHAR(MAX),
Honap NVARCHAR(2),
TanuloId INT,
Nev NVARCHAR(255),
Osztalyzat INT,
Szazalek INT,
Suly INT
)
INSERT INTO @TempErtekeles
SELECT *
FROM (
SELECT
tanuloErtekeles.ID ID,
tanuloErtekeles.C_ERTEKELESDATUM ErtekelesDatuma,
tanuloErtekeles.C_ERTEKELESTIPUSA ErtekelesTipusa,
tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg,
CASE WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pFelevi
THEN 'I'
WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pEvvegi
THEN 'II'
ELSE
CASE
WHEN CAST(tanuloErtekeles.C_ERTEKELESDATUM AS DATE) > @pFelevVege
THEN CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) + 1 AS NVARCHAR(2))
ELSE CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) AS NVARCHAR(2))
END
END Honap,
tanuloCsoport.C_TANULOID TanuloId,
felhasznalo.C_NYOMTATASINEV Nev,
osztalyzat.C_VALUE Osztalyzat,
osztalyzatErtekeles.C_SZAZALEK Szazalek,
tanariAtlagSuly.C_SULY Suly
FROM (
SELECT
[C_TANULOID]
FROM
[T_TANULOCSOPORT]
WHERE
[TOROLT] = 'F' AND
[C_BELEPESDATUM] < GETDATE() AND
([C_KILEPESDATUM] IS NULL OR [C_KILEPESDATUM] >= GETDATE()) AND
[C_OSZTALYCSOPORTID] = @pOsztalyId
) AS tanuloCsoport
INNER JOIN (
SELECT
[ID],
[C_NYOMTATASINEV]
FROM
[T_FELHASZNALO]
WHERE
[TOROLT] = 'F'
) AS felhasznalo
ON felhasznalo.ID = tanuloCsoport.C_TANULOID
LEFT JOIN (
SELECT
[ID],
[C_ERTEKELESDATUM],
[C_ERTEKELESTIPUSA],
[C_OSZTALYZAT],
[C_ERTEKELESSZOVEG],
[C_TANULOID]
FROM
[T_TANULOERTEKELES]
WHERE
[TOROLT] = 'F' AND
[C_TANTARGYID] = @pTantargyId
) AS tanuloErtekeles
ON tanuloErtekeles.C_TANULOID = tanuloCsoport.C_TANULOID
LEFT JOIN (
SELECT
[ID],
[C_SZAZALEK],
[C_ERTEKELESMODJA]
FROM
[T_OSZTALYZATERTEKELES]
WHERE
[TOROLT] = 'F'
) AS osztalyzatErtekeles
ON osztalyzatErtekeles.ID = tanuloErtekeles.ID
LEFT JOIN (
SELECT
[ID],
[C_VALUE]
FROM
[T_DICTIONARYITEMBASE]
WHERE
[TOROLT] = 'F'
) AS osztalyzat
ON osztalyzat.ID = tanuloErtekeles.C_OSZTALYZAT
LEFT JOIN T_TANARIATLAGSULY_OSSZES tanariAtlagSuly
ON tanariAtlagSuly.C_ERTEKELESMODJA = osztalyzatErtekeles.C_ERTEKELESMODJA AND
tanuloErtekeles.C_OSZTALYZAT IS NOT NULL AND
tanariAtlagSuly.TOROLT = 'F'
) AS temp
SELECT
result.*
,result2.ErtkelesMentesseg
,result2.SzovegesenErtekelheto
FROM (
SELECT
pivotErtekelesek.TanuloId ID,
Nev Nev,
[9] [09],
[10] [10],
[11] [11],
[12] [12],
[1] [01I],
[2] [01II],
[3] [02],
[4] [03],
[5] [04],
[6] [05],
[7] [06],
[I] [I],
[II] [II],
atlag.Jegy Atlag,
'' Ertekeles,
'' ErtekelesSzoveg,
'' Szazalekos,
@pTantargyId TantargyId
FROM (
SELECT DISTINCT
tempErtekeles1.Nev,
STUFF (
(SELECT
',' +
ISNULL(CAST(tempErtekeles2.Osztalyzat AS VARCHAR(1)), '') +
ISNULL(CAST(tempErtekeles2.Szazalek AS VARCHAR(2)), '') +
ISNULL(CAST(
CASE
WHEN tempErtekeles2.ErtekelesSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.ErtekelesSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
THEN NULL
ELSE
'sz'
END AS VARCHAR(2)), '')
FROM
@TempErtekeles tempErtekeles2
WHERE
tempErtekeles1.TanuloId = tempErtekeles2.TanuloId AND
tempErtekeles1.Honap = tempErtekeles2.Honap
FOR XML PATH ('')
), 1, 1, ''
) Ertekelesek,
tempErtekeles1.Honap,
tempErtekeles1.TanuloId
FROM
@TempErtekeles tempErtekeles1
) AS erdemjegyek
PIVOT (
MAX(Ertekelesek)
FOR Honap
IN ([I], [II], [9] ,[10] ,[11] ,[12] ,[1] ,[2] ,[3] ,[4] ,[5] ,[6], [7])
) AS pivotErtekelesek
LEFT JOIN (
SELECT
TanuloId TanuloId,
ROUND(
SUM(CAST(Osztalyzat AS FLOAT) * CAST(ISNULL(Suly, 100) AS FLOAT) / 100) / SUM(CAST(ISNULL(Suly, 100) AS FLOAT) / 100)
, 2) Jegy
FROM
@TempErtekeles
WHERE
ErtekelesTipusa = @pEvkozi AND
Osztalyzat IS NOT NULL
GROUP BY
TanuloId
) AS atlag
ON pivotErtekelesek.TanuloId = atlag.TanuloId
) AS result
JOIN (
SELECT
felhasznalo.ID ID,
tanuloMentesseg.C_ERTEKELESMENTESITES ErtkelesMentesseg,
tanuloMentesseg.C_SZOVEGESENERTEKELHETO SzovegesenErtekelheto
FROM
T_TANULOCSOPORT AS tanuloCsoport
INNER JOIN T_FELHASZNALO felhasznalo ON
felhasznalo.ID = tanuloCsoport.C_TANULOID
LEFT JOIN T_TARGYTANULOATLAG targyTanuloAtlag ON
targyTanuloAtlag.C_TANTARGYID = @pTantargyId AND
targyTanuloAtlag.C_TANULOID = felhasznalo.ID
LEFT JOIN T_TANULOMENTESSEG tanuloMentesseg ON
tanuloMentesseg.C_TANULOID = felhasznalo.ID AND
tanuloMentesseg.TOROLT = 'F' AND
tanuloMentesseg.C_TANTARGYID = @pTantargyId AND
tanuloMentesseg.C_KEZDETE IS NULL AND
tanuloMentesseg.C_VEGE IS NULL
WHERE
tanuloCsoport.TOROLT = 'F' AND
tanuloCsoport.C_OSZTALYCSOPORTID = @pOsztalyId AND
tanuloCsoport.C_BELEPESDATUM < GETDATE() AND
(tanuloCsoport.C_KILEPESDATUM IS NULL OR tanuloCsoport.C_KILEPESDATUM >= GETDATE())
) AS result2
ON result2.ID = result.ID
IF OBJECT_ID('tempdb..#TempErtekeles') IS NOT NULL DROP TABLE #TempErtekeles
END
GO

View file

@ -0,0 +1,250 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GenerateErtekelesekTempTablaByFoglalkozas]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GenerateErtekelesekTempTablaByFoglalkozas]
END
GO
-- =============================================
-- Description: <Előszedi az értékeléseket, havi bontásban foglalkozás alapján>
-- NOTE: EZT A HÁROM TÁROLT ELJÁRÁST EGYBEN KELL KEZELNI, HA MÓDOSÍTJUK!!!
-- - sp_GenerateErtekelesekTempTabla
-- - sp_GenerateErtekelesekTempTablaByFoglalkozas
-- - sp_GenerateErtekelesekMagatartasSzorgalomTempTabla
-- =============================================
CREATE PROCEDURE [dbo].[sp_GenerateErtekelesekTempTablaByFoglalkozas]
-- Add the parameters for the stored procedure here
@pFoglalkozasId INT,
@pFelevVege DATE,
@pEvkozi INT,
@pFelevi INT,
@pEvvegi INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @OsztalyId INT;
DECLARE @TantargyId INT;
SELECT
@OsztalyId = foglalkozas.C_OSZTALYCSOPORTID,
@TantargyId = foglalkozas.C_TANTARGYID
FROM
T_FOGLALKOZAS foglalkozas
WHERE
foglalkozas.ID = @pFoglalkozasId
DECLARE @TempErtekeles TABLE (
ID INT,
ErtekelesDatuma NVARCHAR(255),
ErtekelesTipusa INT,
ErtekelesSzoveg NVARCHAR(MAX),
Honap NVARCHAR(2),
TanuloId INT,
Nev NVARCHAR(255),
Osztalyzat INT,
Szazalek INT,
Suly INT
)
INSERT INTO @TempErtekeles
SELECT *
FROM (
SELECT
tanuloErtekeles.ID ID,
tanuloErtekeles.C_ERTEKELESDATUM ErtekelesDatuma,
tanuloErtekeles.C_ERTEKELESTIPUSA ErtekelesTipusa,
tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg,
CASE WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pFelevi
THEN 'I'
WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pEvvegi
THEN 'II'
ELSE
CASE
WHEN CAST(tanuloErtekeles.C_ERTEKELESDATUM AS DATE) > @pFelevVege
THEN CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) + 1 AS NVARCHAR(2))
ELSE CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) AS NVARCHAR(2))
END
END Honap,
tanuloCsoport.C_TANULOID TanuloId,
felhasznalo.C_NYOMTATASINEV Nev,
osztalyzat.C_VALUE Osztalyzat,
osztalyzatErtekeles.C_SZAZALEK Szazalek,
tanariAtlagSuly.C_SULY Suly
FROM (
SELECT
[C_TANULOID]
FROM
[T_TANULOCSOPORT]
WHERE
[TOROLT] = 'F' AND
[C_BELEPESDATUM] < GETDATE() AND
([C_KILEPESDATUM] IS NULL OR [C_KILEPESDATUM] >= GETDATE()) AND
[C_OSZTALYCSOPORTID] = @OsztalyId
) AS tanuloCsoport
INNER JOIN (
SELECT
[ID],
[C_NYOMTATASINEV]
FROM
[T_FELHASZNALO]
WHERE
[TOROLT] = 'F'
) AS felhasznalo
ON felhasznalo.ID = tanuloCsoport.C_TANULOID
LEFT JOIN (
SELECT
[ID],
[C_ERTEKELESDATUM],
[C_ERTEKELESTIPUSA],
[C_OSZTALYZAT],
[C_ERTEKELESSZOVEG],
[C_TANULOID]
FROM
[T_TANULOERTEKELES]
WHERE
[TOROLT] = 'F' AND
[C_TANTARGYID] = @TantargyId
) AS tanuloErtekeles
ON tanuloErtekeles.C_TANULOID = tanuloCsoport.C_TANULOID
LEFT JOIN (
SELECT
[ID],
[C_SZAZALEK],
[C_ERTEKELESMODJA]
FROM
[T_OSZTALYZATERTEKELES]
WHERE
[TOROLT] = 'F'
) AS osztalyzatErtekeles
ON osztalyzatErtekeles.ID = tanuloErtekeles.ID
LEFT JOIN (
SELECT
[ID],
[C_VALUE]
FROM
[T_DICTIONARYITEMBASE]
WHERE
[TOROLT] = 'F'
) AS osztalyzat
ON osztalyzat.ID = tanuloErtekeles.C_OSZTALYZAT
LEFT JOIN T_TANARIATLAGSULY_OSSZES tanariAtlagSuly
ON tanariAtlagSuly.C_ERTEKELESMODJA = osztalyzatErtekeles.C_ERTEKELESMODJA AND
tanuloErtekeles.C_OSZTALYZAT IS NOT NULL AND
tanariAtlagSuly.TOROLT = 'F'
) AS temp
SELECT
result.*
,result2.ErtkelesMentesseg
,result2.SzovegesenErtekelheto
FROM (
SELECT
pivotErtekelesek.TanuloId ID,
Nev Nev,
[9] [09],
[10] [10],
[11] [11],
[12] [12],
[1] [01I],
[2] [01II],
[3] [02],
[4] [03],
[5] [04],
[6] [05],
[7] [06],
[I] [I],
[II] [II],
atlag.Jegy Atlag,
'' Ertekeles,
'' ErtekelesSzoveg,
'' Szazalekos,
@TantargyId TantargyId
FROM (
SELECT DISTINCT
tempErtekeles1.Nev,
STUFF (
(SELECT
',' +
ISNULL(CAST(tempErtekeles2.Osztalyzat AS VARCHAR(1)), '') +
ISNULL(CAST(tempErtekeles2.Szazalek AS VARCHAR(2)), '') +
ISNULL(CAST(
CASE
WHEN tempErtekeles2.ErtekelesSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.ErtekelesSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
THEN NULL
ELSE
'sz'
END AS VARCHAR(2)), '')
FROM
@TempErtekeles tempErtekeles2
WHERE
tempErtekeles1.TanuloId = tempErtekeles2.TanuloId AND
tempErtekeles1.Honap = tempErtekeles2.Honap
FOR XML PATH ('')
), 1, 1, ''
) Ertekelesek,
tempErtekeles1.Honap,
tempErtekeles1.TanuloId
FROM
@TempErtekeles tempErtekeles1
) AS erdemjegyek
PIVOT (
MAX(Ertekelesek)
FOR Honap
IN ([I], [II], [9] ,[10] ,[11] ,[12] ,[1] ,[2] ,[3] ,[4] ,[5] ,[6], [7])
) AS pivotErtekelesek
LEFT JOIN (
SELECT
TanuloId TanuloId,
ROUND(
SUM(CAST(Osztalyzat AS FLOAT) * CAST(ISNULL(Suly, 100) AS FLOAT) / 100) / SUM(CAST(ISNULL(Suly, 100) AS FLOAT) / 100)
, 2) Jegy
FROM
@TempErtekeles
WHERE
ErtekelesTipusa = @pEvkozi AND
Osztalyzat IS NOT NULL
GROUP BY
TanuloId
) AS atlag
ON pivotErtekelesek.TanuloId = atlag.TanuloId
) AS result
JOIN (
SELECT
felhasznalo.ID ID,
tanuloMentesseg.C_ERTEKELESMENTESITES ErtkelesMentesseg,
tanuloMentesseg.C_SZOVEGESENERTEKELHETO SzovegesenErtekelheto
FROM
T_TANULOCSOPORT AS tanuloCsoport
INNER JOIN T_FELHASZNALO felhasznalo ON
felhasznalo.ID = tanuloCsoport.C_TANULOID
LEFT JOIN T_TARGYTANULOATLAG targyTanuloAtlag ON
targyTanuloAtlag.C_TANTARGYID = @TantargyId AND
targyTanuloAtlag.C_TANULOID = felhasznalo.ID
LEFT JOIN T_TANULOMENTESSEG tanuloMentesseg ON
tanuloMentesseg.C_TANULOID = felhasznalo.ID AND
tanuloMentesseg.TOROLT = 'F' AND
tanuloMentesseg.C_TANTARGYID = @TantargyId AND
tanuloMentesseg.C_KEZDETE IS NULL AND
tanuloMentesseg.C_VEGE IS NULL
WHERE
tanuloCsoport.TOROLT = 'F' AND
tanuloCsoport.C_OSZTALYCSOPORTID = @OsztalyId AND
tanuloCsoport.C_BELEPESDATUM < GETDATE() AND
(tanuloCsoport.C_KILEPESDATUM IS NULL OR tanuloCsoport.C_KILEPESDATUM >= GETDATE())
) AS result2
ON result2.ID = result.ID
IF OBJECT_ID('tempdb..#TempErtekeles') IS NOT NULL DROP TABLE #TempErtekeles
END
GO

View file

@ -0,0 +1,102 @@
-- ==========================================================================================
-- Author: Telek Ákos
-- Create date: 2016.06.08.
-- Description: Naptári hetek generálása TANEVRENDJE alapján
-- ==========================================================================================
IF OBJECT_ID('sp_GenerateNaptariHetek') IS NOT NULL BEGIN
DROP PROCEDURE sp_GenerateNaptariHetek
END
GO
CREATE PROCEDURE sp_GenerateNaptariHetek
@intezmenyId int,
@tanevId int
AS
BEGIN
SET DATEFIRST 1; -- Sets the first day of the week to a number from 1 (Monday) through 7 (Sunday).
DECLARE @startDate datetime,
@endDate datetime,
@cnt int;
DELETE FROM T_NAPTARIHET_OSSZES
WHERE C_INTEZMENYID = @intezmenyId
AND C_TANEVID = @tanevId
/* megnézzük, hány nem 1554-es hetirend van */
SELECT @cnt = COUNT(1)
FROM T_HETIRENDTIPUS_OSSZES
WHERE ID <> 1554 AND C_ALTANEVID = @tanevId
AND TOROLT='F'
/* első tanítási nap */
SELECT @startDate = C_DATUM
FROM T_TANEVRENDJE_OSSZES
WHERE C_NAPTIPUSA = 1394
AND C_TANEVID = @tanevId
AND TOROLT='F'
/* utolsó tanítási nap */
SELECT @endDate = C_UTOLSONAP
FROM T_TANEV_OSSZES
WHERE ID = @tanevId AND TOROLT='F';
IF @startDate IS NULL BEGIN
SELECT @startDate = ISNULL(C_ELSOTANITASINAP, C_KEZDONAP)
FROM T_TANEV_OSSZES
WHERE ID = @tanevId
END
/* CTE a napok legenerálásához */
;WITH ctedaterange AS (
SELECT [Dates] = @startDate, week = 1
UNION ALL
SELECT [dates] + 1, week + IIF(DATEPART(dw, dates + 1) = 1, 1, 0)
FROM ctedaterange
WHERE [dates] + 1 <= @endDate
)
/* Maga az inzert */
INSERT INTO T_NAPTARIHET_OSSZES (
C_HETIREND
,C_HETKEZDONAPJA
,C_HETSORSZAMA
,C_HETUTOLSONAPJA
,C_INTEZMENYID
,C_TANEVID
,TOROLT
,SERIAL
,LASTCHANGED
,CREATED
,MODIFIER
,CREATOR
) SELECT
ISNULL(x.ID, 1554) AS C_HETIREND -- C_HETIREND - int
,mindate AS C_HETKEZDONAPJA -- C_HETKEZDONAPJA - datetime
,week AS C_HETSORSZAMA -- C_HETSORSZAMA - int
,maxdate AS C_HETUTOLSONAPJA -- C_HETUTOLSONAPJA - datetime
,@intezmenyId AS C_INTEZMENYID -- C_INTEZMENYID - int
,@tanevId AS C_TANEVID -- C_TANEVID - int
,'F' AS TOROLT -- TOROLT - char(1)
,0 AS SERIAL -- SERIAL - int
,NULL AS LASTCHANGED -- LASTCHANGED - datetime
,GETDATE() AS CREATED -- CREATED - datetime
,NULL AS MODIFIER -- MODIFIER - int
,NULL AS CREATOR -- CREATOR - int
FROM (
SELECT
MIN(dates) AS mindate -- C_HETKEZDONAPJA - datetime
,week AS week -- C_HETSORSZAMA - int
,MAX(dates) AS maxdate -- C_HETUTOLSONAPJA - datetime
FROM ctedaterange
GROUP BY week
) c
LEFT JOIN (
SELECT ROW_NUMBER() OVER (ORDER BY C_VALUE) AS RN, ID
FROM T_DICTIONARYITEMBASE_OSSZES d
WHERE C_TYPE = 'HetiRendTipus' AND ID <> 1554
AND C_INTEZMENYID = @intezmenyId AND C_TANEVID = @tanevId AND TOROLT='F'
) x ON x.RN % NULLIF(@cnt, 0) = c.week % NULLIF(@cnt, 0)
OPTION (maxrecursion 400)
END
GO

View file

@ -0,0 +1,163 @@
-- ==========================================================================================
-- Author: Telek Ákos
-- Create date: 2016.05.31.
-- Description: Ha az adott tanévhez nincs egy naptári nap sem, akkor létrehoz egy alapot.
-- Ha van, akkor update-el a tanév rendje alapján.
-- ==========================================================================================
IF OBJECT_ID('[sp_GenerateNaptariNapok]') IS NOT NULL BEGIN
DROP PROCEDURE [sp_GenerateNaptariNapok]
END
GO
CREATE PROCEDURE [sp_GenerateNaptariNapok]
@intezmenyId int,
@tanevId int,
@overrideDefault bit = 0 -- felülírja-e az alapadatokat is?
AS
BEGIN
SET NOCOUNT ON;
SET DATEFIRST 1; -- Sets the first day of the week to a number from 1 (Monday) through 7 (Sunday).
DECLARE @startDate datetime,
@endDate datetime,
@firstDay datetime,
@lastDay datetime
-- Adott @tanevId alapján kezdő és végdátum lekérdezése
SELECT
@startDate = t.C_KEZDONAP
,@endDate = t.C_UTOLSONAP
,@firstDay = t.C_ELSOTANITASINAP
,@lastDay = t.C_UTOLSOTANITASINAP
FROM T_TANEV t WHERE t.ID = @tanevId
IF (SELECT COUNT(1) FROM T_NAPTARINAP_OSSZES WHERE C_TANEVID = @tanevId) = 0 BEGIN
-- a két dátum közötti napok kigenerálása
;WITH ctedaterange AS (
SELECT [Dates] = @startDate, week = 1
UNION ALL
SELECT [dates] + 1, week + IIF(DATEPART(dw, dates + 1) = 1, 1, 0)
FROM ctedaterange
WHERE [dates] + 1 <= @endDate
)
INSERT INTO T_NAPTARINAP (
C_HETIREND
,C_HETNAPJA
,C_HETSORSZAMA
,C_NAPDATUMA
,C_NAPTIPUSA
,C_ORARENDINAP
,C_ALAPHETIREND
,C_ALAPHETNAPJA
,C_ALAPNAPTIPUSA
,C_ALAPORARENDINAP
,C_ALAPCSENGETESIRENDID
,C_AKTIVCSENGETESIRENDID
,C_INTEZMENYID
,C_TANEVID
,TOROLT
,SERIAL
,LASTCHANGED
,CREATED
,MODIFIER
,CREATOR
) SELECT
ISNULL(h.C_HETIREND, 1554) AS C_HETIREND -- C_HETIREND - int
,hn.ID AS C_HETNAPJA -- C_HETNAPJA - int
,h.C_HETSORSZAMA AS C_HETSORSZAMA -- C_HETSORSZAMA - int
,s.dates AS C_NAPDATUMA -- C_NAPDATUMA - datetime
,CASE
WHEN DATEPART(dw, s.dates) IN (6, 7)
THEN 1386 --Munkaszüneti nap
ELSE 1385 --Tanítási nap
END AS C_NAPTIPUSA -- C_NAPTIPUSA - int
,CASE
WHEN DATEPART(dw, s.dates) IN (6, 7)
THEN 'F' -- 'Munkaszüneti nap'
ELSE 'T' -- 'Tanítási nap'
END AS C_ORARENDINAP -- C_ORARENDINAP - char(1)
,ISNULL(h.C_HETIREND, 1554) AS C_ALAPHETIREND -- C_ALAPHETIREND - int
,hn.ID AS C_ALAPHETNAPJA -- C_ALAPHETNAPJA - int
,CASE
WHEN DATEPART(dw, s.dates) IN (6, 7)
THEN 1386 -- 'Munkaszüneti nap'
ELSE 1385 -- 'Tanítási nap'
END AS C_ALAPNAPTIPUSA -- C_ALAPNAPTIPUSA - int
,CASE
WHEN DATEPART(dw, s.dates) IN (6, 7)
THEN 'F' -- 'Munkaszüneti nap'
ELSE 'T' -- 'Tanítási nap'
END AS C_ALAPORARENDINAP -- C_ALAPORARENDINAP - char(1)
,NULL AS C_ALAPCSENGETESIRENDID -- C_ALAPCSENGETESIRENDID - int
,NULL AS C_AKTIVCSENGETESIRENDID -- C_AKTIVCSENGETESIRENDID - int
,@intezmenyId AS C_INTEZMENYID -- C_INTEZMENYID - int
,@tanevId AS C_TANEVID -- C_TANEVID - int
,'F' AS TOROLT -- TOROLT - char(1)
,0 AS SERIAL -- SERIAL - int
,GETDATE() AS LASTCHANGED -- LASTCHANGED - datetime
,GETDATE() AS CREATED -- CREATED - datetime
,NULL AS MODIFIER -- MODIFIER - int
,NULL AS CREATOR -- CREATOR - int
FROM ctedaterange s
LEFT JOIN T_TANEVRENDJE_OSSZES t ON s.dates = t.C_DATUM AND t.C_TANEVID = @tanevId
INNER JOIN T_DICTIONARYITEMBASE_OSSZES hn ON hn.C_VALUE = DATEPART(dw, s.dates) + 1 AND hn.C_TYPE = 'HetNapjaTipus' AND hn.C_TANEVID = @tanevId
LEFT JOIN T_NAPTARIHET_OSSZES h ON s.dates BETWEEN h.C_HETKEZDONAPJA AND h.C_HETUTOLSONAPJA AND h.C_TANEVID = @tanevId
ORDER BY s.dates
OPTION (maxrecursion 0) -- hogy ne legyen korlátozva a regurzitás mélysége a CTE-ben /* default 100 */
END
ELSE BEGIN
IF @overrideDefault = 1 BEGIN
SELECT @firstDay = ro.C_DATUM
FROM T_TANEVRENDJE_OSSZES ro
WHERE ro.C_TANEVID = @tanevId AND ro.C_NAPTIPUSA = 1394
SELECT @lastDay = ro.C_DATUM
FROM T_TANEVRENDJE_OSSZES ro
WHERE ro.C_TANEVID = @tanevId AND ro.C_NAPTIPUSA = 1395
SELECT @firstDay = ISNULL(@firstDay, C_KEZDONAP),
@lastDay = ISNULL(@lastDay, C_UTOLSONAP)
FROM T_TANEV_OSSZES
WHERE ID = @tanevId
UPDATE T_NAPTARINAP_OSSZES
SET C_NAPTIPUSA = IIF(DATEPART(dw, C_NAPDATUMA) BETWEEN 1 AND 5, 1392, C_NAPTIPUSA),
C_ALAPNAPTIPUSA = IIF(DATEPART(dw, C_NAPDATUMA) BETWEEN 1 AND 5, 1392, C_ALAPNAPTIPUSA),
C_ORARENDINAP = 'F',
C_ALAPORARENDINAP = 'F'
WHERE (C_NAPDATUMA < @firstDay OR C_NAPDATUMA > @lastDay)
AND C_TANEVID = @tanevId
END
UPDATE n
SET n.C_HETIREND = IIF(x.TOROLT = 'F' OR x.TOROLT IS NULL, ISNULL(h.C_HETIREND,1554), n.C_ALAPHETIREND),
n.C_HETNAPJA = IIF(x.TOROLT = 'F' OR x.TOROLT IS NULL, ISNULL(x.C_HETNAPJA, n.C_HETNAPJA), n.C_ALAPHETNAPJA),
n.C_NAPTIPUSA = IIF(x.TOROLT = 'F' OR x.TOROLT IS NULL, ISNULL(x.C_NAPTIPUSA, n.C_NAPTIPUSA), n.C_ALAPNAPTIPUSA),
n.C_ORARENDINAP = IIF(x.TOROLT = 'F' OR x.TOROLT IS NULL, ISNULL(x.C_ORARENDINAP, n.C_ORARENDINAP), n.C_ALAPORARENDINAP),
n.C_AKTIVCSENGETESIRENDID = IIF(x.TOROLT = 'F' OR x.TOROLT IS NULL, ISNULL(x.C_CSENGETESIRENDID, n.C_AKTIVCSENGETESIRENDID), n.C_ALAPCSENGETESIRENDID),
n.C_ALAPHETIREND = IIF(@overrideDefault = 0 OR x.TOROLT = 'T', n.C_ALAPHETIREND, h.C_HETIREND),
n.C_ALAPHETNAPJA = IIF(@overrideDefault = 0 OR x.TOROLT = 'T', n.C_ALAPHETNAPJA, ISNULL(x.C_HETNAPJA, n.C_ALAPHETNAPJA)),
n.C_ALAPNAPTIPUSA = IIF(@overrideDefault = 0 OR x.TOROLT = 'T', n.C_ALAPNAPTIPUSA, ISNULL(x.C_NAPTIPUSA, n.C_ALAPNAPTIPUSA)),
n.C_ALAPORARENDINAP = IIF(@overrideDefault = 0 OR x.TOROLT = 'T', n.C_ALAPORARENDINAP, ISNULL(x.C_ORARENDINAP, n.C_ALAPORARENDINAP)),
n.C_ALAPCSENGETESIRENDID = IIF(@overrideDefault = 0 OR x.TOROLT = 'T', n.C_AKTIVCSENGETESIRENDID, ISNULL(x.C_CSENGETESIRENDID, n.C_ALAPCSENGETESIRENDID))
FROM T_NAPTARINAP_OSSZES n
INNER JOIN T_NAPTARIHET h ON n.C_NAPDATUMA BETWEEN h.C_HETKEZDONAPJA AND h.C_HETUTOLSONAPJA
LEFT JOIN (
SELECT ro.C_DATUM, ro.TOROLT, ro.C_HETNAPJA, ro.C_NAPTIPUSA, ro.C_ORARENDINAP, ro.C_CSENGETESIRENDID
FROM T_TANEVRENDJE_OSSZES ro
WHERE ro.C_TANEVID = @tanevId
AND ro.TOROLT = 'F'
AND NOT EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_TANEVRENDJE o WHERE o.C_TANEVRENDJEID = ro.ID)
UNION ALL
SELECT DISTINCT ro.C_DATUM, ro.TOROLT, NULL, NULL, NULL, NULL
FROM T_TANEVRENDJE_OSSZES ro
WHERE ro.C_TANEVID = @tanevId
AND ro.TOROLT = 'T'
AND NOT EXISTS (SELECT 1 FROM T_TANEVRENDJE_OSSZES r WHERE ro.C_DATUM = r.C_DATUM AND C_TANEVID = @tanevId)
AND NOT EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_TANEVRENDJE o WHERE o.C_TANEVRENDJEID = ro.ID)
) x ON x.C_DATUM = n.C_NAPDATUMA
WHERE n.C_TANEVID = @tanevId AND h.C_TANEVID = @tanevId
END
END
GO

View file

@ -0,0 +1,48 @@
-- =============================================
-- Description: Az alkalmazott munkaügyi exporthoz adja vissza az adatokat
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[sp_GetAlkalmazottMunkaugyiExport]') IS NOT NULL
BEGIN
DROP PROCEDURE [sp_GetAlkalmazottMunkaugyiExport]
END
GO
CREATE PROCEDURE [sp_GetAlkalmazottMunkaugyiExport]
@tanevId int
,@intezmenyid int
AS
BEGIN
SET NOCOUNT ON;
select
a.ID as ID
,f.C_NYOMTATASINEV as 'PedagogusNeve'
,f.C_SZULETESIDATUM as 'PedagogusSzuletesiDatuma'
,f.C_ADOSZAM as 'Adoszam'
,m.C_KEPESITES as 'PedagogiaiKepesites'
,m.C_MUNKAKORTIPUSA as 'Munkakor'
,m.C_MUNKAVISZONYTIPUSA as 'FoglalkoztatasModja'
,m.C_KOTELEZOORASZAM as 'KotelezoOraszama'
,m.C_MUNKAIDOKEDVEZMENYORASZAM as 'MunkaidoKedvezmenyOraszama'
,m.C_MUNKAIDOKEDVEZMENYOKA as 'MunkaidoKedvezmenyOka'
,m.C_ALKALMAZASKEZDETE as 'AlkalmazasKezdete'
,f.C_OKTATASIAZONOSITO as 'Oktatasiazonosito'
from T_MUNKAUGYIADATOK m
inner join T_FELHASZNALO f on f.ID = m.C_ALKALMAZOTTID and f.TOROLT = 'F'
inner join T_ALKALMAZOTT a on a.ID = m.C_ALKALMAZOTTID and a.TOROLT = 'F'
where
m.TOROLT = 'F' and m.C_INTEZMENYID = @intezmenyid and m.C_TANEVID = @tanevId
order by
f.C_NYOMTATASINEV
END
GO

View file

@ -0,0 +1,54 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetAllOsztalyCsoport]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetAllOsztalyCsoport]
END
GO
-- =============================================
-- Description: <Osztályok/csoportok és egyéb osztályok/csoportok>
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetAllOsztalyCsoport]
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
osztalyCsoport.ID ID,
osztalyCsoport.C_NEV Nev,
'1' Tipus,
NULL CsoportTipusa,
osztalyCsoport.C_EVFOLYAMTIPUSA Evfolyam
FROM
T_OSZTALYCSOPORT osztalyCsoport
INNER JOIN T_OSZTALY osztaly
ON osztaly.ID = osztalyCsoport.ID
WHERE
osztalyCsoport.TOROLT = 'F'
UNION ALL
SELECT
osztalyCsoport.ID ID,
osztalyCsoport.C_NEV Nev,
'1' Tipus,
csoport.C_TIPUSA CsoportTipusa,
osztalyCsoport.C_EVFOLYAMTIPUSA Evfolyam
FROM
T_OSZTALYCSOPORT osztalyCsoport
INNER JOIN T_CSOPORT csoport
ON csoport.ID = osztalyCsoport.ID
WHERE
osztalyCsoport.TOROLT = 'F'
ORDER BY
CsoportTipusa, Evfolyam
END

View file

@ -0,0 +1,35 @@
-- ================================================
-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters
-- command (Ctrl-Shift-M) to fill in the parameter
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: somo
-- Create date: 2015-09-24
-- Description: Összes funkció jogosultság lekérdezése.
-- =============================================
CREATE PROCEDURE sp_GetAllRoleFunctions
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
select r.C_ROLENAME RoleName, f.C_FUNCTIONID FunctionId, rf.C_VALIDFROM ValidFrom, rf.C_VALIDTO ValidTo
from T_ROLEFUNCTIONS rf
JOIN T_ROLES r on r.ID = rf.C_ROLESID
JOIN T_FUNCTIONS f on f.ID = rf.C_FUNCTIONSID
where rf.C_ENABLED = 'T'
END
GO

View file

@ -0,0 +1,61 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Hoffmann Zsolt>
-- Create date: <2016.07.05>
-- Description: <Áttanitások lekérdezése riport>
-- =============================================
IF OBJECT_ID('sp_GetAttanitasok') IS NOT NULL BEGIN
DROP PROCEDURE sp_GetAttanitasok
END
GO
CREATE PROCEDURE [sp_GetAttanitasok]
@pTanevString nvarchar(50),
@pFenntarto nvarchar(50)
AS
BEGIN
SET NOCOUNT ON;
SELECT * FROM (
SELECT
fh.C_OKTATASIAZONOSITO ID,
MAX(fh.C_NYOMTATASINEV) TanarNev,
MAX(fh.C_SZULETESIHELY) SzulHely,
MAX(fh.C_SZULETESIDATUM) SzulDatum,
MAX(fh.C_SZULETESINEV) SzulNev,
MAX(fh.C_ANYJANEVE) AnyjaNeve,
STUFF(
(SELECT DISTINCT ', ' + xi.C_NEV
FROM T_INTEZMENYADATOK xi
INNER JOIN T_FELHASZNALO xf ON xi.C_INTEZMENYID = xf.C_INTEZMENYID
WHERE xf.C_OKTATASIAZONOSITO = fh.C_OKTATASIAZONOSITO
FOR XML PATH (''))
, 1, 1, '') as Intezmenyek,
MAX(m.C_KOTELEZOORASZAM) KotelezoOraszam,
SUM(f.C_ORASZAM) TenylegesOraszam,
(SELECT DISTINCT COUNT(xi.C_OMKOD)
FROM T_INTEZMENYADATOK xi
INNER JOIN T_FELHASZNALO xf ON xi.C_INTEZMENYID = xf.C_INTEZMENYID
INNER JOIN T_TANEV xte ON xte.ID = xi.C_TANEVID AND xte.TOROLT = 'F'
WHERE xf.C_OKTATASIAZONOSITO = fh.C_OKTATASIAZONOSITO AND xte.C_NEV = @pTanevString)
IntezmenyekSzama
FROM T_INTEZMENY i
INNER JOIN T_INTEZMENYADATSZOLGALTATAS ia ON ia.C_INTEZMENYID = i.ID AND ia.TOROLT = 'F'
INNER JOIN T_TANEV te ON te.ID = ia.C_TANEVID AND te.TOROLT = 'F'
INNER JOIN T_ALKALMAZOTT a ON a.C_ALINTEZMENYID = i.ID AND a.TOROLT = 'F'
INNER JOIN T_FELHASZNALO fh ON fh.ID = a.ID AND fh.TOROLT = 'F'
INNER JOIN T_FOGLALKOZASOK_TANAROK ft ON ft.C_TANAROKID = a.ID
INNER JOIN T_FOGLALKOZAS f ON ft.C_FOGLALKOZASOKID = f.ID AND f.TOROLT = 'F'
INNER JOIN T_MUNKAUGYIADATOK m ON m.C_ALKALMAZOTTID = a.ID AND m.TOROLT = 'F' AND (m.C_BETOLTETLENALLASHELY != 'T')
WHERE (fh.C_OKTATASIAZONOSITO IS NOT NULL OR fh.C_OKTATASIAZONOSITO <> '')
AND te.C_NEV = @pTanevString
AND (i.C_FENNTARTOAZONOSITO = @pFenntarto OR @pFenntarto IS NULL)
GROUP BY fh.C_OKTATASIAZONOSITO
) t
WHERE t.IntezmenyekSzama > 1
ORDER BY t.TanarNev
END
GO

View file

@ -0,0 +1,193 @@
IF OBJECT_ID('sp_GetBizonyitvany12161') IS NOT NULL
DROP PROCEDURE sp_GetBizonyitvany12161
GO
CREATE PROCEDURE sp_GetBizonyitvany12161
@osztalyCsoportId int,
@felev int,
@TanevId int
AS
BEGIN
IF OBJECT_ID('tempdb..#TANTARGY') IS NOT NULL BEGIN
DROP TABLE #TANTARGY
END
CREATE TABLE #TANTARGY (
ID int primary key,
NEV nvarchar(255),
ORAK int,
OSZTALYFONOKI bit
)
INSERT INTO #TANTARGY (ID, NEV, ORAK, OSZTALYFONOKI)
SELECT
T_TANTARGY_OSSZES.ID AS ID,
T_TANTARGY_OSSZES.C_NEV AS NEV,
COUNT(T_TANITASIORA_OSSZES.ID) AS ORAK,
IIF(D.C_NAME = 'Osztályfőnöki, élet- és pályatervezés', 1, 0) AS OSZTALYFONOKI
FROM T_TANTARGY_OSSZES
INNER JOIN T_TANITASIORA_OSSZES on T_TANTARGY_OSSZES.ID = T_TANITASIORA_OSSZES.C_TANTARGYID AND T_TANITASIORA_OSSZES.TOROLT='F'
INNER JOIN T_FOGLALKOZAS_OSSZES ON T_TANTARGY_OSSZES.ID = T_FOGLALKOZAS_OSSZES.C_TANTARGYID AND T_FOGLALKOZAS_OSSZES.TOROLT='F'
INNER JOIN T_TANEV_OSSZES ON T_FOGLALKOZAS_OSSZES.C_TANEVID = T_TANEV_OSSZES.ID AND T_TANEV_OSSZES.TOROLT = 'F'
INNER JOIN T_DICTIONARYITEMBASE_OSSZES D ON T_TANTARGY_OSSZES.C_TARGYKATEGORIA = D.ID
WHERE T_TANTARGY_OSSZES.TOROLT = 'F'
AND T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID = @osztalyCsoportId
AND T_TANITASIORA_OSSZES.C_DATUM BETWEEN T_TANEV_OSSZES.C_ELSOTANITASINAP AND T_TANEV_OSSZES.C_UTOLSOTANITASINAP
AND T_TANITASIORA_OSSZES.C_MEGTARTOTT = 'T'
AND T_TANEV_OSSZES.ID = @TanevId
GROUP BY T_TANTARGY_OSSZES.ID,T_TANTARGY_OSSZES.C_NEV, IIF(D.C_NAME = 'Osztályfőnöki, élet- és pályatervezés', 1, 0)
DECLARE @jegySelect nvarchar(MAX) = N'',
@jegyFrom nvarchar(MAX) = N'FROM T_TANULOCSOPORT_OSSZES TCS',
@jegyWhere nvarchar(MAX),
@sql nvarchar(MAX),
@bizSelect nvarchar(MAX),
@bizJoin nvarchar(MAX),
@mulSql nvarchar(MAX),
@felevJegy int
SELECT @felevJegy = ID
FROM T_DICTIONARYITEMBASE_OSSZES
WHERE C_TYPE = 'ErtekelesTipus'
AND C_TANEVID = @TanevId
AND C_NAME = IIF(@felev = 1, 'Félévi jegy/értékelés', 'Évvégi jegy/értékelés')
SET @bizSelect =
'SELECT * FROM (
SELECT
T_FELHASZNALO_OSSZES.ID AS [BIZTANULOID],
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV AS [név],
T_FELHASZNALO_OSSZES.C_VEZETEKNEV + '' '' + T_FELHASZNALO_OSSZES.C_UTONEV AS [családi és utónév],
T_FELHASZNALO_OSSZES.C_SZULETESIHELY AS [szül_hely_település],
Orszag.C_NAME AS [szül_hely_ország],
CONVERT(DATE,T_FELHASZNALO_OSSZES.C_SZULETESIDATUM) AS [szül_idő],
Allampolg.C_NAME AS [állampolgárság],
Anyanyelv.C_NAME AS [anyanyelv],
T_FELHASZNALO_OSSZES.C_ANYJANEVE AS [anyja_neve],
T_GONDVISELO_OSSZES.C_NEV AS [apa_neve],
T_INTEZMENYADATOK_OSSZES.C_VAROS AS [kelt_település],
YEAR(GETDATE()) AS [kelt_év],
MONTH(GETDATE()) AS [kelt_hó],
DAY(GETDATE()) AS [kelt_nap],
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO AS [om_azonosító],
'''' AS [törzslapszám_szám],
ROW_NUMBER() OVER (ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV) AS [törzslapszám_év],
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV AS [név2],
YEAR(T_TANEV_OSSZES.C_KEZDONAP) AS [tanév_tól],
YEAR(T_TANEV_OSSZES.C_UTOLSONAP) AS [tanév_ig],
IIF(@felev = 1, ''Első'', ''Második'') AS [félév],
T_INTEZMENYADATOK_OSSZES.C_NEV + '' '' + T_MUKODESIHELY_OSSZES.C_NEV + '', ''+ T_MUKODESIHELY_OSSZES.C_IRANYITOSZAM + '' '' + T_MUKODESIHELY_OSSZES.C_VAROS + T_MUKODESIHELY_OSSZES.C_CIME AS [iskola_neve_címe],
IskolaTipus.C_NAME AS [iskola_tipus],
Evfolyam.C_NAME AS [évfolyam_száma],
T_OSZTALYCSOPORT_OSSZES.C_NEV AS [osztály],
DM.C_NAME AS [magatartás],
DSZ.C_NAME AS [szorgalom]
FROM T_FELHASZNALO_OSSZES
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES Orszag ON T_FELHASZNALO_OSSZES.C_SZULETESIORSZAG = Orszag.ID
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES Allampolg ON T_FELHASZNALO_OSSZES.C_ALLAMPOLGARSAGA = Allampolg.ID
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES Anyanyelv ON T_FELHASZNALO_OSSZES.C_ANYANYELVE = Anyanyelv.ID
LEFT JOIN T_FELHASZNALOBELEPES_OSSZES ON T_FELHASZNALO_OSSZES.ID = T_FELHASZNALOBELEPES_OSSZES.C_FELHASZNALOID AND T_FELHASZNALOBELEPES_OSSZES.C_GONDVISELOID IS NOT NULL AND T_FELHASZNALOBELEPES_OSSZES.TOROLT=''F''
LEFT JOIN T_GONDVISELO_OSSZES ON T_FELHASZNALOBELEPES_OSSZES.C_GONDVISELOID = T_GONDVISELO_OSSZES.ID AND T_GONDVISELO_OSSZES.C_ROKONSAGFOKA = 2 --Apa
AND T_GONDVISELO_OSSZES.TOROLT=''F''
INNER JOIN T_TANEV_OSSZES ON T_TANEV_OSSZES.TOROLT = ''F''
INNER JOIN T_INTEZMENYADATOK_OSSZES ON T_INTEZMENYADATOK_OSSZES.C_TANEVID = T_TANEV_OSSZES.ID AND T_INTEZMENYADATOK_OSSZES.TOROLT = ''F''
LEFT JOIN T_TANEVRENDJE_OSSZES ON T_TANEVRENDJE_OSSZES.C_NAPTIPUSA = 1400 AND T_TANEVRENDJE_OSSZES.C_TANEVID = T_TANEV_OSSZES.ID AND T_TANEVRENDJE_OSSZES.TOROLT = ''F''
INNER JOIN T_TANULOCSOPORT_OSSZES ON T_FELHASZNALO_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_TANULOID AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM > GETDATE()) AND T_TANULOCSOPORT_OSSZES.TOROLT = ''F''
INNER JOIN T_OSZTALYCSOPORT_OSSZES ON T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID = T_OSZTALYCSOPORT_OSSZES.ID AND T_OSZTALYCSOPORT_OSSZES.TOROLT = ''F''
INNER JOIN T_OSZTALY_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = T_OSZTALY_OSSZES.ID AND T_OSZTALY_OSSZES.TOROLT = ''F''
INNER JOIN T_FELADATELLATASIHELY_OSSZES ON T_OSZTALYCSOPORT_OSSZES.C_FELADATELLATASIHELYID = T_FELADATELLATASIHELY_OSSZES.ID AND T_FELADATELLATASIHELY_OSSZES.TOROLT = ''F''
INNER JOIN T_MUKODESIHELY_OSSZES ON T_FELADATELLATASIHELY_OSSZES.C_MUKODESIHELYID = T_MUKODESIHELY_OSSZES.ID AND T_MUKODESIHELY_OSSZES.TOROLT = ''F''
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES IskolaTipus ON T_FELADATELLATASIHELY_OSSZES.C_OKTATASINEVELESIFELADATTIPUS = IskolaTipus.ID
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES Evfolyam ON T_OSZTALYCSOPORT_OSSZES.C_EVFOLYAMTIPUSA = Evfolyam.ID
LEFT JOIN (
SELECT te.C_TANULOID, ofe.C_MAGATARTAS, ofe.C_SZORGALOM FROM T_TANULOERTEKELES_OSSZES te
INNER JOIN T_OSZTALYFONOKIERTEKELES_OSSZES ofe ON ofe.ID = te.ID AND ofe.TOROLT = ''F''
WHERE te.TOROLT = ''F'' AND te.C_ERTEKELESTIPUSA = @felevJegy
) MSZ ON MSZ.C_TANULOID = T_FELHASZNALO_OSSZES.ID
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES DM ON DM.ID = MSZ.C_MAGATARTAS
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES DSZ ON DSZ.ID = MSZ.C_SZORGALOM
WHERE T_OSZTALYCSOPORT_OSSZES.ID = @osztalyCsoportId
AND T_TANEV_OSSZES.ID = @TanevId) BIZ
'
SET @mulSql = '
INNER JOIN (
SELECT tms.C_TANULOID AS MULTANULOID,
SUM(CASE
WHEN tms.C_STATISZTIKATIPUS <> 1655 THEN 0
WHEN @felev = 1 THEN tms.C_OSSZESELSOFELEVMULASZTAS
ELSE tms.C_OSSZESELSOFELEVMULASZTAS + tms.C_OSSZESMASODIKFELEVMULASZTAS END
) AS mulasztott_orak_szama,
SUM(CASE
WHEN tms.C_STATISZTIKATIPUS <> 1655 THEN 0
WHEN @felev = 1 THEN tms.C_OSSZESELSOFELEVMULASZTAS
ELSE tms.C_OSSZESELSOFELEVMULASZTAS + tms.C_OSSZESMASODIKFELEVMULASZTAS END
) AS mulasztott_orak_osszesen,
SUM(CASE
WHEN tms.C_STATISZTIKATIPUS <> 1655 THEN 0
WHEN @felev = 1 THEN tms.C_OSSZESELSOFELEVELMELETI
ELSE tms.C_OSSZESELSOFELEVELMELETI + tms.C_OSSZESMASODIKFELEVELMELETI END
) AS mulasztott_elmelet_osszesen,
SUM(CASE
WHEN tms.C_STATISZTIKATIPUS <> 1662 THEN 0
WHEN @felev = 1 THEN tms.C_OSSZESELSOFELEVELMELETI
ELSE tms.C_OSSZESELSOFELEVELMELETI + tms.C_OSSZESMASODIKFELEVELMELETI END
) AS mulasztott_elmelet_igazolatlan,
SUM(CASE
WHEN tms.C_STATISZTIKATIPUS <> 1655 THEN 0
WHEN @felev = 1 THEN tms.C_OSSZESELSOFELEVGYAKORLATI
ELSE tms.C_OSSZESELSOFELEVGYAKORLATI + tms.C_OSSZESMASODIKFELEVGYAKORLATI END
) AS mulasztott_gyakorlat_osszesen,
SUM(CASE
WHEN tms.C_STATISZTIKATIPUS <> 1662 THEN 0
WHEN @felev = 1 THEN tms.C_OSSZESELSOFELEVGYAKORLATI
ELSE tms.C_OSSZESELSOFELEVGYAKORLATI + tms.C_OSSZESMASODIKFELEVGYAKORLATI END
) AS mulasztott_gyakorlat_igazolatlan
FROM T_TANULOMULASZTASSTATISZTIKA_OSSZES tms
WHERE tms.C_STATISZTIKATIPUS IN (1655, 1662)
and tms.C_TANEVID = @TanevId
GROUP BY tms.C_TANULOID
) mul ON mul.MULTANULOID = BIZ.BIZTANULOID
'
SELECT @jegySelect += IIF(#TANTARGY.OSZTALYFONOKI = 1, '', ', D' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.C_NAME AS [' + CAST(#TANTARGY.NEV AS nvarchar(255)) + ' JEGY] ') + ', T' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.ORAK AS [' + CAST(#TANTARGY.NEV AS nvarchar(255)) + ' ORAK]',
@jegyFrom += IIF(#TANTARGY.OSZTALYFONOKI = 1, '
LEFT JOIN #TANTARGY T' + CAST(#TANTARGY.ID AS nvarchar(10)) + ' ON T' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.ID = ' + CAST(#TANTARGY.ID AS nvarchar(10)) /*Ha osztályfőnöki*/
,'
LEFT JOIN T_TANULOERTEKELES_OSSZES E' + CAST(#TANTARGY.ID AS nvarchar(10)) + ' ON E' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.C_TANTARGYID = ' + CAST(#TANTARGY.ID AS nvarchar(10)) + ' AND TCS.C_TANULOID = E' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.C_TANULOID AND E' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.C_ERTEKELESTIPUSA = @felevJegy AND E' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.C_OSZTALYCSOPORTID = @osztalyCsoportId AND E' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.TOROLT = ''F''
LEFT JOIN T_OSZTALYZATERTEKELES_OSSZES O' + CAST(#TANTARGY.ID AS nvarchar(10)) + ' ON O' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.ID = E' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.ID AND O' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.TOROLT = ''F''
LEFT JOIN #TANTARGY T' + CAST(#TANTARGY.ID AS nvarchar(10)) + ' ON E' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.C_TANTARGYID = T' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.ID
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES D' + CAST(#TANTARGY.ID AS nvarchar(10)) + ' ON D' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.ID = O' + CAST(#TANTARGY.ID AS nvarchar(10)) + '.C_OSZTALYZAT' /*Ha nem osztályfőnöki*/) --IIF záró zárójele
FROM #TANTARGY
ORDER BY #TANTARGY.OSZTALYFONOKI DESC
SET @jegyWhere = N'
WHERE TCS.C_OSZTALYCSOPORTID = @osztalyCsoportId'
SET @bizJoin = '
) JEGY ON JEGY.JEGYTANULOID = BIZ.BIZTANULOID'
/*
Ha a @jegySelect üres string, akkor nem volt az osztálynak tantárgya
Így majd kimarad a végső nagy selectből (@sql) is.
*/
IF @jegySelect <> '' BEGIN
SET @jegySelect = 'INNER JOIN (
SELECT TCS.C_TANULOID AS JEGYTANULOID' + @jegySelect
END
SET @sql = @bizSelect + CASE WHEN @jegySelect <> '' THEN @jegySelect + @jegyFrom + @jegyWhere + @bizJoin ELSE '' END + @mulSql
EXEC sp_executesql @sql,
N'@osztalyCsoportId int, @felevJegy int, @felev int, @TanevId int',
@osztalyCsoportId, @felevJegy, @felev, @TanevId
IF OBJECT_ID('tempdb..#TANTARGY') IS NOT NULL BEGIN
DROP TABLE #TANTARGY
END
END
GO

View file

@ -0,0 +1,96 @@
-- ================================================
-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters
-- command (Ctrl-Shift-M) to fill in the parameter
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Zsiga Attila
-- Create date: 2016.04.05.
-- Description: Bizonyítvány pótlap.
-- =============================================
CREATE PROCEDURE sp_GetBizonyitvanyPotlap
@TanevId int,
@OsztalyCsoportId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Intezmeny
SELECT
C_NEV IntezmenyNev,
C_IRANYITOSZAM Iranyitoszam,
C_VAROS Varos,
C_CIME Cim,
C_OMKOD OMKod
FROM
T_INTEZMENYADATOK_OSSZES
WHERE
T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
AND T_INTEZMENYADATOK_OSSZES.C_TANEVID = @TanevId
-- Osztaly
SELECT
C_NEV OsztalyNev
FROM
T_OSZTALYCSOPORT_OSSZES
WHERE
T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
AND T_OSZTALYCSOPORT_OSSZES.ID = @OsztalyCsoportId
AND T_OSZTALYCSOPORT_OSSZES.C_TANEVID = @TanevId
-- Tanev
SELECT
C_NEV Tanev,
(CAST(GETDATE() AS DATE)) MaiDatum
FROM
T_TANEV_OSSZES OsztalyNev
WHERE
TOROLT = 'F' AND ID = @TanevId
-- Osztalyfonok
SELECT
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV OsztalyfonokNev
FROM
(SELECT * FROM T_OSZTALYCSOPORT_OSSZES WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
AND T_OSZTALYCSOPORT_OSSZES.ID = @OsztalyCsoportId
AND T_OSZTALYCSOPORT_OSSZES.C_TANEVID = @TanevId) AS T_OSZTALYCSOPORT_OSSZES
INNER JOIN T_OSZTALY_OSSZES ON T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID AND T_OSZTALY_OSSZES.TOROLT = 'F'
INNER JOIN T_FELHASZNALO_OSSZES ON T_FELHASZNALO_OSSZES.ID = T_OSZTALY_OSSZES.C_OSZTALYFONOKID AND T_FELHASZNALO_OSSZES.TOROLT = 'F'
-- Tanulok
SELECT
ROW_NUMBER() OVER(ORDER BY _FELHASZNALO.C_NYOMTATASINEV) TorzslapSzam,
_FELHASZNALO.C_NYOMTATASINEV TanuloNeve,
_FELHASZNALO.C_OKTATASIAZONOSITO TanuloAzonosito,
(SELECT COUNT(*) FROM T_TANULOMULASZTAS_OSSZES WHERE TOROLT = 'F' AND C_ORATANULOIID = _TANULO.ID) MulasztottOrakSzama,
(SELECT COUNT(*) FROM T_TANULOMULASZTAS_OSSZES WHERE TOROLT = 'F' AND C_ORATANULOIID = _TANULO.ID AND C_IGAZOLT = 'T') Igazolt,
(SELECT COUNT(*) FROM T_TANULOMULASZTAS_OSSZES WHERE TOROLT = 'F' AND C_ORATANULOIID = _TANULO.ID AND C_IGAZOLT = 'F') Igazolatlan
FROM
(SELECT * FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
AND T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID = @OsztalyCsoportId
AND T_TANULOCSOPORT_OSSZES.C_TANEVID = @TanevId
AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) _TANULOCSOPORT
INNER JOIN (SELECT * FROM T_TANULO_OSSZES WHERE T_TANULO_OSSZES.TOROLT = 'F') _TANULO ON _TANULO.ID = _TANULOCSOPORT.C_TANULOID
INNER JOIN (SELECT * FROM T_FELHASZNALO_OSSZES WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND C_TANEVID = @TanevId ) _FELHASZNALO ON _FELHASZNALO.ID = _TANULO.ID
GROUP BY
_FELHASZNALO.C_NYOMTATASINEV,
_FELHASZNALO.C_OKTATASIAZONOSITO,
_TANULO.ID
ORDER BY
TorzslapSzam
END
GO

View file

@ -0,0 +1,104 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[sp_GetCsoportElsoNegyedeviTantargyiStatisztika]
@tanevId int,
@intezmenyId int
AS
BEGIN
SET NOCOUNT ON;
declare @kezdodatum as date=(select distinct tr.c_datum from t_tanevrendje tr where c_naptipusa=1394 and tr.torolt='F' and tr.c_intezmenyid=@intezmenyid and tr.c_tanevid=@tanevid);
declare @vegdatum as date=(select distinct tr.c_datum from t_tanevrendje tr where c_naptipusa=1403 and tr.torolt='F' and tr.c_intezmenyid=@intezmenyid and tr.c_tanevid=@tanevid);
--Osztályok
create table #osztaly (Id int, Nev nvarchar(max), Letszam int, rendez nvarchar(max))
insert into #osztaly
select ocs.id as Id, ocs.c_nev as Nev, count(tcs.c_tanuloid) as Letszam, ocs.c_nev as rendez from t_osztalycsoport ocs
left join t_tanulocsoport tcs on tcs.c_osztalycsoportid=ocs.id and tcs.c_intezmenyid=@intezmenyId and tcs.c_tanevid=@tanevId and tcs.torolt='F'
where ocs.c_intezmenyid=@intezmenyId and ocs.c_tanevid=@tanevId and ocs.torolt='F'
group by ocs.id, ocs.c_nev
--Osztályok, összesen
insert into #osztaly values (-1, 'Összesen: ', null, 'zzz')
--Értékelések
create table #ertekeles(Osztaly int, Tantargy int, Atlag float)
insert into #ertekeles
select te.c_osztalycsoportid as Osztaly, te.c_tantargyid as Tantargy, round(avg(convert(float,d.c_value)),2) as Atlag from t_tanuloertekeles te
inner join (select d.id, d.c_value from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.torolt='F' and te.c_tanevid=@tanevid and te.c_intezmenyid=@intezmenyid
and convert(date,te.c_ertekelesdatum)>@kezdodatum and convert(date,te.c_ertekelesdatum)<@vegdatum and te.c_tantargyid is not null
group by te.c_osztalycsoportid, te.c_tantargyid
--Értékelés, összegzés
insert into #ertekeles
select Osztaly, Tantargy, round(avg(convert(float,Atlag)),2) from (
select -1 as Osztaly, te.c_tantargyid as Tantargy, round(avg(convert(float,d.c_value)),2) as Atlag from t_tanuloertekeles te
inner join (select d.id, d.c_value from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.c_tantargyid is not null and te.torolt='F' and te.c_tanevid=@tanevid and te.c_intezmenyid=@intezmenyid
and convert(date,te.c_ertekelesdatum)>@kezdodatum and convert(date,te.c_ertekelesdatum)<@vegdatum
group by te.c_osztalycsoportid, te.c_tantargyid)a
group by Osztaly, tantargy
--Osztályátlag
create table #osztalyavg(Osztaly int, Atlag float)
insert into #osztalyavg
select te.c_osztalycsoportid as Osztaly, round(avg(convert(float,d.c_value)),2) as Atlag from t_tanuloertekeles te
inner join (select d.id, d.c_value from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.c_tantargyid is not null and te.torolt='F' and te.c_tanevid=@tanevid and te.c_intezmenyid=@intezmenyid
and convert(date,te.c_ertekelesdatum)>@kezdodatum and convert(date,te.c_ertekelesdatum)<@vegdatum
group by te.c_osztalycsoportid
--Mulasztás
/*
declare @mulasztas table(Osztaly int, MulasztasTipus int, IgazoltE nvarchar(1), Keses int)
insert into @mulasztas
select Id, mulasztas.MulasztasTipus, mulasztas.IgazoltE, mulasztas.Keses from #osztaly o
left join (select tcs.c_osztalycsoportid as Osztaly, tm.c_tipus as MulasztasTipus, tm.c_igazolt as IgazoltE, tm.c_kesespercben as Keses from t_tanulomulasztas tm
inner join t_tanulocsoport tcs on tcs.c_tanuloid=tm.c_oratanuloiid and tcs.c_intezmenyid=@intezmenyId and tcs.c_tanevid=@tanevId and tcs.torolt='F'
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid and tao.torolt='F' and tao.torolt='F' and tao.c_tanevid=@tanevid and tao.c_intezmenyid=@intezmenyid and convert(date,tao.c_datum)>@kezdodatum and convert(date,tao.c_datum)<@vegdatum
where tm.c_igazolt in ('T', 'F')
) mulasztas on mulasztas.Osztaly=o.id
create table #mulasztastmp(Osztaly int, ih float, nih float, ik float, nik float)
insert into #mulasztastmp
select distinct o.Id, round((convert(float,ih.ih)/convert(float, o.letszam)),2) as ih, round((convert(float,nih.nih)/convert(float, o.letszam)),2) as nih, round((convert(float,ik.ik)/convert(float, o.letszam)),2) as ik, round((convert(float,nik.nik)/convert(float, o.letszam)),2) as nik from #osztaly o
left join (select m.Osztaly, count(m.Mulasztastipus) as ih from @mulasztas m where m.IgazoltE='T' and m.MulasztasTipus=1500 group by m.Osztaly) ih on ih.osztaly=o.id
left join (select m.Osztaly, count(m.Mulasztastipus) as nih from @mulasztas m where m.IgazoltE='F' and m.MulasztasTipus=1500 group by m.Osztaly) nih on nih.osztaly=o.id
left join (select m.Osztaly, count(m.Mulasztastipus) as ik from @mulasztas m where m.IgazoltE='T' and m.MulasztasTipus=1499 group by m.Osztaly) ik on ik.osztaly=o.id
left join (select m.Osztaly, count(m.Mulasztastipus) as nik from @mulasztas m where m.IgazoltE='F' and m.MulasztasTipus=1499 group by m.Osztaly) nik on ik.osztaly=o.id
*/
declare @cols as nvarchar(max),
@colsIn as nvarchar(max),
@query as nvarchar(4000);
select @cols= isnull(@cols + ',','') +quotename(Tantargy) + ' as '+quotename(nev),
@colsIn= isnull(@colsIn + ',','') +quotename(Tantargy)
from (select distinct t.id as Tantargy, t.c_nev as nev from t_foglalkozas f
inner join t_tantargy t on f.c_tantargyid=t.id) Tantargy
set @query='
select Nev AS COLUMN673, Letszam AS COLUMN3847, '+@cols+', oavg.Atlag as COLUMN1817 /*,
mtmp.ih AS COLUMN5291, mtmp.nih AS COLUMN5292, mtmp.ik AS COLUMN5293, mtmp.nik AS COLUMN5294 */
from #osztaly o
left join (select * from #ertekeles pivot (max(Atlag) for Tantargy in ('+@colsIn+'))pv) ertekeles on ertekeles.Osztaly=o.Id
left join #osztalyavg oavg on oavg.Osztaly=o.id
/* left join #mulasztastmp mtmp on mtmp.Osztaly=o.id */
order by rendez
'
EXEC sp_executesql @query
/*drop table #mulasztastmp */
drop table #osztalyavg
drop table #ertekeles
drop table #osztaly
End
GO

View file

@ -0,0 +1,104 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[sp_GetCsoportFeleviTantargyiStatisztika]
@tanevId int,
@intezmenyId int
AS
BEGIN
SET NOCOUNT ON;
declare @kezdodatum as date=(select distinct tr.c_datum from t_tanevrendje tr where c_naptipusa=1394 and tr.torolt='F' and tr.c_intezmenyid=@intezmenyid and tr.c_tanevid=@tanevid);
declare @vegdatum as date=(select distinct tr.c_datum from t_tanevrendje tr where c_naptipusa=1400 and tr.torolt='F' and tr.c_intezmenyid=@intezmenyid and tr.c_tanevid=@tanevid);
--Osztályok
create table #osztaly (Id int, Nev nvarchar(max), Letszam int, rendez nvarchar(max))
insert into #osztaly
select ocs.id as Id, ocs.c_nev as Nev, count(tcs.c_tanuloid) as Letszam, ocs.c_nev as rendez from t_osztalycsoport ocs
left join t_tanulocsoport tcs on tcs.c_osztalycsoportid=ocs.id and tcs.c_intezmenyid=@intezmenyId and tcs.c_tanevid=@tanevId and tcs.torolt='F'
where ocs.c_intezmenyid=@intezmenyId and ocs.c_tanevid=@tanevId and ocs.torolt='F'
group by ocs.id, ocs.c_nev
--Osztályok, összesen
insert into #osztaly values (-1, 'Összesen: ', null, 'zzz')
--Értékelések
create table #ertekeles(Osztaly int, Tantargy int, Atlag float)
insert into #ertekeles
select te.c_osztalycsoportid as Osztaly, te.c_tantargyid as Tantargy, round(avg(convert(float,d.c_value)),2) as Atlag from t_tanuloertekeles te
inner join (select d.id, d.c_value from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.torolt='F' and te.c_tanevid=@tanevid and te.c_intezmenyid=@intezmenyid
and convert(date,te.c_ertekelesdatum)>@kezdodatum and convert(date,te.c_ertekelesdatum)<@vegdatum and te.c_tantargyid is not null
group by te.c_osztalycsoportid, te.c_tantargyid
--Értékelés, összegzés
insert into #ertekeles
select Osztaly, Tantargy, round(avg(convert(float,Atlag)),2) from (
select -1 as Osztaly, te.c_tantargyid as Tantargy, round(avg(convert(float,d.c_value)),2) as Atlag from t_tanuloertekeles te
inner join (select d.id, d.c_value from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.c_tantargyid is not null and te.torolt='F' and te.c_tanevid=@tanevid and te.c_intezmenyid=@intezmenyid
and convert(date,te.c_ertekelesdatum)>@kezdodatum and convert(date,te.c_ertekelesdatum)<@vegdatum
group by te.c_osztalycsoportid, te.c_tantargyid)a
group by Osztaly, tantargy
--Osztályátlag
create table #osztalyavg(Osztaly int, Atlag float)
insert into #osztalyavg
select te.c_osztalycsoportid as Osztaly, round(avg(convert(float,d.c_value)),2) as Atlag from t_tanuloertekeles te
inner join (select d.id, d.c_value from t_dictionaryitembase d) d on d.id=te.c_osztalyzat
where te.c_tantargyid is not null and te.torolt='F' and te.c_tanevid=@tanevid and te.c_intezmenyid=@intezmenyid
and convert(date,te.c_ertekelesdatum)>@kezdodatum and convert(date,te.c_ertekelesdatum)<@vegdatum
group by te.c_osztalycsoportid
--Mulasztás
/*
declare @mulasztas table(Osztaly int, MulasztasTipus int, IgazoltE nvarchar(1), Keses int)
insert into @mulasztas
select Id, mulasztas.MulasztasTipus, mulasztas.IgazoltE, mulasztas.Keses from #osztaly o
left join (select tcs.c_osztalycsoportid as Osztaly, tm.c_tipus as MulasztasTipus, tm.c_igazolt as IgazoltE, tm.c_kesespercben as Keses from t_tanulomulasztas tm
inner join t_tanulocsoport tcs on tcs.c_tanuloid=tm.c_oratanuloiid and tcs.c_intezmenyid=@intezmenyId and tcs.c_tanevid=@tanevId and tcs.torolt='F'
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid and tao.torolt='F' and tao.torolt='F' and tao.c_tanevid=@tanevid and tao.c_intezmenyid=@intezmenyid and convert(date,tao.c_datum)>@kezdodatum and convert(date,tao.c_datum)<@vegdatum
where tm.c_igazolt in ('T', 'F')
) mulasztas on mulasztas.Osztaly=o.id
create table #mulasztastmp(Osztaly int, ih float, nih float, ik float, nik float)
insert into #mulasztastmp
select distinct o.Id, round((convert(float,ih.ih)/convert(float, o.letszam)),2) as ih, round((convert(float,nih.nih)/convert(float, o.letszam)),2) as nih, round((convert(float,ik.ik)/convert(float, o.letszam)),2) as ik, round((convert(float,nik.nik)/convert(float, o.letszam)),2) as nik from #osztaly o
left join (select m.Osztaly, count(m.Mulasztastipus) as ih from @mulasztas m where m.IgazoltE='T' and m.MulasztasTipus=1500 group by m.Osztaly) ih on ih.osztaly=o.id
left join (select m.Osztaly, count(m.Mulasztastipus) as nih from @mulasztas m where m.IgazoltE='F' and m.MulasztasTipus=1500 group by m.Osztaly) nih on nih.osztaly=o.id
left join (select m.Osztaly, count(m.Mulasztastipus) as ik from @mulasztas m where m.IgazoltE='T' and m.MulasztasTipus=1499 group by m.Osztaly) ik on ik.osztaly=o.id
left join (select m.Osztaly, count(m.Mulasztastipus) as nik from @mulasztas m where m.IgazoltE='F' and m.MulasztasTipus=1499 group by m.Osztaly) nik on ik.osztaly=o.id
*/
declare @cols as nvarchar(max),
@colsIn as nvarchar(max),
@query as nvarchar(4000);
select @cols= isnull(@cols + ',','') +quotename(Tantargy) + ' as '+quotename(nev),
@colsIn= isnull(@colsIn + ',','') +quotename(Tantargy)
from (select distinct t.id as Tantargy, t.c_nev as nev from t_foglalkozas f
inner join t_tantargy t on f.c_tantargyid=t.id) Tantargy
set @query='
select Nev AS COLUMN673, Letszam AS COLUMN3847, '+@cols+', oavg.Atlag as COLUMN1817 /*,
mtmp.ih AS COLUMN5291, mtmp.nih AS COLUMN5292, mtmp.ik AS COLUMN5293, mtmp.nik AS COLUMN5294 */
from #osztaly o
left join (select * from #ertekeles pivot (max(Atlag) for Tantargy in ('+@colsIn+'))pv) ertekeles on ertekeles.Osztaly=o.Id
left join #osztalyavg oavg on oavg.Osztaly=o.id
/* left join #mulasztastmp mtmp on mtmp.Osztaly=o.id */
order by rendez
'
EXEC sp_executesql @query
/*drop table #mulasztastmp */
drop table #osztalyavg
drop table #ertekeles
drop table #osztaly
End
GO

View file

@ -0,0 +1,249 @@
IF OBJECT_ID('[dbo].[sp_GetCsoportNaplo]') IS NOT NULL BEGIN
DROP PROCEDURE [dbo].[sp_GetCsoportNaplo]
END
GO
CREATE PROCEDURE [dbo].[sp_GetCsoportNaplo]
@tanevId int,
@intezmenyid int,
@csoportId int
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(20)
,OktAzon nvarchar(20)
,Kilepes nvarchar(max)
,Kepzes nvarchar(max)
,TanuloCimTipus nvarchar(max)
,TanuloCim nvarchar(max)
,TanuloTelefon 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
,Osztaly.Osztaly as Osztaly
,t.c_naplosorszam as Sorszam
,t.c_beirasinaplosorszam as Torzslapszam
,Allampolgarsaga.C_NAME as Allampolgarsag
,t.c_diakigazolvanyszam as DiakIg
,f.c_szuletesihely as SzulHely
,FORMAT(f.c_szuletesidatum, 'yyyy. MMMM dd.', 'hu-hu') as SzulIdo
,f.c_anyjaneve as Anyja
,f.c_tajszam as Taj
,f.c_oktatasiazonosito as OktAzon
,FORMAT(tcs.c_kilepesdatum, 'yyyy. MMMM dd.', 'hu-hu') as Kilepes
,tt.c_nev as Kepzes
,cim.Tipus
,cim.cim
,tel.c_telefonszam
,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_DICTIONARYITEMBASE_OSSZES Allampolgarsaga ON Allampolgarsaga.Id = f.c_allampolgarsaga AND Allampolgarsaga.C_TANEVID = f.C_TANEVID
LEFT JOIN (
SELECT tcs.c_tanuloid TanuloId, ocs.c_nev as Osztaly, tcs.c_kilepesdatum Kilepes
FROM T_TANULOCSOPORT_OSSZES tcs
INNER JOIN T_OSZTALY_OSSZES o ON o.id=tcs.c_osztalycsoportid
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON o.id=ocs.id
) osztaly ON tcs.c_tanuloid=osztaly.TanuloId
INNER JOIN T_TANTERV_OSSZES tt ON tt.c_intezmenyid=tcs.c_intezmenyid AND tt.c_intezmenyid=@intezmenyid AND tt.c_tanevid=@tanevid
INNER JOIN T_TANULO_OSSZES t ON t.id=f.id
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_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_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_tanevid=@tanevId
) 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
--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 Csoport
,isnull(f.c_nyomtatasinev,'-') as CsoportVezeto
,isnull(cs.c_csoportnaploleiras,'-') as CsoportNaploLeiras
,FORMAT(cs.c_csoportnaplomegnyitasa, 'yyyy. MMMM dd.', 'hu-hu') as Megnyitas
,isnull(FORMAT(cs.c_csoportnaplozarasa, 'yyyy. MMMM dd.', 'hu-hu'),'-') as Lezaras
,ocs.c_nev RovidNev
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
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 AND ocs.id = @csoportId
--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
--Tanulók
SELECT DISTINCT Nev, Osztaly, OktAzon FROM @tanulok
--Naplóhetek
DECLARE @elsonap as date
DECLARE @utolsonap as date
select @elsonap=c_elsotanitasinap, @utolsonap=c_utolsotanitasinap from t_tanev_osszes where id=@tanevId
SELECT
n.c_hetsorszama as Het
,FORMAT(convert(date,min(c_napdatuma)), 'yyyy. MMMM dd.', 'hu-hu')as HetEleje
,FORMAT(convert(date,max(c_napdatuma)), 'yyyy. MMMM dd.', 'hu-hu') as HetVege
FROM T_NAPTARINAP_OSSZES n
WHERE n.c_napdatuma >= @elsonap
AND n.c_napdatuma <= @utolsonap
AND n.c_orarendinap = 'T'
AND n.c_tanevid = @tanevid
AND n.c_intezmenyid = @intezmenyid
GROUP BY n.c_hetsorszama
--Tanuló adatok
SELECT * FROM @tanulok
--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_OSSZES 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_orarendinap='T' AND 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
DECLARE @Orak TABLE (
datum date
,Sorszam int
,Hetsorszam int
)
INSERT INTO @Orak
SELECT DISTINCT
n.c_napdatuma datum
,sz.Oraszam
,n.c_hetsorszama
FROM T_NAPTARINAP_OSSZES n
CROSS JOIN (VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10)) sz (Oraszam)
WHERE n.c_napdatuma >= @elsonap
AND n.c_napdatuma <= @utolsonap
AND n.c_orarendinap = 'T'
AND TOROLT = 'F'
AND n.C_TANEVID = @tanevId
DECLARE @oraSorszam TABLE (Id int, EvesSorszam int)
INSERT INTO @oraSorszam (Id, EvesSorszam)
SELECT DISTINCT
s.Id
,s.EvesSorszam
FROM (
SELECT DISTINCT tn.C_TANTARGYID, tn.C_OSZTALYCSOPORTID, ot.C_TANAROKID, tn.C_INTEZMENYID--, fh.C_NYOMTATASINEV
FROM T_TANITASIORA_OSSZES tn
INNER JOIN T_ORAK_TANAROK ot ON tn.ID = ot.C_ORAKID
INNER JOIN T_FELHASZNALO fh ON fh.ID = ot.C_TANAROKID
WHERE tn.C_OSZTALYCSOPORTID = @csoportid
) x
CROSS APPLY dbo.fnGetEvesOraszamLista (
x.C_TANTARGYID
,x.C_OSZTALYCSOPORTID
,x.C_TANAROKID
,GETDATE()
,x.C_INTEZMENYID
,@tanevID
) s
SELECT DISTINCT
o.Hetsorszam as Het
,o.Sorszam as Oraszam
,FORMAT(o.Datum, 'yyyy. MMMM dd.', 'hu-hu') as Datum
,FORMAT(tao.c_orakezdete, 'hh:mm')as OraKezd
,fh.C_NYOMTATASINEV as Tanar
,os.EvesSorszam as Sorszam
,tao.c_tema as Tema
FROM @Orak o
LEFT JOIN T_TANITASIORA_OSSZES tao ON tao.c_datum = o.Datum
AND tao.torolt = 'F'
AND tao.c_oraszam = o.Sorszam
AND tao.c_tanevid = @tanevid
AND tao.c_osztalycsoportid = @csoportid
LEFT JOIN @oraSorszam os ON os.Id = tao.ID
LEFT JOIN T_ORAK_TANAROK ot ON tao.ID = ot.C_ORAKID
LEFT JOIN T_FELHASZNALO fh ON fh.ID = ot.C_TANAROKID
ORDER BY 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 = 1500, '', '(k)')
FROM T_TANULOMULASZTAS_OSSZES tm
INNER JOIN T_TANITASIORA_OSSZES o ON o.ID = tm.C_TANITASIORAKID
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.id=@csoportid
WHERE n.C_NAPTARINAPID = o.C_NAPTARINAPID
AND m.C_ORATANULOIID = tm.C_ORATANULOIID
AND o.C_TANEVID = @tanevID
AND tm.C_TANEVID = @tanevID
AND TM.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 = 'T' OR m.C_TIPUS = 1499, 0, 1)) 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 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 x
GROUP BY C_HETSORSZAMA, C_NYOMTATASINEV
ORDER BY C_HETSORSZAMA
END
GO

View file

@ -0,0 +1,41 @@
-- =============================================
-- Description: <Előszedjük az ePénztárca tétel bizonylatait>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetEPenztarcaBizonylatListForGrid]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetEPenztarcaBizonylatListForGrid]
END
GO
CREATE PROCEDURE [dbo].[sp_GetEPenztarcaBizonylatListForGrid]
@pIntezmenyId INT,
@pTanevId INT,
@pTetelId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
EPenztarcaBizonylat.ID AS ID,
EPenztarcaBizonylat.C_AZONOSITO AS Azonosito,
EPenztarcaBizonylat.C_IKTATOSZAM AS Iktatoszam
FROM
[T_EPENZTARCABIZONYLAT] AS EPenztarcaBizonylat
WHERE
EPenztarcaBizonylat.C_INTEZMENYID = @pIntezmenyId AND
EPenztarcaBizonylat.C_TANEVID = @pTanevId AND
EPenztarcaBizonylat.C_EPENZTARCATETELID = @pTetelId AND
EPenztarcaBizonylat.TOROLT = 'F'
END
GO

View file

@ -0,0 +1,27 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[sp_GetEPenztarcaParameterekId]') IS NOT NULL
BEGIN
DROP PROCEDURE [sp_GetEPenztarcaParameterekId]
END
GO
CREATE PROCEDURE [sp_GetEPenztarcaParameterekId]
@intezmenyId INT,
@tanevId INT
AS
BEGIN
SET NOCOUNT ON
SElECT EPenztarcaParameterek.ID
FROM T_EPENZTARCAPARAMETEREK EPenztarcaParameterek
WHERE
EPenztarcaParameterek.C_INTEZMENYID = @intezmenyId
AND EPenztarcaParameterek.C_TANEVID = @tanevId
AND EPenztarcaParameterek.TOROLT = 'F'
END

View file

@ -0,0 +1,41 @@
-- =============================================
-- Description: <Előszedjük az ePénztárca tételeket>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetEPenztarcaTetelListForGrid]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetEPenztarcaTetelListForGrid]
END
GO
CREATE PROCEDURE [dbo].[sp_GetEPenztarcaTetelListForGrid]
@pIntezmenyId INT,
@pTanevId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
EPenztarcaTetel.ID AS ID,
EPenztarcaTetel.C_JOGCIME AS Jogcim,
EPenztarcaTetel.C_DATUMA AS Datum,
EPenztarcaTetel.C_OSSZEGE AS Osszeg,
EPenztarcaTetel.C_STATUSZA AS Statusz
FROM
[T_EPENZTARCATETEL] AS EPenztarcaTetel
WHERE
EPenztarcaTetel.C_INTEZMENYID = @pIntezmenyId AND
EPenztarcaTetel.C_TANEVID = @pTanevId AND
EPenztarcaTetel.TOROLT = 'F'
END
GO

View file

@ -0,0 +1,554 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[DBO].[sp_GetESL_A03T01_1]') IS NOT NULL
BEGIN
DROP PROCEDURE [DBO].[sp_GetESL_A03T01_1]
END
GO
CREATE PROCEDURE [DBO].[sp_GetESL_A03T01_1]
@tanevId int,
@intezmenyId int,
@feladatEllatasiHelyId int
AS
BEGIN
SET NOCOUNT ON;
--Táblák deklarálása
declare @tmpA03T01 table (Id nvarchar(100), [1307] int, [1308] int, [1309] int, [1310] int, [1311] int, [1312] int, [1313] int, [1314] int, Osszesen int, Lany int, Rendez int)
declare @Dictionary table (Id int, Name nvarchar(max), Value int, Tipus nvarchar(max))
--declare @EvfolyamokTMP table (Id int, Evfolyam int)
declare @Evfolyamok table (Id int, Evfolyam int)
declare @TanuloErtekeles table (Id int, Tanulo int, Ertekeles int, Tipus int)
declare @FeladatEllatasiHelyekIntezmenyhez table (FHId int, IntezmenyId int)
declare @FHhozTartozoTanulok table (Intezmeny int, FH int, Evfolyam int, TanuloId int, Neme int)
declare @OsszesitettTanulok table (Tanulo int)
declare @2feltetelTeljesulTanulok table (Tanulo int)
--Dátumok deklarásása
declare @kezdet int,
@veg int,
@felev int
select top 1 @kezdet= iif(getdate()<=C_DATUM,1394,1400), --első félév
@veg= iif(getdate()<=C_DATUM,1400,1395) --második félév
from t_tanevrendje tr where c_naptipusa=1400 and c_tanevId=1 and c_intezmenyId=1 and torolt='F'
DECLARE @FelevKezdete DATE = (select top 1 c_datum from t_tanevrendje tr where c_naptipusa=@kezdet and c_tanevid=@tanevid and c_intezmenyid=@intezmenyid and torolt='F')
DECLARE @FelevVege DATE = (select top 1 c_datum from t_tanevrendje tr where c_naptipusa=@veg and c_tanevid=@tanevid and c_intezmenyid=@intezmenyid and torolt='F')
--Táblák feltöltése
INSERT INTO @Dictionary
SELECT DISTINCT id, c_name, c_value, c_type FROM T_DICTIONARYITEMBASE
INSERT INTO @Evfolyamok
SELECT id, Evfolyam from (SELECT DISTINCT id, CASE
WHEN id in (1307,1330,1334) THEN 1307 /* 5. évfolyam*/
WHEN id in (1308) THEN 1308 /* 6. évfolyam*/
WHEN id in (1309,1331,1335) THEN 1309 /* 7. évfolyam*/
WHEN id in (1310,1324) THEN 1310 /* 8. évfolyam*/
WHEN id in (1311,1316,1332,1333,3018,3019,3020) THEN 1311 /* 9. évfolyam*/
WHEN id in (1312,1323) THEN 1312 /* 10. évfolyam*/
WHEN id in (1313, 1317, 1325,3016 ) THEN 1313 /* 11. évfolyam*/
WHEN id in (1314,1318,1326, 3017, 3021, 3022 /*??*/,
1319, 1322) THEN 1314 /* 12. évfolyam*/
ELSE null
END AS Evfolyam
FROM @Dictionary
where Tipus like 'EvfolyamTipus')Evfolyamok
where Evfolyam is not null
/*
INSERT INTO @EvfolyamokTMP
SELECT id, Evfolyam from (SELECT DISTINCT id, CASE
WHEN id in (1307,1330,1334) THEN 1307 /* 5. évfolyam*/
WHEN id in (1308) THEN 1308 /* 6. évfolyam*/
WHEN id in (1309,1331,1335) THEN 1309 /* 7. évfolyam*/
WHEN id in (1310,1324) THEN 1310 /* 8. évfolyam*/
WHEN id in (1311,1316,1332,1333,3018,3019,3020) THEN 1311 /* 9. évfolyam*/
WHEN id in (1312,1323) THEN 1312 /* 10. évfolyam*/
WHEN id in (1313, 1317, 1325,3016 ) THEN 1313 /* 11. évfolyam*/
WHEN id in (1314,1318,1326, 3017, 3021, 3022 /*??*/,
1319, 1322) THEN 1314 /* 12. évfolyam*/
ELSE null
END AS Evfolyam
FROM @Dictionary
where Tipus like 'EvfolyamTipus')Evfolyamok
where Evfolyam is not null
--Évfolyamok kiválasztásához szükséges (pl általánosnál csak 5-8. évfolyam jelenjen meg)
declare @also int=(
select count(distinct tcs.c_osztalycsoportid) from t_tanulocsoport tcs
inner join t_osztalycsoport ocs on ocs.id=tcs.C_OSZTALYCSOPORTID and ocs.C_EVFOLYAMTIPUSA in (1307, 1330, 1334, 1308, 1309, 1331, 1335, 1310, 1324) and ocs.C_FELADATELLATASIHELYID=@feladatEllatasiHelyId
inner join t_osztaly o on o.id=ocs.id
where tcs.C_TANEVID=@tanevId )
declare @felso int=(
select count(distinct tcs.c_osztalycsoportid) from t_tanulocsoport tcs
inner join t_osztalycsoport ocs on ocs.id=tcs.C_OSZTALYCSOPORTID
and ocs.C_EVFOLYAMTIPUSA in (1311, 1316, 1332, 1333, 3018, 3019, 3020, 1312, 1323, 1313, 1317, 1325, 3016, 1314, 1318, 1326, 3017, 3021, 3022, 1319, 1322 )
and ocs.C_FELADATELLATASIHELYID=@feladatEllatasiHelyId
inner join t_osztaly o on o.id=ocs.id
where tcs.C_TANEVID=@tanevId )
IF (@also>=@felso)
begin
insert into @Evfolyamok
select Id, Evfolyam from @EvfolyamokTMP where Evfolyam in(1307,1308,1309,1310)
end
ELSE
begin
insert into @Evfolyamok
select Id, Evfolyam from @EvfolyamokTMP where Evfolyam in(1311,1312,1313,1314)
end
*/
--Egy adott FH-hoz tartozó tanulók
insert into @FHhozTartozoTanulok
select distinct ocs.c_intezmenyid, ocs.C_FELADATELLATASIHELYID, evf.Evfolyam, tcs.C_TANULOID, f.C_NEME from t_osztalycsoport ocs
inner join t_tanulocsoport tcs on tcs.C_OSZTALYCSOPORTID=ocs.ID and tcs.TOROLT='F' and tcs.C_TANEVID=@tanevId
inner join T_FELHASZNALO f on f.id=tcs.c_tanuloid
inner join @Evfolyamok evf on evf.Id=ocs.C_EVFOLYAMTIPUSA
where ocs.C_FELADATELLATASIHELYID = @feladatEllatasiHelyId and ocs.C_TANEVID=@tanevId
INSERT INTO @TanuloErtekeles
select Id, C_tanuloid, c_osztalyzat, c_ertekelestipusa from T_TANULOERTEKELES te
INNER JOIN @FHhozTartozoTanulok fht on fht.TanuloId=te.C_TANULOID
where torolt='F' and C_TANEVID=@tanevId
/* !!! a03t01 !!! */
-- 1. félév értékelésnél, minősítésnél....átlag<3
insert into @OsszesitettTanulok
select distinct Tanulo from @TanuloErtekeles te
inner join @Dictionary d on d.id=te.Ertekeles
inner join @FHhozTartozoTanulok fht on fht.TanuloId=te.Tanulo
where te.Tipus=1519
group by Tanulo
having round(avg(convert(float, d.VALUE)),1)<3
declare @Osszes3atlagalattLany int=(select count(Tanulo) from (select Tanulo from @TanuloErtekeles te
inner join @Dictionary d on d.id=te.Ertekeles
inner join @FHhozTartozoTanulok fht on fht.TanuloId=te.Tanulo
where te.Tipus=1519 and fht.Neme=5
group by Tanulo
having round(avg(convert(float, d.VALUE)),1)<3)a)
insert into @tmpA03T01
select '5578', *, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @Osszes3atlagalattLany, 1 Rendez
from (select TanuloId, Evfolyam from @FHhozTartozoTanulok fht
inner join (select round(avg(convert(float, d.VALUE)),1) Atlag, Tanulo from @TanuloErtekeles te
inner join @Dictionary d on d.id=te.Ertekeles
where te.Tanulo in (select Tanuloid from @FHhozTartozoTanulok ) and te.Tipus=1519 group by Tanulo
having round(avg(convert(float, d.VALUE)),1)<3) Atlag on Atlag.Tanulo=fht.TanuloId
union
select null, null
where (select top 1 TanuloId from @FHhozTartozoTanulok fht
inner join (select round(avg(convert(float, d.VALUE)),1) Atlag, Tanulo from @TanuloErtekeles te
inner join @Dictionary d on d.id=te.Ertekeles
where te.Tanulo in (select Tanuloid from @FHhozTartozoTanulok ) and te.Tipus=1519 group by Tanulo
having round(avg(convert(float, d.VALUE)),1)<3) Atlag on Atlag.Tanulo=fht.TanuloId) is null )a
pivot (count(TanuloId) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))pv
--1,1 mértékben romlott ?????????????????????????????
--egy, vagy több tantárgyból elégtelen osztályzat
insert into @OsszesitettTanulok
select distinct fht.TanuloId from @TanuloErtekeles te
inner join @FHhozTartozoTanulok fht on fht.TanuloId=te.Tanulo
where te.Tipus=1519 and te.Ertekeles=1501
DECLARE @ElegtelenFeleviLany int=(select count(distinct fht.TanuloId) from @TanuloErtekeles te
inner join @FHhozTartozoTanulok fht on fht.TanuloId=te.Tanulo and fht.Neme=5
where te.Tipus=1519 and te.Ertekeles=1501)
insert into @tmpA03T01
select '5579', *, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @ElegtelenFeleviLany, 2 Rendez from (select distinct fht.TanuloId, fht.Evfolyam from @TanuloErtekeles te
inner join @FHhozTartozoTanulok fht on fht.TanuloId=te.Tanulo
where te.Tipus=1519 and te.Ertekeles=1501
union
select null, null
where (select top 1 fht.TanuloId from @TanuloErtekeles te
inner join @FHhozTartozoTanulok fht on fht.TanuloId=te.Tanulo
where te.Tipus=1519 and te.Ertekeles=1501)is null)a
pivot (count(TanuloId) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))pv
-- félév, magatartás, 2
insert into @OsszesitettTanulok
select distinct fht.TanuloId from @FHhozTartozoTanulok fht
inner join @TanuloErtekeles te on te.Tanulo=fht.TanuloId
inner join t_osztalyfonokiertekeles oe on oe.id=te.ID and oe.C_MAGATARTAS=1558
declare @OsszesFeleviRosszMagatartasLany int =(select count(distinct fht.TanuloId) from @FHhozTartozoTanulok fht
inner join @TanuloErtekeles te on te.Tanulo=fht.TanuloId
inner join t_osztalyfonokiertekeles oe on oe.id=te.ID and oe.C_MAGATARTAS=1558 and fht.Neme=5)
insert into @tmpA03T01
select '5580', *, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesFeleviRosszMagatartasLany, 3 Rendez from (select fht.TanuloId Tanulo, fht.Evfolyam Evfolyam from @FHhozTartozoTanulok fht
inner join @TanuloErtekeles te on te.Tanulo=fht.TanuloId
inner join t_osztalyfonokiertekeles oe on oe.id=te.ID and oe.C_MAGATARTAS=1558
union
select null, null where
(select top 1 fht.TanuloId Evfolyam from @FHhozTartozoTanulok fht
inner join @TanuloErtekeles te on te.Tanulo=fht.TanuloId
inner join t_osztalyfonokiertekeles oe on oe.id=te.ID and oe.C_MAGATARTAS=1558)is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
-- félév, sozrgalom, 2
insert into @OsszesitettTanulok
select distinct fht.TanuloId from @FHhozTartozoTanulok fht
inner join @TanuloErtekeles te on te.Tanulo=fht.TanuloId
inner join t_osztalyfonokiertekeles oe on oe.id=te.ID and oe.C_SZORGALOM=1562
declare @OsszesFeleviRosszSzorgalomLany int =(select count(distinct fht.TanuloId) from @FHhozTartozoTanulok fht
inner join @TanuloErtekeles te on te.Tanulo=fht.TanuloId
inner join t_osztalyfonokiertekeles oe on oe.id=te.ID and oe.C_SZORGALOM=1562 and fht.Neme=5)
insert into @tmpA03T01
select '5581', *, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesFeleviRosszSzorgalomLany, 4 Rendez from (select fht.TanuloId Tanulo, fht.Evfolyam Evfolyam from @FHhozTartozoTanulok fht
inner join @TanuloErtekeles te on te.Tanulo=fht.TanuloId
inner join t_osztalyfonokiertekeles oe on oe.id=te.ID and oe.C_SZORGALOM=1562
union
select null, null
where (select top 1 fht.TanuloId Tanulo from @FHhozTartozoTanulok fht
inner join @TanuloErtekeles te on te.Tanulo=fht.TanuloId
inner join t_osztalyfonokiertekeles oe on oe.id=te.ID and oe.C_SZORGALOM=1562)is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--adott évben évismétlés
insert into @OsszesitettTanulok
select distinct fht.TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.c_evismetlo='T' and fht.TanuloId=t.id
declare @OsszesEvismetloTanuloLany int =(select count(fht.TanuloId) from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.c_evismetlo='T' and fht.TanuloId=t.id and fht.TanuloId=t.id and fht.Neme=5)
insert into @tmpA03T01
select '5582', *, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesEvismetloTanuloLany, 5 Rendez from (select fht.TanuloId Tanulo, fht.Evfolyam Evfolyam from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.c_evismetlo='T' and fht.TanuloId=t.id and fht.TanuloId=t.id
union
select null, null where (select top 1 fht.TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.c_evismetlo='T' and fht.TanuloId=t.id and fht.TanuloId=t.id) is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--Félévben 50 órát elérő igazolatlan hiányzás
insert into @OsszesitettTanulok
select distinct fht.Tanuloid Tanulo from T_TANULOMULASZTAS tm
inner join @FHhozTartozoTanulok fht on fht.TanuloId=tm.C_ORATANULOIID
inner join t_tanitasiora tao on tao.id=tm.C_TANITASIORAKID and tao.C_DATUM>@FelevKezdete and tao.C_DATUM<@FelevVege
where tm.C_IGAZOLT='F' and tm.c_tanevid=@tanevId
group by fht.TanuloId
having count(Tanuloid)>50
declare @Osszes50fFelettiIgazolatlanLany int=(select count(Tanulo) from (select fht.Tanuloid Tanulo from T_TANULOMULASZTAS tm
inner join @FHhozTartozoTanulok fht on fht.TanuloId=tm.C_ORATANULOIID and fht.Neme=5
inner join t_tanitasiora tao on tao.id=tm.C_TANITASIORAKID and tao.C_DATUM>@FelevKezdete and tao.C_DATUM<@FelevVege
where tm.C_IGAZOLT='F' and tm.c_tanevid=@tanevId
group by fht.TanuloId
having count(Tanuloid)>50)a)
insert into @tmpA03T01
select '5583',*,[1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @Osszes50fFelettiIgazolatlanLany, 6 Rendez from (select Tanulo, Evfolyam from (select fht.Tanuloid Tanulo, fht.Evfolyam from T_TANULOMULASZTAS tm
inner join @FHhozTartozoTanulok fht on fht.TanuloId=tm.C_ORATANULOIID
inner join t_tanitasiora tao on tao.id=tm.C_TANITASIORAKID and tao.C_DATUM>@FelevKezdete and tao.C_DATUM<@FelevVege
where tm.C_IGAZOLT='F' and tm.c_tanevid=@tanevId
group by fht.TanuloId, fht.Evfolyam
having count(Tanuloid)>50)a
union
select null, null where (select top 1 fht.Tanuloid from T_TANULOMULASZTAS tm
inner join @FHhozTartozoTanulok fht on fht.TanuloId=tm.C_ORATANULOIID
inner join t_tanitasiora tao on tao.id=tm.C_TANITASIORAKID and tao.C_DATUM>@FelevKezdete and tao.C_DATUM<@FelevVege
where tm.C_IGAZOLT='F' and tm.c_tanevid=@tanevId
group by fht.TanuloId
having count(Tanuloid)>50
) is null
)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--Szülő kérésére magántanuló
insert into @OsszesitettTanulok
select distinct fht.TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_MAGANTANULOSAGANAKOKA in (663, 664) and fht.TanuloId=t.id
declare @OsszesSzuloMagantanuloLany int =(select count(fht.TanuloId) from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_MAGANTANULOSAGANAKOKA in (663, 664) and fht.TanuloId=t.id and fht.Neme=5)
insert into @tmpA03T01
select '5584', *, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesSzuloMagantanuloLany, 7 Rendez from (select fht.TanuloId Tanulo, fht.Evfolyam Evfolyam from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_MAGANTANULOSAGANAKOKA in (663, 664) and fht.TanuloId=t.id
union
select null, null where (select top 1 fht.TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_MAGANTANULOSAGANAKOKA in (663, 664) and fht.TanuloId=t.id) is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--Szülő kérésére folyamtban????
--Menekült, menedékjoggal rendelkező
insert into @OsszesitettTanulok
select distinct fht.TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_MENEDEKJOGGALRENDELKEZO='T'and fht.TanuloId=t.id
declare @OsszesMenedekjoggalRendLany int =(select count(fht.TanuloId) from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_MENEDEKJOGGALRENDELKEZO='T' and fht.TanuloId=t.id and fht.Neme=5)
insert into @tmpA03T01
select '5585', *, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesMenedekjoggalRendLany, 8 Rendez from (select fht.TanuloId Tanulo, fht.Evfolyam Evfolyam from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_MENEDEKJOGGALRENDELKEZO='T' and fht.TanuloId=t.id
union
select null, null where (select top 1 fht.TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_MENEDEKJOGGALRENDELKEZO='T' and fht.TanuloId=t.id) is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--Félévben veszélyeztetett tanulók száma
insert into @OsszesitettTanulok
select distinct TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.id=fht.TanuloId and t.C_VESZELYEZTETETT='T'
declare @OsszesVeszelyeztettLany int = (select count(TanuloId) from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.id=fht.TanuloId and t.C_VESZELYEZTETETT='T' and fht.Neme=5)
insert into @tmpA03T01
select '5586', *, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesVeszelyeztettLany, 9 Rendez from (select TanuloId, Evfolyam from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.id=fht.TanuloId and t.C_VESZELYEZTETETT='T'
union
select null, null
where (select top 1 TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.id=fht.TanuloId and t.C_VESZELYEZTETETT='T') is null)a
pivot (count(TanuloId) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--ideiglenes hatállyal elhelyezett vagy nevelésbe vett tanulók
insert into @OsszesitettTanulok
select distinct fht.TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on fht.TanuloId=t.id and t.C_ALLAMIGONDOZOTT='T'
declare @OsszesAllamigondozottLany int =(select count(fht.TanuloId) from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_ALLAMIGONDOZOTT='T' and fht.TanuloId=t.id and fht.Neme=5)
insert into @tmpA03T01
select '5587', *, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesAllamigondozottLany, 10 Rendez from (select fht.TanuloId Tanulo, fht.Evfolyam Evfolyam from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_ALLAMIGONDOZOTT='T' and fht.TanuloId=t.id
union
select null, null where (select top 1 fht.TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_ALLAMIGONDOZOTT='T' and fht.TanuloId=t.id) is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--legalább 2 feltétel teljesül
insert into @2feltetelTeljesulTanulok
select Tanulo from @OsszesitettTanulok group by Tanulo having count(Tanulo)>=2
declare @OsszesOsszeslanyMin2 int=(select count(Tanulo) from @2feltetelTeljesulTanulok kt
inner join @FHhozTartozoTanulok ft on ft.TanuloId=kt.Tanulo and ft.Neme=5)
insert into @tmpA03T01
select '5588', *, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesOsszeslanyMin2, 11 Rendez from (select Tanulo, fht.Evfolyam from @2feltetelTeljesulTanulok kt
inner join @FHhozTartozoTanulok fht on fht.TanuloId=kt.Tanulo
union
select null,null
where (select top 1 Tanulo from @OsszesitettTanulok ot
inner join @FHhozTartozoTanulok fht on fht.TanuloId=ot.Tanulo)is null ) a
pivot (count (Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--Szum
declare @OsszesOsszesLany int= (select count(distinct Tanulo) from @OsszesitettTanulok ot
inner join @FHhozTartozoTanulok fh on fh.TanuloId=ot.Tanulo and fh.Neme=5)
insert into @tmpA03T01
select '5025', piv.*, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesOsszesLany, -1 Rendez from (select distinct Tanulo, Evfolyam from @OsszesitettTanulok ot
inner join @FHhozTartozoTanulok fh on fh.TanuloId=ot.Tanulo
union
select null, null
where (select top 1 Tanulo from @OsszesitettTanulok ot
inner join @FHhozTartozoTanulok fh on fh.TanuloId=ot.Tanulo ) is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--Szum lány
insert into @tmpA03T01
select '4952', piv.*, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], null, 0 Rendez from (select distinct Tanulo, Evfolyam from @OsszesitettTanulok ot
inner join @FHhozTartozoTanulok fh on fh.TanuloId=ot.Tanulo and fh.Neme=5
union
select null, null where (select top 1 Tanulo from @OsszesitettTanulok ot
inner join @FHhozTartozoTanulok fh on fh.TanuloId=ot.Tanulo and fh.Neme=5) is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--kettő feltétel esetén ... félévben 100 órát elért hiányzás
declare @Osszes100IgazoltLany int = (select count(Tanulo) from (select distinct fht.Tanuloid Tanulo from T_TANULOMULASZTAS tm
inner join @2feltetelTeljesulTanulok kt on kt.Tanulo=tm.C_ORATANULOIID
inner join @FHhozTartozoTanulok fht on fht.TanuloId=kt.Tanulo and fht.Neme=5
inner join t_tanitasiora tao on tao.id=tm.C_TANITASIORAKID and tao.C_DATUM>@FelevKezdete and tao.C_DATUM<@FelevVege
where tm.C_IGAZOLT='T' and tm.c_tanevid=@tanevId
group by fht.TanuloId, fht.Evfolyam
having count(Tanuloid)>=100)a)
insert into @tmpA03T01
select '5589', piv.*, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @Osszes100IgazoltLany, 12 Rendez from (select distinct fht.Tanuloid Tanulo, fht.Evfolyam from T_TANULOMULASZTAS tm
inner join @2feltetelTeljesulTanulok kt on kt.Tanulo=tm.C_ORATANULOIID
inner join @FHhozTartozoTanulok fht on fht.TanuloId=kt.Tanulo
inner join t_tanitasiora tao on tao.id=tm.C_TANITASIORAKID and tao.C_DATUM>@FelevKezdete and tao.C_DATUM<@FelevVege
where tm.C_IGAZOLT='T' and tm.c_tanevid=@tanevId
group by fht.TanuloId, fht.Evfolyam
having count(Tanuloid)>=100
union
select null, null
where (select top 1 fht.Tanuloid Tanulo from T_TANULOMULASZTAS tm
inner join @2feltetelTeljesulTanulok kt on kt.Tanulo=tm.C_ORATANULOIID
inner join @FHhozTartozoTanulok fht on fht.TanuloId=kt.Tanulo
inner join t_tanitasiora tao on tao.id=tm.C_TANITASIORAKID and tao.C_DATUM>@FelevKezdete and tao.C_DATUM<@FelevVege
where tm.C_IGAZOLT='T' and tm.c_tanevid=@tanevId
group by fht.TanuloId, fht.Evfolyam
having count(Tanuloid)>=100) is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--kettő feltétel ... kiemelet fogyelmet igénylő --sni
declare @OsszesSni2feltetelLany int = (select count(Tanulo) from (select kt.Tanulo Tanulo from @2feltetelTeljesulTanulok kt
inner join t_tanulo t on t.ID=kt.Tanulo and t.C_SAJATOSNEVELESU='T'
inner join @FHhozTartozoTanulok fht on fht.TanuloId=kt.Tanulo and fht.Neme=5
)a)
insert into @tmpA03T01
select '5590', piv.*, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesSni2feltetelLany, 13 Rendez from (select kt.Tanulo, fht.Evfolyam from @2feltetelTeljesulTanulok kt
inner join t_tanulo t on t.ID=kt.Tanulo and t.C_SAJATOSNEVELESU='T'
inner join @FHhozTartozoTanulok fht on fht.TanuloId=kt.Tanulo
union
select null, null
where (select top 1 kt.Tanulo from @2feltetelTeljesulTanulok kt
inner join t_tanulo t on t.ID=kt.Tanulo and t.C_SAJATOSNEVELESU='T'
inner join @FHhozTartozoTanulok fht on fht.TanuloId=kt.Tanulo) is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--kettő feltétel ... kiemelet fogyelmet igénylő --rendszeres gyermekvédelmi
declare @OsszesRgyT2feltetelLany int = (select count(Tanulo) from (select kt.Tanulo Tanulo from @2feltetelTeljesulTanulok kt
inner join t_tanulo t on t.ID=kt.Tanulo and t.C_RENDSZERESGYERMEKVEDELMIKEDV is not null
inner join @FHhozTartozoTanulok fht on fht.TanuloId=kt.Tanulo and fht.Neme=5
)a)
insert into @tmpA03T01
select '5591', piv.*, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesRgyT2feltetelLany, 14 Rendez from (select kt.Tanulo, fht.Evfolyam from @2feltetelTeljesulTanulok kt
inner join t_tanulo t on t.ID=kt.Tanulo and t.C_RENDSZERESGYERMEKVEDELMIKEDV is not null
inner join @FHhozTartozoTanulok fht on fht.TanuloId=kt.Tanulo
union
select null, null
where (select top 1 kt.Tanulo from @2feltetelTeljesulTanulok kt
inner join t_tanulo t on t.ID=kt.Tanulo and t.C_RENDSZERESGYERMEKVEDELMIKEDV is not null
inner join @FHhozTartozoTanulok fht on fht.TanuloId=kt.Tanulo) is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--kettő feltétel ... alapfokú oktatásban 16
declare @OsszesAlapfoku16AlattLany int =(select count(fht.TanuloId) from @2feltetelTeljesulTanulok ketfeltetel
inner join @FHhozTartozoTanulok fht on fht.TanuloId=ketfeltetel.Tanulo and fht.Evfolyam in (1307,1308,1309,1310) and fht.Neme=5
inner join (select f.id Tanuloid,
case
WHEN DATEADD(YY, DATEDIFF(yy, f.C_SZULETESIDATUM, GETDATE()), f.C_SZULETESIDATUM) < GETDATE() THEN DATEDIFF(yy, f.C_SZULETESIDATUM, GETDATE())
ELSE DATEDIFF(yy, f.C_SZULETESIDATUM,GETDATE()) - 1
end as Eletkor from t_felhasznalo f
) szulido on szulido.TanuloId=ketfeltetel.Tanulo
where szulido.Eletkor>15)
insert into @tmpA03T01
select '5592', piv.*, [1307]+[1308]+[1309]+[1310]+[1311]+[1312]+[1313]+[1314], @OsszesAlapfoku16AlattLany, 14 Rendez from (select fht.TanuloId Tanulo, fht.Evfolyam Evfolyam from @2feltetelTeljesulTanulok ketfeltetel
inner join @FHhozTartozoTanulok fht on fht.TanuloId=ketfeltetel.Tanulo and fht.Evfolyam in (1307,1308,1309,1310)
inner join (select f.id Tanuloid,
case
WHEN DATEADD(YY, DATEDIFF(yy, f.C_SZULETESIDATUM, GETDATE()), f.C_SZULETESIDATUM) < GETDATE() THEN DATEDIFF(yy, f.C_SZULETESIDATUM, GETDATE())
ELSE DATEDIFF(yy, f.C_SZULETESIDATUM,GETDATE()) - 1
end as Eletkor from t_felhasznalo f
) szulido on szulido.TanuloId=ketfeltetel.Tanulo
where szulido.Eletkor>15
union
select null, null
where (select top 1 fht.TanuloId Tanulo from @2feltetelTeljesulTanulok ketfeltetel
inner join @FHhozTartozoTanulok fht on fht.TanuloId=ketfeltetel.Tanulo and fht.Evfolyam in (1307,1308,1309,1310)
inner join (select f.id Tanuloid,
case
WHEN DATEADD(YY, DATEDIFF(yy, f.C_SZULETESIDATUM, GETDATE()), f.C_SZULETESIDATUM) < GETDATE() THEN DATEDIFF(yy, f.C_SZULETESIDATUM, GETDATE())
ELSE DATEDIFF(yy, f.C_SZULETESIDATUM,GETDATE()) - 1
end as Eletkor from t_felhasznalo f
) szulido on szulido.TanuloId=ketfeltetel.Tanulo
where szulido.Eletkor>15) is null
)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
--középfokú oktatásban 16. életévének betöltését követően lépett be
/*
ELSE
begin
declare @OsszesKozepfoku16felett int = (
select count(Tanulo) from (
select tcs.c_tanuloid Tanulo, fht.Evfolyam,
case
WHEN DATEADD(YY, DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum)), f.C_SZULETESIDATUM) < min(tcs.c_belepesdatum) THEN DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum))
ELSE DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum)) - 1
end as Eletkor
from T_TANULOCSOPORT tcs
inner join @2feltetelTeljesulTanulok ketfeltetel on ketfeltetel.Tanulo=tcs.C_TANULOID
inner join t_osztaly o on o.id=tcs.c_osztalycsoportid
inner join t_felhasznalo f on f.id=tcs.C_TANULOID
inner join @FHhozTartozoTanulok fht on fht.TanuloId=ketfeltetel.Tanulo and fht.Evfolyam in (1311,1312,1313,1314)
where tcs.torolt='F'
group by tcs.c_tanuloid, fht.Evfolyam, f.C_SZULETESIDATUM)a
where Eletkor>=16
)
declare @OsszesKozepfoku16felettLany int = (
select count(Tanulo) from (
select tcs.c_tanuloid Tanulo, fht.Evfolyam,
case
WHEN DATEADD(YY, DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum)), f.C_SZULETESIDATUM) < min(tcs.c_belepesdatum) THEN DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum))
ELSE DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum)) - 1
end as Eletkor
from T_TANULOCSOPORT tcs
inner join @2feltetelTeljesulTanulok ketfeltetel on ketfeltetel.Tanulo=tcs.C_TANULOID
inner join t_osztaly o on o.id=tcs.c_osztalycsoportid
inner join t_felhasznalo f on f.id=tcs.C_TANULOID
inner join @FHhozTartozoTanulok fht on fht.TanuloId=ketfeltetel.Tanulo and fht.Evfolyam in (1311,1312,1313,1314) and fht.Neme=5
where tcs.torolt='F'
group by tcs.c_tanuloid, fht.Evfolyam, f.C_SZULETESIDATUM)a
where Eletkor>=16
)
insert into @tmpA03T01
select 'kozepfoku16utan', piv.*, @OsszesKozepfoku16felett, @OsszesKozepfoku16felettLany from (select Tanulo, Evfolyam from (
select tcs.c_tanuloid Tanulo, fht.Evfolyam,
case
WHEN DATEADD(YY, DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum)), f.C_SZULETESIDATUM) < min(tcs.c_belepesdatum) THEN DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum))
ELSE DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum)) - 1
end as Eletkor
from T_TANULOCSOPORT tcs
inner join @2feltetelTeljesulTanulok ketfeltetel on ketfeltetel.Tanulo=tcs.C_TANULOID
inner join t_osztaly o on o.id=tcs.c_osztalycsoportid
inner join t_felhasznalo f on f.id=tcs.C_TANULOID
inner join @FHhozTartozoTanulok fht on fht.TanuloId=ketfeltetel.Tanulo and fht.Evfolyam in (1311,1312,1313,1314)
where tcs.torolt='F'
group by tcs.c_tanuloid, fht.Evfolyam, f.C_SZULETESIDATUM)a
where Eletkor>=16
union
select null, null
where (select top 1 Tanulo from (
select tcs.c_tanuloid Tanulo, fht.Evfolyam,
case
WHEN DATEADD(YY, DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum)), f.C_SZULETESIDATUM) < min(tcs.c_belepesdatum) THEN DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum))
ELSE DATEDIFF(yy, f.C_SZULETESIDATUM, min(tcs.c_belepesdatum)) - 1
end as Eletkor
from T_TANULOCSOPORT tcs
inner join @2feltetelTeljesulTanulok ketfeltetel on ketfeltetel.Tanulo=tcs.C_TANULOID
inner join t_osztaly o on o.id=tcs.c_osztalycsoportid
inner join t_felhasznalo f on f.id=tcs.C_TANULOID
inner join @FHhozTartozoTanulok fht on fht.TanuloId=ketfeltetel.Tanulo and fht.Evfolyam in (1311,1312,1313,1314)
where tcs.torolt='F'
group by tcs.c_tanuloid, fht.Evfolyam, f.C_SZULETESIDATUM)a
where Eletkor>=16) is null )a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
end
*/
-- a03t01
select Id, [1307] 'Evfolyam5', [1308] 'Evfolyam6', [1309] 'Evfolyam7', [1310] 'Evfolyam8', [1311] 'Evfolyam9', [1312] 'Evfolyam10', [1313] 'Evfolyam11', [1314] 'Evfolyam12', Osszesen, Lany from @tmpA03T01
order by Rendez
END

View file

@ -0,0 +1,114 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[DBO].[sp_GetESL_A03T02_1]') IS NOT NULL
BEGIN
DROP PROCEDURE [DBO].[sp_GetESL_A03T02_1]
END
GO
CREATE PROCEDURE [DBO].[sp_GetESL_A03T02_1]
@tanevId int,
@intezmenyId int,
@feladatEllatasiHelyId int
AS
BEGIN
SET NOCOUNT ON;
--Táblák deklarálása
declare @Dictionary table (Id int, Name nvarchar(max), Value int, Tipus nvarchar(max))
declare @Evfolyamok table (Id int, Evfolyam int)
declare @TanuloErtekeles table (Id int, Tanulo int, Tantargy int)
declare @FHhozTartozoTanulok table (Intezmeny int, FH int, Evfolyam int, TanuloId int, Neme int)
declare @Targyak table (Tantargy int)
--Dátumok deklarásása
declare @kezdet int,
@veg int,
@felev int
select top 1 @kezdet= iif(getdate()<=C_DATUM,1394,1400), --első félév
@veg= iif(getdate()<=C_DATUM,1400,1395) --második félév
from t_tanevrendje tr where c_naptipusa=1400 and c_tanevId=@tanevId and c_intezmenyId=@intezmenyId and torolt='F'
DECLARE @FelevKezdete DATE = (select top 1 c_datum from t_tanevrendje tr where c_naptipusa=@kezdet and c_tanevid=@tanevid and c_intezmenyid=@intezmenyid and torolt='F')
DECLARE @FelevVege DATE = (select top 1 c_datum from t_tanevrendje tr where c_naptipusa=@veg and c_tanevid=@tanevid and c_intezmenyid=@intezmenyid and torolt='F')
--Táblák feltöltése
INSERT INTO @Dictionary
SELECT DISTINCT id, c_name, c_value, c_type FROM T_DICTIONARYITEMBASE
INSERT INTO @Evfolyamok
SELECT id, Evfolyam from (SELECT DISTINCT id, CASE
WHEN id in (1307,1330,1334) THEN 1307 /* 5. évfolyam*/
WHEN id in (1308) THEN 1308 /* 6. évfolyam*/
WHEN id in (1309,1331,1335) THEN 1309 /* 7. évfolyam*/
WHEN id in (1310,1324) THEN 1310 /* 8. évfolyam*/
WHEN id in (1311,1316,1332,1333,3018,3019,3020) THEN 1311 /* 9. évfolyam*/
WHEN id in (1312,1323) THEN 1312 /* 10. évfolyam*/
WHEN id in (1313, 1317, 1325,3016 ) THEN 1313 /* 11. évfolyam*/
WHEN id in (1314,1318,1326, 3017, 3021, 3022 /*??*/,
1319, 1322) THEN 1314 /* 12. évfolyam*/
ELSE null
END AS Evfolyam
FROM @Dictionary
where Tipus like 'EvfolyamTipus')Evfolyamok
where Evfolyam is not null
insert into @FHhozTartozoTanulok
select distinct ocs.c_intezmenyid, ocs.C_FELADATELLATASIHELYID, evf.Evfolyam, tcs.C_TANULOID, f.C_NEME from t_osztalycsoport ocs
inner join t_tanulocsoport tcs on tcs.C_OSZTALYCSOPORTID=ocs.ID and tcs.TOROLT='F' and tcs.C_TANEVID=@tanevId
inner join T_FELHASZNALO f on f.id=tcs.c_tanuloid
inner join @Evfolyamok evf on evf.Id=ocs.C_EVFOLYAMTIPUSA
where ocs.C_FELADATELLATASIHELYID = @feladatEllatasiHelyId and ocs.C_TANEVID=@tanevId
--csak az egyes félévi jegyek
INSERT INTO @TanuloErtekeles
select te.Id, C_tanuloid, t.c_targykategoria from T_TANULOERTEKELES te
inner join t_tantargy t on t.id=te.c_tantargyid
INNER JOIN @FHhozTartozoTanulok fht on fht.TanuloId=te.C_TANULOID
where te.torolt='F' and te.C_TANEVID=@tanevId and te.C_OSZTALYZAT=1501 and te.c_ertekelestipusa=1519
insert into @Targyak (Tantargy)
select distinct id from @Dictionary where id in (1202,1203,1204,1209,1200,1210,1198,1215,1219,1220,1221,1223,1224,1230,1232,1235,1240,1239,1242)
-- !!!!!!!! --
select TargyNev.Name Id, isnull(piv.[1307],0) 'Evfolyam5', isnull(piv.[1308],0) 'Evfolyam6', isnull(piv.[1309],0) 'Evfolyam7', isnull(piv.[1310],0) 'Evfolyam8',
isnull(piv.[1311],0) 'Evfolyam9', isnull(piv.[1312],0) 'Evfolyam10', isnull(piv.[1313],0) 'Evfolyam11', isnull(piv.[1314],0) 'Evfolyam12',
isnull(Osszes.OsszesTanulo,0) Osszesen, isnull(OsszesLany.OsszesTanulo,0) Lany
from @Targyak Targyak
left join (
select * from (select distinct Tanulo, Evfolyam, case
when Tantargy in (1202) then 1202 --angol
when Tantargy in (1203) then 1203 --német
when Tantargy in (1204) then 1204 --francia
when Tantargy in (1205,1206,1207,1208,1209) then 1209 --egyéb nyelv
when Tantargy in (1200) then 1200 --nemzetiségi
when Tantargy in (1210) then 1210 --matek
when Tantargy in (1198) then 1198 -- magyar nyelv és irodalom
when Tantargy in (1215) then 1215 --történelem és társadalmi...
when Tantargy in (1219) then 1219 --fizika
when Tantargy in (1220) then 1220 --kémia
when Tantargy in (1221) then 1221 --biológia
when Tantargy in (1223) then 1223 --földrajz
when Tantargy in (1224) then 1224 --ének-zene
when Tantargy in (1229,1230) then 1230 --számítástechika, informatika
when Tantargy in (1232) then 1232 --technika
when Tantargy in (1235) then 1235 --testnevelés
when Tantargy in (1240) then 1240 --szakmai gyakorlat
when Tantargy in (1239) then 1239 --szakmai elmélet
else 1242 --egyéb
end Tantargy
from @TanuloErtekeles te
inner join @FHhozTartozoTanulok fh on fh.TanuloId=te.Tanulo and fh.Evfolyam in (1307,1308,1309,1310, 1311, 1312, 1313, 1314))a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
) piv on piv.Tantargy=Targyak.Tantargy
left join (select count(distinct Tanulo) OsszesTanulo, Tantargy from @TanuloErtekeles group by Tantargy) Osszes on Osszes.Tantargy=Targyak.Tantargy
left join (select count(distinct Tanulo) OsszesTanulo, Tantargy from (select Tanulo, Tantargy from @TanuloErtekeles te inner join @FHhozTartozoTanulok ft on te.Tanulo=ft.TanuloId and ft.Neme=5) a group by Tantargy) OsszesLany on OsszesLany.Tantargy=Targyak.Tantargy
inner join @Dictionary TargyNev on TargyNev.Id=Targyak.Tantargy
END

View file

@ -0,0 +1,131 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[DBO].[sp_GetESL_A03T03_1]') IS NOT NULL
BEGIN
DROP PROCEDURE [DBO].[sp_GetESL_A03T03_1]
END
GO
CREATE PROCEDURE [DBO].[sp_GetESL_A03T03_1]
@tanevId int,
@intezmenyId int,
@feladatEllatasiHelyId int
AS
BEGIN
SET NOCOUNT ON;
--Táblák deklarálása
declare @Dictionary table (Id int, Name nvarchar(max), Value int, Tipus nvarchar(max))
declare @Evfolyamok table (Id int, Evfolyam int)
declare @TanuloErtekeles table (Id int, Tanulo int, Ertekeles int, Tipus int)
declare @FeladatEllatasiHelyekIntezmenyhez table (FHId int, IntezmenyId int)
declare @FHhozTartozoTanulok table (Intezmeny int, FH int, Evfolyam int, TanuloId int, Neme int)
--Dátumok deklarásása
declare @kezdet int,
@veg int,
@felev int
select top 1 @kezdet= iif(getdate()<=C_DATUM,1394,1400), --első félév
@veg= iif(getdate()<=C_DATUM,1400,1395) --második félév
from t_tanevrendje tr where c_naptipusa=1400 and c_tanevId=@tanevId and c_intezmenyId=@intezmenyId and torolt='F'
DECLARE @FelevKezdete DATE = (select top 1 c_datum from t_tanevrendje tr where c_naptipusa=@kezdet and c_tanevid=@tanevid and c_intezmenyid=@intezmenyid and torolt='F')
DECLARE @FelevVege DATE = (select top 1 c_datum from t_tanevrendje tr where c_naptipusa=@veg and c_tanevid=@tanevid and c_intezmenyid=@intezmenyid and torolt='F')
--Táblák feltöltése
INSERT INTO @Dictionary
SELECT DISTINCT id, c_name, c_value, c_type FROM T_DICTIONARYITEMBASE
INSERT INTO @Evfolyamok
SELECT id, Evfolyam from (SELECT DISTINCT id, CASE
WHEN id in (1307,1330,1334) THEN 1307 /* 5. évfolyam*/
WHEN id in (1308) THEN 1308 /* 6. évfolyam*/
WHEN id in (1309,1331,1335) THEN 1309 /* 7. évfolyam*/
WHEN id in (1310,1324) THEN 1310 /* 8. évfolyam*/
WHEN id in (1311,1316,1332,1333,3018,3019,3020) THEN 1311 /* 9. évfolyam*/
WHEN id in (1312,1323) THEN 1312 /* 10. évfolyam*/
WHEN id in (1313, 1317, 1325,3016 ) THEN 1313 /* 11. évfolyam*/
WHEN id in (1314,1318,1326, 3017, 3021, 3022 /*??*/,
1319, 1322) THEN 1314 /* 12. évfolyam*/
ELSE null
END AS Evfolyam
FROM @Dictionary
where Tipus like 'EvfolyamTipus')Evfolyamok
where Evfolyam is not null
/*
INSERT INTO @EvfolyamokTMP
SELECT id, Evfolyam from (SELECT DISTINCT id, CASE
WHEN id in (1307,1330,1334) THEN 1307 /* 5. évfolyam*/
WHEN id in (1308) THEN 1308 /* 6. évfolyam*/
WHEN id in (1309,1331,1335) THEN 1309 /* 7. évfolyam*/
WHEN id in (1310,1324) THEN 1310 /* 8. évfolyam*/
WHEN id in (1311,1316,1332,1333,3018,3019,3020) THEN 1311 /* 9. évfolyam*/
WHEN id in (1312,1323) THEN 1312 /* 10. évfolyam*/
WHEN id in (1313, 1317, 1325,3016 ) THEN 1313 /* 11. évfolyam*/
WHEN id in (1314,1318,1326, 3017, 3021, 3022 /*??*/,
1319, 1322) THEN 1314 /* 12. évfolyam*/
ELSE null
END AS Evfolyam
FROM @Dictionary
where Tipus like 'EvfolyamTipus')Evfolyamok
where Evfolyam is not null
--Évfolyamok kiválasztásához szükséges (pl általánosnál csak 5-8. évfolyam jelenjen meg)
declare @also int=(
select count(distinct tcs.c_osztalycsoportid) from t_tanulocsoport tcs
inner join t_osztalycsoport ocs on ocs.id=tcs.C_OSZTALYCSOPORTID and ocs.C_EVFOLYAMTIPUSA in (1307, 1330, 1334, 1308, 1309, 1331, 1335, 1310, 1324) and ocs.C_FELADATELLATASIHELYID=@feladatEllatasiHelyId
inner join t_osztaly o on o.id=ocs.id
where tcs.C_TANEVID=@tanevId )
declare @felso int=(
select count(distinct tcs.c_osztalycsoportid) from t_tanulocsoport tcs
inner join t_osztalycsoport ocs on ocs.id=tcs.C_OSZTALYCSOPORTID
and ocs.C_EVFOLYAMTIPUSA in (1311, 1316, 1332, 1333, 3018, 3019, 3020, 1312, 1323, 1313, 1317, 1325, 3016, 1314, 1318, 1326, 3017, 3021, 3022, 1319, 1322 )
and ocs.C_FELADATELLATASIHELYID=@feladatEllatasiHelyId
inner join t_osztaly o on o.id=ocs.id
where tcs.C_TANEVID=@tanevId )
IF (@also>=@felso)
begin
insert into @Evfolyamok
select Id, Evfolyam from @EvfolyamokTMP where Evfolyam in(1307,1308,1309,1310)
end
ELSE
begin
insert into @Evfolyamok
select Id, Evfolyam from @EvfolyamokTMP where Evfolyam in(1311,1312,1313,1314)
end
*/
--Egy adott FH-hoz tartozó tanulók
insert into @FHhozTartozoTanulok
select distinct ocs.c_intezmenyid, ocs.C_FELADATELLATASIHELYID, evf.Evfolyam, tcs.C_TANULOID, f.C_NEME from t_osztalycsoport ocs
inner join t_tanulocsoport tcs on tcs.C_OSZTALYCSOPORTID=ocs.ID and tcs.TOROLT='F' and tcs.C_TANEVID=@tanevId
inner join T_FELHASZNALO f on f.id=tcs.c_tanuloid
inner join @Evfolyamok evf on evf.Id=ocs.C_EVFOLYAMTIPUSA
where ocs.C_FELADATELLATASIHELYID = @feladatEllatasiHelyId and ocs.C_TANEVID=@tanevId
--adott évben évismétlés
declare @OsszesEvismetloTanulo int =(select count(fht.TanuloId) from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.C_EVISMETLO='T' and fht.TanuloId=t.id)
declare @OsszesEvismetloTanuloLany int =(select count(fht.TanuloId) from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.c_evismetlo='T' and fht.TanuloId=t.id and fht.TanuloId=t.id and fht.Neme=5)
select 5582 as 'Id', [1307] 'Evfolyam5', [1308] 'Evfolyam6', [1309] 'Evfolyam7', [1310] 'Evfolyam8', [1311] 'Evfolyam9', [1312] 'Evfolyam10', [1313] 'Evfolyam11', [1314] 'Evfolyam12', @OsszesEvismetloTanulo 'Osszesen', @OsszesEvismetloTanuloLany 'Lany'
from (select fht.TanuloId Tanulo, fht.Evfolyam Evfolyam from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.c_evismetlo='T' and fht.TanuloId=t.id and fht.TanuloId=t.id
union
select null, null where (select top 1 fht.TanuloId from @FHhozTartozoTanulok fht
inner join t_tanulo t on t.c_evismetlo='T' and fht.TanuloId=t.id and fht.TanuloId=t.id) is null)a
pivot (count(Tanulo) for Evfolyam in ([1307], [1308], [1309], [1310], [1311], [1312], [1313], [1314]))piv
END

View file

@ -0,0 +1,68 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetElfogadottTantargyfelosztasok]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetElfogadottTantargyfelosztasok]
END
GO
CREATE PROCEDURE [dbo].[sp_GetElfogadottTantargyfelosztasok]
@tanevId int,
@intezmenyId int
AS
BEGIN
SET NOCOUNT ON;
-- fejléc
SELECT IA.C_NEV IntezmenyNeve,
TE.C_NEV TANEV,
IA.C_ENGEDELYEZETTALLASHELYEK Allasok,
FORMAT(IASZ.C_ELFOGADOTTTTFDATUMA, 'yyyy. MMMM dd.', 'hu-hu') ElfogadasDatuma
FROM T_INTEZMENYADATOK_OSSZES IA
inner join T_TANEV_OSSZES TE on TE.ID = IA.C_TANEVID and TE.C_INTEZMENYID = IA.C_INTEZMENYID and TE.TOROLT = 'F'
inner join T_INTEZMENYADATSZOLGALTATAS_OSSZES IASZ on IASZ.C_INTEZMENYID=IA.C_INTEZMENYID and IASZ.TOROLT='F' AND IASZ.C_TANEVID=@tanevId
WHERE IA.TOROLT = 'F'
and TE.ID = @tanevId
and IA.C_INTEZMENYID = @intezmenyId
--Pedagógusok
select
FA.C_ALKALMAZOTTID TanarId,
FA.C_TANARNEVE TanarNev,
FA.C_TANARMUNKAKORE Munkakor,
FA.C_TANARPEDAGOGIAIKEPESITESE PedagogiaiKepesites,
FA.C_TANARKOTELEZOORASZAMA KotelezoOraszam,
FA.C_TANARMUNKAIDOKEDVEZMENYE MunkaidoKedvezmeny,
FA.C_TANARMUNKAIDOKEDVEZMENYOKA MunkaidoKedvezmenyOka,
IIF(FA.C_TANARKOTELEZOORASZAMA = 0 or C_TANARKOTELEZOORASZAMA <= FA.C_TANARMUNKAIDOKEDVEZMENYE, 0, FA.C_TANARKOTELEZOORASZAMA - isnull(FA.C_TANARMUNKAIDOKEDVEZMENYE, 0)) HetiOraszam,
sum(FA.C_ORASZAM) ValosOraszam
from T_FOGLALKOZASARCHIV_OSSZES FA
where FA.TOROLT = 'F'
and FA.C_INTEZMENYID = @intezmenyId and FA.C_TANEVID = @tanevId
group by FA.C_ALKALMAZOTTID, FA.C_TANARNEVE, FA.C_TANARMUNKAKORE, FA.C_TANARPEDAGOGIAIKEPESITESE, FA.C_TANARKOTELEZOORASZAMA,
FA.C_TANARMUNKAIDOKEDVEZMENYE, FA.C_TANARMUNKAIDOKEDVEZMENYOKA
----Osztályok
select
FA.C_OSZTALYCSOPORTNEVE OsztalyNev,
sum(FA.C_ORASZAM) OsszesOraszam
from T_FOGLALKOZASARCHIV_OSSZES FA
where FA.TOROLT = 'F'
and FA.C_INTEZMENYID = @intezmenyId and FA.C_TANEVID = @tanevId
group by FA.C_OSZTALYCSOPORTNEVE
----Tantárgyfelosztás
select
FA.ID,
FA.C_TANARNEVE TanarNev,
FA.c_OSZTALYCSOPORTNEVE OsztalyNev,
FA.C_TANTARGYNEVE TantargyNev,
FA.C_ORASZAM Oraszam
from T_FOGLALKOZASARCHIV_OSSZES FA
where FA.TOROLT = 'F'
and FA.C_INTEZMENYID = @intezmenyId and FA.C_TANEVID = @tanevId
END
GO

View file

@ -0,0 +1,74 @@
-- =============================================
-- Author: Dőrr Tamás
-- Create date: 2017.02.24.
-- Description:
-- =============================================
IF OBJECT_ID('sp_GetElozoOranHianyzottTanulok') IS NOT NULL BEGIN
DROP PROCEDURE sp_GetElozoOranHianyzottTanulok
END
GO
CREATE PROCEDURE [sp_GetElozoOranHianyzottTanulok]
@OsztalyCsoportId int,
@Datum datetime,
@OraKezdete datetime,
@HianyzasTipus int
AS
BEGIN
SET NOCOUNT ON;
DECLARE @tempOsztalyCsoportok TABLE (OsztalyCsoportID int PRIMARY KEY)
DECLARE @tempTanulok TABLE (TanuloID int PRIMARY KEY)
DECLARE @resultTanuloK TABLE (TanuloID int)
INSERT INTO @tempOsztalyCsoportok (OsztalyCsoportID)
SELECT DISTINCT ID FROM [fnGetKapcsolodoOsztalycsoportok] (@OsztalyCsoportId)
INSERT INTO @tempTanuloK (TanuloID)
SELECT DISTINCT
C_ORATANULOIID
FROM T_TANULOMULASZTAS tm
JOIN T_TANITASIORA t ON t.ID = tm.C_TANITASIORAKID AND t.C_DATUM = @datum AND tm.C_TIPUS = @HianyzasTipus AND t.TOROLT = 'F'
WHERE tm.TOROLT = 'F' AND tm.C_ORATANULOIID IN (
SELECT
tcs.C_TANULOID
FROM T_TANULOCSOPORT tcs
WHERE
tcs.C_OSZTALYCSOPORTID IN (select OsztalyCsoportID from @tempOsztalyCsoportok)
AND tcs.TOROLT = 'F'
AND @datum BETWEEN tcs.C_BELEPESDATUM AND ISNULL(tcs.C_KILEPESDATUM, GETDATE())
)
DECLARE @TanuloId int
DECLARE MY_CURSOR CURSOR
LOCAL STATIC READ_ONLY FORWARD_ONLY
FOR
SELECT DISTINCT TanuloID FROM @tempTanuloK
OPEN MY_CURSOR
FETCH NEXT FROM MY_CURSOR INTO @TanuloId
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO @resultTanuloK (TanuloID)
SELECT TOP 1
tm.C_ORATANULOIID
FROM T_TANITASIORA t
LEFT JOIN T_TANULOMULASZTAS tm ON tm.C_TANITASIORAKID = t.ID AND tm.C_ORATANULOIID = @TanuloId AND tm.TOROLT = 'F' AND tm.C_TIPUS = @HianyzasTipus
WHERE
t.TOROLT = 'F'
AND t.C_ORAKEZDETE <= @OraKezdete
AND t.ID IN (SELECT
t.ID
FROM T_TANITASIORA t
WHERE
t.C_OSZTALYCSOPORTID IN (SELECT OsztalyCsoportID FROM @tempOsztalyCsoportok) AND C_DATUM = @datum)
ORDER BY
t.C_ORAKEZDETE DESC
FETCH NEXT FROM MY_CURSOR INTO @TanuloId
END
CLOSE MY_CURSOR
DEALLOCATE MY_CURSOR
SELECT TanuloID FROM @resultTanuloK WHERE TanuloID IS NOT NULL
END

View file

@ -0,0 +1,157 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Telek Ákos
-- Create date: 2016.07.20.
-- Description: Entitás törléséhez lekérdezi az aktív kapcsolatait. Van-e olyan kapcsolódása, ahol vannak nem törölt rekordok. Visszaadja
-- =============================================
IF OBJECT_ID('sp_GetEntitasAktivKapcsolatai') IS NOT NULL BEGIN
DROP PROCEDURE sp_GetEntitasAktivKapcsolatai
END
GO
CREATE PROCEDURE sp_GetEntitasAktivKapcsolatai
-- Add the parameters for the stored procedure here
@EntitasIDk AS XML, -- a törlésre kijelölt entitás ID-k
@EntitasNevek as XML -- a törlésre kijelölt entitások
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SET XACT_ABORT OFF;
/*declare @cucc xml
set @cucc = '<EntitasNevek><Entitas>OrarendiOra</Entitas><Entitas>Tanar</Entitas></EntitasNevek>'*/
-- XML param?ter ?rtelmez?se
DECLARE @tempEntitasNevek TABLE (
EntitasNev varchar(50)
)
CREATE TABLE #tempentitasIdk (
entitasId int
)
DECLARE @tempConnections TABLE (
ID int,
Target_Table varchar(50),
Target_Column varchar(50),
Source_Table varchar(50),
Source_Column varchar(50)
)
INSERT INTO @tempEntitasNevek
SELECT DISTINCT EntitasNev = 'T_'+Entitas.value('(.)[1]', 'varchar(50)')
FROM @EntitasNevek.nodes('EntitasNevek/Entitas') as EntitasNevek(Entitas)
INSERT INTO #tempentitasIdk
SELECT DISTINCT entitasId = entitasId.value('(.)[1]', 'int')
FROM @entitasIdk.nodes('Entitasok/EntitasId') as Entitasok(entitasId)
DECLARE @result TABLE (
entitasId INT,
targetTableName nvarchar(100),
targetColumnName nvarchar(100),
cnt INT
)
INSERT INTO @result (
entitasId,
cnt
)
SELECT entitasId, 0
FROM #tempentitasIdk
DECLARE
@sourceTable nvarchar(30),
@sourceColumn nvarchar(30),
@targetTable nvarchar(30),
@targetColumn nvarchar(30),
@tableName nvarchar(30)
DECLARE @References TABLE (
PKTABLE_QUALIFIER nvarchar(50),
PKTABLE_OWNER nvarchar(50),
PKTABLE_NAME nvarchar(50),
PKCOLUMN_NAME nvarchar(50),
FKTABLE_QUALIFIER nvarchar(50),
FKTABLE_OWNER nvarchar(50),
FKTABLE_NAME nvarchar(50),
FKCOLUMN_NAME nvarchar(50),
KEY_SEQ int,
UPDATE_RULE int,
DELETE_RULE int,
FK_NAME nvarchar(50),
PK_NAME nvarchar(50),
DEFERRABILITY int
);
DECLARE table_cur CURSOR LOCAL FOR
SELECT EntitasNev FROM @tempEntitasNevek
OPEN table_cur
FETCH NEXT FROM table_cur
INTO @tableName
WHILE @@FETCH_STATUS = 0 BEGIN
INSERT INTO @References
EXEC sp_fkeys @tableName, 'dbo'
FETCH NEXT FROM table_cur
INTO @tableName
END
CLOSE table_cur
DEALLOCATE table_cur
DECLARE ref_cur CURSOR LOCAL FOR
SELECT PKTABLE_NAME, PKCOLUMN_NAME, FKTABLE_NAME, FKCOLUMN_NAME FROM @references WHERE FKCOLUMN_NAME != 'ID' --Azért szűrjük az ID mezőt, mert a leszármazott tábláknál van referencia
OPEN ref_cur
FETCH NEXT FROM ref_cur
INTO @sourceTable, @sourceColumn, @targetTable, @targetColumn
WHILE @@FETCH_STATUS = 0 BEGIN
DECLARE @sql nvarchar(1000), @FINALQUERY nvarchar(1000)
SET @sql = N'
SELECT #tempentitasIdk.entitasId, '''+@targetTable+''','''+@targetColumn+''', COUNT(1) AS cnt
FROM '+@targetTable+'
INNER JOIN #tempentitasIdk ON #tempentitasIdk.entitasId = '+@targetTable+'.'+@targetColumn
IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.Columns WHERE TABLE_NAME = @targetTable AND COLUMN_NAME = 'TOROLT') BEGIN
SET @sql = @sql + N'
WHERE ' + @targetTable + '.TOROLT = ''F'''
END
SET @sql = @sql + N'
GROUP BY #tempentitasIdk.entitasId'
INSERT INTO @result
EXEC sp_executesql @sql
FETCH NEXT FROM ref_cur
INTO @sourceTable, @sourceColumn, @targetTable, @targetColumn
END
CLOSE ref_cur
DEALLOCATE ref_cur
IF OBJECT_ID('tempdb..#tempentitasIdk') IS NOT NULL BEGIN
DROP TABLE #tempentitasIdk
END
SELECT entitasId, targetTableName, targetColumnName, SUM(cnt) SUMROWCOUNT
FROM @result
GROUP BY entitasId, targetTableName, targetColumnName
HAVING SUM(cnt) > 0
END
GO

View file

@ -0,0 +1,88 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetErtekelesMegtekinteseReszletek]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetErtekelesMegtekinteseReszletek]
END
GO
-- =============================================
-- Author: <Szikora Zoltán>
-- Create date: <2016. 09. 02.>
-- Description: <Előszedjük a tanuló értékeléseit részletesen>
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetErtekelesMegtekinteseReszletek]
@pTanuloId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
TanuloErtekeles.ID
,TanuloErtekeles.C_ERTEKELESDATUM AS ErtekelesDatuma
,TanuloErtekeles.C_ERTEKELESTIPUSA AS ErtekelesTipusa
,TanuloErtekeles.C_ERTEKELESSZOVEG AS ErtekelesSzovege
,TanuloErtekeles.C_OSZTALYZAT AS Osztalyzat
,TanuloErtekeles.C_TANORAID TanoraID
,OsztalyzatErtekeles.C_ERTEKELESMODJA AS ErtekelesModja
,OsztalyzatErtekeles.C_SZAZALEK AS Szazalek
,OsztalyzatErtekeles.C_TEMA AS Tema
,TanuloCsoport.C_TANULOID AS TanuloId
,Felhasznalo.C_NYOMTATASINEV AS Ertekelo
FROM(
SELECT DISTINCT
[C_TANULOID]
FROM
[T_TANULOCSOPORT]
WHERE
[TOROLT] = 'F'
AND [C_TANULOID] = @pTanuloId
AND [C_BELEPESDATUM] < GETDATE()
AND ([C_KILEPESDATUM] IS NULL OR [C_KILEPESDATUM] >= GETDATE())
) AS TanuloCsoport
INNER JOIN (
SELECT
[ID]
,[C_ERTEKELESDATUM]
,[C_ERTEKELESTIPUSA]
,[C_ERTEKELESSZOVEG]
,[C_OSZTALYZAT]
,[C_TANULOID]
,[C_ERTEKELOID]
,[C_TANORAID]
FROM
[T_TANULOERTEKELES]
WHERE
[TOROLT] = 'F'
) AS TanuloErtekeles
ON TanuloCsoport.C_TANULOID = TanuloErtekeles.C_TANULOID
INNER JOIN (
SELECT
[ID]
,[C_ERTEKELESMODJA]
,[C_SZAZALEK]
,[C_TEMA]
FROM
[T_OSZTALYZATERTEKELES]
WHERE
[TOROLT] = 'F'
) AS OsztalyzatErtekeles
ON OsztalyzatErtekeles.ID = TanuloErtekeles.ID
INNER JOIN (
SELECT
[ID]
,[C_NYOMTATASINEV]
FROM
[T_FELHASZNALO]
WHERE
[TOROLT] = 'F'
) AS Felhasznalo
ON Felhasznalo.ID = TanuloErtekeles.C_ERTEKELOID
END

View file

@ -0,0 +1,111 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[sp_GetErtekelesReszletek]') IS NOT NULL
BEGIN
DROP PROCEDURE [sp_GetErtekelesReszletek]
END
GO
-- =============================================
-- Description: <Előszedjük a tanuló értékeléseit részletesen tantárgy szerint>
-- =============================================
CREATE PROCEDURE [sp_GetErtekelesReszletek]
@pIntezmenyId INT,
@pTanevId INT,
@pTanuloId INT,
@pTantargyId INT,
@pToroltElemek CHAR = 'F',
@pTanarId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
TanuloErtekeles.ID
,TanuloErtekeles.C_ERTEKELESDATUM AS ErtekelesDatuma
,TanuloErtekeles.C_ERTEKELESTIPUSA AS ErtekelesTipusa
,TanuloErtekeles.C_ERTEKELESSZOVEG AS ErtekelesSzovege
,TanuloErtekeles.C_OSZTALYZAT AS Osztalyzat
,TanuloErtekeles.C_TANORAID TanoraID
,OsztalyzatErtekeles.C_ERTEKELESMODJA AS ErtekelesModja
,OsztalyzatErtekeles.C_SZAZALEK AS Szazalek
,OsztalyzatErtekeles.C_TEMA AS Tema
,TanuloErtekeles.TOROLT AS Torolt
,TanuloCsoport.C_TANULOID AS TanuloId
,Felhasznalo.C_NYOMTATASINEV AS Ertekelo
,CASE
WHEN TanuloErtekeles.CREATOR = @pTanarId
THEN 'T'
ELSE 'F'
END Modosithato
FROM(
SELECT DISTINCT
[C_TANULOID]
FROM
[T_TANULOCSOPORT]
WHERE
[TOROLT] = 'F'
AND [C_TANULOID] = @pTanuloId
AND [C_BELEPESDATUM] < GETDATE()
AND ([C_KILEPESDATUM] IS NULL OR [C_KILEPESDATUM] >= GETDATE())
AND [C_INTEZMENYID] = @pIntezmenyId
AND [C_TANEVID] = @pTanevId
) AS TanuloCsoport
INNER JOIN (
SELECT
[ID]
,[C_ERTEKELESDATUM]
,[C_ERTEKELESTIPUSA]
,[C_ERTEKELESSZOVEG]
,[C_OSZTALYZAT]
,[C_TANULOID]
,[C_ERTEKELOID]
,[C_TANORAID]
,[TOROLT]
,[CREATOR]
FROM
[T_TANULOERTEKELES_OSSZES]
WHERE
[C_TANTARGYID] = @pTantargyId
--Ha a törölt flag True, a törölt elemeket is visszaadjuk
AND [TOROLT] = IIF(@pToroltElemek = 'T', [TOROLT], 'F')
AND [C_INTEZMENYID] = @pIntezmenyId
AND [C_TANEVID] = @pTanevId
) AS TanuloErtekeles
ON TanuloCsoport.C_TANULOID = TanuloErtekeles.C_TANULOID
INNER JOIN (
SELECT
[ID]
,[C_ERTEKELESMODJA]
,[C_SZAZALEK]
,[C_TEMA]
,[TOROLT]
FROM
[T_OSZTALYZATERTEKELES_OSSZES]
WHERE
--Ha a törölt flag True, a törölt elemeket is visszaadjuk
[TOROLT] = IIF(@pToroltElemek = 'T', [TOROLT], 'F')
AND [C_ALINTEZMENYID] = @pIntezmenyId
AND [C_ALTANEVID] = @pTanevId
) AS OsztalyzatErtekeles
ON OsztalyzatErtekeles.ID = TanuloErtekeles.ID
INNER JOIN (
SELECT
[ID]
,[C_NYOMTATASINEV]
FROM
[T_FELHASZNALO]
WHERE
[TOROLT] = 'F'
AND [C_INTEZMENYID] = @pIntezmenyId
AND [C_TANEVID] = @pTanevId
) AS Felhasznalo
ON Felhasznalo.ID = TanuloErtekeles.C_ERTEKELOID
END

View file

@ -0,0 +1,73 @@
-- ================================================
-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters
-- command (Ctrl-Shift-M) to fill in the parameter
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Sólyom Péter
-- Create date: 2016.01.21.
-- Description: Az értékelés generálásához a legutolsó végrehajtás óta entitás és attribútumainak változásai.
-- =============================================
CREATE PROCEDURE sp_GetErtekeleshezAttributumValtozasok
@EntitasNevek as XML
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SET XACT_ABORT OFF;
/*declare @cucc xml
set @cucc = '<EntitasNevek><Entitas>OrarendiOra</Entitas><Entitas>Tanar</Entitas></EntitasNevek>'*/
-- XML param?ter ?rtelmez?se
SELECT
EntitasNev = Entitas.value('(.)[1]', 'varchar(50)')
INTO
#tempEntitasNevek
FROM
@EntitasNevek.nodes('EntitasNevek/Entitas') AS EntitasNevek(Entitas)
DECLARE
@UTOLSOENTITYID INT=0,
@UTOLSOATTRIBUTEID INT=0
SELECT
@UTOLSOATTRIBUTEID = ISNULL(G.C_ERTESITESUTOLSOENTITYATTRIBU,0), @UTOLSOENTITYID = ISNULL(G.C_ERTESITESUTOLSOENTITYHISTORY,0)
FROM
T_GLOBALISBEALLITASOK G
SELECT
ENTITY.ID ENTITYHISTORYID,
ENTITY.C_ENTITYNAME ENTITYNAME,
ENTITY.C_ENTITYID ENTITYID,
ENTITY.C_REASON MUVELET,
ATTRIBUTE.ID ATTRIBUTEID,
ATTRIBUTE.C_PROPERTYNAME PROPERTYNAME,
ATTRIBUTE.C_ORIGINALVALUE REGIERTEK,
ATTRIBUTE.C_CURRENTVALUE UJERTEK,
ENTITY.C_INTEZMENYID INTEZMENYID,
ENTITY.C_TANEVID TANEVID
FROM
[T_ENTITYATTRIBUTEHISTORY] ATTRIBUTE
JOIN T_ENTITYHISTORY ENTITY ON ENTITY.ID = ATTRIBUTE.C_ENTITYHISTORYID
WHERE
ENTITY.ID > @UTOLSOENTITYID
AND ATTRIBUTE.ID > @UTOLSOATTRIBUTEID
AND EXISTS ( SELECT 1 FROM #tempEntitasNevek WHERE ENTITY.C_ENTITYNAME LIKE ('T_' + EntitasNev)) /*Itt változott lényegében... (Zsiga Attila - 2016.08.12.)*/
--AND ENTITY.CREATED < GETDATE()
ORDER BY
ATTRIBUTE.CREATED
DROP TABLE #tempEntitasNevek
END
GO

View file

@ -0,0 +1,164 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('sp_GetErtesitesAltEsMulAdatok') IS NOT NULL BEGIN
DROP PROCEDURE [sp_GetErtesitesAltEsMulAdatok]
END
GO
-- =============================================
-- Author: Hoffmann Zsolt
-- Create date: 2016.04.05.
-- Description: Tanulói jegyek részletezése
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetErtesitesAltEsMulAdatok]
@OsztalyId int,
@TanevId int,
@Tankoteles nvarchar(1)
AS
BEGIN
SET NOCOUNT ON;
--Tanulói adatok
select
tanulo.ID,
tanulo.C_NYOMTATASINEV TANULONEV,
tanulo.C_ANYJANEVE ANYJANEVE,
tanulo.C_SZULETESIHELY SZULETESIHELY,
tanulo.C_SZULETESIDATUM SZULETESIDATUM,
AllandoLakcim.IranyitoSzam1,
AllandoLakcim.Varos1,
AllandoLakcim.Kozterulet1,
AllandoLakcim.KozteruletJellege1,
AllandoLakcim.Hazszam1,
AllandoLakcim.Emelet1,
AllandoLakcim.Ajto1,
TartozkodasiHely.IranyitoSzam2,
TartozkodasiHely.Varos2,
TartozkodasiHely.Kozterulet2,
TartozkodasiHely.KozteruletJellege2,
TartozkodasiHely.Hazszam2,
TartozkodasiHely.Emelet2,
TartozkodasiHely.Ajto2,
GONDVISELO.GondvNeve,
GONDVISELO.GondvTelefon,
GONDVISELO.GondvCim,
T_INTEZMENYADATOK_OSSZES.C_IGAZGATONEVE as INT_IGAZGATO_NEV,
T_INTEZMENYADATOK_OSSZES.C_NEV as INT_NEV,
T_INTEZMENYADATOK_OSSZES.C_OMKOD as INT_OMKOD,
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM as INT_IRSZAM,
T_INTEZMENYADATOK_OSSZES.C_VAROS as INT_VAROS,
T_INTEZMENYADATOK_OSSZES.C_CIME as INT_CIM,
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM + ' ' + T_INTEZMENYADATOK_OSSZES.C_VAROS + ' ' + T_INTEZMENYADATOK_OSSZES.C_CIME as INT_TELJES_CIM,
T_OSZTALYCSOPORT_OSSZES.C_NEV as OSZTALYCSOPORT_NEV,
osztf.C_VEZETEKNEV + ' ' + osztf.C_UTONEV as OSZTFO_NEV,
isnull(Igazolt.ORASZAM,0) IGAZOLT,
isnull(Igazolatlan.ORASZAM,0) IGAZOLATLAN
from T_TANULOCSOPORT_OSSZES
left outer join T_FELHASZNALO_OSSZES tanulo on tanulo.ID = T_TANULOCSOPORT_OSSZES.C_TANULOID and tanulo.TOROLT = 'F'
left outer join T_TANULO_OSSZES on T_TANULO_OSSZES.ID = tanulo.ID and T_TANULO_OSSZES.TOROLT = 'F'
left outer join T_OSZTALYCSOPORT_OSSZES on T_OSZTALYCSOPORT_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID and T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
left outer join T_INTEZMENYADATOK_OSSZES on T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID = T_TANULOCSOPORT_OSSZES.C_INTEZMENYID and T_INTEZMENYADATOK_OSSZES.C_TANEVID = T_TANULOCSOPORT_OSSZES.C_TANEVID and T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
left outer join T_OSZTALY_OSSZES on T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID and T_OSZTALY_OSSZES.TOROLT = 'F'
left outer join T_FELHASZNALO_OSSZES osztf on osztf.ID = T_OSZTALY_OSSZES.C_OSZTALYFONOKID and osztf.TOROLT = 'F'
left outer join --Állandó lakcím
(select
T_CIM_OSSZES.C_FELHASZNALOID TanuloID,
T_CIM_OSSZES.C_IRANYITOSZAM IranyitoSzam1,
T_CIM_OSSZES.C_VAROS Varos1,
T_CIM_OSSZES.C_KOZTERULET Kozterulet1,
T_CIM_OSSZES.C_KOZTERULETJELLEGE KozteruletJellege1,
T_CIM_OSSZES.C_HAZSZAM Hazszam1,
T_CIM_OSSZES.C_EMELET Emelet1,
T_CIM_OSSZES.C_AJTO Ajto1
from T_CIM_OSSZES where T_CIM_OSSZES.TOROLT = 'F' and T_CIM_OSSZES.C_CIMTIPUSA = 907) AllandoLakcim on AllandoLakcim.TanuloID = tanulo.ID
left outer join -- Tartózkodási hely
(select
T_CIM_OSSZES.C_FELHASZNALOID TanuloID,
T_CIM_OSSZES.C_IRANYITOSZAM IranyitoSzam2,
T_CIM_OSSZES.C_VAROS Varos2,
T_CIM_OSSZES.C_KOZTERULET Kozterulet2,
T_CIM_OSSZES.C_KOZTERULETJELLEGE KozteruletJellege2,
T_CIM_OSSZES.C_HAZSZAM Hazszam2,
T_CIM_OSSZES.C_EMELET Emelet2,
T_CIM_OSSZES.C_AJTO Ajto2
from T_CIM_OSSZES where T_CIM_OSSZES.TOROLT = 'F' and T_CIM_OSSZES.C_CIMTIPUSA = 909) TartozkodasiHely on TartozkodasiHely.TanuloID = tanulo.ID
left outer join --Összes igazolt mulasztás
(
SELECT MULASZT.C_ORATANULOIID Tanulo, COUNT(1) ORASZAM
FROM T_TANULOMULASZTAS_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES
WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT ON TANCSOPORT.C_TANULOID = MULASZT.C_ORATANULOIID
WHERE MULASZT.TOROLT ='F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @OsztalyId AND MULASZT.C_IGAZOLT = 'T' AND MULASZT.C_TIPUS != 1498
GROUP BY MULASZT.C_ORATANULOIID
) Igazolt on Igazolt.Tanulo = Tanulo.ID
left outer join -- Összes igazolatlan mulasztás
(
SELECT MULASZT.C_ORATANULOIID Tanulo, COUNT(1) ORASZAM
FROM T_TANULOMULASZTAS_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES
WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT ON TANCSOPORT.C_TANULOID = MULASZT.C_ORATANULOIID
WHERE MULASZT.TOROLT ='F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @OsztalyId AND MULASZT.C_IGAZOLT = 'F' AND MULASZT.C_TIPUS != 1498
GROUP BY MULASZT.C_ORATANULOIID
) Igazolatlan on Igazolatlan.Tanulo = Tanulo.ID
left outer join -- Gondviselő adatok
(
select
T_GONDVISELO_OSSZES.ID,
T_GONDVISELO_OSSZES.C_TANULOID GondvTanulo,
T_GONDVISELO_OSSZES.C_NEV GondvNeve,
isnull(T_TELEFON_OSSZES.C_TELEFONSZAM,'') GondvTelefon,
isnull(T_CIM_OSSZES.C_OSSZETETTCIM,'') GondvCim
from T_GONDVISELO_OSSZES
left join T_TELEFON_OSSZES on T_TELEFON_OSSZES.C_GONDVISELOID = T_GONDVISELO_OSSZES.ID and T_TELEFON_OSSZES.TOROLT = 'F'
left join T_CIM_OSSZES on T_CIM_OSSZES.C_GONDVISELOID = T_GONDVISELO_OSSZES.ID and T_CIM_OSSZES.TOROLT = 'F'
where
T_GONDVISELO_OSSZES.TOROLT = 'F'
) GONDVISELO on GONDVISELO.GondvTanulo = T_TANULO_OSSZES.ID
where
T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID = @OsztalyId and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE()) and
T_TANULOCSOPORT_OSSZES.TOROLT = 'F' and
T_TANULO_OSSZES.C_TANKOTELEZETT = @Tankoteles and
T_TANULOCSOPORT_OSSZES.C_TANEVID = @TanevId
order by tanulo.C_NYOMTATASINEV
--Mulasztások részletezése
select
T_TANULOMULASZTAS_OSSZES.C_ORATANULOIID Tanulo,
T_TANITASIORA_OSSZES.C_DATUM Datum,
T_TANITASIORA_OSSZES.C_ORASZAM Oraszam,
T_TANULOMULASZTAS_OSSZES.C_TIPUS Tipus,
T_TANULOMULASZTAS_OSSZES.C_KESESPERCBEN KesesPerc,
T_OSZTALYCSOPORT_OSSZES.C_NEV OsztNev,
T_TANTARGY_OSSZES.C_NEV Tantargy
from T_TANULOMULASZTAS_OSSZES
inner join T_TANITASIORA_OSSZES on T_TANITASIORA_OSSZES.ID = T_TANULOMULASZTAS_OSSZES.C_TANITASIORAKID and T_TANITASIORA_OSSZES.TOROLT= 'F'
left outer join T_TANTARGY_OSSZES on T_TANTARGY_OSSZES.ID = T_TANITASIORA_OSSZES.C_TANTARGYID and T_TANTARGY_OSSZES.TOROLT = 'F'
left outer join T_TANULOCSOPORT_OSSZES on T_TANULOCSOPORT_OSSZES.C_TANULOID = T_TANULOMULASZTAS_OSSZES.C_ORATANULOIID and T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
left outer join T_OSZTALYCSOPORT_OSSZES on T_OSZTALYCSOPORT_OSSZES.ID = T_TANITASIORA_OSSZES.C_OSZTALYCSOPORTID
where T_TANULOMULASZTAS_OSSZES.C_TIPUS != 1498 and
T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE()) and
T_TANULOMULASZTAS_OSSZES.C_ORATANULOIID in (SELECT C_TANULOID FROM T_TANULOCSOPORT_OSSZES WHERE C_OSZTALYCSOPORTID=@OSZTALYID AND TOROLT='F') and
T_TANULOMULASZTAS_OSSZES.C_IGAZOLT = 'F' and
T_TANULOMULASZTAS_OSSZES.TOROLT = 'F' and
T_TANULOMULASZTAS_OSSZES.C_TANEVID = @TanevId
order by T_TANULOMULASZTAS_OSSZES.C_ORATANULOIID, T_TANITASIORA_OSSZES.C_DATUM
END
GO

View file

@ -0,0 +1,79 @@
GO
/****** Object: StoredProcedure [dbo].[sp_GetErtesitesek] Script Date: 2016.03.08. 13:05:47 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Kelemen Attila
-- Create date: 2016. 03. 07.
-- Description: Felhasználóhoz tartozó értesítések lekérdezése
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetErtesitesek]
@userID int,
@gondviseloID int,
@date DateTime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
--Ha gondviselőhöz kérdezzük le
IF @gondviseloID > 0
SELECT DISTINCT
T_ERTESITES.ID,
T_ERTESITES.C_ERVENYESSEGKEZDETE Erv_kezd,
FELERT.C_ERVENYESSEGVEGE Erv_veg,
T_ERTESITES.C_LETREHOZASDATUM LetrehozasDatum,
T_ERTESITES.C_SZINTIPUS Szin,
T_ERTESITES.C_TIPUS Tipus,
T_ERTESITES.C_TOROLHETO Torolheto,
T_ERTESITES.C_UZENET Szoveg,
FELERT.ID FGErtesitesID
FROM T_ERTESITES
LEFT JOIN T_GONDVISELOERTESITES FELERT on FELERT.C_ERTESITESID = T_ERTESITES.ID
WHERE T_ERTESITES.TOROLT = 'F'
AND T_ERTESITES.C_ERVENYESSEGKEZDETE <= @date
AND (T_ERTESITES.C_GLOBALISERVENYESSEGVEGE IS NULL OR T_ERTESITES.C_GLOBALISERVENYESSEGVEGE >= @date)
AND (((T_ERTESITES.C_GLOBALIS = 'T'
AND NOT EXISTS (select 1 from T_GONDVISELOERTESITES
where TOROLT = 'F'
AND (C_ERVENYESSEGVEGE < @date)
AND C_ERTESITESID = T_ERTESITES.ID AND C_GONDVISELOID = @gondviseloID)
)
)
OR (T_ERTESITES.C_GLOBALIS = 'F'
AND FELERT.TOROLT = 'F'
AND (FELERT.C_ERVENYESSEGVEGE IS NULL OR FELERT.C_ERVENYESSEGVEGE >= @date)
AND FELERT.C_GONDVISELOID = @gondviseloID))
ORDER BY T_ERTESITES.C_LETREHOZASDATUM DESC
ELSE
SELECT DISTINCT
T_ERTESITES.ID,
T_ERTESITES.C_ERVENYESSEGKEZDETE Erv_kezd,
FELERT.C_ERVENYESSEGVEGE Erv_veg,
T_ERTESITES.C_LETREHOZASDATUM LetrehozasDatum,
T_ERTESITES.C_SZINTIPUS Szin,
T_ERTESITES.C_TIPUS Tipus,
T_ERTESITES.C_TOROLHETO Torolheto,
T_ERTESITES.C_UZENET Szoveg,
FELERT.ID FGErtesitesID
FROM T_ERTESITES
LEFT JOIN T_FELHASZNALOERTESITES FELERT on FELERT.C_ERTESITESID = T_ERTESITES.ID
WHERE T_ERTESITES.TOROLT = 'F'
AND T_ERTESITES.C_ERVENYESSEGKEZDETE <= @date
AND (T_ERTESITES.C_GLOBALISERVENYESSEGVEGE IS NULL OR T_ERTESITES.C_GLOBALISERVENYESSEGVEGE >= @date)
AND (((T_ERTESITES.C_GLOBALIS = 'T'
AND NOT EXISTS (select 1 from T_FELHASZNALOERTESITES
where TOROLT = 'F'
AND (C_ERVENYESSEGVEGE < @date)
AND C_ERTESITESID = T_ERTESITES.ID AND C_FELHASZNALOID = @userID)
)
)
OR (T_ERTESITES.C_GLOBALIS = 'F'
AND FELERT.TOROLT = 'F'
AND (FELERT.C_ERVENYESSEGVEGE IS NULL OR FELERT.C_ERVENYESSEGVEGE >= @date)
AND FELERT.C_FELHASZNALOID = @userID))
ORDER BY T_ERTESITES.C_LETREHOZASDATUM DESC
END

View file

@ -0,0 +1,256 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetEvvegiErtesito]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetEvvegiErtesito]
END
GO
-- =============================================
-- Author: Hoffmann Zsolt
-- Create date: 2015.12.22.
-- Description: Évvégi értesítő nyomtatvány.
-- =============================================
CREATE PROCEDURE [sp_GetEvvegiErtesito]
@tanevId int,
@osztalyId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- fejléc
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM IntezmenyIranyitoszam,
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
T_INTEZMENYADATOK_OSSZES.C_CIME IntezmenyCime,
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
T_INTEZMENYADATOK_OSSZES.C_OMKOD OMkod,
T_TANEV_OSSZES.C_NEV TANEV,
(SELECT C_OSZTALYFONOKID FROM T_OSZTALY_OSSZES WHERE ID=@osztalyId) PartnerID,
(SELECT OFO.C_NYOMTATASINEV FROM T_OSZTALY_OSSZES JOIN T_FELHASZNALO_OSSZES OFO ON OFO.ID = T_OSZTALY_OSSZES.C_OSZTALYFONOKID WHERE T_OSZTALY_OSSZES.ID=@osztalyId) OSZTALYFONOK,
(SELECT T_OSZTALYCSOPORT_OSSZES.C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE T_OSZTALYCSOPORT_OSSZES.ID=@osztalyId) OSZTALYNEV
FROM T_INTEZMENYADATOK_OSSZES
INNER JOIN T_TANEV_OSSZES
ON T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID AND T_TANEV_OSSZES.TOROLT = 'F'
WHERE T_TANEV_OSSZES.ID = @tanevId
---------- TANULÓK
SELECT T_FELHASZNALO_OSSZES.ID TANULOID,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TANULONEV,
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO OKTATASIAZONOSITO
FROM T_FELHASZNALO_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(C_KILEPESDATUM is null or C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
WHERE TOROLT='F' and
TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId and
T_FELHASZNALO_OSSZES.C_TANEVID = @tanevId
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
---- ÉRTÉKELÉSEK
SELECT ERTEKELES.C_TANULOID TANULOID,
'MAGATARTAS' TARGYNEV,
OSZTALYZAT.MAGATARTAS FELEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_MAGATARTAS MAGATARTAS FROM T_OSZTALYFONOKIERTEKELES_OSSZES) OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId AND
ERTEKELES.TOROLT = 'F' and
ERTEKELES.C_TANEVID = @tanevId and
ERTEKELES.C_ERTEKELESTIPUSA = 1520 AND
OSZTALYZAT.MAGATARTAS IS NOT NULL -- ÉVVÉGI
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
'SZORGALOM' TARGYNEV,
OSZTALYZAT.SZORGALOM FELEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_SZORGALOM SZORGALOM FROM T_OSZTALYFONOKIERTEKELES_OSSZES ) OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId AND
ERTEKELES.TOROLT = 'F' and
ERTEKELES.C_TANEVID = @tanevId and
ERTEKELES.C_ERTEKELESTIPUSA = 1520 AND
OSZTALYZAT.SZORGALOM IS NOT NULL -- ÉVVÉGI
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
TARGY.TARGYNEV TARGYNEV,
ERTEKELES.C_OSZTALYZAT FELEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
JOIN ( SELECT ID,C_NEV TARGYNEV,C_TARGYKATEGORIA KAT FROM T_TANTARGY_OSSZES) TARGY
ON TARGY.ID = ERTEKELES.C_TANTARGYID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId AND
ERTEKELES.TOROLT = 'F' and
ERTEKELES.C_TANEVID = @tanevId and
TARGY.KAT != 1248 and--Osztályfőnöki nem jelenítődik meg
ERTEKELES.C_ERTEKELESTIPUSA = 1520 -- ÉVVÉGI
ORDER BY TANULOID,
TARGYNEV
----ÉVVÉGI ÉRTÉKELÉS ÖSSZEGZÉS
SELECT ERTEKELES.C_TANULOID TANULOID,
TARGY.TARGYNEV,
isnull((select count(*) from T_TANITASIORA_OSSZES
inner join T_FOGLALKOZAS_OSSZES
on T_FOGLALKOZAS_OSSZES.ID = T_TANITASIORA_OSSZES.C_FOGLALKOZASID
where T_TANITASIORA_OSSZES.TOROLT = 'F'
and T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID = @osztalyId
and T_FOGLALKOZAS_OSSZES.C_TANTARGYID = ERTEKELES.ID
and T_FOGLALKOZAS_OSSZES.C_FOGLALKOZASTIPUSA = 1339 --Tanórai foglalkozás
and exists (select 1 from T_FOGLALKOZASOK_TANAROK_OSSZES where C_TANAROKID = ERTEKELES.C_ERTEKELOID)),0) ORASZAM,
ERTEKELES.C_OSZTALYZAT EVVEGIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
JOIN ( SELECT ID,C_NEV TARGYNEV FROM T_TANTARGY_OSSZES) TARGY
ON TARGY.ID = ERTEKELES.C_TANTARGYID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId and
ERTEKELES.TOROLT = 'F' and
ERTEKELES.C_TANEVID = @tanevId and
ERTEKELES.C_ERTEKELESTIPUSA = 1520 -- ÉVVÉGI
ORDER BY TANULOID,
TARGY.TARGYNEV
---- MULASZTÁSOK
SELECT * FROM (SELECT MULASZT.C_ORATANULOIID TANULOID,
'IGAZOLT' TIPUS, COUNT(1) ORASZAM
FROM T_TANULOMULASZTAS_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_ORATANULOIID
WHERE MULASZT.TOROLT ='F' AND
MULASZT.C_TANEVID = @tanevId and
TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId AND
MULASZT.C_IGAZOLT = 'T' AND
MULASZT.C_TIPUS != 1498
GROUP BY MULASZT.C_ORATANULOIID
UNION
SELECT MULASZT.C_ORATANULOIID TANULOID,
'IGAZOLATLAN' TIPUS,
COUNT(1) ORASZAM
FROM T_TANULOMULASZTAS_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_ORATANULOIID
WHERE MULASZT.TOROLT ='F' AND
MULASZT.C_TANEVID = @tanevId and
TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId AND
MULASZT.C_IGAZOLT = 'F' AND
MULASZT.C_TIPUS != 1498
GROUP BY MULASZT.C_ORATANULOIID
) ORAK
ORDER BY ORAK.TANULOID,
ORAK.TIPUS DESC
------ MULASZTÁSOK ÖSSZEGZÉS
SELECT distinct TANULO.ID TANULOID,
isnull((SELECT COUNT(1) ORASZAM FROM T_TANULOMULASZTAS_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_ORATANULOIID
WHERE MULASZT.TOROLT ='F' AND
MULASZT.C_TANEVID = @tanevId and
TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId AND
MULASZT.C_IGAZOLT = 'T' and
MULASZT.C_ORATANULOIID = MU.C_ORATANULOIID AND
MULASZT.C_TIPUS != 1498
GROUP BY MULASZT.C_ORATANULOIID
),0) IGAZOLT,
isnull((SELECT COUNT(1) ORASZAM FROM T_TANULOMULASZTAS_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_ORATANULOIID
WHERE MULASZT.TOROLT ='F' AND
MULASZT.C_TANEVID = @tanevId and
TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId AND
MULASZT.C_IGAZOLT = 'F' and
MULASZT.C_ORATANULOIID = MU.C_ORATANULOIID AND
MULASZT.C_TIPUS != 1498
GROUP BY MULASZT.C_ORATANULOIID
),0) IGAZOLATLAN,
isnull((SELECT COUNT(1) ORASZAM FROM T_TANULOMULASZTAS_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_ORATANULOIID
WHERE MULASZT.TOROLT ='F' AND
MULASZT.C_TANEVID = @tanevId and
TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId and
MULASZT.C_ORATANULOIID = MU.C_ORATANULOIID AND
MULASZT.C_TIPUS != 1498
GROUP BY MULASZT.C_ORATANULOIID
),0) SZUMMA
from T_TANULO_OSSZES TANULO
left join T_TANULOMULASZTAS_OSSZES MU
on MU.C_ORATANULOIID = TANULO.ID
left join (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = TANULO.ID
where TANULO.TOROLT = 'F' AND
TANULO.C_ALTANEVID = @tanevId and
TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
ORDER BY TANULO.ID
-- TANTÁRGYI MENTESSÉGEK
SELECT MENTESSEG.C_TANULOID TANULOID,
TARGY.TARGYNEV, MENTESSEG.C_MENTESSEGOKA MENTESSEGOKA
FROM T_TANULOMENTESSEG_OSSZES MENTESSEG
JOIN (SELECT ID, C_NEV TARGYNEV FROM T_TANTARGY_OSSZES WHERE TOROLT='F' ) TARGY
ON TARGY.ID = MENTESSEG.C_TANTARGYID
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MENTESSEG.C_TANULOID
WHERE MENTESSEG.TOROLT = 'F' AND
MENTESSEG.C_TANEVID = @tanevId and
TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
ORDER BY MENTESSEG.C_TANULOID,
TARGY.TARGYNEV
---------- BEJEGYZÉSEK
SELECT T_TANULOESEMENY_OSSZES.C_TANULOID TANULOID,
C_TARTALOM BEJEGYZES, C_TIPUS TIPUS
FROM T_TANULOESEMENY_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F' and
T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and
(T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_TANULOESEMENY_OSSZES.C_TANULOID
WHERE T_TANULOESEMENY_OSSZES.TOROLT='F' AND
T_TANULOESEMENY_OSSZES.C_TANEVID = @tanevId and
TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId AND
T_TANULOESEMENY_OSSZES.C_TIPUS = 1548 AND
T_TANULOESEMENY_OSSZES.C_TIPUS != 1534
ORDER BY T_TANULOESEMENY_OSSZES.C_TANULOID
END
GO

View file

@ -0,0 +1,74 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetFaliujsagBejegyzesek]') IS NOT NULL BEGIN
DROP PROCEDURE [dbo].[sp_GetFaliujsagBejegyzesek]
END
GO
-- =============================================
-- Author: Kelemen Attila
-- Create date: 2016. 03. 06.
-- Description: Felhasználóhoz tartozó faliújságbejegyzések és tanévrendje események lekérdezése
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetFaliujsagBejegyzesek]
@userID int,
@date DateTime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
select T_FALIUJSAGBEJEGYZES.ID,
T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGKEZDETE Erv_kezd,
T_FALIUJSAGBEJEGYZES.C_CIM Cim,
T_FALIUJSAGBEJEGYZES.C_BEJEGYZES Szoveg,
T_FELHASZNALO.C_NYOMTATASINEV Bejegyzo,
T_FELHASZNALO.C_PROFILKEP ProfilKep,
Statusz.StatuszID Munkakor
from T_FALIUJSAGBEJEGYZES
inner join T_FELHASZNALO ON T_FALIUJSAGBEJEGYZES.C_BEJEGYZOID = T_FELHASZNALO.ID
left join
(select C_ALKALMAZOTTID userID, max(T_MUNKAUGYIADATOK.C_MUNKAKORTIPUSA) StatuszID from T_MUNKAUGYIADATOK
WHERE T_MUNKAUGYIADATOK.TOROLT='F' Group by C_ALKALMAZOTTID) Statusz
on Statusz.userID = T_FELHASZNALO.ID
left join T_CIMZETT_FALIUJSAGBEJEGYZES on T_FALIUJSAGBEJEGYZES.ID=T_CIMZETT_FALIUJSAGBEJEGYZES.C_FALIUJSAGBEJEGYZESID
WHERE (T_FALIUJSAGBEJEGYZES.C_GLOBALIS='T' OR T_CIMZETT_FALIUJSAGBEJEGYZES.C_CIMZETTID = @userID)
AND T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGKEZDETE <= @date
AND (T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGVEGE IS NULL OR T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGVEGE >= @date)
AND T_FALIUJSAGBEJEGYZES.TOROLT='F'
UNION
SELECT T_FALIUJSAGBEJEGYZES.ID,
T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGKEZDETE Erv_kezd,
T_FALIUJSAGBEJEGYZES.C_CIM Cim,
T_FALIUJSAGBEJEGYZES.C_BEJEGYZES Szoveg,
T_FELHASZNALO.C_NYOMTATASINEV Bejegyzo,
T_FELHASZNALO.C_PROFILKEP ProfilKep,
Statusz.StatuszID Munkakor
FROM T_FALIUJSAGBEJEGYZES
inner join T_FELHASZNALO ON T_FALIUJSAGBEJEGYZES.C_BEJEGYZOID = T_FELHASZNALO.ID
left join
(select C_ALKALMAZOTTID userID, max(T_MUNKAUGYIADATOK.C_MUNKAKORTIPUSA) StatuszID from T_MUNKAUGYIADATOK
WHERE T_MUNKAUGYIADATOK.TOROLT='F' Group by C_ALKALMAZOTTID) Statusz
on Statusz.userID = T_FELHASZNALO.ID
WHERE
EXISTS (select 1 from T_TANULOCSOPORT
inner join T_OSZTALYCSOPORT_FALIUJSAGBEJE on T_TANULOCSOPORT.C_OSZTALYCSOPORTID = T_OSZTALYCSOPORT_FALIUJSAGBEJE.C_OSZTALYCSOPORTID
where T_TANULOCSOPORT.TOROLT ='F'
AND T_TANULOCSOPORT.C_TANULOID = @userID
AND T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
AND (T_TANULOCSOPORT.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())
AND T_OSZTALYCSOPORT_FALIUJSAGBEJE.C_FALIUJSAGBEJEGYZESID = T_FALIUJSAGBEJEGYZES.ID
)
AND T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGKEZDETE <= @date
AND (T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGVEGE IS NULL OR T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGVEGE >= @date)
AND T_FALIUJSAGBEJEGYZES.TOROLT='F'
ORDER BY Erv_kezd DESC
END

View file

@ -0,0 +1,503 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetFeleviErtesito]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetFeleviErtesito]
END
GO
-- =============================================
-- Description: Félévi értesítõ nyomtatvány.
-- =============================================
CREATE PROCEDURE sp_GetFeleviErtesito
@osztalyId int,
@TanevId int,
@ElmeletGyakorlat bit=0
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- fejléc
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM IntezmenyIranyitoszam,
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
T_INTEZMENYADATOK_OSSZES.C_CIME IntezmenyCime,
T_INTEZMENYADATOK_OSSZES.C_OMKOD OMKod,
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
T_TANEV_OSSZES.C_NEV TANEV,
(SELECT OFO.C_NYOMTATASINEV FROM T_OSZTALY_OSSZES
JOIN T_FELHASZNALO_OSSZES OFO
ON OFO.ID = T_OSZTALY_OSSZES.C_OSZTALYFONOKID
WHERE T_OSZTALY_OSSZES.ID=@osztalyId
and T_OSZTALY_OSSZES.TOROLT = 'F') OSZTALYFONOK,
(SELECT to2.C_NEV FROM T_OSZTALYCSOPORT_OSSZES to2 WHERE ID = @osztalyId and TOROLT = 'F') OSZTALYNEV,
Getdate() Datum
FROM T_INTEZMENYADATOK_OSSZES
inner join T_TANEV_OSSZES
on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID and T_TANEV_OSSZES.TOROLT = 'F'
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
and T_TANEV_OSSZES.ID = @TanevId
-- TANULÓK
SELECT T_FELHASZNALO_OSSZES.ID TANULOID,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TANULONEV,
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO OKTATASIAZONOSITO
FROM T_FELHASZNALO_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
WHERE T_FELHASZNALO_OSSZES.TOROLT='F'
and TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
and T_FELHASZNALO_OSSZES.C_TANEVID = @TanevId
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
-- ÉRTÉKELÉSEK
SELECT ERTEKELES.C_TANULOID TANULOID,
'MAGATARTAS' TARGY,
ERT.C_NAME FELEVIERTEKELES,
ERT.C_NAME FELJEGYZES,
1 RENDEZ
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_MAGATARTAS MAGATARTAS FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
LEFT JOIN ( SELECT DISTINCT ID, C_NAME FROM T_DICTIONARYITEMBASE) ERT ON ERT.ID=OSZTALYZAT.MAGATARTAS
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1519
AND (OSZTALYZAT.MAGATARTAS IS NOT NULL OR (LEN(ERTEKELES.C_ERTEKELESSZOVEG)>0 and ERTEKELES.C_TANTARGYID is null) ) -- FÉLÉVES
AND ERTEKELES.C_TANEVID = @TanevId
AND ERTEKELES.TOROLT='F'
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
'SZORGALOM' TARGY,
ERT.C_NAME FELEVIERTEKELES,
ERT.C_NAME FELJEGYZES,
2 RENDEZ
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_SZORGALOM SZORGALOM FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
LEFT JOIN ( SELECT DISTINCT ID, C_NAME FROM T_DICTIONARYITEMBASE) ERT ON ERT.ID=OSZTALYZAT.SZORGALOM
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1519
AND OSZTALYZAT.SZORGALOM IS NOT NULL -- FÉLÉVES
AND ERTEKELES.C_TANEVID = @TanevId
AND ERTEKELES.TOROLT='F'
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
TARGY.TARGYNEV TARGY,
ERT.C_NAME+iif(ertekelesMegjegyzes.C_TEMA is null, '', +' * '+ertekelesMegjegyzes.C_TEMA) FELEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES,
TARGY.KAT RENDEZ
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
JOIN ( SELECT ID,C_NEV TARGYNEV,C_TARGYKATEGORIA KAT FROM T_TANTARGY_OSSZES where TOROLT = 'F') TARGY
ON TARGY.ID = ERTEKELES.C_TANTARGYID
LEFT JOIN ( SELECT DISTINCT ID, C_NAME FROM T_DICTIONARYITEMBASE) ERT ON ERT.ID=ERTEKELES.C_OSZTALYZAT
left join T_OSZTALYZATERTEKELES ertekelesMegjegyzes on ertekelesMegjegyzes.ID=ertekeles.Id
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND TARGY.KAT != 1248 --Osztályfőnöki nem jelenítődik meg
AND ERTEKELES.C_ERTEKELESTIPUSA = 1519 -- FÉLÉVES
AND ERTEKELES.C_TANEVID = @TanevId
AND ERTEKELES.TOROLT='F'
ORDER BY TANULOID, RENDEZ
/*
SELECT ERTEKELES.C_TANULOID TANULOID,
'MAGATARTAS' TARGY,
d.C_NAME FELEVIERTEKELES,
d.C_NAME++iif(ertekeles.c_ertekelesszoveg is null, '', +' - '+ertekeles.c_ertekelesszoveg) FELJEGYZES,
1 Rendez
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_MAGATARTAS MAGATARTAS FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
inner join (select distinct id, c_name from T_DICTIONARYITEMBASE) d on d.id=OSZTALYZAT.MAGATARTAS
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1519
AND OSZTALYZAT.MAGATARTAS IS NOT NULL -- FÉLÉVES
AND ERTEKELES.C_TANEVID = @TanevId
AND ERTEKELES.TOROLT='F'
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
'SZORGALOM' TARGY,
d.C_NAME FELEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES,
2 Rendez
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_SZORGALOM SZORGALOM FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
inner join (select distinct id, c_name from T_DICTIONARYITEMBASE) d on d.id=OSZTALYZAT.szorgalom
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1519
AND OSZTALYZAT.SZORGALOM IS NOT NULL -- FÉLÉVES
AND ERTEKELES.C_TANEVID = @TanevId
AND ERTEKELES.TOROLT='F'
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
TARGY.TARGYNEV TARGY,
d.C_NAME+iif(ertekelesMegjegyzes.C_TEMA is null, '', +' * '+ertekelesMegjegyzes.C_TEMA) FELEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES,
TARGY.KAT Rendez
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
JOIN ( SELECT ID,C_NEV TARGYNEV,C_TARGYKATEGORIA KAT FROM T_TANTARGY_OSSZES where TOROLT = 'F') TARGY
ON TARGY.ID = ERTEKELES.C_TANTARGYID
inner join (select distinct id, c_name from T_DICTIONARYITEMBASE) d on d.id=ERTEKELES.C_OSZTALYZAT
left join T_OSZTALYZATERTEKELES ertekelesMegjegyzes on ertekelesMegjegyzes.ID=ertekeles.Id
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND TARGY.KAT != 1248 --Osztályfőnöki nem jelenítődik meg
AND ERTEKELES.C_ERTEKELESTIPUSA = 1519 -- FÉLÉVES
AND ERTEKELES.C_TANEVID = @TanevId
AND ERTEKELES.TOROLT='F'
ORDER BY TANULOID, Rendez
*/
-- MULASZTÁSOK
declare @tanulok table (Tanulo int)
insert into @tanulok
select c_tanuloid from t_tanulocsoport where torolt='F' and c_osztalycsoportid=@osztalyId
IF @ElmeletGyakorlat=0
BEGIN
select * from (select Tanulok.Tanulo TanuloId, 'IGAZOLT' Tipus, isnull(Igazolt.Osszes, 0)+isnull(IgazoltElmeletKeses.Osszes, 0)+isnull(IgazoltGyakorlatKeses.Osszes, 0) Oraszam from @tanulok Tanulok
left join (
select c_oratanuloiid Tanulo, count(tm.id) Osszes from t_tanulomulasztas tm
inner join T_TANITASIORA tao on tao.id=tm.C_TANITASIORAKID
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
where tm.torolt='F' and tm.c_igazolt='T' and tm.c_tanevId=@tanevId and tm.c_tipus=1500
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) Igazolt on Igazolt.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/45 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='F'
where tm.torolt='F' and tm.c_igazolt='T' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazoltElmeletKeses on IgazoltElmeletKeses.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/60 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='T'
where tm.torolt='F' and tm.c_igazolt='T' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazoltGyakorlatKeses on IgazoltGyakorlatKeses.Tanulo=Tanulok.Tanulo
union
select Tanulok.Tanulo TanuloId, 'IGAZOLATLAN' Tipus, isnull(Igazolatlan.Osszes, 0)+isnull(IgazolatlanElmeletKeses.Osszes, 0)+isnull(IgazolatlatGyakorlatKeses.Osszes, 0) Oraszam from @tanulok Tanulok
left join (
select c_oratanuloiid Tanulo, count(tm.id) Osszes from t_tanulomulasztas tm
inner join T_TANITASIORA tao on tao.id=tm.C_TANITASIORAKID
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_tanevId=@tanevId and tm.c_tipus=1500
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) Igazolatlan on Igazolatlan.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/45 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='F'
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazolatlanElmeletKeses on IgazolatlanElmeletKeses.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/60 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='T'
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazolatlatGyakorlatKeses on IgazolatlatGyakorlatKeses.Tanulo=Tanulok.Tanulo
) Ossz
ORDER BY TANULOID, TIPUS DESC
/*SELECT * FROM (
SELECT MULASZT.C_ORATANULOIID TANULOID,
'IGAZOLT' TIPUS,
COUNT(1) ORASZAM
FROM T_TANULOMULASZTAS_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_ORATANULOIID
WHERE MULASZT.TOROLT ='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND MULASZT.C_IGAZOLT = 'T'
AND MULASZT.C_TIPUS = 1500
AND MULASZT.C_TANEVID = @TanevId
GROUP BY MULASZT.C_ORATANULOIID
UNION
SELECT MULASZT.C_ORATANULOIID TANULOID,
'IGAZOLATLAN' TIPUS,
COUNT(1) ORASZAM
FROM T_TANULOMULASZTAS_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_ORATANULOIID
WHERE MULASZT.TOROLT ='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND MULASZT.C_IGAZOLT = 'F'
AND MULASZT.C_TIPUS = 1500
AND MULASZT.C_TANEVID = @TanevId
GROUP BY MULASZT.C_ORATANULOIID) ORAK
ORDER BY ORAK.TANULOID, ORAK.TIPUS DESC
*/
END
ELSE
BEGIN
select * from (select Elmeletgyakorlat.*, Elmelet.Elmelet, Gyakorlat.Gyakorlat from
(select Tanulok.Tanulo TanuloId, 'IGAZOLT' Tipus, isnull(Igazolt.Osszes, 0)+isnull(IgazoltElmeletKeses.Osszes, 0)+isnull(IgazoltGyakorlatKeses.Osszes, 0) Oraszam from @tanulok Tanulok
left join (
select c_oratanuloiid Tanulo, count(tm.id) Osszes from t_tanulomulasztas tm
inner join T_TANITASIORA tao on tao.id=tm.C_TANITASIORAKID
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
where tm.torolt='F' and tm.c_igazolt='T' and tm.c_tanevId=@tanevId and tm.c_tipus=1500
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) Igazolt on Igazolt.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/45 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='F'
where tm.torolt='F' and tm.c_igazolt='T' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazoltElmeletKeses on IgazoltElmeletKeses.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/60 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='T'
where tm.torolt='F' and tm.c_igazolt='T' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazoltGyakorlatKeses on IgazoltGyakorlatKeses.Tanulo=Tanulok.Tanulo
union
select Tanulok.Tanulo TanuloId, 'IGAZOLATLAN' Tipus, isnull(Igazolatlan.Osszes, 0)+isnull(IgazolatlanElmeletKeses.Osszes, 0)+isnull(IgazolatlanGyakorlatKeses.Osszes, 0) Oraszam from @tanulok Tanulok
left join (
select c_oratanuloiid Tanulo, count(tm.id) Osszes from t_tanulomulasztas tm
inner join T_TANITASIORA tao on tao.id=tm.C_TANITASIORAKID
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_tanevId=@tanevId and tm.c_tipus=1500
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) Igazolatlan on Igazolatlan.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/45 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='F'
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazolatlanElmeletKeses on IgazolatlanElmeletKeses.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/60 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='T'
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazolatlanGyakorlatKeses on IgazolatlanGyakorlatKeses.Tanulo=Tanulok.Tanulo
)Elmeletgyakorlat
left join (
select Tanulok.Tanulo TanuloId, 'IGAZOLT' Tipus, isnull(Igazolt.Osszes, 0)+isnull(IgazoltElmeletKeses.Osszes,0) Elmelet from @tanulok Tanulok
left join (
select c_oratanuloiid Tanulo, count(tm.id) Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='F'
where tm.torolt='F' and tm.c_igazolt='T' and tm.c_tanevId=@tanevId and tm.c_tipus=1500
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) Igazolt on Igazolt.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/45 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='F'
where tm.torolt='F' and tm.c_igazolt='T' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazoltElmeletKeses on IgazoltElmeletKeses.Tanulo=Tanulok.Tanulo
union
select Tanulok.Tanulo TanuloId, 'IGAZOLATLAN' Tipus, isnull(Igazolatlan.Osszes, 0)+isnull(IgazolatlanElmeletKeses.Osszes,0) Elmelet from @tanulok Tanulok
left join (
select c_oratanuloiid Tanulo, count(tm.id) Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='F'
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_tanevId=@tanevId and tm.c_tipus=1500
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) Igazolatlan on Igazolatlan.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/45 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='F'
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazolatlanElmeletKeses on IgazolatlanElmeletKeses.Tanulo=Tanulok.Tanulo
)Elmelet on Elmelet.Tanuloid=Elmeletgyakorlat.TanuloId and Elmelet.Tipus=Elmeletgyakorlat.Tipus
left join (
select Tanulok.Tanulo TanuloId, 'IGAZOLT' Tipus, isnull(Igazolt.Osszes, 0)+isnull(IgazoltGyakorlatKeses.Osszes,0) Gyakorlat from @tanulok Tanulok
left join (
select c_oratanuloiid Tanulo, count(tm.id) Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='T'
where tm.torolt='F' and tm.c_igazolt='T' and tm.c_tanevId=@tanevId and tm.c_tipus=1500
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) Igazolt on Igazolt.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/60 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='T'
where tm.torolt='F' and tm.c_igazolt='T' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazoltGyakorlatKeses on IgazoltGyakorlatKeses.Tanulo=Tanulok.Tanulo
union
select Tanulok.Tanulo TanuloId, 'IGAZOLATLAN' Tipus, isnull(Igazolatlan.Osszes, 0)+isnull(IgazolatlanGyakorlatKeses.Osszes,0) Elmelet from @tanulok Tanulok
left join (
select c_oratanuloiid Tanulo, count(tm.id) Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='T'
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_tanevId=@tanevId and tm.c_tipus=1500
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) Igazolatlan on Igazolatlan.Tanulo=Tanulok.Tanulo
left join (
select c_oratanuloiid Tanulo, sum(c_kesespercben)/60 Osszes from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid
--inner join t_foglalkozas fog on fog.id=tao.C_FOGLALKOZASID and fog.C_FOGLALKOZASTIPUSA=1339
inner join t_tantargy t on t.id=tao.c_tantargyid and t.c_gyakorlati='T'
where tm.torolt='F' and tm.c_igazolt='F' and tm.c_tanevId=@tanevId and tm.c_tipus=1499
and ((tao.C_OSZTALYCSOPORTID in (select id from t_osztaly)) or (tao.c_osztalycsoportid in (select id from t_csoport where C_TIPUSA=1034)))
group by c_oratanuloiid
) IgazolatlanGyakorlatKeses on IgazolatlanGyakorlatKeses.Tanulo=Tanulok.Tanulo
)Gyakorlat on Gyakorlat.Tanuloid=Elmeletgyakorlat.TanuloId and Gyakorlat.Tipus=Elmeletgyakorlat.Tipus
)Ossz
ORDER BY TANULOID, TIPUS DESC
END
-- TANTÁRGYI MENTESSÉGEK
SELECT distinct MENTESSEG.C_TANULOID TANULOID,
TARGY.TARGYNEV,
MENTESSEG.C_MENTESSEGOKA MENTESSEGOKA
FROM T_TANULOMENTESSEG_OSSZES MENTESSEG
JOIN (SELECT ID, C_NEV TARGYNEV FROM T_TANTARGY_OSSZES WHERE TOROLT='F') TARGY
ON TARGY.ID = MENTESSEG.C_TANTARGYID
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MENTESSEG.C_TANULOID
WHERE MENTESSEG.TOROLT = 'F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND MENTESSEG.C_TANEVID = @TanevId
ORDER BY MENTESSEG.C_TANULOID, TARGY.TARGYNEV
-- BEJEGYZÉSEK
SELECT T_TANULOESEMENY_OSSZES.C_TANULOID TANULOID,
C_TARTALOM BEJEGYZES,
C_TIPUS TIPUS
FROM T_TANULOESEMENY_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_TANULOESEMENY_OSSZES.C_TANULOID
WHERE T_TANULOESEMENY_OSSZES.TOROLT='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND T_TANULOESEMENY_OSSZES.C_TIPUS = 1547
AND T_TANULOESEMENY_OSSZES.C_TIPUS != 1534
AND T_TANULOESEMENY_OSSZES.C_TANEVID = @TanevId
ORDER BY T_TANULOESEMENY_OSSZES.C_TANULOID
END
GO

View file

@ -0,0 +1,57 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetFelhasznaloErintettOsztalyai]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetFelhasznaloErintettOsztalyai]
END
GO
-- =============================================
-- Description: <Felhasználóhoz kötheto osztályok/csoportok és egyéb osztályok/csoportok>
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetFelhasznaloErintettOsztalyai]
@felhasznaloId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
osztalyCsoport.ID ID,
osztalyCsoport.C_NEV Nev,
'1' Tipus,
NULL CsoportTipusa,
osztalyCsoport.C_EVFOLYAMTIPUSA Evfolyam
FROM
T_OSZTALYCSOPORT osztalyCsoport
INNER JOIN T_OSZTALY osztaly
ON osztaly.ID = osztalyCsoport.ID
WHERE
osztalyCsoport.TOROLT = 'F' AND
(osztaly.C_OSZTALYFONOKID = @felhasznaloId OR osztaly.C_OFOHELYETTESID = @felhasznaloId)
UNION ALL
SELECT
osztalyCsoport.ID ID,
osztalyCsoport.C_NEV Nev,
'1' Tipus,
csoport.C_TIPUSA CsoportTipusa,
osztalyCsoport.C_EVFOLYAMTIPUSA Evfolyam
FROM
T_OSZTALYCSOPORT osztalyCsoport
INNER JOIN T_CSOPORT csoport
ON csoport.ID = osztalyCsoport.ID
WHERE
osztalyCsoport.TOROLT = 'F' AND
csoport.C_CSOPORTVEZETOID = @felhasznaloId
ORDER BY
CsoportTipusa, Evfolyam
END

View file

@ -0,0 +1,48 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetFelhasznaloErintettTargyai]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetFelhasznaloErintettTargyai]
END
GO
-- =============================================
-- Author: <Hoffmann Zsolt>
-- Create date: <2016. 03. 03.>
-- Description: <Felhasználóhoz kötheto tantárgyak és egyéb tantárgyak>
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetFelhasznaloErintettTargyai]
@felhasznaloId int
AS
BEGIN
SET NOCOUNT ON;
with q (ID,Nev,Tipus) as
(select
T_TANTARGY.ID,
T_TANTARGY.C_NEV Nev,
'1' Tipus
from T_TANTARGY
inner join T_FOGLALKOZAS on T_FOGLALKOZAS.C_TANTARGYID = T_TANTARGY.ID
left join T_FOGLALKOZASOK_TANAROK on T_FOGLALKOZASOK_TANAROK.C_FOGLALKOZASOKID = T_FOGLALKOZAS.ID
where T_TANTARGY.TOROLT = 'F' and
T_TANTARGY.C_FOTARGYID is null and
T_FOGLALKOZASOK_TANAROK.C_TANAROKID = @felhasznaloId)
select ID,Nev,tipus from q
union
select distinct
T_TANTARGY.ID,
T_TANTARGY.C_NEV Nev,
'3' Tipus
from T_TANTARGY
inner join T_FOGLALKOZAS on T_FOGLALKOZAS.C_TANTARGYID = T_TANTARGY.ID and T_FOGLALKOZAS.TOROLT = 'F'
inner join T_OSZTALYCSOPORT on T_OSZTALYCSOPORT.ID = T_FOGLALKOZAS.C_OSZTALYCSOPORTID and T_OSZTALYCSOPORT.TOROLT = 'F'
inner join T_OSZTALY on T_OSZTALY.ID = T_OSZTALYCSOPORT.ID and T_OSZTALY.TOROLT = 'F'
where T_TANTARGY.TOROLT = 'F' and
(T_OSZTALY.C_OSZTALYFONOKID = @felhasznaloId or T_OSZTALY.C_OFOHELYETTESID = @felhasznaloId) and
T_TANTARGY.ID not in (select ID from q)
END

View file

@ -0,0 +1,45 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetFelhasznaloFoglalkozasokErtekelesekhez]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetFelhasznaloFoglalkozasokErtekelesekhez]
END
GO
-- =============================================
-- Description: <Felhasználóhoz köthetõ foglalkozások az értékelések szûréséhez>
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetFelhasznaloFoglalkozasokErtekelesekhez]
@pTanarId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
foglalkozas.ID ID,
osztalyCsoport.C_NEV + ' - ' + tantargy.C_Nev Nev,
osztalyCsoport.C_EVFOLYAMTIPUSA Evfolyam
FROM
T_FOGLALKOZAS foglalkozas
LEFT JOIN T_OSZTALYCSOPORT osztalyCsoport
ON osztalyCsoport.ID = foglalkozas.C_OSZTALYCSOPORTID
LEFT JOIN T_TANTARGY tantargy
ON tantargy.ID = foglalkozas.C_TANTARGYID
LEFT JOIN T_FOGLALKOZASOK_TANAROK foglalkozasokTanarok
ON foglalkozasokTanarok.C_FOGLALKOZASOKID = foglalkozas.ID
LEFT JOIN T_FELHASZNALO felhasznalo
ON felhasznalo.ID = foglalkozasokTanarok.C_TANAROKID
WHERE
foglalkozas.TOROLT = 'F' AND
foglalkozasokTanarok.C_TANAROKID = @pTanarId
ORDER BY
Evfolyam
END

View file

@ -0,0 +1,96 @@
-- =============================================
-- Author: Sólyom Péter
-- Create date: 2016.04.05.
-- Description: Lekérdezi a felhasználóhoz tartozó jogokat (osztályfőnök, csoportvezető, stb.)
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('dbo.sp_GetFelhasznaloJogok') IS NOT NULL BEGIN
DROP PROCEDURE dbo.sp_GetFelhasznaloJogok
END
GO
CREATE PROCEDURE sp_GetFelhasznaloJogok
@FELHASZNALOID INT,
@SZEREPKORTIPUS INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @TEMPJOGOK TABLE ( JOG nvarchar(100))
-- SZEREPKÖR JOGOK
IF @SZEREPKORTIPUS = 1757
BEGIN
INSERT INTO @TEMPJOGOK (JOG) VALUES (N'Fenntarto')
END
ELSE IF @SZEREPKORTIPUS = 1758
BEGIN
INSERT INTO @TEMPJOGOK (JOG) VALUES (N'Adminisztrator')
END
ELSE IF @SZEREPKORTIPUS = 1759
BEGIN
INSERT INTO @TEMPJOGOK (JOG) VALUES (N'Penzugy')
END ELSE IF @SZEREPKORTIPUS = 1760
BEGIN
INSERT INTO @TEMPJOGOK (JOG) VALUES (N'Naplo')
END ELSE IF @SZEREPKORTIPUS = 1761
BEGIN
INSERT INTO @TEMPJOGOK (JOG) VALUES (N'Ellenorzo')
END
-- RENDSZERGAZDA VAGY SZUPEROSZTÁLYFŐNÖK
INSERT INTO @TEMPJOGOK
SELECT DISTINCT C_JOG JOG
FROM T_JOGOSULTSAG
JOIN T_JOGOSULTSAG_FELHASZNALO FELHASZNALOJOG ON FELHASZNALOJOG.C_JOGOSULTSAGID = T_JOGOSULTSAG.ID
WHERE T_JOGOSULTSAG.TOROLT = 'F'
AND FELHASZNALOJOG.C_FELHASZNALOID = @FELHASZNALOID
AND T_JOGOSULTSAG.C_SZEREPKORTIPUS = @SZEREPKORTIPUS
UNION
-- OSZTÁLYFŐNÖK
SELECT DISTINCT 'Osztalyfonok'
FROM T_OSZTALY OSZT
WHERE OSZT.C_OSZTALYFONOKID = @FELHASZNALOID OR OSZT.C_OFOHELYETTESID = @FELHASZNALOID AND OSZT.TOROLT ='F'
-- ÉVFOLYAMFELELŐS
UNION
SELECT DISTINCT 'Evfolyamfelelos'
FROM T_OSZTALY OSZT
WHERE OSZT.C_OFOHELYETTESID = @FELHASZNALOID AND OSZT.TOROLT ='F'
-- CSOPORTVEZETŐ
UNION
SELECT DISTINCT 'CsoportVezeto'
FROM T_CSOPORT CSOP
WHERE CSOP.C_CSOPORTVEZETOID = @FELHASZNALOID AND CSOP.TOROLT = 'F'
-- SZUPEROSZTÁLYFŐNÖK (IGAZGATÓ, ÉVFOLYAMFELELŐS)
UNION
SELECT DISTINCT 'SzuperOsztalyfonok'
FROM T_MUNKAUGYIADATOK MUNKAUGY
WHERE MUNKAUGY.C_ALKALMAZOTTID = @FELHASZNALOID
AND MUNKAUGY.TOROLT='F'
AND MUNKAUGY.C_MUNKAKORTIPUSA IN (1762,1763) -- IGAZGATÓ VAGY IGAZGATÓ HELYETTES
UNION -- TANÁR
SELECT DISTINCT 'Tanar'
FROM T_TANARITANTARGY TT
WHERE TT.C_ALKALMAZOTTID = @FELHASZNALOID AND TT.TOROLT = 'F'
UNION
SELECT DISTINCT 'Tanar'
FROM T_FOGLALKOZAS FOGL
JOIN T_FOGLALKOZASOK_TANAROK FT ON FT.C_FOGLALKOZASOKID = FOGL.ID
WHERE FT.C_TANAROKID = @FELHASZNALOID AND FOGL.TOROLT = 'F'
UNION
SELECT 'Tanulo'
FROM T_TANULO tt
WHERE ID= @FELHASZNALOID
SELECT t.JOG
FROM @TEMPJOGOK T
JOIN T_JOGOSULTSAG JOGOS ON JOGOS.C_JOG = T.JOG
WHERE JOGOS.C_SZEREPKORTIPUS = @SZEREPKORTIPUS
END
GO

View file

@ -0,0 +1,46 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetFelhasznaloOsztalyaiByFoglalkozas]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetFelhasznaloOsztalyaiByFoglalkozas]
END
GO
-- =============================================
-- Description: <Felhasználóhoz köthetõ osztályok foglalkozások alapján az értékelések szûréséhez>
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetFelhasznaloOsztalyaiByFoglalkozas]
@felhasznaloId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
osztalyCsoport.ID ID,
osztalyCsoport.C_NEV Nev,
'1' Tipus,
osztalyCsoport.C_EVFOLYAMTIPUSA Evfolyam
FROM
T_FOGLALKOZAS foglalkozas
LEFT JOIN T_OSZTALYCSOPORT osztalyCsoport
ON osztalyCsoport.ID = foglalkozas.C_OSZTALYCSOPORTID
LEFT JOIN T_TANTARGY tantargy
ON tantargy.ID = foglalkozas.C_TANTARGYID
LEFT JOIN T_FOGLALKOZASOK_TANAROK foglalkozasokTanarok
ON foglalkozasokTanarok.C_FOGLALKOZASOKID = foglalkozas.ID
LEFT JOIN T_FELHASZNALO felhasznalo
ON felhasznalo.ID = foglalkozasokTanarok.C_TANAROKID
WHERE
foglalkozas.TOROLT = 'F' AND
foglalkozasokTanarok.C_TANAROKID = @felhasznaloId
ORDER BY
Evfolyam
END

View file

@ -0,0 +1,46 @@
GO
/****** Object: StoredProcedure [dbo].[sp_GetFenntartoIntezmenyei] Script Date: 2016.05.20. 16:13:17 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[sp_GetFenntartoIntezmenyei]', 'P') IS NOT NULL
BEGIN
DROP PROCEDURE [sp_GetFenntartoIntezmenyei]
END
GO
-- =============================================
-- Author: <Kelemen Attila>
-- Create date: <2016.05.18.>
-- Description: <Belépett fenntartó ID-je alapján visszaadja az intézményeket>
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetFenntartoIntezmenyei]
@fenntartoID int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT DISTINCT
Adatok.C_INTEZMENYID ID,
Adatok.C_NEV+ ' (' + Tanev.C_NEV + ')' Nev,
ISNULL(Intezmeny.C_FENNTARTOAZONOSITO, '0') FenntartoID,
Intezmeny.C_AZONOSITO IntezmenyAzonosito,
ISNULL(Adatszolgaltatas.C_VEGLEGESTTF, 'F') VeglegesTTF,
ISNULL(Adatszolgaltatas.C_ELFOGADOTTTTF, 'F') ElfogadottTTF,
ISNULL(Adatszolgaltatas.C_VEGLEGESLETSZAM, 'F') VeglegesLetszam,
ISNULL(Adatszolgaltatas.C_ELFOGADOTTLETSZAM, 'F') ElfogadottLetszam
FROM
T_INTEZMENY Intezmeny
INNER JOIN T_INTEZMENYADATOK Adatok ON Intezmeny.ID = Adatok.C_INTEZMENYID AND Adatok.TOROLT = 'F'
INNER JOIN T_INTEZMENYADATSZOLGALTATAS Adatszolgaltatas ON Intezmeny.ID = Adatszolgaltatas.C_INTEZMENYID
AND Adatszolgaltatas.C_TANEVID = Adatok.C_TANEVID AND Adatszolgaltatas.TOROLT = 'F'
INNER JOIN T_TANEV Tanev ON Tanev.ID = Adatok.C_TANEVID AND Tanev.TOROLT = 'F'
WHERE
Intezmeny.TOROLT='F'
AND Intezmeny.C_FENNTARTOAZONOSITO = @fenntartoID
ORDER BY Nev ASC
END

View file

@ -0,0 +1,49 @@
-- =============================================
-- Description: <Előszedjük az ePénztárca tételeket szűrve>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetFilteredEPenztarcaTetelListForGrid]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetFilteredEPenztarcaTetelListForGrid]
END
GO
CREATE PROCEDURE [dbo].[sp_GetFilteredEPenztarcaTetelListForGrid]
@pIntezmenyId INT,
@pTanevId INT,
@pDatumTol DATE,
@pDatumIg DATE,
@pJogcim NVARCHAR(255),
@pStatusz INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
EPenztarcaTetel.ID AS ID,
EPenztarcaTetel.C_JOGCIME AS Jogcim,
EPenztarcaTetel.C_DATUMA AS Datum,
EPenztarcaTetel.C_OSSZEGE AS Osszeg,
EPenztarcaTetel.C_STATUSZA AS Statusz
FROM
[T_EPENZTARCATETEL] AS EPenztarcaTetel
WHERE
EPenztarcaTetel.C_INTEZMENYID = @pIntezmenyId AND
EPenztarcaTetel.C_TANEVID = @pTanevId AND
(@pDatumTol IS NULL OR EPenztarcaTetel.C_DATUMA >= @pDatumTol) AND
(@pDatumIg IS NULL OR EPenztarcaTetel.C_DATUMA <= @pDatumIg) AND
(@pJogcim IS NULL OR EPenztarcaTetel.C_JOGCIME LIKE '%' + @pJogcim + '%') AND
(@pStatusz IS NULL OR EPenztarcaTetel.C_STATUSZA = @pStatusz) AND
EPenztarcaTetel.TOROLT = 'F'
END
GO

View file

@ -0,0 +1,129 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetFogadooraInfo]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetFogadooraInfo]
END
GO
CREATE PROCEDURE [dbo].[sp_GetFogadooraInfo]
@alkalmazottId int,
@tanevId int
AS
BEGIN
SET NOCOUNT ON;
/*
Fejlec: Ebben szerepeljen az intézmény neve, működési hely neve,
és a feladatellátási hely oktatási-nevelési feladata, keltezés helye, napja.
*/
SELECT i.C_NEV as intezmeny, m.C_NEV as mukodesihely, d.C_NAME as oktatasiNevelesiFeladatTipus,
ISNULL(i.C_VAROS + ', ', '') + FORMAT(GETDATE(), 'yyyy. MMMM dd.', 'hu-hu') AS kelt
FROM T_INTEZMENYADATOK_OSSZES i
INNER JOIN T_MUKODESIHELY_OSSZES m ON i.C_INTEZMENYID = m.C_INTEZMENYID AND m.TOROLT = 'F'
INNER JOIN T_FELADATELLATASIHELY_OSSZES f ON m.ID = f.C_MUKODESIHELYID AND f.TOROLT = 'F'
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.id = f.C_OKTATASINEVELESIFELADATTIPUS
WHERE i.C_INTEZMENYID = (SELECT C_INTEZMENYID FROM T_FELHASZNALO WHERE ID=@alkalmazottId)
/*
Csoport: A tanár neve, ID-ja, és az általa tanított osztályok,
csoportok neve, ID-ja, illetve a nekik tanított tantárgyak neve, ID-ja.
*/
SELECT distinct ocs.Id as osztalycsoportId,ocs.C_NEV AS csoport
FROM T_FOGLALKOZAS_OSSZES f
INNER JOIN T_FOGLALKOZASOK_TANAROK_OSSZES ft ON f.ID = ft.C_FOGLALKOZASOKID
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = f.C_TANTARGYID
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.id = ft.C_TANAROKID
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = f.C_OSZTALYCSOPORTID
LEFT JOIN T_CSOPORTOK_OSZTALYOK_OSSZES cso ON cso.C_CSOPORTOKID = ocs.ID
LEFT JOIN T_OSZTALYCSOPORT_OSSZES csocs ON csocs.ID = cso.C_OSZTALYOKID
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID
INNER JOIN T_FELHASZNALO_OSSZES tn ON tn.ID = tcs.C_TANULOID
WHERE ft.C_TANAROKID = @alkalmazottId
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE())
AND F.C_TANEVID=@TANEVID
AND F.TOROLT='F'
order by csoport
SELECT distinct tn.ID as tanuloID,
tn.c_nyomtatasinev as TanuloNeve
FROM T_FOGLALKOZAS_OSSZES f
INNER JOIN T_FOGLALKOZASOK_TANAROK_OSSZES ft ON f.ID = ft.C_FOGLALKOZASOKID
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = f.C_TANTARGYID
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.id = ft.C_TANAROKID
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = f.C_OSZTALYCSOPORTID
LEFT JOIN T_CSOPORTOK_OSZTALYOK_OSSZES cso ON cso.C_CSOPORTOKID = ocs.ID
LEFT JOIN T_OSZTALYCSOPORT_OSSZES csocs ON csocs.ID = cso.C_OSZTALYOKID
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID
INNER JOIN T_FELHASZNALO_OSSZES tn ON tn.ID = tcs.C_TANULOID
WHERE ft.C_TANAROKID = @alkalmazottId
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE())
AND F.C_TANEVID=@TANEVID
AND F.TOROLT='F'
order by TanuloNeve
SELECT fh.C_NYOMTATASINEV as tanarNev, t.C_NEV as tantargyNev, ISNULL(csocs.C_NEV, ocs.C_NEV) AS osztaly, ocs.Id as osztalycsoportId,ocs.C_NEV AS csoport,
tn.ID as tanuloID, tn.C_NYOMTATASINEV as tanuloNev
FROM T_FOGLALKOZAS_OSSZES f
INNER JOIN T_FOGLALKOZASOK_TANAROK_OSSZES ft ON f.ID = ft.C_FOGLALKOZASOKID
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = f.C_TANTARGYID
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.id = ft.C_TANAROKID
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = f.C_OSZTALYCSOPORTID
LEFT JOIN T_CSOPORTOK_OSZTALYOK_OSSZES cso ON cso.C_CSOPORTOKID = ocs.ID
LEFT JOIN T_OSZTALYCSOPORT_OSSZES csocs ON csocs.ID = cso.C_OSZTALYOKID
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID
INNER JOIN T_FELHASZNALO_OSSZES tn ON tn.ID = tcs.C_TANULOID
WHERE ft.C_TANAROKID = @alkalmazottId
AND F.C_TANEVID=@TANEVID
AND F.TOROLT='F'
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE())
SELECT e.ID, tn.ID as tanuloID, tn.C_NYOMTATASINEV as tanuloNev, FORMAT(e.C_ERTEKELESDATUM, 'd', 'hu-hu') as ertekelesDatuma,
dt.C_NAME as ertekelesTipusa, dm.C_NAME as ertekelesModja, e.C_ERTEKELESSZOVEG as feljegyzes,
fh.C_NYOMTATASINEV as tanarNev, do.C_NAME as osztalyzat, ocs.ID as csoportID, ocs.C_NEV as csoportNev,
t.id as tantargyID, t.C_NEV as tantargyNev
--SELECT count(1)
FROM T_TANULOERTEKELES_OSSZES e
INNER JOIN T_OSZTALYZATERTEKELES_OSSZES oe ON e.ID = oe.ID
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = e.C_OSZTALYCSOPORTID
INNER JOIN T_FOGLALKOZAS_OSSZES f ON f.C_OSZTALYCSOPORTID = ocs.ID
INNER JOIN T_FOGLALKOZASOK_TANAROK_OSSZES ft ON f.ID = ft.C_FOGLALKOZASOKID
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = f.C_TANTARGYID and e.C_TANTARGYID = t.ID
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.id = ft.C_TANAROKID
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND tcs.C_TANULOID = e.C_TANULOID
INNER JOIN T_FELHASZNALO_OSSZES tn ON tn.ID = tcs.C_TANULOID
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dt ON dt.ID = e.C_ERTEKELESTIPUSA
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dm ON (dm.ID = oe.C_ERTEKELESMODJA AND DM.C_INTEZMENYID = OE.C_ALINTEZMENYID AND DM.C_TANEVID = OE.C_ALTANEVID)
INNER JOIN T_DICTIONARYITEMBASE_OSSZES do ON (do.ID = e.C_OSZTALYZAT AND Do.C_INTEZMENYID = E.C_INTEZMENYID AND Do.C_TANEVID = E.C_TANEVID)
WHERE ft.C_TANAROKID = @alkalmazottId
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE())
AND E.C_TANEVID=@TANEVID AND E.TOROLT='F'
UNION ALL
SELECT e.ID, tn.ID as tanuloID, tn.C_NYOMTATASINEV as tanuloNev, FORMAT(e.C_ERTEKELESDATUM, 'd', 'hu-hu') as ertekelesDatuma,
dt.C_NAME as ertekelesTipusa, null as ertekelesModja, e.C_ERTEKELESSZOVEG as feljegyzes,
fh.C_NYOMTATASINEV as tanarNev, dm.C_NAME + ', ' + ds.C_NAME as osztalyzat, ocs.ID as csoportID, ocs.C_NEV as csoportNev,
t.id as tantargyID, t.C_NEV as tantargyNev
FROM T_TANULOERTEKELES_OSSZES e
INNER JOIN T_OSZTALYFONOKIERTEKELES_OSSZES oe ON e.ID = oe.ID
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = e.C_OSZTALYCSOPORTID
INNER JOIN T_FOGLALKOZAS_OSSZES f ON f.C_OSZTALYCSOPORTID = ocs.ID
INNER JOIN T_FOGLALKOZASOK_TANAROK_OSSZES ft ON f.ID = ft.C_FOGLALKOZASOKID
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = f.C_TANTARGYID and e.C_TANTARGYID = t.ID
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.id = ft.C_TANAROKID
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND tcs.C_TANULOID = e.C_TANULOID
INNER JOIN T_FELHASZNALO_OSSZES tn ON tn.ID = tcs.C_TANULOID
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dt ON dt.ID = e.C_ERTEKELESTIPUSA
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dm ON dm.ID = oe.C_MAGATARTAS
INNER JOIN T_DICTIONARYITEMBASE_OSSZES ds ON ds.ID = oe.C_SZORGALOM
WHERE ft.C_TANAROKID = @alkalmazottId
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE())
AND E.C_TANEVID=@TANEVID AND E.TOROLT='F'
END
GO

View file

@ -0,0 +1,80 @@
-- =============================================
-- Description: Foglalkozások egész évben megtartandó óráinak száma.
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetFoglalkozasokMegtartandoOraSzama]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetFoglalkozasokMegtartandoOraSzama]
END
GO
CREATE PROCEDURE [dbo].[sp_GetFoglalkozasokMegtartandoOraSzama]
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
SET NOCOUNT ON;
select ID foglalkozasID, count(OraID) OraSzam from(
select t_foglalkozas_OSSZES.ID ID, T_ORARENDIORA_OSSZES.ID OraID from
T_ORARENDIORA_OSSZES
inner join t_foglalkozas_OSSZES on T_ORARENDIORA_OSSZES.C_FOGLALKOZASID = T_FOGLALKOZAS_OSSZES.ID
inner join T_NAPTARINAP_OSSZES on T_ORARENDIORA_OSSZES.C_HETNAPJA = T_NAPTARINAP_OSSZES.C_HETNAPJA
and (T_ORARENDIORA_OSSZES.C_HETIREND = T_NAPTARINAP_OSSZES.C_HETIREND OR T_ORARENDIORA_OSSZES.C_HETIREND = 1554)
INNER JOIN T_TANEV_OSSZES ON T_NAPTARINAP_OSSZES.C_TANEVID = T_TANEV_OSSZES.ID and t_foglalkozas_OSSZES.C_TANEVID = T_TANEV_OSSZES.ID
left join T_TANITASIORA_OSSZES on T_NAPTARINAP_OSSZES.C_NAPDATUMA = T_TANITASIORA_OSSZES.C_DATUM
and T_TANITASIORA_OSSZES.C_ORARENDIORAID = T_ORARENDIORA_OSSZES.ID
and T_TANITASIORA_OSSZES.C_MEGTARTOTT ='F'
and T_TANITASIORA_OSSZES.TOROLT='F'
left join T_OSZTALYCSOPORT_TANEVRENDJE on T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID = T_OSZTALYCSOPORT_TANEVRENDJE.C_OSZTALYCSOPORTID
where NOT EXISTS (Select 1 from
T_TANEVRENDJE_OSSZES
left join T_OSZTALYCSOPORT_TANEVRENDJE on t_foglalkozas_OSSZES.C_OSZTALYCSOPORTID = T_OSZTALYCSOPORT_TANEVRENDJE.C_OSZTALYCSOPORTID
WHERE T_NAPTARINAP_OSSZES.C_NAPDATUMA = T_TANEVRENDJE_OSSZES.C_DATUM
and (T_TANEVRENDJE_OSSZES.C_HETIREND = T_NAPTARINAP_OSSZES.C_HETIREND OR T_TANEVRENDJE_OSSZES.C_HETIREND = 1554)
and T_TANEVRENDJE_OSSZES.C_ORARENDINAP ='F'
and (T_TANEVRENDJE_OSSZES.C_OSSZESCSOPORTRAVONATKOZIK='T' OR T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID = T_TANEVRENDJE_OSSZES.ID
and T_TANEVRENDJE_OSSZES.TOROLT='F'
and T_NAPTARINAP_OSSZES.C_NAPDATUMA >= T_ORARENDIORA_OSSZES.C_ORAERVENYESSEGKEZDETE
and T_NAPTARINAP_OSSZES.C_NAPDATUMA <= T_ORARENDIORA_OSSZES.C_ORAERVENYESSEGVEGE
))
AND T_TANITASIORA_OSSZES.ID is null
AND T_TANEV_OSSZES.C_AKTIV = 'T' AND T_TANEV_OSSZES.TOROLT='F'
union all
select foglalkozas.ID ID, T_TANITASIORA_OSSZES.id OraID
from T_TANITASIORA_OSSZES
inner join ( select ID, C_OSZTALYCSOPORTID from t_foglalkozas_OSSZES where torolt='F' ) foglalkozas on T_TANITASIORA_OSSZES.C_FOGLALKOZASID = foglalkozas.ID
inner join T_NAPTARINAP_OSSZES on T_TANITASIORA_OSSZES.C_HETNAPJA = T_NAPTARINAP_OSSZES.C_HETNAPJA
left join T_OSZTALYCSOPORT_TANEVRENDJE on foglalkozas.C_OSZTALYCSOPORTID = T_OSZTALYCSOPORT_TANEVRENDJE.C_OSZTALYCSOPORTID
where C_ORARENDIORAID is null and T_TANITASIORA_OSSZES.TOROLT='F'
and
NOT EXISTS (Select 1 from
T_TANEVRENDJE_OSSZES
left join T_OSZTALYCSOPORT_TANEVRENDJE on foglalkozas.C_OSZTALYCSOPORTID = T_OSZTALYCSOPORT_TANEVRENDJE.C_OSZTALYCSOPORTID
WHERE T_NAPTARINAP_OSSZES.C_NAPDATUMA = T_TANEVRENDJE_OSSZES.C_DATUM
and (T_TANEVRENDJE_OSSZES.C_HETIREND = T_NAPTARINAP_OSSZES.C_HETIREND OR T_TANEVRENDJE_OSSZES.C_HETIREND = 1554)
and T_TANEVRENDJE_OSSZES.C_ORARENDINAP ='F'
and (T_TANEVRENDJE_OSSZES.C_OSSZESCSOPORTRAVONATKOZIK='T' OR T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID = T_TANEVRENDJE_OSSZES.ID
and T_TANEVRENDJE_OSSZES.TOROLT='F'))
) orak
Group by ID
END

View file

@ -0,0 +1,110 @@
-- =============================================
-- Author: <Hoffmann Zsolt>
-- Midifier: Telek Ákos
-- Create date: <2016. 07. 27.>
-- Description: <Haladási munkafüzet, tanmenet>
-- =============================================
IF OBJECT_ID('sp_GetHaladasiMunkafuzetTanmenet') IS NOT NULL BEGIN
DROP PROCEDURE sp_GetHaladasiMunkafuzetTanmenet
END
GO
CREATE PROCEDURE sp_GetHaladasiMunkafuzetTanmenet
@tanevID int,
@tanarID int
AS
BEGIN
SET NOCOUNT ON;
DECLARE
@foglalkozasID INT = 0
,@foglalkozasNev VARCHAR(255)
SELECT DISTINCT
f.ID
,ocs.C_NEV + ' - ' + tt.C_NEV AS Nev
,f.C_TANTARGYID
,f.C_OSZTALYCSOPORTID
,f.C_INTEZMENYID
INTO #Foglalkozasok
FROM T_FOGLALKOZAS_OSSZES f
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs on ocs.ID = f.C_OSZTALYCSOPORTID and ocs.TOROLT = 'F'
INNER JOIN T_FOGLALKOZASOK_TANAROK ft on ft.C_FOGLALKOZASOKID = f.ID
INNER JOIN T_TANTARGY_OSSZES tt on tt.ID = f.C_TANTARGYID
WHERE f.TOROLT = 'F'
AND f.C_TANEVID = @tanevID
AND ft.C_TANAROKID = @tanarID
AND tt.TOROLT = 'F'
SELECT ID, Nev FROM #Foglalkozasok
DECLARE @sorszamTable TABLE (
tanitasiOraId int PRIMARY KEY
,evesOraszam int
,foglalkozasId int
)
INSERT INTO @sorszamTable (tanitasiOraId, evesOraszam, foglalkozasId)
SELECT s.Id, s.EvesSorszam, f.ID FROM #Foglalkozasok f
CROSS APPLY dbo.fnGetEvesOraszamLista(
f.C_TANTARGYID
,f.C_OSZTALYCSOPORTID
,@tanarID
,GETDATE()
,f.C_INTEZMENYID
,@tanevID
) s
DECLARE foglalkozasCursor CURSOR FOR
SELECT ID FROM #Foglalkozasok
OPEN foglalkozasCursor
FETCH NEXT FROM foglalkozasCursor into @foglalkozasId
WHILE @@FETCH_STATUS = 0 BEGIN
SELECT DISTINCT
tn.ID
,CASE
WHEN tn.C_MEGTARTOTT = 'T' then s.evesOraszam --tn.C_ORAEVESSORSZAM
ELSE '-'
END AS OraSorszam
,tn.C_TEMA Tema
,CASE
WHEN tn.C_HELYETTESITOTANARID is null then ''
ELSE 'H'
END AS Helyettesites
,tn.C_DATUM Datum
,tn.C_ORASZAM OraSzam
,tn.C_MEGJEGYZES Megjegyzes
,tn.C_HAZIFELADAT HaziFeladat
,tn.C_TULORA TulOra
,tn.C_TAMOPORA TamopOra
,tn.C_NEMSZAKRENDSZERUORA NemszakrendszeruOra
,tn.C_IKTTANORA IktOra
,tn.C_NEMZETISEGIORA NemzetisegiOra
,tn.C_MINDENNAPOSTESTNEVELES TestnevelesOra
,tn.C_IPRTANORA IprOra
,tn.C_DIFFERENCIALT DifferencialtOra
,tn.C_KOOPERATIV KooperativOra
,tn.C_MERES MeresOra
,tn.C_DRAMA DramaOra
,tn.C_PARHUZAMOSORA ParhuzamosOra
,tn.C_TIOP12 TiopOra
FROM T_TANITASIORA_OSSZES tn
LEFT JOIN @sorszamTable s ON s.tanitasiOraId = tn.ID
WHERE tn.TOROLT = 'F'
AND tn.C_TANEVID = @tanevID
AND tn.C_FOGLALKOZASID = @foglalkozasId
FETCH NEXT FROM foglalkozasCursor into @foglalkozasId
END
CLOSE foglalkozasCursor
DEALLOCATE foglalkozasCursor
DROP TABLE #Foglalkozasok
END;
GO

View file

@ -0,0 +1,115 @@
-- =============================================
-- Author: <Hoffmann Zsolt>
-- Create date: <2016. 07. 26.>
-- Description: <Haladási napló>
-- =============================================
IF OBJECT_ID('sp_GetHaladasiNaploAdatok') IS NOT NULL BEGIN
DROP PROCEDURE sp_GetHaladasiNaploAdatok
END
GO
CREATE PROCEDURE [dbo].[sp_GetHaladasiNaploAdatok]
@tanevID int,
@osztalyID int
AS
BEGIN
DECLARE @foglalkozasID INT = 0
DECLARE @foglalkozasNev VARCHAR(255)
SET NOCOUNT ON;
SELECT DISTINCT
f.id
,ocs.C_NEV + ' - ' + tt.C_NEV AS Nev
,f.C_TANTARGYID
,f.C_OSZTALYCSOPORTID
,f.C_INTEZMENYID
,ft.C_TANAROKID AS C_TANARID
INTO #Foglalkozasok
FROM T_FOGLALKOZAS_OSSZES f
INNER JOIN T_FOGLALKOZASOK_TANAROK_OSSZES ft ON f.ID = ft.C_FOGLALKOZASOKID
INNER JOIN T_OSZTALYCSOPORT_OSSZES OCS on OCS.ID = f.C_OSZTALYCSOPORTID and OCS.TOROLT = 'F'
LEFT JOIN T_CSOPORTOK_OSZTALYOK cso on cso.C_CSOPORTOKID = ocs.ID
INNER JOIN T_TANTARGY_OSSZES tt on tt.ID = f.C_TANTARGYID and tt.TOROLT = 'F'
WHERE f.TOROLT = 'F'
AND f.C_TANEVID = @tanevID
AND (ocs.ID = @osztalyID OR cso.C_OSZTALYOKID = @osztalyID)
SELECT
fog.ID
, Nev+' - '+felh.C_NYOMTATASINEV Nev
FROM #Foglalkozasok fog
INNER JOIN T_FELHASZNALO_OSSZES felh on fog.C_TANARID=felh.ID
DECLARE @sorszamTable TABLE (
tanitasiOraId int-- PRIMARY KEY
,evesOraszam int
,foglalkozasId int
)
INSERT INTO @sorszamTable (tanitasiOraId, evesOraszam, foglalkozasId)
SELECT s.Id, s.EvesSorszam, f.ID FROM #Foglalkozasok f
CROSS APPLY dbo.fnGetEvesOraszamLista(
f.C_TANTARGYID
,f.C_OSZTALYCSOPORTID
,f.C_TANARID
,GETDATE()
,f.C_INTEZMENYID
,@tanevID
) s
DECLARE foglalkozasCursor CURSOR FOR
SELECT ID FROM #Foglalkozasok
OPEN foglalkozasCursor
FETCH NEXT FROM foglalkozasCursor into @foglalkozasId
WHILE @@FETCH_STATUS = 0 BEGIN
SELECT DISTINCT
CASE
WHEN tn.C_MEGTARTOTT = 'T' THEN s.evesOraszam -- tn.C_ORAEVESSORSZAM
ELSE '-'
END AS OraSorszam
,fh.C_NYOMTATASINEV TanarNev
,tn.C_TEMA Tema
,CASE
WHEN tn.C_HELYETTESITOTANARID IS NULL THEN ''
ELSE 'H'
END AS Helyettesites
,FORMAT(tn.C_DATUM, 'yyyy.MM.dd.') Datum
,tn.C_ORASZAM OraSzam
,tn.C_MEGJEGYZES Megjegyzes
,tn.C_HAZIFELADAT HaziFeladat
,tn.C_TULORA TulOra
,tn.C_TAMOPORA TamopOra
,tn.C_NEMSZAKRENDSZERUORA NemszakrendszeruOra
,tn.C_IKTTANORA IktOra
,tn.C_NEMZETISEGIORA NemzetisegiOra
,tn.C_MINDENNAPOSTESTNEVELES TestnevelesOra
,tn.C_IPRTANORA IprOra
,tn.C_DIFFERENCIALT DifferencialtOra
,tn.C_KOOPERATIV KooperativOra
,tn.C_MERES MeresOra
,tn.C_DRAMA DramaOra
,tn.C_PARHUZAMOSORA ParhuzamosOra
,tn.C_TIOP12 TiopOra
FROM T_TANITASIORA_OSSZES tn
INNER JOIN T_ORAK_TANAROK ot ON ot.C_ORAKID = tn.ID
INNER JOIN T_FELHASZNALO fh ON fh.ID = ot.C_TANAROKID
LEFT JOIN @sorszamTable s ON s.tanitasiOraId = tn.ID
WHERE tn.TOROLT = 'F'
AND tn.C_TANEVID = @tanevID
AND tn.C_FOGLALKOZASID = @foglalkozasID
ORDER BY FORMAT(tn.C_DATUM, 'yyyy.MM.dd.')
FETCH NEXT FROM foglalkozasCursor
INTO @foglalkozasId
END
CLOSE foglalkozasCursor
DEALLOCATE foglalkozasCursor
DROP TABLE #Foglalkozasok
END
GO

View file

@ -0,0 +1,157 @@
GO
/****** Object: StoredProcedure [KR_BEDO_Schema].[sp_GetHarmadikNegyedeviErtesito] Script Date: 2016.05.26. 13:58:43 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE PROCEDURE [sp_GetHarmadikNegyedeviErtesito]
@osztalyId int,
@TanevId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- fejléc
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM IntezmenyIranyitoszam,
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
T_INTEZMENYADATOK_OSSZES.C_CIME IntezmenyCime,
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
T_INTEZMENYADATOK_OSSZES.C_OMKOD IntezmenyOMKod,
(SELECT C_OSZTALYFONOKID FROM T_OSZTALY_OSSZES WHERE ID=@osztalyId and TOROLT = 'F') PartnerID,
T_TANEV_OSSZES.C_NEV TANEV
FROM T_INTEZMENYADATOK_OSSZES
inner join T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID and T_TANEV_OSSZES.TOROLT = 'F'
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
and T_TANEV_OSSZES.ID = @TanevId
-- TANULÓK
SELECT T_FELHASZNALO_OSSZES.ID TANULOID,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TANULONEV,
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO OKTATASIAZONOSITO
FROM T_FELHASZNALO_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
WHERE T_FELHASZNALO_OSSZES.TOROLT='F'
and TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
and T_FELHASZNALO_OSSZES.C_TANEVID = @TanevId
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
-- ÉRTÉKELÉSEK
SELECT ERTEKELES.C_TANULOID TANULOID,
'MAGATARTAS' TARGYNEV,
OSZTALYZAT.MAGATARTAS NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_MAGATARTAS MAGATARTAS FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1523
AND OSZTALYZAT.MAGATARTAS IS NOT NULL -- III.Negyedévi
AND ERTEKELES.C_TANEVID = @TanevId
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
'SZORGALOM' TARGYNEV,
OSZTALYZAT.SZORGALOM NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_SZORGALOM SZORGALOM FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1523
AND OSZTALYZAT.SZORGALOM IS NOT NULL -- III.Negyedévi
AND ERTEKELES.C_TANEVID = @TanevId
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
TARGY.TARGYNEV TARGYNEV,
ERTEKELES.C_OSZTALYZAT NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
JOIN ( SELECT ID,C_NEV TARGYNEV,C_TARGYKATEGORIA KAT FROM T_TANTARGY_OSSZES where TOROLT = 'F') TARGY
ON TARGY.ID = ERTEKELES.C_TANTARGYID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND TARGY.KAT != 1248 --Osztályfőnöki nem jelenítődik meg
AND ERTEKELES.C_ERTEKELESTIPUSA = 1523 -- III.Negyedévi
AND ERTEKELES.C_TANEVID = @TanevId
ORDER BY TANULOID, TARGYNEV
-- MULASZTÁSOK
SELECT MULASZT.C_TANULOID TANULOID,
CASE WHEN MULASZT.C_STATISZTIKATIPUS = 1656 THEN 'IGAZOLT' ELSE 'IGAZOLATLAN' END TIPUS,
MULASZT.C_HARMADIKNEGYEDEV ORASZAM
FROM T_TANULOMULASZTASSTATISZTIKA_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_TANULOID
WHERE MULASZT.TOROLT ='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND MULASZT.C_STATISZTIKATIPUS IN (1656,1662) -- IGAZOLT VAGY IGAZOLATLAN
AND MULASZT.C_TANEVID = @TanevId
-- TANTÁRGYI MENTESSÉGEK
SELECT MENTESSEG.C_TANULOID TANULOID,
TARGY.TARGYNEV,
MENTESSEG.C_MENTESSEGOKA MENTESSEGOKA
FROM T_TANULOMENTESSEG_OSSZES MENTESSEG
JOIN (SELECT ID, C_NEV TARGYNEV FROM T_TANTARGY_OSSZES WHERE TOROLT='F' ) TARGY
ON TARGY.ID = MENTESSEG.C_TANTARGYID
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (C_KILEPESDATUM is null or C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MENTESSEG.C_TANULOID
WHERE MENTESSEG.TOROLT = 'F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND MENTESSEG.C_TANEVID = @TanevId
ORDER BY MENTESSEG.C_TANULOID, TARGY.TARGYNEV
-- BEJEGYZÉSEK
SELECT T_TANULOESEMENY_OSSZES.C_TANULOID TANULOID,
C_TARTALOM BEJEGYZES,
C_TIPUS TIPUS
FROM T_TANULOESEMENY_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (C_KILEPESDATUM is null or C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_TANULOESEMENY_OSSZES.C_TANULOID
WHERE TOROLT='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND T_TANULOESEMENY_OSSZES.C_TIPUS = 1551
AND T_TANULOESEMENY_OSSZES.C_TIPUS != 1534
AND T_TANULOESEMENY_OSSZES.C_TANEVID = @TanevId
ORDER BY T_TANULOESEMENY_OSSZES.C_TANULOID
--OSZTÁLY
SELECT
T_OSZTALYCSOPORT_OSSZES.C_NEV OSZTALYNEV,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV OSZTALYFONOKNEV
FROM T_OSZTALY_OSSZES
INNER JOIN T_FELHASZNALO_OSSZES ON T_OSZTALY_OSSZES.C_OSZTALYFONOKID = T_FELHASZNALO_OSSZES.ID and T_FELHASZNALO_OSSZES.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT_OSSZES ON T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID and T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT='F'
AND T_OSZTALYCSOPORT_OSSZES.ID=@osztalyId
AND T_OSZTALY_OSSZES.C_ALTANEVID = @TanevId
END

View file

@ -0,0 +1,35 @@
GO
/****** Object: StoredProcedure [dbo].[sp_GetHelyettesitesIdoszakLetrehozoSzerepkor] Script Date: 2016.09.07. 9:52:07 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Dőrr Tamás
-- Create date: 2016.09.07.
-- Description:
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetHelyettesitesIdoszakLetrehozoSzerepkor]
@IntezmenyId int
,@TanevId int
,@HelyettesitesId int
AS
BEGIN
SET NOCOUNT ON;
declare @helyettesitesCreatorId int;
set @helyettesitesCreatorId = (
select
ISNULL(hi.CREATOR, 0)
from T_HELYETTESITESIIDOSZAK hi
where
hi.ID = @HelyettesitesId
and hi.C_INTEZMENYID = @IntezmenyId
and hi.C_TANEVID = @TanevId
)
exec [sp_GetUserRoles] @FELHASZNALOID = @helyettesitesCreatorId
END

View file

@ -0,0 +1,176 @@
/****** Object: StoredProcedure [dbo].[sp_GetHelyettesitesekOrarend] Script Date: 2016.06.19. 17:08:47 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Dőrr Tamás
-- Create date: 2016.06.08.
-- Description:
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetHelyettesitesekOrarend]
@IntezmenyId int,
@TanevId int,
@IdoszakKezdete datetime,
@IdoszakVege datetime,
@TanarId int,
@CsakOrarendiOrak bit
AS
BEGIN
SET NOCOUNT ON;
DECLARE @KezdoHet int = DATEPART( ISO_WEEK, @IdoszakKezdete);
DECLARE @ZaroHet int = DATEPART( ISO_WEEK, @IdoszakVege);
SELECT NAPTARINAP.Datum Datum
INTO #TEMPORARENDINAPOK
FROM (
(SELECT C_NAPDATUMA Datum FROM T_NAPTARINAP NAPTARINAP WHERE (TOROLT = 'F' AND C_NAPDATUMA BETWEEN @IdoszakKezdete AND @IdoszakVege AND C_INTEZMENYID = @IntezmenyId AND C_TANEVID=@TanevId))
EXCEPT
(SELECT C_DATUM Datum FROM T_TANEVRENDJE TANEVRENDJE WHERE (TOROLT = 'F' AND (C_NAPTIPUSA IN (1386,1387,1389,1391,1392,1396,1397,1398,1399,1401) OR C_ORARENDINAP = 'F') AND C_INTEZMENYID = @IntezmenyId AND C_TANEVID=@TanevId))
UNION
(SELECT Datum FROM (
SELECT
C_DATUM Datum,
COUNT (C_DATUM) DatumCounter
FROM
(SELECT C_DATUM, C_ORARENDINAP FROM T_TANEVRENDJE TANEVRENDJE WHERE (TOROLT = 'F') AND C_INTEZMENYID = @IntezmenyId AND C_TANEVID=@TanevId) TANEVRENDJE1 GROUP BY C_ORARENDINAP, C_DATUM
) TANEVRENDJE2
GROUP BY Datum
HAVING COUNT(Datum) = 2
)
) NAPTARINAP
DECLARE @VegzosUtolsoTanitasiNap_spGetOrarend DATETIME;
SELECT
@VegzosUtolsoTanitasiNap_spGetOrarend = C_DATUM
FROM
T_TANEVRENDJE
WHERE
TOROLT = 'F'
AND C_TANEVID = (SELECT ID FROM T_TANEV WHERE TOROLT = 'F' AND C_AKTIV = 'T' AND C_INTEZMENYID = @IntezmenyId)
AND C_NAPTIPUSA = 1402 AND C_INTEZMENYID = @IntezmenyId AND C_TANEVID=@TanevId
/*Tanítási órák*/
SELECT
TANITASIORA.ID Id,
TANITASIORA.C_ORARENDIORAID ORARENDIID,
TANITASIORA.C_BONTOTT Bontott,
(SELECT T_NAPTARINAP.C_HETIREND FROM T_NAPTARINAP WHERE T_NAPTARINAP.ID = TANITASIORA.C_NAPTARINAPID) Hetirend,
TANITASIORA.C_HETNAPJA HetNapja,
'' ErvenyessegKezdete,
'' ErvenyessegVege,
TANITASIORA.C_ORAKEZDETE OraKezdete,
TANITASIORA.C_ORAVEGE OraVege,
TANITASIORA.C_ORASZAM Oraszam,
TARGY.C_ROVIDNEV TargyNev,
TANITASIORA.C_MEGTARTOTT Megtartott,
TANITASIORA.C_CSENGETESIRENDORAID CsengetesiRendOraID,
OSZTALY.C_NEV OsztalyNev,
TANAR.C_NYOMTATASINEV TanarNev,
TEREM.C_NEV TeremNev,
'TanitasiOra' OraTipus,
''Hianyzas,
'' Keses,
TANITASIORA.C_HELYETTESITOTANARID HelyettesitoTanarID,
TANAR.ID TanarID,
TANITASIORA.C_ADMINALTALKIIRT AdminAltalKiirt
INTO #TEMPORAK
FROM T_TANITASIORA TANITASIORA
LEFT JOIN T_TANTARGY TARGY ON (TARGY.ID = TANITASIORA.C_TANTARGYID AND TARGY.C_INTEZMENYID = @IntezmenyId AND TARGY.C_TANEVID=@TanevId)
LEFT JOIN T_ORAK_TANAROK ON TANITASIORA.ID = T_ORAK_TANAROK.C_ORAKID
LEFT JOIN T_FELHASZNALO TANAR ON T_ORAK_TANAROK.C_TANAROKID = TANAR.ID
LEFT JOIN T_OSZTALYCSOPORT OSZTALY ON (TANITASIORA.C_OSZTALYCSOPORTID = OSZTALY.ID AND OSZTALY.C_INTEZMENYID = @IntezmenyId AND OSZTALY.C_TANEVID=@TanevId)
LEFT JOIN T_TEREM TEREM ON (TEREM.id = TANITASIORA.C_TEREMID AND TEREM.C_INTEZMENYID = @IntezmenyId AND TEREM.C_TANEVID=@TanevId)
WHERE
@CsakOrarendiOrak = 0 AND TANITASIORA.TOROLT='F' AND TANITASIORA.C_INTEZMENYID = @IntezmenyId AND TANITASIORA.C_TANEVID=@TanevId
AND TANITASIORA.C_CSENGETESIRENDORAID IS NOT NULL
AND (TANITASIORA.C_ORAKEZDETE >= @IdoszakKezdete
AND TANITASIORA.C_ORAVEGE <= (CASE WHEN OSZTALY.C_VEGZOSEVFOLYAM = 'T' AND @VegzosUtolsoTanitasiNap_spGetOrarend IS NOT NULL AND @IdoszakVege > @VegzosUtolsoTanitasiNap_spGetOrarend THEN @VegzosUtolsoTanitasiNap_spGetOrarend ELSE @IdoszakVege END))
AND (@TanarId IS NULL OR ( TANITASIORA.C_HELYETTESITOTANARID = @TanarId OR TANITASIORA.C_ORATULAJDONOSID = @TanarId OR T_ORAK_TANAROK.C_TANAROKID = @TanarId))
/*Órarendi órák*/
INSERT INTO #TEMPORAK
SELECT
OrarendiOrak.Id, ORARENDIID, Bontott, Hetirend, HetNapja, ErvenyessegKezdete, ErvenyessegVege, OraKezdete, OraVege,
Oraszam, TargyNev, Megtartott, CsengetesiRendOraID, OsztalyNev, TanarNev, TeremNev, OraTipus, Hianyzas, Keses,
T_HELYETTESITESIIDOSZAK.C_HELYETTESTANAROKID HelyettesitoTanarID, TanarID,AdminAltalKiirt
FROM (
SELECT
T_ORARENDIORA.ID Id,
T_ORARENDIORA.ID ORARENDIID,
T_ORARENDIORA.C_BONTOTT Bontott,
T_ORARENDIORA.C_HETIREND Hetirend,
T_ORARENDIORA.C_HETNAPJA HetNapja,
T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE ErvenyessegKezdete,
T_ORARENDIORA.C_ORAERVENYESSEGVEGE ErvenyessegVege,
CASE
WHEN T_ORARENDIORA.C_ORAKEZDETE IS NULL THEN DATEADD(HOUR, DATEPART(HOUR, T_CSENGETESIRENDORA.C_KEZDETE), DATEADD(MINUTE, DATEPART(MINUTE,T_CSENGETESIRENDORA.C_KEZDETE), NAPTAR.C_NAPDATUMA))
ELSE T_ORARENDIORA.C_ORAKEZDETE
END OraKezdete,
CASE
WHEN T_ORARENDIORA.C_ORAVEGE IS NULL THEN DATEADD(HOUR, DATEPART(HOUR, T_CSENGETESIRENDORA.C_VEGE), DATEADD(MINUTE, DATEPART(MINUTE,T_CSENGETESIRENDORA.C_VEGE), NAPTAR.C_NAPDATUMA))
ELSE T_ORARENDIORA.C_ORAVEGE
END OraVege,
T_CSENGETESIRENDORA.C_ORASZAM Oraszam,
TARGY.C_ROVIDNEV TargyNev,
'F' Megtartott,
T_CSENGETESIRENDORA.ID CsengetesiRendOraID,
OSZTALY.C_NEV OsztalyNev,
TANAR.C_NYOMTATASINEV TanarNev,
TEREM.C_NEV TeremNev,
'OrarendiOra' OraTipus,
'F' Hianyzas,
'F' Keses,
TANAR.ID TanarID,
'F' AdminAltalKiirt
FROM
T_ORARENDIORA
INNER JOIN T_CSENGETESIRENDORA ON (T_CSENGETESIRENDORA.ID=T_ORARENDIORA.C_CSENGETESIRENDORAID AND T_CSENGETESIRENDORA.C_INTEZMENYID = @IntezmenyId AND T_CSENGETESIRENDORA.C_TANEVID=@TanevId)
INNER JOIN T_FOGLALKOZAS ON (T_FOGLALKOZAS.ID= T_ORARENDIORA.C_FOGLALKOZASID AND T_FOGLALKOZAS.C_INTEZMENYID = @IntezmenyId AND T_FOGLALKOZAS.C_TANEVID=@TanevId)
INNER JOIN T_NAPTARINAP NAPTAR ON (( T_ORARENDIORA.C_HETIREND = 1554 OR NAPTAR.C_HETIREND = T_ORARENDIORA.C_HETIREND ) AND NAPTAR.C_HETNAPJA = T_ORARENDIORA.C_HETNAPJA AND NAPTAR.C_INTEZMENYID = @IntezmenyId AND NAPTAR.C_TANEVID=@TanevId)
INNER JOIN #TEMPORARENDINAPOK ORARENDINAPOK ON ORARENDINAPOK.Datum = NAPTAR.C_NAPDATUMA
LEFT JOIN T_FOGLALKOZASOK_TANAROK ON T_FOGLALKOZASOK_TANAROK.C_FOGLALKOZASOKID = T_FOGLALKOZAS.ID
LEFT JOIN T_TANTARGY TARGY ON (TARGY.ID= T_FOGLALKOZAS.C_TANTARGYID AND TARGY.TOROLT = 'F' AND TARGY.C_INTEZMENYID = @IntezmenyId AND TARGY.C_TANEVID=@TanevId)
LEFT JOIN T_FELHASZNALO TANAR ON T_FOGLALKOZASOK_TANAROK.C_TANAROKID = TANAR.ID AND TANAR.TOROLT= 'F'
LEFT JOIN T_OSZTALYCSOPORT OSZTALY ON (T_FOGLALKOZAS.C_OSZTALYCSOPORTID = OSZTALY.ID AND OSZTALY.C_INTEZMENYID = @IntezmenyId AND OSZTALY.C_TANEVID=@TanevId)
LEFT JOIN T_TEREM TEREM ON (TEREM.id = T_ORARENDIORA.C_TEREMID AND TEREM.C_INTEZMENYID = @IntezmenyId AND TEREM.C_TANEVID=@TanevId)
WHERE
T_ORARENDIORA.TOROLT='F'
AND T_ORARENDIORA.C_CSENGETESIRENDORAID IS NOT NULL
AND T_ORARENDIORA.C_INTEZMENYID = @IntezmenyId AND T_ORARENDIORA.C_TANEVID=@TanevId
AND T_ORARENDIORA.C_ORAERVENYESSEGVEGE >= @IdoszakKezdete AND T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE <= (CASE WHEN OSZTALY.C_VEGZOSEVFOLYAM = 'T' AND @VegzosUtolsoTanitasiNap_spGetOrarend IS NOT NULL AND @IdoszakVege > @VegzosUtolsoTanitasiNap_spGetOrarend THEN @VegzosUtolsoTanitasiNap_spGetOrarend ELSE @IdoszakVege END)
AND NAPTAR.C_NAPDATUMA BETWEEN @IdoszakKezdete AND (CASE WHEN OSZTALY.C_VEGZOSEVFOLYAM = 'T' AND @VegzosUtolsoTanitasiNap_spGetOrarend IS NOT NULL AND @IdoszakVege > @VegzosUtolsoTanitasiNap_spGetOrarend THEN @VegzosUtolsoTanitasiNap_spGetOrarend ELSE @IdoszakVege END)
--AND NAPTAR.C_NAPDATUMA BETWEEN CAST(T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE AS DATE) AND CAST(T_ORARENDIORA.C_ORAERVENYESSEGVEGE AS DATE)
AND (
(NAPTAR.C_NAPDATUMA >= T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE AND NAPTAR.C_NAPDATUMA < T_ORARENDIORA.C_ORAERVENYESSEGVEGE)
OR
(NAPTAR.C_NAPDATUMA = T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE AND NAPTAR.C_NAPDATUMA = T_ORARENDIORA.C_ORAERVENYESSEGVEGE)
)
AND NOT EXISTS (
SELECT 1 FROM #TEMPORAK TANORAK WHERE TANORAK.ORARENDIID = T_ORARENDIORA.ID AND TANORAK.OraKezdete = [OraKezdete] AND TANORAK.OraVege = [OraVege]
)
) OrarendiOrak
LEFT JOIN T_HELYETTESITESIIDOSZAK ON (OrarendiOrak.ID = T_HELYETTESITESIIDOSZAK.C_HELYETTESITETTORARENDID And T_HELYETTESITESIIDOSZAK.C_HETSORSZAMA >= @KezdoHet AND (T_HELYETTESITESIIDOSZAK.C_HETSORSZAMA <= @ZaroHet)
) WHERE (@TanarId IS NULL OR OrarendiOrak.TanarID = @TanarId OR T_HELYETTESITESIIDOSZAK.C_HELYETTESTANAROKID = @TanarId)
--SELECT * FROM #TEMPORAK order by orakezdete
SELECT t.*, hi.ID as HelyettesitesId, f.C_NYOMTATASINEV as HelyettesitoTanarNev FROM #TEMPORAK t
LEFT JOIN T_HELYETTESITESIIDOSZAK hi ON hi.C_HELYETTESITETTORARENDID = t.ORARENDIID AND DATEDIFF(DAY, t.OraKezdete, hi.C_HELYETTESITESNAPJA) = 0
LEFT JOIN T_FELHASZNALO f ON f.ID = hi.C_HELYETTESTANAROKID
ORDER BY t.orakezdete
DROP TABLE #TEMPORAK
DROP TABLE #TEMPORARENDINAPOK
END

View file

@ -0,0 +1,144 @@
IF OBJECT_ID('[dbo].[sp_GetHelyettesitesiNaplo]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetHelyettesitesiNaplo]
END
GO
-- ===================================================================
-- Author: Tóth Imre Attila
-- Create date: 2016. 08. 01.
-- Description: Lekérdezések a helyettesítési naplóhoz
-- ===================================================================
CREATE PROCEDURE [dbo].[sp_GetHelyettesitesiNaplo]
@tanarID int,
@tanevID int,
@intezmenyid int
AS
BEGIN
SET NOCOUNT ON;
-- ===================================
-- FEJLÉC
-- ===================================
DECLARE @table TABLE (
EvHonap nvarchar(10),
Helyettesito nvarchar(100)
)
INSERT INTO @table
SELECT DISTINCT
format(C_DATUM, 'yyyy.MM') AS EvHonap,
felhHelyettes.C_NYOMTATASINEV AS Helyettesito
FROM T_TANITASIORA_OSSZES tOra
LEFT JOIN T_FELHASZNALO_OSSZES felhHelyettes on felhHelyettes.ID = tOra.C_HELYETTESITOTANARID
WHERE tOra.C_HELYETTESITOTANARID = @tanarID
AND tOra.C_TANEVID = @tanevID
AND tOra.Torolt='F'
SELECT * FROM @table
SELECT
format(C_NAPDATUMA, 'yyyy.MM') AS EvHonap,
C_HETNAPJA AS Nap
FROM T_NAPTARINAP_OSSZES
WHERE format(C_NAPDATUMA, 'yyyy.MM') IN (SELECT EvHonap FROM @table)
-- ===================================
-- HELYETTESÍTÉSEK (SOROK)
-- ===================================
DECLARE @oraSorszam TABLE (Id int, EvesSorszam int)
INSERT INTO @oraSorszam
SELECT DISTINCT
s.Id
, s.EvesSorszam
FROM (
SELECT DISTINCT
tn.C_TANTARGYID
, tn.C_OSZTALYCSOPORTID
, ot.C_TANAROKID
, tn.C_INTEZMENYID
FROM T_TANITASIORA_OSSZES tn
INNER JOIN T_ORAK_TANAROK ot ON ot.C_ORAKID = tn.ID
WHERE C_HELYETTESITOTANARID = @tanarID
AND C_TANEVID = @tanevID
) x
CROSS APPLY dbo.fnGetEvesOraszamLista (
x.C_TANTARGYID
,x.C_OSZTALYCSOPORTID
,x.C_TANAROKID
,GETDATE()
,x.C_INTEZMENYID
,@tanevID
) s
SELECT DISTINCT
ROW_NUMBER() over(PARTITION BY FORMAT(C_DATUM, 'yyyy.MM') ORDER BY C_DATUM) Sorsz
,C_ORASZAM AS Oraszam
,DicItemBase.C_NAME AS HelyettesitesTipusa
,FORMAT(C_DATUM, 'yyyy.MM.dd.') AS Datum
,FORMAT(C_DATUM, 'yyyy.MM') AS EvHonap
,felhOraTul.C_NYOMTATASINEV AS Helyettesitett
,osztcsop.C_NEV AS OsztalyCsoport
,tant.C_NEV AS Tantargy
,tOra.C_TEMA AS Tema
,s.EvesSorszam AS EvesSorszam
FROM T_TANITASIORA_OSSZES tOra
LEFT JOIN @oraSorszam s ON s.ID = tOra.ID
LEFT JOIN T_FELHASZNALO_OSSZES felhOraTul ON felhOraTul.ID = tOra.C_ORATULAJDONOSID
LEFT JOIN T_FELHASZNALO_OSSZES helyettesito ON helyettesito.ID = tOra.C_HELYETTESITOTANARID
LEFT JOIN (SELECT DISTINCT ID, C_NAME FROM T_DICTIONARYITEMBASE_OSSZES) DicItemBase on DicItemBase.ID = tOra.C_HELYETTESITESTIPUSA
LEFT JOIN T_OSZTALYCSOPORT_OSSZES osztcsop ON osztcsop.ID = tOra.C_OSZTALYCSOPORTID
LEFT JOIN T_TANTARGY_OSSZES tant ON tant.ID = tOra.C_TANTARGYID
WHERE helyettesito.ID = @tanarID
AND tOra.C_TANEVID = @tanevID
AND TOra.Torolt = 'F'
ORDER BY Sorsz ASC
-- ===================================
-- HELYETTESÍTÉSEK NAPIBONTÁSBAN
-- ===================================
SELECT
EvHonap,
OsztalyCsoport = TantargyN + ' - ' + OsztCsopN,
ISNULL([1], 0) AS [1], ISNULL([2], 0) AS [2], ISNULL([3], 0) AS [3], ISNULL([4], 0) AS [4], ISNULL([5], 0) AS [5], ISNULL([6], 0) AS [6], ISNULL([7], 0) AS [7], ISNULL([8], 0) AS [8], ISNULL([9], 0) AS [9], ISNULL([10], 0) AS [10],
ISNULL([11], 0) AS [11], ISNULL([12], 0) AS [12], ISNULL([13], 0) AS [13], ISNULL([14], 0) AS [14], ISNULL([15], 0) AS [15], ISNULL([16], 0) AS [16], ISNULL([17], 0) AS [17], ISNULL([18], 0) AS [18], ISNULL([19], 0) AS [19], ISNULL([20], 0) AS [20],
ISNULL([21], 0) AS [21], ISNULL([22], 0) AS [22], ISNULL([23], 0) AS [23], ISNULL([24], 0) AS [24], ISNULL([25], 0) AS [25], ISNULL([26], 0) AS [26], ISNULL([27], 0) AS [27], ISNULL([28], 0) AS [28], ISNULL([29], 0) AS [29], ISNULL([30], 0) AS [30],
ISNULL([31], 0) AS [31],
ISNULL([1], 0) + ISNULL([2], 0) + ISNULL([3], 0) + ISNULL([4], 0) + ISNULL([5], 0) + ISNULL([6], 0) + ISNULL([7], 0) + ISNULL([8], 0) + ISNULL([9], 0) + ISNULL([10], 0) +
ISNULL([11], 0) + ISNULL([12], 0) + ISNULL([13], 0) + ISNULL([14], 0) + ISNULL([15], 0) + ISNULL([16], 0) + ISNULL([17], 0) + ISNULL([18], 0) + ISNULL([19], 0) + ISNULL([20], 0) +
ISNULL([21], 0) + ISNULL([22], 0) + ISNULL([23], 0) + ISNULL([24], 0) + ISNULL([25], 0) + ISNULL([26], 0) + ISNULL([27], 0) + ISNULL([28], 0) + ISNULL([29], 0) + ISNULL([30], 0) +
ISNULL([31], 0) AS Ossz
FROM (
SELECT
CASE (tOra.c_helyettesitestipusa)
WHEN '1496' THEN COUNT(tant.C_NEV)
WHEN '1494' THEN COUNT(tant.C_NEV)
WHEN '1495' THEN COUNT(tant.C_NEV)
END AS Tant,
osztCsop.C_NEV AS osztcsopN,
tant.C_NEV AS TantargyN,
DATEPART(DAY, C_DATUM) AS Nap,
FORMAT(C_DATUM, 'yyyy.MM') AS EvHonap
FROM T_TANITASIORA_OSSZES tOra
INNER JOIN T_TANTARGY_OSSZES tant on tant.ID = tOra.C_TANTARGYID
INNER JOIN T_OSZTALYCSOPORT_OSSZES osztCsop on osztCsop.ID = tOra.C_OSZTALYCSOPORTID
WHERE
tOra.C_HELYETTESITOTANARID = @tanarID
AND tOra.C_TANEVID = @tanevID
AND TOra.TOROLT='F'
GROUP BY
osztCsop.C_NEV, tant.C_NEV, C_DATUM, tOra.c_helyettesitestipusa
) T
PIVOT (
max(Tant)
FOR Nap IN (
[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], [26], [27], [28], [29], [30], [31]
)
) Helyettesitesek
END
GO

View file

@ -0,0 +1,30 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Zsiga Attila>
-- Create date: <2016.03.09.>
-- Description: <Tanorahoz tartozo helyettesito tanar>
-- =============================================
Create PROCEDURE [dbo].[sp_GetHelyettesitoTanarTanorahoz]
-- Add the parameters for the stored procedure here
@pOrarendiOraID int,
@pDatum DateTime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
SELECT
T_TANITASIORA.C_HELYETTESITOTANARID HelyettesitoID
FROM
T_TANITASIORA
WHERE
T_TANITASIORA.C_ORARENDIORAID = @pOrarendiOraID
AND T_TANITASIORA.C_DATUM = @pDatum
END
GO

View file

@ -0,0 +1,51 @@
-- ================================================
-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters
-- command (Ctrl-Shift-M) to fill in the parameter
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Sólyom Péter
-- Create date: 2016.04.25.
-- Description: Az átadott xmlbõl (tanárok nevei) megvizsgálja hogy létezik ilyen nevû tanár a rendszerben és a név alapján egyértelmû (duplikált) vagy születési dátum alapján szûrt.
-- =============================================
CREATE PROCEDURE sp_GetHianyzoDuplikaltTanarok
-- Add the parameters for the stored procedure here
@TanarNevekXML as XML,
@FeladatellatasiHelyId AS int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @TEMPTANAROK TABLE ( TANARNEV NVARCHAR(255), SZULETESIDATUM DATE )
INSERT INTO @TEMPTANAROK
SELECT DISTINCT TanarNev = Tanar.value('(TanarNev)[1]', 'NVARCHAR(255)'),
SzuletesiDatum = Tanar.value('(SzuletesiDatum)[1]', 'DATE')
FROM @TanarNevekXML.nodes('/ArrayOfTanarNevekExcelModel/TanarNevekExcelModel') as Tanarok(Tanar)
SELECT TANAROK.TANARNEV, TANAROK.SZULETESIDATUM, COUNT(FELH.ID) TANAROKSZAMA
FROM @TEMPTANAROK TANAROK
LEFT JOIN (select * from T_FELHASZNALO where TOROLT = 'F') FELH ON ( RTRIM(LTRIM(TANAROK.TANARNEV)) = FELH.C_NYOMTATASINEV
AND NOT EXISTS (SELECT 1 FROM T_Tanulo t where t.ID=FELH.ID )
AND (TANAROK.SZULETESIDATUM IS NULL OR TANAROK.SZULETESIDATUM = FELH.C_SZULETESIDATUM
AND EXISTS ( SELECT 1 FROM T_MUNKAUGYIADATOK tm
WHERE TM.C_ALKALMAZOTTID = FELH.ID AND TM.TOROLT='F' AND TM.C_FELADATELLATASIHELYID = @FeladatellatasiHelyId)
AND FELH.TOROLT = 'F'))
GROUP BY TANAROK.TANARNEV, TANAROK.SZULETESIDATUM
HAVING (COUNT(FELH.ID) != 1)
ORDER BY TANAROK.TANARNEV, TANAROK.SZULETESIDATUM
END
GO

View file

@ -0,0 +1,61 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Zsiga Attila>
-- Create date: <2016.03.09.>
-- Description: <Hiányzó órabeírások (órarendióra, ami nem lett lenaplózva tanításiórává) értesítés generáláshoz>
-- =============================================
Create PROCEDURE [dbo].[sp_GetHianyzoOrabeirasok]
-- Add the parameters for the stored procedure here
@pIdoszakVege DateTime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
-- :TOKNOW:
-- 1608: Hiányzó óra naplózás
-- 1554: Minden héten
DECLARE @pIdoszakKezdete DateTime;
SET @pIdoszakKezdete =
(
SELECT
TOP 1 CREATED LastCreated
FROM
T_ERTESITES
WHERE
T_ERTESITES.C_TIPUS = 1608
ORDER BY
T_ERTESITES.CREATED DESC
);
DECLARE @pLastCreated DateTime;
SET @pLastCreated = @pIdoszakKezdete;
SELECT
T_ORARENDIORA.ID OrarendiOraID,
T_NAPTARINAP.C_NAPDATUMA Datum,
T_ORARENDIORA.C_ORASZAM Oraszam
FROM
(SELECT * FROM T_ORARENDIORA WHERE T_ORARENDIORA.TOROLT = 'F' AND ((T_ORARENDIORA.C_ORAERVENYESSEGVEGE >= @pIdoszakKezdete AND T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE <= @pIdoszakVege) OR (T_ORARENDIORA.CREATED > @pLastCreated AND T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE <= @pIdoszakVege))) T_ORARENDIORA
LEFT JOIN T_NAPTARINAP ON
T_NAPTARINAP.C_NAPDATUMA >= CONVERT(DATE, T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE) AND T_NAPTARINAP.C_NAPDATUMA <= CONVERT(DATE, T_ORARENDIORA.C_ORAERVENYESSEGVEGE)
AND ((T_NAPTARINAP.C_NAPDATUMA >= @pIdoszakKezdete AND T_NAPTARINAP.C_NAPDATUMA <= @pIdoszakVege) OR (T_ORARENDIORA.CREATED > @pLastCreated AND T_NAPTARINAP.C_NAPDATUMA <= @pIdoszakVege))
AND T_NAPTARINAP.C_HETNAPJA = T_ORARENDIORA.C_HETNAPJA
AND (T_ORARENDIORA.C_HETIREND = 1554 OR T_NAPTARINAP.C_HETIREND = T_ORARENDIORA.C_HETIREND)
AND T_NAPTARINAP.TOROLT = 'F'
LEFT JOIN T_TANITASIORA ON
T_TANITASIORA.C_ORARENDIORAID = T_ORARENDIORA.ID
AND T_TANITASIORA.C_DATUM = T_NAPTARINAP.C_NAPDATUMA
AND T_TANITASIORA.TOROLT = 'F'
WHERE
T_TANITASIORA.C_MEGTARTOTT IS NULL
END
GO

View file

@ -0,0 +1,50 @@
-- =============================================
-- Description: Tanulók gondviselõinek belépési adatai
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetHozzatartozok]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetHozzatartozok]
END
GO
CREATE PROCEDURE [dbo].[sp_GetHozzatartozok]
@osztalyId int = null,
@intezmenyId int,
@tanevId int
AS
BEGIN
SET NOCOUNT ON;
declare @Hozzaferesek table (Osztaly nvarchar(max), OsztalyId int, Intezmeny nvarchar(max), TanuloNev nvarchar(max), Gondviselo nvarchar(max), Azonosito nvarchar(max), Jelszo nvarchar(max), Link nvarchar(max))
insert into @Hozzaferesek
select distinct Osztaly.Osztaly, Osztaly.Osztalyid, ia.c_nev Intezmeny, f.c_nyomtatasinev TanuloNev, g.c_nev Gondviselo, fb.c_bejelentkezesinev Azonosito, fb.c_jelszo Jelszo, 'https://'+lower(i.c_azonosito)+'.e-kreta.hu' as Link from t_gondviselo g
inner join t_tanulo t on t.id=g.c_tanuloid and t.c_alintezmenyid=@intezmenyid and t.c_altanevid=@tanevid
inner join t_felhasznalo f on f.id=t.id and f.torolt='F'
inner join t_felhasznalobelepes fb on fb.c_gondviseloid=g.id and fb.torolt='F' and fb.C_KOTELEZOVALTOZTATNI = 'T'
left join (select tcs.c_tanuloid TanuloId, ocs.c_nev as Osztaly, o.Id OsztalyId from t_tanulocsoport tcs
inner join t_osztaly o on o.id=tcs.c_osztalycsoportid and o.torolt='F' and o.c_alintezmenyid=@intezmenyid and o.c_altanevid=@tanevid
inner join t_osztalycsoport ocs on ocs.id=o.id and ocs.c_intezmenyid=@intezmenyid and ocs.c_tanevid=@tanevid
where tcs.torolt='F' and tcs.c_intezmenyid=@intezmenyid and tcs.c_tanevid=@tanevId) Osztaly on Osztaly.Tanuloid=t.id
inner join t_intezmenyadatok ia on ia.c_intezmenyid=t.c_alintezmenyid and ia.c_tanevid=@tanevId and ia.torolt='F'
inner join t_intezmeny i on i.id=ia.c_intezmenyid and i.torolt='F'
where g.torolt='F'
order by TanuloNev
if @osztalyId is null
begin
select Osztaly, Intezmeny, TanuloNev, Gondviselo, Azonosito, Jelszo, Link from @Hozzaferesek
end
else
begin
select Osztaly, Intezmeny, TanuloNev, Gondviselo, Azonosito, Jelszo, Link from @Hozzaferesek where Osztalyid=@osztalyid
end
End
go

View file

@ -0,0 +1,231 @@
GO
/****** Object: StoredProcedure [dbo].[sp_GetIntezmenyFeltoltottsegeRiport] Script Date: 2016.10.07. 8:37:39 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Kelemen Attila
-- Create date: 2016. 08. 10.
-- Description: Adatok az intézmény feltöltöttsége riporthoz
-- =============================================
CREATE PROCEDURE [sp_GetIntezmenyFeltoltottsegeRiport]
@fenntartoId int,
@intezmenyId int,
@tanevNev nvarchar(20),
@utazoGyogypedagogusCsoportjaCsoportTipusa int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @intezmenyTable table (
id int primary key,
tanevId int
)
IF @fenntartoId IS NOT NULL AND @intezmenyId IS NOT NULL BEGIN
INSERT INTO @intezmenyTable (id)
SELECT i.ID FROM T_INTEZMENY i
WHERE i.C_FENNTARTOAZONOSITO = @fenntartoId
AND i.ID = @intezmenyId
AND i.TOROLT = 'F'
END
IF @fenntartoId IS NOT NULL AND @intezmenyId IS NULL BEGIN
INSERT INTO @intezmenyTable (id)
SELECT i.ID FROM T_INTEZMENY i
WHERE i.C_FENNTARTOAZONOSITO = @fenntartoId
AND i.TOROLT = 'F'
END
IF @fenntartoId IS NULL AND @intezmenyId IS NOT NULL BEGIN
INSERT INTO @intezmenyTable (id)
SELECT i.ID FROM T_INTEZMENY i
WHERE i.ID = @intezmenyId
AND i.TOROLT = 'F'
END
IF @fenntartoId IS NULL AND @intezmenyId IS NULL BEGIN
INSERT INTO @intezmenyTable (id)
SELECT i.ID FROM T_INTEZMENY i
WHERE i.TOROLT = 'F'
END
IF NOT EXISTS (SELECT 1 FROM @intezmenyTable) BEGIN
RETURN
END
UPDATE i
SET i.tanevId = t.ID
FROM @intezmenyTable i
INNER JOIN T_TANEV t ON t.C_INTEZMENYID = i.id
WHERE t.C_NEV = @tanevNev
AND t.TOROLT = 'F'
select
Ossz,
NincsNem,
IIF(Ossz = 0, 0, cast(NincsNem as float)/cast(Ossz as float) * 100) NincsNemSzazalek,
NincsMunkakor,
IIF(Ossz = 0, 0, cast(NincsMunkakor as float)/cast(Ossz as float) * 100) NincsMunkakorSzazalek,
NincsFoglalkoztatasTipus,
IIF(Ossz = 0, 0, cast(NincsFoglalkoztatasTipus as float)/cast(Ossz as float) * 100) NincsFoglalkoztatasTipusSzazalek,
NincsKotelezoOraszam,
IIF(Ossz = 0, 0, cast(NincsKotelezoOraszam as float)/cast(Ossz as float) * 100) NincsKotelezoOraszamSzazalek,
NincsKepesites,
IIF(Ossz = 0, 0, cast(NincsKepesites as float)/cast(Ossz as float) * 100) NincsKepesitesSzazalek
From
(
select
count(1) Ossz,
(select count(1) from T_ALKALMAZOTT inner join T_FELHASZNALO on T_ALKALMAZOTT.ID = T_FELHASZNALO.ID
INNER JOIN @intezmenyTable i ON T_FELHASZNALO.C_INTEZMENYID = i.id AND T_FELHASZNALO.C_TANEVID = i.tanevId
where (T_FELHASZNALO.C_NEME is null OR T_FELHASZNALO.C_NEME = 1565)
AND T_ALKALMAZOTT.TOROLT ='F' AND T_FELHASZNALO.TOROLT ='F'
AND T_MUNKAUGYIADATOK.C_BETOLTETLENALLASHELY = 'F'
) NincsNem,
(select count(1) from T_ALKALMAZOTT inner join T_MUNKAUGYIADATOK on T_ALKALMAZOTT.ID = T_MUNKAUGYIADATOK.C_ALKALMAZOTTID
INNER JOIN @intezmenyTable i ON T_MUNKAUGYIADATOK.C_INTEZMENYID = i.id AND T_MUNKAUGYIADATOK.C_TANEVID = i.tanevId
where (T_MUNKAUGYIADATOK.C_MUNKAKORTIPUSA is null OR T_MUNKAUGYIADATOK.C_MUNKAKORTIPUSA = 548)
AND T_ALKALMAZOTT.TOROLT ='F' AND T_MUNKAUGYIADATOK.TOROLT='F'
AND T_MUNKAUGYIADATOK.C_BETOLTETLENALLASHELY = 'F'
) NincsMunkakor,
(select count(1) from T_ALKALMAZOTT inner join T_MUNKAUGYIADATOK on T_ALKALMAZOTT.ID = T_MUNKAUGYIADATOK.C_ALKALMAZOTTID
INNER JOIN @intezmenyTable i ON T_MUNKAUGYIADATOK.C_INTEZMENYID = i.id AND T_MUNKAUGYIADATOK.C_TANEVID = i.tanevId
where (T_MUNKAUGYIADATOK.C_MUNKAVISZONYTIPUSA is null OR T_MUNKAUGYIADATOK.C_MUNKAVISZONYTIPUSA = 643)
AND T_ALKALMAZOTT.TOROLT ='F' AND T_MUNKAUGYIADATOK.TOROLT='F'
AND T_MUNKAUGYIADATOK.C_BETOLTETLENALLASHELY = 'F'
) NincsFoglalkoztatasTipus,
(select count(1) from T_ALKALMAZOTT inner join T_MUNKAUGYIADATOK on T_ALKALMAZOTT.ID = T_MUNKAUGYIADATOK.C_ALKALMAZOTTID
INNER JOIN @intezmenyTable i ON T_MUNKAUGYIADATOK.C_INTEZMENYID = i.id AND T_MUNKAUGYIADATOK.C_TANEVID = i.tanevId
where (T_MUNKAUGYIADATOK.C_KOTELEZOORASZAM is null OR T_MUNKAUGYIADATOK.C_KOTELEZOORASZAM <= 0)
AND T_ALKALMAZOTT.TOROLT ='F' AND T_MUNKAUGYIADATOK.TOROLT='F'
AND T_MUNKAUGYIADATOK.C_BETOLTETLENALLASHELY = 'F'
) NincsKotelezoOraszam,
(select count(1) from T_ALKALMAZOTT inner join T_MUNKAUGYIADATOK on T_ALKALMAZOTT.ID = T_MUNKAUGYIADATOK.C_ALKALMAZOTTID
INNER JOIN @intezmenyTable i ON T_MUNKAUGYIADATOK.C_INTEZMENYID = i.id AND T_MUNKAUGYIADATOK.C_TANEVID = i.tanevId
where T_MUNKAUGYIADATOK.C_KEPESITES is null
AND T_ALKALMAZOTT.TOROLT ='F' AND (T_MUNKAUGYIADATOK.TOROLT='F'
OR
--Tanár és Képesítés NA
(T_MUNKAUGYIADATOK.C_PEDAGOGUSSTATUSZA <> 3036 AND T_MUNKAUGYIADATOK.C_KEPESITES = 3040)
OR
--Nem tanár és képesítés nem NA
(T_MUNKAUGYIADATOK.C_PEDAGOGUSSTATUSZA = 3036 AND T_MUNKAUGYIADATOK.C_KEPESITES <> 3040))
AND T_MUNKAUGYIADATOK.C_BETOLTETLENALLASHELY = 'F'
) NincsKepesites
from T_ALKALMAZOTT
INNER JOIN @intezmenyTable i ON T_ALKALMAZOTT.C_ALINTEZMENYID = i.id AND T_ALKALMAZOTT.C_ALTANEVID = i.tanevId
inner join T_MUNKAUGYIADATOK on T_ALKALMAZOTT.ID = T_MUNKAUGYIADATOK.C_ALKALMAZOTTID
WHERE T_ALKALMAZOTT.TOROLT='F' and T_MUNKAUGYIADATOK.C_BETOLTETLENALLASHELY = 'F'
group by T_MUNKAUGYIADATOK.C_BETOLTETLENALLASHELY
) Alk
select
Ossz,
NincsEvfolyam,
IIF(Ossz = 0, 0, cast(NincsEvfolyam as float)/cast(Ossz as float) * 100) NincsEvfolyamSzazalek,
NincsTervezettLetszam,
IIF(Ossz = 0, 0, cast(NincsTervezettLetszam as float)/cast(Ossz as float) * 100) NincsTervezettLetszamSzazalek
From
(
select
count(1) Ossz,
(select count(1) from T_OSZTALY inner join T_OSZTALYCSOPORT on T_OSZTALY.ID = T_OSZTALYCSOPORT.ID
INNER JOIN @intezmenyTable i ON T_OSZTALYCSOPORT.C_INTEZMENYID = i.id AND T_OSZTALYCSOPORT.C_TANEVID = i.tanevId
where (T_OSZTALYCSOPORT.C_EVFOLYAMTIPUSA is null OR T_OSZTALYCSOPORT.C_EVFOLYAMTIPUSA = 1296)
AND T_OSZTALY.TOROLT='F' AND T_OSZTALYCSOPORT.TOROLT='F'
) NincsEvfolyam,
(select count(1) from (
select t_osztaly.id
from t_osztaly
inner join t_osztalycsoport on t_osztaly.id = t_osztalycsoport.id
INNER JOIN @intezmenyTable i ON T_OSZTALYCSOPORT.C_INTEZMENYID = i.id AND T_OSZTALYCSOPORT.C_TANEVID = i.tanevId
left join T_TANULOCSOPORT on t_osztaly.id = T_TANULOCSOPORT.C_OSZTALYCSOPORTID and
T_TANULOCSOPORT.TOROLT ='F' and t_tanulocsoport.C_BELEPESDATUM <= GETDATE() AND
(T_TANULOCSOPORT.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT.C_KILEPESDATUM > GETDATE())
where t_tanulocsoport.id is null
and t_osztaly.torolt ='F' and t_osztalycsoport.TOROLT='F'
group by t_osztaly.ID ) Osztaly
) NincsTervezettLetszam
from T_OSZTALY
inner join T_OSZTALYCSOPORT on T_OSZTALY.ID = T_OSZTALYCSOPORT.ID
INNER JOIN @intezmenyTable i ON T_OSZTALYCSOPORT.C_INTEZMENYID = i.id AND T_OSZTALYCSOPORT.C_TANEVID = i.tanevId
AND T_OSZTALY.TOROLT='F'
) Oszt
select
Ossz,
NincsCsoportTipus,
IIF(Ossz = 0, 0, cast(NincsCsoportTipus as float)/cast(Ossz as float) * 100) NincsCsoportTipusSzazalek,
NincsEvfolyam,
IIF(Ossz = 0, 0, cast(NincsEvfolyam as float)/cast(Ossz as float) * 100) NincsEvfolyamSzazalek,
NincsTervezettLetszam,
IIF(Ossz = 0, 0, cast(NincsTervezettLetszam as float)/cast(Ossz as float) * 100) NincsTervezettLetszamSzazalek
From
(
select
count(1) Ossz,
(select count(1) from T_CSOPORT inner join T_OSZTALYCSOPORT on T_CSOPORT.ID = T_OSZTALYCSOPORT.ID
INNER JOIN @intezmenyTable i ON T_OSZTALYCSOPORT.C_INTEZMENYID = i.id AND T_OSZTALYCSOPORT.C_TANEVID = i.tanevId
where (T_CSOPORT.C_TIPUSA is null OR T_CSOPORT.C_TIPUSA = 1031)
AND T_CSOPORT.TOROLT='F' AND T_OSZTALYCSOPORT.TOROLT='F') NincsCsoportTipus,
(select count(1) from T_CSOPORT inner join T_OSZTALYCSOPORT on T_CSOPORT.ID = T_OSZTALYCSOPORT.ID
INNER JOIN @intezmenyTable i ON T_OSZTALYCSOPORT.C_INTEZMENYID = i.id AND T_OSZTALYCSOPORT.C_TANEVID = i.tanevId
where (T_OSZTALYCSOPORT.C_EVFOLYAMTIPUSA is null OR T_OSZTALYCSOPORT.C_EVFOLYAMTIPUSA = 1296)
AND T_CSOPORT.TOROLT='F' AND T_OSZTALYCSOPORT.TOROLT='F') NincsEvfolyam,
(select count(1) from (
select t_csoport.id
from t_csoport
inner join t_osztalycsoport on t_csoport.id = t_osztalycsoport.id
INNER JOIN @intezmenyTable i ON T_OSZTALYCSOPORT.C_INTEZMENYID = i.id AND T_OSZTALYCSOPORT.C_TANEVID = i.tanevId
left join T_TANULOCSOPORT on t_csoport.id = T_TANULOCSOPORT.C_OSZTALYCSOPORTID and
T_TANULOCSOPORT.TOROLT ='F' and t_tanulocsoport.C_BELEPESDATUM <= GETDATE() AND
(T_TANULOCSOPORT.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT.C_KILEPESDATUM > GETDATE())
where t_tanulocsoport.id is null
and t_csoport.torolt ='F' and t_osztalycsoport.TOROLT='F' AND T_CSOPORT.C_TIPUSA != @utazoGyogypedagogusCsoportjaCsoportTipusa
group by t_csoport.ID ) Csoport
) NincsTervezettLetszam
from T_CSOPORT
inner join T_OSZTALYCSOPORT on T_CSOPORT.ID = T_OSZTALYCSOPORT.ID
INNER JOIN @intezmenyTable i ON T_OSZTALYCSOPORT.C_INTEZMENYID = i.id AND T_OSZTALYCSOPORT.C_TANEVID = i.tanevId
AND T_CSOPORT.TOROLT='F'
) Csop
select
Ossz,
NincsTargyKategoria,
IIF(Ossz = 0, 0, cast(NincsTargyKategoria as float)/cast(Ossz as float) * 100) NincsTargyKategoriaSzazalek
From
(
select
count(1) Ossz,
(select count(1) from T_TANTARGY
INNER JOIN @intezmenyTable i ON T_TANTARGY.C_INTEZMENYID = i.id AND T_TANTARGY.C_TANEVID = i.tanevId
where (T_TANTARGY.C_TARGYKATEGORIA is null OR T_TANTARGY.C_TARGYKATEGORIA = 1197)
AND T_TANTARGY.TOROLT='F') NincsTargyKategoria
from T_TANTARGY
INNER JOIN @intezmenyTable i ON T_TANTARGY.C_INTEZMENYID = i.id AND T_TANTARGY.C_TANEVID = i.tanevId
WHERE T_TANTARGY.TOROLT='F'
) Targy
END

View file

@ -0,0 +1,37 @@
-- =============================================
-- Description: <Előszedjük az intézmény adott tanévének az ePénztárca egyenlegét>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetIntezmenyiEgyenleg]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetIntezmenyiEgyenleg]
END
GO
CREATE PROCEDURE [dbo].[sp_GetIntezmenyiEgyenleg]
@pIntezmenyId INT,
@pTanevId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
EPenztarcaParameterek.C_AKTUALISEGYENLEG
FROM
[T_EPENZTARCAPARAMETEREK] AS EPenztarcaParameterek
WHERE
EPenztarcaParameterek.C_INTEZMENYID = @pIntezmenyId AND
EPenztarcaParameterek.C_TANEVID = @pTanevId AND
EPenztarcaParameterek.TOROLT = 'F'
END
GO

View file

@ -0,0 +1,59 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetIskolalatogatasiIgazolas]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetIskolalatogatasiIgazolas]
END
GO
-- =============================================
-- Author: S<>lyom P<>ter
-- Create date: 2015.12.07.
-- Description: Iskolal<61>togat<61>si igazol<6F>s nyomtatv<74>ny.
-- =============================================
CREATE PROCEDURE [sp_GetIskolalatogatasiIgazolas]
@osztalyId int,
@TanevId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- fejl<6A>c
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
T_INTEZMENYADATOK_OSSZES.C_IGAZGATONEVE IGAZGATONEVE,
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM IntezmenyIranyitoszam,
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
T_INTEZMENYADATOK_OSSZES.C_CIME IntezmenyCime,
(SELECT C_OSZTALYFONOKID FROM T_OSZTALY_OSSZES WHERE ID=@osztalyId and TOROLT = 'F') PartnerID,
T_TANEV_OSSZES.C_NEV TANEV,
(SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID=@osztalyId) Osztaly
FROM T_INTEZMENYADATOK_OSSZES
inner join T_TANEV_OSSZES
on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID and T_TANEV_OSSZES.TOROLT = 'F'
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
AND T_TANEV_OSSZES.ID = @TanevId
-- TANUL<55>K
SELECT FELH.ID,
FELH.C_NYOMTATASINEV TANULONEV,
FELH.C_OKTATASIAZONOSITO OKTATASIAZONOSITO,
FELH.C_SZULETESIDATUM SZULETESIIDO,
FELH.C_SZULETESIHELY SZULETESIHELY,
FELH.C_ANYJANEVE ANYJANEVE
FROM T_FELHASZNALO_OSSZES FELH
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = FELH.ID
WHERE FELH.TOROLT ='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND FELH.C_TANEVID = @TanevId
ORDER BY FELH.C_NYOMTATASINEV
END
GO

View file

@ -0,0 +1,45 @@
GO
/****** Object: StoredProcedure [dbo].[sp_GetJelenletiIvAdatok] Script Date: 2016.01.27. 11:15:53 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[sp_GetJelenletiIvAdatok]
@foglalkozasId int,
@TanevId int
AS
BEGIN
SET NOCOUNT ON;
--Fejléc
select
T_FOGLALKOZAS_OSSZES.ID,
T_OSZTALYCSOPORT_OSSZES.C_NEV OsztCsopNev,
T_TANTARGY_OSSZES.C_NEV TargyNev,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TanarNev,
T_INTEZMENYADATOK_OSSZES.C_NEV Intezmeny
from T_FOGLALKOZAS_OSSZES
left join T_OSZTALYCSOPORT_OSSZES on T_OSZTALYCSOPORT_OSSZES.ID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID and T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
left join T_TANTARGY_OSSZES on T_TANTARGY_OSSZES.ID = T_FOGLALKOZAS_OSSZES.C_TANTARGYID and T_TANTARGY_OSSZES.TOROLT = 'F'
left join T_INTEZMENYADATOK_OSSZES on T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID = T_FOGLALKOZAS_OSSZES.C_INTEZMENYID and T_INTEZMENYADATOK_OSSZES.C_TANEVID = T_FOGLALKOZAS_OSSZES.C_TANEVID and T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
inner join T_FOGLALKOZASOK_TANAROK on T_FOGLALKOZAS_OSSZES.ID = T_FOGLALKOZASOK_TANAROK.C_FOGLALKOZASOKID
left join T_FELHASZNALO_OSSZES ON T_FELHASZNALO_OSSZES.ID = T_FOGLALKOZASOK_TANAROK.C_TANAROKID and T_FELHASZNALO_OSSZES.TOROLT = 'F'
where T_FOGLALKOZAS_OSSZES.TOROLT = 'F'
and T_FOGLALKOZAS_OSSZES.ID = @foglalkozasId
and T_FOGLALKOZAS_OSSZES.C_TANEVID = @TanevId
select distinct
T_FELHASZNALO_OSSZES.ID,
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO OMID,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TanuloNev
from T_TANULO_OSSZES
left join T_FELHASZNALO_OSSZES on T_FELHASZNALO_OSSZES.ID = T_TANULO_OSSZES.ID and T_FELHASZNALO_OSSZES.TOROLT = 'F'
left join (select C_TANULOID,C_OSZTALYCSOPORTID from T_TANULOCSOPORT_OSSZES
where TOROLT = 'F' and C_BELEPESDATUM < GETDATE() and (C_KILEPESDATUM is null or C_KILEPESDATUM > GETDATE())) TCS on TCS.C_TANULOID = T_TANULO_OSSZES.ID
left join T_FOGLALKOZAS_OSSZES on T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID = TCS.C_OSZTALYCSOPORTID and T_FOGLALKOZAS_OSSZES.TOROLT = 'F'
where T_TANULO_OSSZES.TOROLT = 'F'
and T_FOGLALKOZAS_OSSZES.ID = @foglalkozasId
and T_FOGLALKOZAS_OSSZES.C_TANEVID = @TanevId
order by T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
END

View file

@ -0,0 +1,107 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[sp_GetMagatartasSzorgalomErtekelesReszletek]') IS NOT NULL
BEGIN
DROP PROCEDURE [sp_GetMagatartasSzorgalomErtekelesReszletek]
END
GO
-- =============================================
-- Description: <Előszedjük a tanuló magatartás, szorgalom értékeléseit részletesen>
-- =============================================
CREATE PROCEDURE [sp_GetMagatartasSzorgalomErtekelesReszletek]
@pIntezmenyId INT,
@pTanevId INT,
@pTanuloId INT,
@pToroltElemek CHAR = 'F',
@pTanarId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
TanuloErtekeles.ID
,TanuloErtekeles.C_ERTEKELESDATUM AS ErtekelesDatuma
,TanuloErtekeles.C_ERTEKELESTIPUSA AS ErtekelesTipusa
,TanuloErtekeles.C_ERTEKELESSZOVEG AS ErtekelesSzovege
,TanuloErtekeles.C_OSZTALYZAT AS Osztalyzat
,TanuloErtekeles.C_TANORAID TanoraID
,OsztalyfonokiErtekeles.C_MAGATARTAS as Magatartas
,OsztalyfonokiErtekeles.C_SZORGALOM as Szorgalom
,TanuloErtekeles.TOROLT AS Torolt
,TanuloCsoport.C_TANULOID AS TanuloId
,Felhasznalo.C_NYOMTATASINEV AS Ertekelo
,CASE
WHEN TanuloErtekeles.CREATOR = @pTanarId
THEN 'T'
ELSE 'F'
END Modosithato
FROM(
SELECT DISTINCT
[C_TANULOID]
FROM
[T_TANULOCSOPORT]
WHERE
[TOROLT] = 'F'
AND [C_TANULOID] = @pTanuloId
AND [C_BELEPESDATUM] < GETDATE()
AND ([C_KILEPESDATUM] IS NULL OR [C_KILEPESDATUM] >= GETDATE())
AND [C_INTEZMENYID] = @pIntezmenyId
AND [C_TANEVID] = @pTanevId
) AS TanuloCsoport
INNER JOIN (
SELECT
[ID]
,[C_ERTEKELESDATUM]
,[C_ERTEKELESTIPUSA]
,[C_ERTEKELESSZOVEG]
,[C_OSZTALYZAT]
,[C_TANULOID]
,[C_ERTEKELOID]
,[C_TANORAID]
,[TOROLT]
,[CREATOR]
FROM
[T_TANULOERTEKELES_OSSZES]
WHERE
--Ha a törölt flag True, a törölt elemeket is visszaadjuk
[TOROLT] = IIF(@pToroltElemek = 'T', [TOROLT], 'F')
AND [C_INTEZMENYID] = @pIntezmenyId
AND [C_TANEVID] = @pTanevId
) AS TanuloErtekeles
ON TanuloCsoport.C_TANULOID = TanuloErtekeles.C_TANULOID
INNER JOIN (
SELECT
[ID]
,[C_MAGATARTAS]
,[C_SZORGALOM]
,[TOROLT]
FROM
[T_OSZTALYFONOKIERTEKELES_OSSZES]
WHERE
--Ha a törölt flag True, a törölt elemeket is visszaadjuk
[TOROLT] = IIF(@pToroltElemek = 'T', [TOROLT], 'F')
AND [C_ALINTEZMENYID] = @pIntezmenyId
AND [C_ALTANEVID] = @pTanevId
) AS OsztalyfonokiErtekeles
ON OsztalyfonokiErtekeles.ID = TanuloErtekeles.ID
INNER JOIN (
SELECT
[ID]
,[C_NYOMTATASINEV]
FROM
[T_FELHASZNALO]
WHERE
[TOROLT] = 'F'
AND [C_INTEZMENYID] = @pIntezmenyId
AND [C_TANEVID] = @pTanevId
) AS Felhasznalo
ON Felhasznalo.ID = TanuloErtekeles.C_ERTEKELOID
END

View file

@ -0,0 +1,160 @@
GO
/****** Object: StoredProcedure [KR_BEDO_Schema].[sp_GetMasodikNegyedeviErtesito] Script Date: 2016.05.26. 11:22:19 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetMasodikNegyedeviErtesito]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetMasodikNegyedeviErtesito]
END
GO
CREATE PROCEDURE [sp_GetMasodikNegyedeviErtesito]
@osztalyId int,
@TanevId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- fejléc
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM IntezmenyIranyitoszam,
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
T_INTEZMENYADATOK_OSSZES.C_CIME IntezmenyCime,
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
T_INTEZMENYADATOK_OSSZES.C_OMKOD IntezmenyOMKod,
(SELECT C_OSZTALYFONOKID FROM T_OSZTALY_OSSZES WHERE ID=@osztalyId and TOROLT = 'F') PartnerID,
T_TANEV_OSSZES.C_NEV TANEV
FROM T_INTEZMENYADATOK_OSSZES
inner join T_TANEV_OSSZES
on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID and T_TANEV_OSSZES.TOROLT = 'F'
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
and T_TANEV_OSSZES.ID = @TanevId
-- TANULÓK
SELECT T_FELHASZNALO_OSSZES.ID TANULOID,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TANULONEV,
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO OKTATASIAZONOSITO
FROM T_FELHASZNALO_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
WHERE T_FELHASZNALO_OSSZES.TOROLT='F'
and TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
and T_FELHASZNALO_OSSZES.C_TANEVID = @TanevId
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
-- ÉRTÉKELÉSEK
SELECT ERTEKELES.C_TANULOID TANULOID,
'MAGATARTAS' TARGYNEV,
OSZTALYZAT.MAGATARTAS NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_MAGATARTAS MAGATARTAS FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1524
AND OSZTALYZAT.MAGATARTAS IS NOT NULL -- II.Negyedév
AND ERTEKELES.C_TANEVID = @TanevId
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
'SZORGALOM' TARGYNEV,
OSZTALYZAT.SZORGALOM NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_SZORGALOM SZORGALOM FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1524
AND OSZTALYZAT.SZORGALOM IS NOT NULL -- II.Negyedév
AND ERTEKELES.C_TANEVID = @TanevId
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
TARGY.TARGYNEV TARGYNEV,
ERTEKELES.C_OSZTALYZAT NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
JOIN ( SELECT ID,C_NEV TARGYNEV,C_TARGYKATEGORIA KAT FROM T_TANTARGY_OSSZES where TOROLT = 'F') TARGY
ON TARGY.ID = ERTEKELES.C_TANTARGYID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND TARGY.KAT != 1248 --Osztályfőnöki nem jelenítődik meg
AND ERTEKELES.C_ERTEKELESTIPUSA = 1524 -- II.Negyedév
AND ERTEKELES.C_TANEVID = @TanevId
ORDER BY TANULOID, TARGYNEV
-- MULASZTÁSOK
SELECT MULASZT.C_TANULOID TANULOID,
CASE WHEN MULASZT.C_STATISZTIKATIPUS = 1656 THEN 'IGAZOLT' ELSE 'IGAZOLATLAN' END TIPUS,
MULASZT.C_MASODIKNEGYEDEV ORASZAM
FROM T_TANULOMULASZTASSTATISZTIKA_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_TANULOID
WHERE MULASZT.TOROLT ='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND MULASZT.C_STATISZTIKATIPUS IN (1656,1662) -- IGAZOLT VAGY IGAZOLATLAN
AND MULASZT.C_TANEVID = @TanevId
-- TANTÁRGYI MENTESSÉGEK
SELECT MENTESSEG.C_TANULOID TANULOID,
TARGY.TARGYNEV,
MENTESSEG.C_MENTESSEGOKA MENTESSEGOKA
FROM T_TANULOMENTESSEG_OSSZES MENTESSEG
JOIN (SELECT ID, C_NEV TARGYNEV FROM T_TANTARGY_OSSZES WHERE TOROLT='F') TARGY
ON TARGY.ID = MENTESSEG.C_TANTARGYID
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MENTESSEG.C_TANULOID
WHERE MENTESSEG.TOROLT = 'F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND MENTESSEG.C_TANEVID = @TanevId
ORDER BY MENTESSEG.C_TANULOID, TARGY.TARGYNEV
-- BEJEGYZÉSEK
SELECT T_TANULOESEMENY_OSSZES.C_TANULOID TANULOID,
C_TARTALOM BEJEGYZES,
C_TIPUS TIPUS
FROM T_TANULOESEMENY_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_TANULOESEMENY_OSSZES.C_TANULOID
WHERE T_TANULOESEMENY_OSSZES.TOROLT='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND T_TANULOESEMENY_OSSZES.C_TIPUS = 1550
AND T_TANULOESEMENY_OSSZES.C_TIPUS != 1534
AND T_TANULOESEMENY_OSSZES.C_TANEVID = @TanevId
ORDER BY T_TANULOESEMENY_OSSZES.C_TANULOID
--OSZTÁLY
SELECT
T_OSZTALYCSOPORT_OSSZES.C_NEV OSZTALYNEV,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV OSZTALYFONOKNEV
FROM T_OSZTALY_OSSZES
INNER JOIN T_FELHASZNALO_OSSZES ON T_OSZTALY_OSSZES.C_OSZTALYFONOKID = T_FELHASZNALO_OSSZES.ID and T_FELHASZNALO_OSSZES.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT_OSSZES ON T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID and T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT='F'
AND T_OSZTALYCSOPORT_OSSZES.ID=@osztalyId
AND T_OSZTALY_OSSZES.C_ALTANEVID = @TanevId
END
GO

View file

@ -0,0 +1,114 @@
IF OBJECT_ID('dbo.sp_GetMulasztasokNaploNezetData') IS NOT NULL BEGIN
DROP PROCEDURE dbo.sp_GetMulasztasokNaploNezetData
END
GO
CREATE PROCEDURE dbo.sp_GetMulasztasokNaploNezetData
@pOsztalyCsoportId INT
,@pDatum DATE
AS
BEGIN
DECLARE @tempTable TABLE(
TanitasiOraId INT NOT NULL,
OsztalyCsoportId INT NOT NULL,
OsztalyCsoportNev NVARCHAR(255) NOT NULL,
OsztalyNev NVARCHAR(255) NOT NULL,
TantargyId INT NOT NULL,
TantargyNev NVARCHAR(255) NOT NULL,
TanarId INT NOT NULL,
TanarNev NVARCHAR(255) NOT NULL,
OraSorszam INT NULL,
OraKezdete DATETIME NULL
);
INSERT INTO @tempTable
SELECT
tn.ID AS TanitasiOraId
,kocs.ID AS OsztalyCsoportId
,ocs.C_NEV AS OsztalyCsoportNev
,o.C_NEV AS OsztalyNev
,tt.ID AS TantargyId
,tt.C_NEV AS TantargyNev
,fa.ID AS TanarId
,fa.C_NYOMTATASINEV AS TanarNev
,IIF(tn.C_CSENGETESIRENDORAID IS NOT NULL, tn.C_ORASZAM, NULL) AS OraSorszam
,IIF(tn.C_CSENGETESIRENDORAID IS NULL, tn.C_ORAKEZDETE, NULL) AS OraKezdete
FROM
T_TANITASIORA tn
INNER JOIN dbo.fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyCsoportId, @pDatum, @pDatum) kocs ON kocs.ID = tn.C_OSZTALYCSOPORTID
INNER JOIN T_TANTARGY tt ON tt.ID = tn.C_TANTARGYID AND tt.TOROLT = 'F'
INNER JOIN T_FELHASZNALO fa ON fa.ID = tn.C_ORATULAJDONOSID AND fa.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = kocs.ID AND ocs.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT o ON o.ID = @pOsztalyCsoportId AND o.TOROLT = 'F'
WHERE
CAST(tn.C_DATUM AS DATE) = CAST(@pDatum AS DATE)
AND tn.C_MEGTARTOTT = 'T'
AND tn.TOROLT = 'F'
SELECT
tcs.C_TANULOID AS TanuloId
,ft.C_NYOMTATASINEV AS TanuloNev
,ft.C_ANYJANEVE AS AnyjaNeve
,ft.C_SZULETESIDATUM AS SzuletesiIdo
,tbl.OsztalyCsoportId
,tbl.OsztalyCsoportNev
,tbl.OsztalyNev
,tbl.TantargyId
,tbl.TantargyNev
,tbl.TanarId
,tbl.TanarNev
,tbl.OraSorszam
,tbl.OraKezdete
,tbl.TanitasiOraId
,tm.ID AS MulasztasId
,tm.C_TIPUS AS MulasztasTipus
,tm.C_IGAZOLT AS IsIgazolt
,tm.C_IGAZOLASTIPUSA AS IgazolasTipus
,tm.C_MEGJEGYZES AS Megjegyzes
,tm.C_KESESPERCBEN AS KesesPercben
-- ,
FROM (
SELECT
C_TANULOID, C_OSZTALYCSOPORTID
FROM
T_TANULOCSOPORT
WHERE
C_OSZTALYCSOPORTID = @pOsztalyCsoportId
AND C_BELEPESDATUM <= @pDatum
AND (C_KILEPESDATUM > @pDatum OR C_KILEPESDATUM IS NULL)
AND TOROLT = 'F'
AND C_TANULOID IN (
SELECT C_TANULOID
FROM T_TANULOCSOPORT
WHERE
T_TANULOCSOPORT.C_OSZTALYCSOPORTID IN (SELECT OsztalyCsoportId FROM @tempTable)
AND T_TANULOCSOPORT.C_BELEPESDATUM <= @pDatum
AND (T_TANULOCSOPORT.C_KILEPESDATUM > @pDatum OR T_TANULOCSOPORT.C_KILEPESDATUM IS NULL)
)
) tcs
CROSS JOIN @tempTable tbl
INNER JOIN T_FELHASZNALO ft ON
tcs.C_TANULOID = ft.ID
AND ft.TOROLT = 'F'
LEFT JOIN T_TANULOMULASZTAS tm ON
tcs.C_TANULOID = tm.C_ORATANULOIID
AND tm.C_TANITASIORAKID = tbl.TanitasiOraId
AND tm.TOROLT = 'F'
WHERE
tcs.C_TANULOID IN (
SELECT C_TANULOID
FROM T_TANULOCSOPORT
WHERE
tbl.OsztalyCsoportId = T_TANULOCSOPORT.C_OSZTALYCSOPORTID
AND T_TANULOCSOPORT.C_BELEPESDATUM <= @pDatum
AND (T_TANULOCSOPORT.C_KILEPESDATUM > @pDatum OR T_TANULOCSOPORT.C_KILEPESDATUM IS NULL)
)
ORDER BY
ft.C_NYOMTATASINEV
END
GO

View file

@ -0,0 +1,359 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetMunkaidoElszamoloLap]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetMunkaidoElszamoloLap]
END
GO
CREATE PROCEDURE [dbo].[sp_GetMunkaidoElszamoloLap]
@tanarid int,
@TanevId int,
@honapId int
AS
BEGIN
SET NOCOUNT ON;
DECLARE @Honap INT = (
SELECT DISTINCT
dictionaryItemBase.C_VALUE
FROM
T_DICTIONARYITEMBASE_OSSZES dictionaryItemBase
WHERE
dictionaryItemBase.ID = @honapId)
SELECT TOP 1
DATEPART(YEAR, naptariNap.C_NAPDATUMA) Ev,
DATEPART(MONTH, naptariNap.C_NAPDATUMA) Honap
FROM
T_NAPTARINAP_OSSZES naptariNap
WHERE
DATEPART(MONTH,naptariNap.C_NAPDATUMA) = @Honap AND
naptariNap.C_TANEVID = @TanevId AND
naptariNap.TOROLT = 'F'
--===================================
--FEJLÉC
--===================================
SELECT
IIF (T_INTEZMENYADATOK_OSSZES.C_ROVIDNEV IS NULL, T_INTEZMENYADATOK_OSSZES.C_NEV, T_INTEZMENYADATOK_OSSZES.C_ROVIDNEV ) IntezmenyNeve,
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM IntezmenyIranyitoszam,
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
T_INTEZMENYADATOK_OSSZES.C_CIME IntezmenyCime,
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
T_INTEZMENYADATOK_OSSZES.C_OMKOD IntezmenyOMKod,
T_TANEV_OSSZES.C_NEV TANEV,
(SELECT C_NYOMTATASINEV FROM T_FELHASZNALO_OSSZES WHERE T_FELHASZNALO_OSSZES.ID = @tanarid AND T_FELHASZNALO_OSSZES.C_TANEVID = @TanevId AND T_FELHASZNALO_OSSZES.TOROLT='F') TanarNev,
@tanarid PartnerID
FROM T_INTEZMENYADATOK_OSSZES
INNER JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID and T_TANEV_OSSZES.TOROLT = 'F'
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
and T_TANEV_OSSZES.ID = @TanevId
--===================================
--MEGTARTOTT TANÓRÁK, HELYETTESÍTÉSEK
--===================================
SELECT OsztalyCsoportID, OsztalyCsoportNev, Honap,
[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], [26], [27], [28], [29], [30], [31],
[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]+[26]+[27]+[28]+[29]+[30]+[31] Ossz
FROM
(
SELECT
DATEPART(DAY, T_TANITASIORA_OSSZES.C_DATUM) Nap,
DATEPART(Month, T_TANITASIORA_OSSZES.C_DATUM) Honap,
T_OSZTALYCSOPORT_OSSZES.ID OsztalyCsoportID,
T_OSZTALYCSOPORT_OSSZES.ID ocsId,
T_OSZTALYCSOPORT_OSSZES.c_nev OsztalyCsoportNev
FROM T_TANITASIORA_OSSZES
INNER JOIN T_FOGLALKOZAS_OSSZES on T_TANITASIORA_OSSZES.C_FOGLALKOZASID = T_FOGLALKOZAS_OSSZES.ID
INNER JOIN T_FOGLALKOZASOK_TANAROK on T_FOGLALKOZAS_OSSZES.ID=T_FOGLALKOZASOK_TANAROK.C_FOGLALKOZASOKID
INNER JOIN T_OSZTALYCSOPORT_OSSZES on T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID = T_OSZTALYCSOPORT_OSSZES.ID
WHERE T_FOGLALKOZASOK_TANAROK.C_TANAROKID=@tanarid
AND T_TANITASIORA_OSSZES.C_TANEVID = @TanevId
AND DATEPART(MONTH, T_TANITASIORA_OSSZES.C_DATUM) = @Honap
AND T_TANITASIORA_OSSZES.TOROLT='F'
AND T_FOGLALKOZAS_OSSZES.TOROLT='F'
AND T_OSZTALYCSOPORT_OSSZES.TOROLT='F'
AND T_TANITASIORA_OSSZES.C_MEGTARTOTT='T')a
PIVOT
(
COUNT(ocsId)
FOR Nap IN ([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], [26], [27], [28], [29], [30], [31])
) OsszTanora
--szakszerű helyettesítés
SELECT OsztalyCsoportID, OsztalyCsoportNev, Honap,
[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], [26], [27], [28], [29], [30], [31],
[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]+[26]+[27]+[28]+[29]+[30]+[31] Ossz
FROM
(
SELECT
DATEPART(DAY, tao.C_DATUM) Nap,
DATEPART(MONTH,tao.C_DATUM) Honap,
ocs.C_NEV OsztalyCsoportNev,
tao.C_OSZTALYCSOPORTID oraid,
tao.C_OSZTALYCSOPORTID OsztalyCsoportID
FROM T_TANITASIORA_OSSZES tao
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs on ocs.id=tao.C_OSZTALYCSOPORTID
WHERE tao.C_HELYETTESITOTANARID=@tanarid
AND DATEPART(MONTH, tao.C_DATUM) = @Honap
AND tao.TOROLT='F'
AND tao.C_HELYETTESITESTIPUSA=1494
AND tao.C_TANEVID=@TanevId
)a
PIVOT
(
COUNT(oraID)
FOR Nap IN ([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], [26], [27], [28], [29], [30], [31])
) SzakszeruHelyettesites
--nem szakszerű helyettesítés
SELECT OsztalyCsoportID, OsztalyCsoportNev, Honap,
[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], [26], [27], [28], [29], [30], [31],
[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]+[26]+[27]+[28]+[29]+[30]+[31] Ossz
FROM
(
SELECT
DATEPART(DAY, tao.C_DATUM) Nap,
DATEPART(MONTH,tao.C_DATUM) Honap,
ocs.C_NEV OsztalyCsoportNev,
tao.C_OSZTALYCSOPORTID oraid,
tao.C_OSZTALYCSOPORTID OsztalyCsoportID
FROM T_TANITASIORA_OSSZES tao
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs on ocs.id=tao.C_OSZTALYCSOPORTID
WHERE tao.C_HELYETTESITOTANARID=@tanarid
AND DATEPART(MONTH, tao.C_DATUM) = @Honap
AND tao.TOROLT='F'
AND tao.C_HELYETTESITESTIPUSA=1495
AND tao.C_TANEVID=@TanevId
)a
PIVOT
(
COUNT(oraID)
FOR Nap IN ([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], [26], [27], [28], [29], [30], [31])
) NemSzakszeruHelyettesites
--óraösszevonás
SELECT OsztalyCsoportID, OsztalyCsoportNev, Honap,
[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], [26], [27], [28], [29], [30], [31],
[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]+[26]+[27]+[28]+[29]+[30]+[31] Ossz
FROM
(
SELECT
DATEPART(DAY, tao.C_DATUM) Nap,
DATEPART(MONTH,tao.C_DATUM) Honap,
ocs.C_NEV OsztalyCsoportNev,
tao.C_OSZTALYCSOPORTID oraid,
tao.C_OSZTALYCSOPORTID OsztalyCsoportID
FROM T_TANITASIORA_OSSZES tao
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs on ocs.ID=tao.C_OSZTALYCSOPORTID
WHERE tao.C_HELYETTESITOTANARID=@tanarid
AND DATEPART(MONTH, tao.C_DATUM) = @Honap
AND tao.TOROLT='F'
AND tao.C_HELYETTESITESTIPUSA=1496
AND tao.C_TANEVID=@TanevId
)a
PIVOT
(
COUNT(oraID)
FOR Nap IN ([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], [26], [27], [28], [29], [30], [31])
) Oraosszevonas
--tanóránkívüli
SELECT OsztalyCsoportID, OsztalyCsoportNev, Honap,
[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], [26], [27], [28], [29], [30], [31],
[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]+[26]+[27]+[28]+[29]+[30]+[31] Ossz
FROM
(
SELECT
DATEPART(DAY, tao.C_DATUM) Nap,
DATEPART(MONTH,tao.C_DATUM) Honap,
ocs.C_NEV OsztalyCsoportNev,
tao.C_OSZTALYCSOPORTID oraid,
tao.C_OSZTALYCSOPORTID OsztalyCsoportID
FROM T_TANITASIORA_OSSZES tao
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs on ocs.id=tao.C_OSZTALYCSOPORTID
INNER JOIN T_FOGLALKOZAS_OSSZES fog on fog.id=tao.C_FOGLALKOZASID AND fog.C_FOGLALKOZASTIPUSA=1371
INNER JOIN T_FOGLALKOZASOK_TANAROK ft on ft.C_FOGLALKOZASOKID=fog.ID AND ft.c_tanarokid=@tanarId
WHERE DATEPART(MONTH, tao.C_DATUM) = @Honap and tao.TOROLT='F' AND tao.C_TANEVID=@TanevId
)a
PIVOT
(
COUNT(oraID)
FOR Nap IN ([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], [26], [27], [28], [29], [30], [31])
) TanoranKivuli
--egyéni foglalkozas
SELECT
OsztalyCsoportID, OsztalyCsoportNev, Honap,
[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], [26], [27], [28], [29], [30], [31],
[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]+[26]+[27]+[28]+[29]+[30]+[31] Ossz
FROM
(
SELECT
DATEPART(DAY, tao.C_DATUM) Nap,
DATEPART(MONTH,tao.C_DATUM) Honap,
ocs.C_NEV OsztalyCsoportNev,
tao.C_OSZTALYCSOPORTID oraid,
tao.C_OSZTALYCSOPORTID OsztalyCsoportID
FROM T_TANITASIORA_OSSZES tao
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs on ocs.id=tao.C_OSZTALYCSOPORTID
INNER JOIN T_FOGLALKOZAS_OSSZES fog on fog.id=tao.C_FOGLALKOZASID AND fog.C_FOGLALKOZASTIPUSA=1371
INNER JOIN T_FOGLALKOZASOK_TANAROK ft on ft.C_FOGLALKOZASOKID=fog.ID AND ft.C_TANAROKID=@tanarId
WHERE DATEPART(MONTH, tao.C_DATUM) = @Honap
AND tao.TOROLT='F'
AND tao.C_TANEVID=@TanevId
)a
PIVOT
(
COUNT(oraID)
FOR Nap IN ([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], [26], [27], [28], [29], [30], [31])
) Oraosszevonas
--============================================
--NEVELÉSSEL-OKTATÁSSAL LE NEM KÖTÖTT MUNKAIDŐ
--============================================
--ÖSSZESEN
SELECT Honap,
[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], [26], [27], [28], [29], [30], [31],
isnull([1],0)+isnull([2],0)+isnull([3],0)+isnull([4],0)+isnull([5],0)+
isnull([6],0)+isnull([7],0)+isnull([8],0)+isnull([9],0)+isnull([10],0)+
isnull([11],0)+isnull([12],0)+isnull([13],0)+isnull([14],0)+isnull([15],0)+
isnull([16],0)+isnull([17],0)+isnull([18],0)+isnull([19],0)+isnull([20],0)+
isnull([21],0)+isnull([22],0)+isnull([23],0)+isnull([24],0)+isnull([25],0)+
isnull([26],0)+isnull([27],0)+isnull([28],0)+isnull([29],0)+isnull([30],0)+isnull([31],0) Ossz
FROM
(
SELECT
DATEPART(DAY, C_KEZDETE) Nap,
DATEPART(MONTH, C_KEZDETE) Honap,
datepart(hour,C_VEGE-C_KEZDETE)+convert(float,datepart(MINUTE,C_VEGE-C_KEZDETE))/60 Oraszam
FROM T_NEMKOTOTTMUNKAIDO_OSSZES
WHERE
C_MEGTARTOTT='T'
AND C_TANARID=@tanarId
AND TOROLT='F'
AND DATEPART(MONTH, C_KEZDETE) = @Honap
AND DATEPART(MONTH, C_VEGE) = @Honap
) Orak
PIVOT
(
SUM(Oraszam)
FOR Nap IN ([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], [26], [27], [28], [29], [30], [31])
) Tevekenyseg
--a hónapban előforduló típusok
SELECT DISTINCT
C_TEVEKENYSEGTIPUSA TipusId,
d.C_NAME Tipus
FROM T_NEMKOTOTTMUNKAIDO_OSSZES
INNER JOIN (SELECT DISTINCT ID, C_NAME FROM T_DICTIONARYITEMBASE) d on d.ID=C_TEVEKENYSEGTIPUSA
WHERE
C_MEGTARTOTT='T'
AND C_TANARID=@tanarId
AND TOROLT='F'
AND DATEPART(MONTH, C_KEZDETE) = @Honap
AND DATEPART(MONTH, C_VEGE) = @Honap
--sorokra (tipusokra) lebontva
SELECT Honap,
Tipus TipusId, [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], [26], [27], [28], [29], [30], [31],
isnull([1],0)+isnull([2],0)+isnull([3],0)+isnull([4],0)+isnull([5],0)+
isnull([6],0)+isnull([7],0)+isnull([8],0)+isnull([9],0)+isnull([10],0)+
isnull([11],0)+isnull([12],0)+isnull([13],0)+isnull([14],0)+isnull([15],0)+
isnull([16],0)+isnull([17],0)+isnull([18],0)+isnull([19],0)+isnull([20],0)+
isnull([21],0)+isnull([22],0)+isnull([23],0)+isnull([24],0)+isnull([25],0)+
isnull([26],0)+isnull([27],0)+isnull([28],0)+isnull([29],0)+isnull([30],0)+isnull([31],0) Ossz
FROM
(
SELECT
C_TEVEKENYSEGTIPUSA Tipus,
DATEPART(DAY, C_KEZDETE) Nap,
DATEPART(MONTH, C_KEZDETE) Honap,
DATEPART(hour,C_VEGE-C_KEZDETE)+convert(float,datepart(MINUTE,C_VEGE-C_KEZDETE))/60 Oraszam
FROM T_NEMKOTOTTMUNKAIDO_OSSZES
WHERE
C_MEGTARTOTT='T'
AND C_TANARID=@tanarId
AND TOROLT='F'
AND DATEPART(MONTH, C_KEZDETE) = @Honap
AND DATEPART(MONTH, C_VEGE) = @Honap
) Orak
PIVOT
(
SUM(Oraszam)
FOR Nap IN ([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], [26], [27], [28], [29], [30], [31])
) Soronkent
END
GO

View file

@ -0,0 +1,62 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[sp_GetNapkozisCsoportTanuloinakHaviMulasztasiOsszesitoje]
@tanevID int,
@intezmenyId int
AS
BEGIN
declare @honapok table(honap int, honapnev nvarchar(max));
insert into @honapok
select distinct d.c_value as Honap, d.c_name as Honap from t_dictionaryitembase d where c_type like 'honap%' order by d.c_value
declare @napkoziscsoportok table(csoport int, csoportNev nvarchar(max));
insert into @napkoziscsoportok
select distinct tcs.c_osztalycsoportid as Csoport, ocs.c_nev from t_csoport cs
inner join t_osztalycsoport ocs on ocs.id=cs.id
inner join t_tanulocsoport tcs on tcs.c_osztalycsoportid=ocs.id
where cs.c_tipusa=1035 and cs.c_altanevid=@tanevid and cs.c_alintezmenyid=@intezmenyid and cs.torolt='F'
--
DECLARE kurzorHonap CURSOR FOR
select Honap from @honapok
DECLARE @Honap int
DECLARE kurzorCsoport CURSOR FOR
select csoport from @napkoziscsoportok
DECLARE @Csoport int
OPEN kurzorHonap
FETCH NEXT FROM kurzorHonap INTO @Honap
WHILE @@FETCH_STATUS = 0 BEGIN
OPEN kurzorCsoport
FETCH NEXT FROM kurzorCsoport INTO @Csoport
WHILE @@FETCH_STATUS = 0 BEGIN
create table #tabla(COLUMN108 nvarchar(max), [1] int,[2] int,[3] int,[4] int,[5] int,[6] int,[7] int,[8] int,[9] int,[10] int,[11] int,[12] int,[13] int,[14] int,[15] int,[16] int,[17] int,[18] int,[19] int,[20] int,[21] int,[22] int,[23] int,[24] int,[25] int,[26] int,[27] int,[28] int,[29] int,[30] int,[31] int, COLUMN2672 int, COLUMN1910 int, COLUMN5197 int, COLUMN1786 int, COLUMN1787 int, COLUMN1788 int, COLUMN1789 int, COLUMN1911 int)
insert into #tabla
EXEC [dbo].[sp_GetNapkozisCsoportTanuloinakHaviMulasztasiOsszesitoje_1] @tanevID, @intezmenyId, @Csoport, @honap
SELECT * from #tabla
drop table #tabla
FETCH NEXT FROM kurzorCsoport INTO @Csoport
END
FETCH NEXT FROM kurzorHonap INTO @Honap
CLOSE kurzorCsoport
END
CLOSE kurzorHonap
DEALLOCATE kurzorCsoport
DEALLOCATE kurzorHonap
--
select honapnev from @honapok
select csoportnev from @napkoziscsoportok
END
GO

View file

@ -0,0 +1,75 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[sp_GetNapkozisCsoportTanuloinakHaviMulasztasiOsszesitoje_1]
@tanevID int,
@intezmenyId int,
@csoportid int,
@honap int
AS
BEGIN
--Napközis csoportok tan
create table #tanulo (Id int, Osztaly int)
insert into #tanulo
select tcs.c_tanuloid Tanulo, tcs.c_osztalycsoportid as Csoport from t_csoport cs
inner join t_osztalycsoport ocs on ocs.id=cs.id
inner join t_tanulocsoport tcs on tcs.c_osztalycsoportid=ocs.id
where cs.c_tipusa=1035 and cs.c_altanevid=@tanevid and cs.c_alintezmenyid=@intezmenyid and cs.torolt='F' and tcs.c_osztalycsoportid=@csoportid
--Igazolások és típusai
create table #igazolas (Tanulo int, IgazoltE nvarchar(1), IgazolasTipus int)
insert into #igazolas
select tm.c_oratanuloiid as Tanulo, tm.c_igazolt as IgazoltE, tm.c_igazolastipusa as IgazolasTipus from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid and tao.torolt='F' and tao.c_tanevid=@tanevid and tao.c_intezmenyid=@intezmenyid and (CAST(MONTH(tao.c_datum) AS VARCHAR))=@honap
inner join t_csoport cs on cs.id=tao.c_osztalycsoportid and cs.c_tipusa=1035
where tm.torolt='F' and tm.c_intezmenyid=@intezmenyid and tm.c_tanevid=@tanevid
--Mulasztások
create table #mulasztas (Nap int, Tanulo int, Osztaly int)
insert into #mulasztas
select CAST(DAY(tao.c_datum) as int) as Nap, tm.c_oratanuloiid as Tanulo, tao.c_osztalycsoportid as Osztaly from t_tanulomulasztas tm
inner join t_tanitasiora tao on tao.id=tm.c_tanitasiorakid and tao.torolt='F' and tao.c_tanevid=@tanevid and tao.c_intezmenyid=@intezmenyid and (CAST(MONTH(tao.c_datum) AS VARCHAR))=@honap
inner join t_csoport cs on cs.id=tao.c_osztalycsoportid and cs.c_tipusa=1035
where tm.torolt='F' and tm.c_intezmenyid=@intezmenyid and tm.c_tanevid=@tanevid
select f.c_nyomtatasinev as COLUMN379,
iif(m.[1]=0, null, m.[1]) as [1], iif(m.[2]=0, null, m.[2]) as [2], iif(m.[3]=0, null, m.[3]) as [3], iif(m.[4]=0, null, m.[4]) as [4], iif(m.[5]=0, null, m.[5]) as [5],
iif(m.[6]=0, null, m.[6]) as [6], iif(m.[7]=0, null, m.[7]) as [7], iif(m.[8]=0, null, m.[8]) as [8], iif(m.[9]=0, null, m.[9]) as [9], iif(m.[10]=0, null, m.[10]) as [10],
iif(m.[11]=0, null, m.[11]) as [11], iif(m.[12]=0, null, m.[12]) as [12], iif(m.[13]=0, null, m.[13]) as [13], iif(m.[14]=0, null, m.[14]) as [14], iif(m.[15]=0, null, m.[15]) as [15],
iif(m.[16]=0, null, m.[16]) as [16], iif(m.[17]=0, null, m.[17]) as [17], iif(m.[18]=0, null, m.[18]) as [18], iif(m.[19]=0, null, m.[19]) as [19], iif(m.[20]=0, null, m.[20]) as [20],
iif(m.[21]=0, null, m.[21]) as [21], iif(m.[22]=0, null, m.[22]) as [22], iif(m.[23]=0, null, m.[23]) as [23], iif(m.[24]=0, null, m.[24]) as [24], iif(m.[25]=0, null, m.[25]) as [25],
iif(m.[26]=0, null, m.[26]) as [26], iif(m.[27]=0, null, m.[27]) as [27], iif(m.[28]=0, null, m.[28]) as [28], iif(m.[29]=0, null, m.[29]) as [29], iif(m.[30]=0, null, m.[30]) as [30],
iif(m.[31]=0, null, m.[31]) as [31]
, Osszes.Osszes as COLUMN2672, Igazolt.Igazolt as COLUMN2568, Egyeb.Egyeb as COLUMN5197, Orvosi.Orvosi as COLUMN1786, Szuloi.Szuloi as COLUMN1787, Hivatalos.Hivatalos as COLUMN1788, IskolaErdeku.IskolaErdeku as COLUMN1789, Igazolatlan.Igazolatlan as COLUMN1911
from #tanulo t
left join (select * from #mulasztas m pivot (count(Osztaly) for Nap in ([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],[26],[27],[28],[29],[30],[31]))pv)m on m.Tanulo=t.id
left join (select Tanulo, count(Tanulo) as Osszes from #igazolas group by Tanulo) Osszes on Osszes.Tanulo=t.Id
left join (select Tanulo, count(Tanulo) as Igazolt from #igazolas i where i.IgazoltE='T' group by Tanulo) Igazolt on Igazolt.Tanulo=t.Id
left join (select Tanulo, count(Tanulo) as Igazolatlan from #igazolas i where i.IgazoltE='F' group by Tanulo) Igazolatlan on Igazolatlan.Tanulo=t.Id
left join (select Tanulo, count(Tanulo) as Egyeb from #igazolas i where i.IgazolasTipus=1529 group by Tanulo) Egyeb on Egyeb.Tanulo=t.Id
left join (select Tanulo, count(Tanulo) as Orvosi from #igazolas i where i.IgazolasTipus=1530 group by Tanulo) Orvosi on Orvosi.Tanulo=t.Id
left join (select Tanulo, count(Tanulo) as Szuloi from #igazolas i where i.IgazolasTipus=1531 group by Tanulo) Szuloi on Szuloi.Tanulo=t.Id
left join (select Tanulo, count(Tanulo) as Hivatalos from #igazolas i where i.IgazolasTipus=1532 group by Tanulo) Hivatalos on Hivatalos.Tanulo=t.Id
left join (select Tanulo, count(Tanulo) as IskolaErdeku from #igazolas i where i.IgazolasTipus=1533 group by Tanulo) IskolaErdeku on IskolaErdeku.Tanulo=t.Id
inner join t_felhasznalo f on f.id=t.Id
order by f.c_nyomtatasinev
drop table #mulasztas
drop table #tanulo
drop table #igazolas
END
GO

View file

@ -0,0 +1,388 @@
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
AS
BEGIN
SET NOCOUNT ON;
--Tanulók adatai, elérhetőségei
DECLARE @tanulok table (
Id int, Nev nvarchar(max), TanuloRovid nvarchar(40), Osztaly nvarchar(max), RovidNev nvarchar(30), 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), TanuloTelefon 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
,iif(len(f.c_nyomtatasinev)>40, SUBSTRING (f.c_nyomtatasinev, 1 , 40), f.c_nyomtatasinev)
,Osztaly.Osztaly as Osztaly
,iif(len(Osztaly.Osztaly)>17, SUBSTRING (Osztaly.Osztaly, 1 , 16)+'...', Osztaly.Osztaly) RovidNev
,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. MMMM dd.', 'hu-hu') as SzulIdo
,f.c_anyjaneve as Anyja
,f.c_tajszam as Taj
,f.c_oktatasiazonosito as OktAzon
,FORMAT(tcs.c_kilepesdatum, 'yyyy. MMMM dd.', 'hu-hu') as Kilepes
,tt.c_nev as Kepzes
,cim.Tipus
,cim.cim
,tel.c_telefonszam
,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 (SELECT distinct d.id Id, d.c_name Allampolgarsaga FROM T_DICTIONARYITEMBASE_OSSZES d) Allampolgarsaga ON Allampolgarsaga.Id=f.c_allampolgarsaga
LEFT JOIN (
SELECT tcs.c_tanuloid TanuloId, ocs.c_nev as Osztaly, tcs.c_kilepesdatum Kilepes
FROM T_TANULOCSOPORT_OSSZES tcs
INNER JOIN T_OSZTALY_OSSZES o ON o.id=tcs.c_osztalycsoportid
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON o.id=ocs.id
WHERE tcs.torolt='F'
) osztaly ON tcs.c_tanuloid=osztaly.TanuloId
INNER JOIN T_TANTERV_OSSZES tt ON tt.c_intezmenyid=tcs.c_intezmenyid AND tt.c_intezmenyid=@intezmenyid AND tt.c_tanevid=@tanevid
INNER JOIN T_TANULO_OSSZES t ON t.id=f.id
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. MMMM dd.', 'hu-hu') as Megnyitas,
isnull(FORMAT(cs.c_csoportnaplozarasa, 'yyyy. MMMM dd.', 'hu-hu'),'-') 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, RovidNev as 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_OSSZES 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_OSSZES 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_OSSZES 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_OSSZES otr
INNER JOIN t_tanevrendje_osszes tr ON tr.id=otr.c_tanevrendjeid AND tr.c_naptipusa=1395
WHERE c_osztalycsoportid=@csoportId)
END
SELECT
n.c_hetsorszama as Het
,FORMAT(convert(date,min(c_napdatuma)), 'yyyy. MMMM dd.', 'hu-hu')as HetEleje
,FORMAT(convert(date,max(c_napdatuma)), 'yyyy. MMMM dd.', 'hu-hu') as HetVege
FROM t_naptarinap n
WHERE n.c_napdatuma >= @elsonap
AND n.c_napdatuma <= @utolsonap
AND n.c_orarendinap = 'T'
AND n.c_tanevid = @tanevid
AND n.c_intezmenyid = @intezmenyid
GROUP BY n.c_hetsorszama
--Tanuló adatok
SELECT * FROM @tanulok ORDER BY Nev
--Mulasztások
CREATE TABLE #mulasztas (Nap int, Tanulo int, Osztaly int, MulasztasTipus int, IgazoltE nvarchar(1), IgazolasTipus int)
INSERT INTO #mulasztas
SELECT
CAST(Month(tao.c_datum) as int) as Nap
,tm.c_oratanuloiid as Tanulo
,tao.c_osztalycsoportid as Osztaly
,tm.c_tipus MulasztasTipus
,tm.c_igazolt IgazoltE
,tm.c_igazolastipusa IgazolasTipus
FROM T_TANULOMULASZTAS_OSSZES tm
INNER JOIN T_TANITASIORA_OSSZES tao ON tao.id=tm.c_tanitasiorakid
AND tao.torolt='F'
AND tao.c_tanevid = @tanevid
AND tao.c_intezmenyid = @intezmenyid
AND tao.c_osztalycsoportid = @csoportId
WHERE tm.torolt = 'F'
AND tm.c_tanevid = @tanevid
DECLARE @mul table(TanuloId int, Tipus nvarchar(50), TipusRendez int, [9] int, [10] int, [11] int, [12] int, [1] int, [2] int, [3] int, [4] int, [5] int, [6] int, [7] int)
--Mulasztások
INSERT INTO @mul
SELECT f.id, 'mulasztások', (1),
isnull(m.[9],0) as '9', isnull(m.[10],0) as '10', isnull(m.[11],0) as '11', isnull(m.[12],0) as '12', isnull(m.[1],0) as '1', isnull(m.[2],0) as '2', isnull(m.[3],0) as '3', isnull(m.[4],0) as '4', isnull(m.[5],0) as '5', isnull(m.[6],0) as '6', isnull(m.[7],0) as '7'
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE MulasztasTipus=1500)m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
--Ebből igazolt
INSERT INTO @mul
SELECT f.id, '*igazolt', (2),
isnull(m.[9],0), isnull(m.[10],0), isnull(m.[11],0), isnull(m.[12],0), isnull(m.[1],0), isnull(m.[2],0), isnull(m.[3],0), isnull(m.[4],0), isnull(m.[5],0), isnull(m.[6],0), isnull(m.[7],0)
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE IgazoltE='T' AND MulasztasTipus=1500 )m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
--Egyéb
INSERT INTO @mul
SELECT f.id, '-egyéb', (3),
/*Igazolt*/isnull(m.[9],0), isnull(m.[10],0), isnull(m.[11],0), isnull(m.[12],0), isnull(m.[1],0), isnull(m.[2],0), isnull(m.[3],0), isnull(m.[4],0), isnull(m.[5],0), isnull(m.[6],0), isnull(m.[7],0)
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE IgazolasTipus=1529 AND MulasztasTipus=1500)m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
--Orvosi igazolás
INSERT INTO @mul
SELECT f.id, '-orvosi ig.', (4),
/*Igazolt*/isnull(m.[9],0), isnull(m.[10],0), isnull(m.[11],0), isnull(m.[12],0), isnull(m.[1],0), isnull(m.[2],0), isnull(m.[3],0), isnull(m.[4],0), isnull(m.[5],0), isnull(m.[6],0), isnull(m.[7],0)
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE IgazolasTipus=1530 AND MulasztasTipus=1500)m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
--Szülői
INSERT INTO @mul
SELECT f.id, '-szülői ig.', (5),
/*Igazolt*/isnull(m.[9],0), isnull(m.[10],0), isnull(m.[11],0), isnull(m.[12],0), isnull(m.[1],0), isnull(m.[2],0), isnull(m.[3],0), isnull(m.[4],0), isnull(m.[5],0), isnull(m.[6],0), isnull(m.[7],0)
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE IgazolasTipus=1531 AND MulasztasTipus=1500)m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
--hivatalos távollét
INSERT INTO @mul
SELECT f.id, '-hivatalos t.', (6),
/*Igazolt*/isnull(m.[9],0), isnull(m.[10],0), isnull(m.[11],0), isnull(m.[12],0), isnull(m.[1],0), isnull(m.[2],0), isnull(m.[3],0), isnull(m.[4],0), isnull(m.[5],0), isnull(m.[6],0), isnull(m.[7],0)
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE IgazolasTipus=1532 AND MulasztasTipus=1500)m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
--iskolaérdekű távollét
INSERT INTO @mul
SELECT f.id, '-iskolaérdekű t.', (7),
/*Igazolt*/isnull(m.[9],0), isnull(m.[10],0), isnull(m.[11],0), isnull(m.[12],0), isnull(m.[1],0), isnull(m.[2],0), isnull(m.[3],0), isnull(m.[4],0), isnull(m.[5],0), isnull(m.[6],0), isnull(m.[7],0)
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE IgazolasTipus=1533 AND MulasztasTipus=1500)m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
--Ebből igazolatlan
INSERT INTO @mul
SELECT f.id, '*igazolatlan', (8),
/*Igazolt*/isnull(m.[9],0), isnull(m.[10],0), isnull(m.[11],0), isnull(m.[12],0), isnull(m.[1],0), isnull(m.[2],0), isnull(m.[3],0), isnull(m.[4],0), isnull(m.[5],0), isnull(m.[6],0), isnull(m.[7],0)
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE IgazoltE='F' AND MulasztasTipus=1500)m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
--késés
INSERT INTO @mul
SELECT f.id, 'késés', (9),
/*Igazolt*/isnull(m.[9],0), isnull(m.[10],0), isnull(m.[11],0), isnull(m.[12],0), isnull(m.[1],0), isnull(m.[2],0), isnull(m.[3],0), isnull(m.[4],0), isnull(m.[5],0), isnull(m.[6],0), isnull(m.[7],0)
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE MulasztasTipus=1499)m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
--késés igazolt
INSERT INTO @mul
SELECT f.id, '*igazolt', (10),
/*Igazolt*/isnull(m.[9],0), isnull(m.[10],0), isnull(m.[11],0), isnull(m.[12],0), isnull(m.[1],0), isnull(m.[2],0), isnull(m.[3],0), isnull(m.[4],0), isnull(m.[5],0), isnull(m.[6],0), isnull(m.[7],0)
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE MulasztasTipus=1499 AND IgazoltE='T')m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
--késés igazolatlan
INSERT INTO @mul
SELECT f.id, '*igazolatlan', (11),
/*Igazolt*/isnull(m.[9],0), isnull(m.[10],0), isnull(m.[11],0), isnull(m.[12],0), isnull(m.[1],0), isnull(m.[2],0), isnull(m.[3],0), isnull(m.[4],0), isnull(m.[5],0), isnull(m.[6],0), isnull(m.[7],0)
FROM @tanulok t
LEFT JOIN (SELECT * FROM #mulasztas m pivot (count(Osztaly) for Nap in ([1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]))pv WHERE MulasztasTipus=1499 AND IgazoltE='F')m ON m.Tanulo=t.id
INNER JOIN t_felhasznalo f ON f.id=t.Id
ORDER BY f.id
SELECT distinct *, m.[1]+m.[2]+m.[3]+m.[4]+m.[5]+m.[6]+m.[7]+m.[9]+m.[10]+m.[11]+m.[12] as Ossz FROM @mul m
--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_OSSZES 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_orarendinap='T' AND 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
DECLARE @Orak TABLE (datum date, Sorszam int, Hetsorszam int)
INSERT INTO @Orak
SELECT DISTINCT convert(date, n.c_napdatuma) datum, sz.Oraszam, n.c_hetsorszama
FROM T_NAPTARINAP_OSSZES n
CROSS JOIN (VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10)) sz (Oraszam)
WHERE n.c_napdatuma>=@elsonap AND n.c_napdatuma<=@utolsonap AND n.c_orarendinap='T' AND n.c_intezmenyId=@intezmenyId
DECLARE @oraSorszam TABLE (Id int, EvesSorszam int)
INSERT INTO @oraSorszam (Id, EvesSorszam)
SELECT DISTINCT
s.Id
,s.EvesSorszam
FROM (
SELECT DISTINCT tn.C_TANTARGYID, tn.C_OSZTALYCSOPORTID, ot.C_TANAROKID, tn.C_INTEZMENYID--, fh.C_NYOMTATASINEV
FROM T_TANITASIORA_OSSZES tn
INNER JOIN T_ORAK_TANAROK ot ON tn.ID = ot.C_ORAKID
INNER JOIN T_FELHASZNALO fh ON fh.ID = ot.C_TANAROKID
WHERE tn.C_OSZTALYCSOPORTID = @csoportid
) x
CROSS APPLY dbo.fnGetEvesOraszamLista (
x.C_TANTARGYID
,x.C_OSZTALYCSOPORTID
,x.C_TANAROKID
,GETDATE()
,x.C_INTEZMENYID
,@tanevID
) s
SELECT DISTINCT
o.Hetsorszam as Het
,o.Sorszam as Oraszam
,FORMAT(o.Datum, 'yyyy. MMMM dd.', 'hu-hu') as Datum
,CONVERT(nvarchar(max), DATEPART(hour,tao.c_orakezdete)) + ':' + CONVERT(nvarchar(max)
,DATEPART(minute,tao.c_orakezdete)) as OraKezd
,f.c_nyomtatasinev as Tanar
,s.EvesSorszam as Sorszam
,tao.c_tema as Tema
FROM @Orak o
LEFT JOIN T_TANITASIORA_OSSZES tao ON tao.c_datum = o.Datum
AND tao.c_osztalycsoportid = @csoportid
AND tao.torolt = 'F'
AND tao.c_oraszam = o.Sorszam
AND tao.c_tanevid = @tanevid
LEFT JOIN @oraSorszam s ON s.Id = tao.ID
LEFT JOIN T_NAPTARINAP_OSSZES nn ON nn.c_napdatuma = o.Datum AND nn.c_tanevid = @tanevid
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.torolt = 'F'
LEFT JOIN T_FOGLALKOZASOK_TANAROK_OSSZES ft ON ft.c_foglalkozasokid = fog.id
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.id = ft.c_tanarokid AND f.torolt = 'F'
ORDER BY 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 = 1500, '', '(k)')
FROM T_TANULOMULASZTAS_OSSZES tm
INNER JOIN T_TANITASIORA_OSSZES o ON o.ID = tm.C_TANITASIORAKID
INNER JOIN t_osztalycsoport ocs ON ocs.id=@csoportid
WHERE n.C_NAPTARINAPID = o.C_NAPTARINAPID
AND m.C_ORATANULOIID = tm.C_ORATANULOIID
AND o.C_TANEVID = @tanevID
AND tm.C_TANEVID = @tanevID
AND tm.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 = 'T' OR m.C_TIPUS = 1499, 0, 1)) AS varchar(2)) AS hianyzas
FROM T_TANITASIORA_OSSZES n
INNER JOIN T_TANULOMULASZTAS_OSSZES m ON m.C_TANITASIORAKID = n.ID
INNER JOIN T_FELHASZNALO_OSSZES t ON t.ID = m.C_ORATANULOIID
WHERE n.C_TANEVID = @tanevID AND m.C_TANEVID = @tanevID AND n.c_osztalycsoportid=@csoportId
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 tcs.c_tanuloid Tanulo, convert(nvarchar(max),datepart(year, te.c_kezdete))+'.'+convert(nvarchar(max),datepart(month, te.c_kezdete))+'.'+convert(nvarchar(max),datepart(day, te.c_kezdete))+'.' as Idopont, d.Tipus as Tipus, te.c_tartalom as Feljegyzes, f.c_nyomtatasinev as Feljegyzo
FROM t_tanulocsoport tcs
INNER JOIN T_TANULOESEMENY_OSSZES te ON te.c_tanuloid=tcs.c_tanuloid AND te.torolt='F' AND te.c_intezmenyid=@intezmenyid AND te.c_tanevid=@tanevid
INNER JOIN T_FELHASZNALO_OSSZES f ON f.id=te.c_feljegyzoid AND f.torolt='F'
INNER JOIN (SELECT distinct d.id Id, d.c_name Tipus FROM t_dictionaryitembase d) d ON d.id=te.c_tipus
WHERE tcs.c_osztalycsoportid=@csoportId
--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'
DROP TABLE #MULASZTAS
END;
GO

View file

@ -0,0 +1,144 @@
GO
/****** Object: StoredProcedure [dbo].[sp_GetNaploEllenorzes] Script Date: 2016.03.29. 10:44:59 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Kelemen Attila
-- Create date: 2016.03.21.
-- Description: Naplóellenőrzés összegzése
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetNaploEllenorzes]
@osztalyId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
select
'' Osszegzes,
Eszrevetelek.EV,
Eszrevetelek.HetSzama ID,
count(1) NemNaplozottOrakSzama,
(case when T_NAPLOELLENORZES.ID IS NULL then 'F' else 'T' end) Ellenorizve,
T_NAPLOELLENORZES.ID EllenorzesID,
Ellenorzo.C_NYOMTATASINEV EllenorzoSzemely,
T_NAPLOELLENORZES.C_ELLENORZESDATUMA EllenorzesDatum,
T_NAPLOELLENORZES.C_ESZREVETEL Eszrevetel,
Eszrevetelek.OsztalyID
from (
select KapcsolodoCsoportok.OsztalyID osztalyID,
KapcsolodoCsoportok.OsztalyNev OsztalyNev,
naptar.C_HETSORSZAMA HetSzama,
YEAR(naptar.c_napdatuma) EV
from T_ORARENDIORA
inner join T_FOGLALKOZAS on T_FOGLALKOZAS.ID= T_ORARENDIORA.C_FOGLALKOZASID
left join T_FOGLALKOZASOK_TANAROK on T_FOGLALKOZASOK_TANAROK.C_FOGLALKOZASOKID = T_FOGLALKOZAS.ID
left join T_TANTARGY on T_TANTARGY.ID= T_FOGLALKOZAS.C_TANTARGYID
inner join T_NAPTARINAP naptar on (( CONVERT(date,naptar.C_NAPDATUMA) BETWEEN CONVERT(date,T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE) AND CONVERT(date,T_ORARENDIORA.C_ORAERVENYESSEGVEGE))
AND (naptar.C_HETIREND = T_ORARENDIORA.C_HETIREND OR T_ORARENDIORA.C_HETIREND = 1554
AND naptar.C_HETNAPJA = T_ORARENDIORA.C_HETNAPJA) )
left join T_TANITASIORA ON (T_TANITASIORA.C_ORARENDIORAID = T_ORARENDIORA.ID AND
T_TANITASIORA.TOROLT='F' AND
naptar.C_NAPDATUMA = T_TANITASIORA.C_DATUM)
left join (select T_OSZTALYCSOPORT.ID OsztalyID,
T_OSZTALYCSOPORT.C_NEV OsztalyNev,
kcs.CsoportID
from T_OSZTALYCSOPORT
--Az osztályhoz kapcsolódó csoportok óráit is listázzuk
left join (Select OsztalyID,
OsztalyNev,
CsoportID
from (select C_OSZTALYCSOPORTID OsztalyID,
T_OSZTALYCSOPORT.C_NEV OsztalyNev,
C_TANULOID TanuloID
from T_TANULOCSOPORT
INNER JOIN T_OSZTALY on T_TANULOCSOPORT.C_OSZTALYCSOPORTID = T_OSZTALY.ID
INNER JOIN T_OSZTALYCSOPORT on T_OSZTALY.ID = T_OSZTALYCSOPORT.ID
where T_TANULOCSOPORT.TOROLT='F'
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())) OsztalyTanuloi
inner join
(select T_CSOPORT.ID CsoportID,
C_TANULOID TanuloID
from T_TANULOCSOPORT
inner join T_CSOPORT on T_TANULOCSOPORT.ID=T_CSOPORT.ID
where T_CSOPORT.TOROLT='F'
and T_TANULOCSOPORT.TOROLT='F'
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())) Csoportok
on OsztalyTanuloi.TanuloID = Csoportok.TanuloID) kcs
on kcs.OsztalyID = T_OSZTALYCSOPORT.ID
where T_OSZTALYCSOPORt.TOROLT = 'F') KapcsolodoCsoportok
on KapcsolodoCsoportok.OsztalyID = @osztalyId
and KapcsolodoCsoportok.OsztalyID = T_FOGLALKOZAS.C_OSZTALYCSOPORTID
where
T_ORARENDIORA.TOROLT='F'
and naptar.TOROLT = 'F'
and T_FOGLALKOZAS.TOROLT='F'
and GETDATE() >= naptar.C_NAPDATUMA
and T_TANITASIORA.ID IS NULL
and KapcsolodoCsoportok.OsztalyID = @osztalyId
union all
select KapcsolodoCsoportok.OsztalyID osztalyID,
KapcsolodoCsoportok.OsztalyNev OsztalyNev,
naptar.C_HETSORSZAMA HetSzama,
YEAR(naptar.c_napdatuma) EV
from T_TANITASIORA
inner join T_FOGLALKOZAS on T_FOGLALKOZAS.ID= T_TANITASIORA.C_FOGLALKOZASID
inner join T_NAPTARINAP naptar on T_TANITASIORA.C_DATUM = naptar.C_NAPDATUMA
left join (select T_OSZTALYCSOPORT.ID OsztalyID,
T_OSZTALYCSOPORT.C_NEV OsztalyNev,
kcs.CsoportID
from T_OSZTALYCSOPORT
left join (Select OsztalyID,
OsztalyNev,
CsoportID
from
(select C_OSZTALYCSOPORTID OsztalyID,
T_OSZTALYCSOPORT.C_NEV OsztalyNev,
C_TANULOID TanuloID
from T_TANULOCSOPORT
inner join T_OSZTALY on T_TANULOCSOPORT.C_OSZTALYCSOPORTID = T_OSZTALY.ID
inner join T_OSZTALYCSOPORT on T_OSZTALY.ID = T_OSZTALYCSOPORT.ID
where T_TANULOCSOPORT.TOROLT='F'
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())) OsztalyTanuloi
inner join
(select T_CSOPORT.ID CsoportID,
C_TANULOID TanuloID
from T_TANULOCSOPORT
inner join T_CSOPORT on T_TANULOCSOPORT.ID=T_CSOPORT.ID
where T_CSOPORT.TOROLT='F'
and T_TANULOCSOPORT.TOROLT='F'
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())
) Csoportok on OsztalyTanuloi.TanuloID = Csoportok.TanuloID) kcs
on kcs.OsztalyID = T_OSZTALYCSOPORT.ID
where T_OSZTALYCSOPORt.TOROLT = 'F')
KapcsolodoCsoportok on
KapcsolodoCsoportok.OsztalyID = @osztalyId
and KapcsolodoCsoportok.OsztalyID = T_FOGLALKOZAS.C_OSZTALYCSOPORTID
where T_TANITASIORA.C_ORARENDIORAID is null
and T_TANITASIORA.C_MEGTARTOTT is null
and KapcsolodoCsoportok.OsztalyID = @osztalyId
) Eszrevetelek
left join T_NAPLOELLENORZES on ( T_NAPLOELLENORZES.C_OSZTALYID = @osztalyId
AND T_NAPLOELLENORZES.C_HETSORSZAMA = Eszrevetelek.HetSzama
AND T_NAPLOELLENORZES.TOROLT = 'F')
left join T_FELHASZNALO Ellenorzo on Ellenorzo.ID = T_NAPLOELLENORZES.C_ELLENORZOSZEMELYID
group by Eszrevetelek.EV,
Eszrevetelek.HetSzama,
T_NAPLOELLENORZES.ID,
Ellenorzo.C_NYOMTATASINEV,
T_NAPLOELLENORZES.C_ELLENORZESDATUMA,
T_NAPLOELLENORZES.C_ESZREVETEL,
T_NAPLOELLENORZES.C_OSZTALYID,
Eszrevetelek.OsztalyID
order by EV desc, Eszrevetelek.HetSzama desc
END

View file

@ -0,0 +1,122 @@
GO
/****** Object: StoredProcedure [dbo].[sp_GetNaploEllenorzesTetelek] Script Date: 2016.03.29. 9:17:20 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Kelemen Attila
-- Create date: 2016.03.21.
-- Description: Naplóellenőrzés tételei
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetNaploEllenorzesTetelek]
@osztalyId int,
@hetSorszam int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
select * from
(
--Órarendi órák, amikhez nem tartozik tanóra
select T_ORARENDIORA.ID Id,
naptar.C_HETSORSZAMA HetSzama,
naptar.C_NAPDATUMA Datum,
naptar.C_HETNAPJA Hetnapja,
T_ORARENDIORA.C_ORASZAM Oraszam,
osztaly.C_NEV OsztalyNev,
T_TANTARGY.C_NEV TargyNev,
--Ha van helyettesítő, akkor annak a nevére van szükségünk
(select top 1 tanar.C_NYOMTATASINEV from T_FELHASZNALO tanar
where ((T_TANITASIORA.C_HELYETTESITOTANARID IS null and T_FOGLALKOZASOK_TANAROK.C_TANAROKID = tanar.ID)
OR (T_TANITASIORA.C_HELYETTESITOTANARID IS not null and T_TANITASIORA.C_HELYETTESITOTANARID= tanar.ID))) TanarNev
FROM
T_ORARENDIORA
inner join T_FOGLALKOZAS on T_FOGLALKOZAS.ID= T_ORARENDIORA.C_FOGLALKOZASID
left join T_FOGLALKOZASOK_TANAROK on T_FOGLALKOZASOK_TANAROK.C_FOGLALKOZASOKID = T_FOGLALKOZAS.ID AND T_FOGLALKOZAS.TOROLT='F'
left join T_TANTARGY on T_TANTARGY.ID= T_FOGLALKOZAS.C_TANTARGYID
inner join T_NAPTARINAP naptar on (( CONVERT(date,naptar.C_NAPDATUMA) BETWEEN CONVERT(date,T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE) AND CONVERT(date,T_ORARENDIORA.C_ORAERVENYESSEGVEGE))
AND
(naptar.C_HETIREND = T_ORARENDIORA.C_HETIREND OR T_ORARENDIORA.C_HETIREND = 1554
AND naptar.C_HETNAPJA = T_ORARENDIORA.C_HETNAPJA) )
LEFT JOIN T_TANITASIORA ON (T_TANITASIORA.C_ORARENDIORAID = T_ORARENDIORA.ID AND T_TANITASIORA.TOROLT='F' AND naptar.C_NAPDATUMA = T_TANITASIORA.C_DATUM
--AND T_TANITASIORA.C_MEGTARTOTT IS NULL
)
inner join T_OSZTALYCSOPORT osztaly on T_FOGLALKOZAS.C_OSZTALYCSOPORTID = osztaly.ID AND osztaly.TOROLT='F'
--Az osztályhoz kapcsolódó csoportok óráit is listázzuk
left join (Select OsztalyID, CsoportID from
(select C_OSZTALYCSOPORTID OsztalyID, C_TANULOID TanuloID from T_TANULOCSOPORT INNER JOIN T_OSZTALY ON T_TANULOCSOPORT.C_OSZTALYCSOPORTID = T_OSZTALY.ID
WHERE T_TANULOCSOPORT.TOROLT='F'
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())) OsztalyTanuloi
INNER JOIN
(SELECT T_CSOPORT.ID CsoportID, C_TANULOID TanuloID FROM T_TANULOCSOPORT
INNER JOIN T_CSOPORT ON T_TANULOCSOPORT.ID=T_CSOPORT.ID
WHERE T_CSOPORT.TOROLT='F'
AND T_TANULOCSOPORT.TOROLT='F'
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())
) Csoportok ON OsztalyTanuloi.TanuloID = Csoportok.TanuloID) KapcsolodoCsoportok ON
KapcsolodoCsoportok.OsztalyID = @osztalyId
where T_ORARENDIORA.TOROLT='F'
AND naptar.TOROLT = 'F'
AND GETDATE() >= naptar.C_NAPDATUMA
AND T_TANITASIORA.ID IS NULL
AND (osztaly.ID = @osztalyId OR osztaly.ID = KapcsolodoCsoportok.CsoportID)
and naptar.C_HETSORSZAMA = @hetSorszam
UNION ALL
--Tanítási órák, amikhez nem tartozik órarendi óra
select T_TANITASIORA.ID Id,
naptar.C_HETSORSZAMA HetSzama,
naptar.C_NAPDATUMA Datum,
naptar.C_HETNAPJA Hetnapja,
T_TANITASIORA.C_ORASZAM Oraszam,
osztaly.C_NEV OsztalyNev,
T_TANTARGY.C_NEV TargyNev,
tanar.C_NYOMTATASINEV TanarNev
from T_TANITASIORA
inner join T_NAPTARINAP naptar on (T_TANITASIORA.C_DATUM = naptar.C_NAPDATUMA)
inner join T_FOGLALKOZAS on T_FOGLALKOZAS.ID= T_TANITASIORA.C_FOGLALKOZASID
left join T_OSZTALYCSOPORT osztaly on T_FOGLALKOZAS.C_OSZTALYCSOPORTID = osztaly.ID
left join T_FOGLALKOZASOK_TANAROK on T_FOGLALKOZASOK_TANAROK.C_FOGLALKOZASOKID = T_FOGLALKOZAS.ID
left join T_TANTARGY on T_TANTARGY.ID= T_FOGLALKOZAS.C_TANTARGYID
left join T_FELHASZNALO tanar on
--Ha van helyettesítő, akkor aszerint joinolunk
(case when T_TANITASIORA.C_HELYETTESITOTANARID IS not null then T_TANITASIORA.C_HELYETTESITOTANARID
else T_FOGLALKOZASOK_TANAROK.C_TANAROKID end) = tanar.ID
left join (Select OsztalyID, CsoportID from
(select C_OSZTALYCSOPORTID OsztalyID, C_TANULOID TanuloID from T_TANULOCSOPORT INNER JOIN T_OSZTALY ON T_TANULOCSOPORT.C_OSZTALYCSOPORTID = T_OSZTALY.ID
WHERE T_TANULOCSOPORT.TOROLT='F'
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())) OsztalyTanuloi
INNER JOIN
(SELECT T_CSOPORT.ID CsoportID, C_TANULOID TanuloID FROM T_TANULOCSOPORT
INNER JOIN T_CSOPORT ON T_TANULOCSOPORT.ID=T_CSOPORT.ID
WHERE T_CSOPORT.TOROLT='F'
AND T_TANULOCSOPORT.TOROLT='F'
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())
) Csoportok ON OsztalyTanuloi.TanuloID = Csoportok.TanuloID) KapcsolodoCsoportok ON
KapcsolodoCsoportok.OsztalyID = @osztalyId
where T_TANITASIORA.C_ORARENDIORAID is null
AND T_TANITASIORA.C_MEGTARTOTT is null
AND (osztaly.ID = @osztalyId OR osztaly.ID = KapcsolodoCsoportok.CsoportID)
and naptar.C_HETSORSZAMA = @hetSorszam
) Orak
ORDER BY Datum DESC
END

View file

@ -0,0 +1,67 @@
GO
/****** Object: StoredProcedure [dbo].[sp_GetNaplobaNemBejegyzettFoglalkozasok] Script Date: 2016.01.27. 11:31:21 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetNaplobaNemBejegyzettFoglalkozasok]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetNaplobaNemBejegyzettFoglalkozasok]
END
GO
-- =============================================
-- Author: <Kelemen Attila>
-- Create date: <2016. 01. 07.>
-- Description: <Azok a megtartott, vagy elmaradt órák, amik nincsenek bejegyezve a naplóba>
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetNaplobaNemBejegyzettFoglalkozasok]
@tanevID int,
@mindenHeten int,
@osztCsopID int = null,
@tanarID int = null,
@Datumtol datetime = null,
@Datumig datetime = null
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
select
cast(YEAR(naptar.C_NAPDATUMA) as varchar(255)) +'-' + cast(MONTH(naptar.C_NAPDATUMA) as varchar(255)) +'-'
+ cast(DAY(naptar.C_NAPDATUMA) as varchar(255)) Datum,
T_CSENGETESIRENDORA_OSSZES.C_ORASZAM Oraszam,
osztaly.C_NEV OsztalyNev,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TanarNeve,
T_TANTARGY_OSSZES.C_NEV TantargyNeve,
T_TEREM_OSSZES.C_NEV Terem
FROM
T_ORARENDIORA_OSSZES
inner join T_FOGLALKOZAS_OSSZES on T_FOGLALKOZAS_OSSZES.ID= T_ORARENDIORA_OSSZES.C_FOGLALKOZASID
Inner join T_OSZTALYCSOPORT_OSSZES osztaly on T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID = osztaly.ID
inner join T_NAPTARINAP_OSSZES naptar on ((naptar.C_NAPDATUMA BETWEEN T_ORARENDIORA_OSSZES.C_ORAERVENYESSEGKEZDETE AND T_ORARENDIORA_OSSZES.C_ORAERVENYESSEGVEGE)
AND (naptar.C_HETIREND = T_ORARENDIORA_OSSZES.C_HETIREND OR T_ORARENDIORA_OSSZES.C_HETIREND = @mindenHeten)) -- Minden héten
INNER JOIN T_CSENGETESIRENDORA_OSSZES on T_ORARENDIORA_OSSZES.C_CSENGETESIRENDORAID=T_CSENGETESIRENDORA_OSSZES.ID
LEFT JOIN T_TANITASIORA_OSSZES ON T_TANITASIORA_OSSZES.C_ORARENDIORAID = T_ORARENDIORA_OSSZES.ID AND T_TANITASIORA_OSSZES.TOROLT='F'
INNER JOIN T_FOGLALKOZASOK_TANAROK_OSSZES ON T_FOGLALKOZASOK_TANAROK_OSSZES.C_FOGLALKOZASOKID = T_FOGLALKOZAS_OSSZES.ID
inner join T_FELHASZNALO_OSSZES on T_FOGLALKOZASOK_TANAROK_OSSZES.C_TANAROKID = T_FELHASZNALO_OSSZES.ID
INNER JOIN T_TANTARGY_OSSZES on T_FOGLALKOZAS_OSSZES.C_TANTARGYID = T_TANTARGY_OSSZES.ID
JOIN T_TEREM_OSSZES ON T_ORARENDIORA_OSSZES.C_TEREMID = T_TEREM_OSSZES.ID
WHERE
T_ORARENDIORA_OSSZES.TOROLT='F'
AND naptar.TOROLT = 'F' AND T_FOGLALKOZAS_OSSZES.TOROLT='F' AND osztaly.TOROLT='F'
AND T_FOGLALKOZAS_OSSZES.TOROLT='F' AND T_CSENGETESIRENDORA_OSSZES.TOROLT='F'
AND T_FELHASZNALO_OSSZES.TOROLT='F' AND T_TANTARGY_OSSZES.TOROLT='F'
AND GETDATE() >= naptar.C_NAPDATUMA
AND T_TANITASIORA_OSSZES.ID IS NULL
AND T_ORARENDIORA_OSSZES.C_TANEVID = @tanevID
AND (@osztCsopID is null or osztaly.ID = @osztCsopID)
AND (@tanarID is null or T_FELHASZNALO_OSSZES.ID = @tanarID)
END
GO

View file

@ -0,0 +1,33 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetNebuloListByIdList]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetNebuloListByIdList]
END
GO
CREATE PROCEDURE [dbo].[sp_GetNebuloListByIdList]
@pNebuloIdList AS XML
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @tempNebuloIdList TABLE (nebuloId INT)
INSERT INTO @tempNebuloIdList
SELECT DISTINCT nebuloId = nebuloId.value('(.)[1]', 'INT')
FROM @pNebuloIdList.nodes('nebuloIdList/nebuloId') as nebuloIdList(nebuloId)
SELECT *
FROM
T_NEBULO
WHERE
TOROLT = 'F'
AND ID IN (SELECT nebuloId FROM @tempNebuloIdList)
END

View file

@ -0,0 +1,161 @@
GO
/****** Object: StoredProcedure [KR_BEDO_Schema].[sp_GetNegyedeviErtesito] Script Date: 2016.05.26. 10:34:48 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
IF OBJECT_ID('sp_GetNegyedeviErtesito') IS NOT NULL
BEGIN
DROP PROCEDURE sp_GetNegyedeviErtesito
END
GO
CREATE PROCEDURE [sp_GetNegyedeviErtesito]
@osztalyId int,
@TanevId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- fejléc
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM IntezmenyIranyitoszam,
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
T_INTEZMENYADATOK_OSSZES.C_CIME IntezmenyCime,
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
T_INTEZMENYADATOK_OSSZES.C_OMKOD IntezmenyOMKod,
(SELECT T_OSZTALY_OSSZES.C_OSZTALYFONOKID FROM T_OSZTALY_OSSZES WHERE ID = @osztalyId and T_OSZTALY_OSSZES.TOROLT = 'F') PartnerID,
T_TANEV_OSSZES.C_NEV TANEV
FROM T_INTEZMENYADATOK_OSSZES
inner join T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID and T_TANEV_OSSZES.TOROLT = 'F'
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
and T_TANEV_OSSZES.ID = @TanevId
-- TANULÓK
SELECT T_FELHASZNALO_OSSZES.ID TANULOID,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TANULONEV,
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO OKTATASIAZONOSITO
FROM T_FELHASZNALO_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
WHERE T_FELHASZNALO_OSSZES.TOROLT='F'
and T_FELHASZNALO_OSSZES.C_TANEVID = @TanevId
and TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
-- ÉRTÉKELÉSEK
SELECT ERTEKELES.C_TANULOID TANULOID,
'MAGATARTAS' TARGYNEV,
OSZTALYZAT.MAGATARTAS NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_MAGATARTAS MAGATARTAS FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1522
AND ERTEKELES.C_TANEVID = @TanevId
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
'SZORGALOM' TARGYNEV,
OSZTALYZAT.SZORGALOM NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_SZORGALOM SZORGALOM FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1522
AND ERTEKELES.C_TANEVID = @TanevId
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
TARGY.TARGYNEV TARGYNEV,
ERTEKELES.C_OSZTALYZAT NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
JOIN (SELECT ID,C_NEV TARGYNEV,C_TARGYKATEGORIA KAT FROM T_TANTARGY_OSSZES where TOROLT = 'F') TARGY
ON TARGY.ID = ERTEKELES.C_TANTARGYID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND TARGY.KAT != 1248
AND ERTEKELES.C_ERTEKELESTIPUSA = 1522
AND ERTEKELES.C_TANEVID = @TanevId
ORDER BY TANULOID, TARGYNEV
-- MULASZTÁSOK
SELECT MULASZT.C_TANULOID TANULOID,
CASE WHEN MULASZT.C_STATISZTIKATIPUS = 1656 THEN 'IGAZOLT' ELSE 'IGAZOLATLAN' END TIPUS,
MULASZT.C_ELSONEGYEDEV ORASZAM
FROM T_TANULOMULASZTASSTATISZTIKA_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_TANULOID
WHERE MULASZT.TOROLT ='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND MULASZT.C_STATISZTIKATIPUS IN (1656,1662) -- IGAZOLT VAGY IGAZOLATLAN
and MULASZT.C_TANEVID = @TanevId
-- TANTÁRGYI MENTESSÉGEK
SELECT MENTESSEG.C_TANULOID TANULOID,
TARGY.TARGYNEV,
MENTESSEG.C_MENTESSEGOKA MENTESSEGOKA
FROM T_TANULOMENTESSEG_OSSZES MENTESSEG
JOIN (SELECT ID, C_NEV TARGYNEV FROM T_TANTARGY_OSSZES WHERE TOROLT='F') TARGY
ON TARGY.ID = MENTESSEG.C_TANTARGYID
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MENTESSEG.C_TANULOID
WHERE MENTESSEG.TOROLT = 'F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
and MENTESSEG.C_TANEVID = @TanevId
ORDER BY MENTESSEG.C_TANULOID, TARGY.TARGYNEV
-- BEJEGYZÉSEK
SELECT T_TANULOESEMENY_OSSZES.C_TANULOID TANULOID,
C_TARTALOM BEJEGYZES,
C_TIPUS TIPUS
FROM T_TANULOESEMENY_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_TANULOESEMENY_OSSZES.C_TANULOID
WHERE T_TANULOESEMENY_OSSZES.TOROLT='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND T_TANULOESEMENY_OSSZES.C_TIPUS != 1534
AND T_TANULOESEMENY_OSSZES.C_TANEVID = @TanevId
ORDER BY T_TANULOESEMENY_OSSZES.C_TANULOID
--OSZTÁLY
SELECT T_OSZTALYCSOPORT_OSSZES.C_NEV OSZTALYNEV,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV OSZTALYFONOKNEV
FROM T_OSZTALY_OSSZES
INNER JOIN T_FELHASZNALO_OSSZES
ON T_OSZTALY_OSSZES.C_OSZTALYFONOKID = T_FELHASZNALO_OSSZES.ID and T_FELHASZNALO_OSSZES.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT_OSSZES
ON T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID and T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT='F'
AND T_OSZTALYCSOPORT_OSSZES.ID=@osztalyId
AND T_OSZTALY_OSSZES.C_ALTANEVID = @TanevId
END

View file

@ -0,0 +1,157 @@
GO
/****** Object: StoredProcedure [KR_BEDO_Schema].[sp_GetNegyedikNegyedeviErtesito] Script Date: 2016.05.26. 14:21:14 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE PROCEDURE [sp_GetNegyedikNegyedeviErtesito]
@osztalyId int,
@TanevId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- fejléc
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM IntezmenyIranyitoszam,
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
T_INTEZMENYADATOK_OSSZES.C_CIME IntezmenyCime,
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
T_INTEZMENYADATOK_OSSZES.C_OMKOD IntezmenyOMKod,
(SELECT C_OSZTALYFONOKID FROM T_OSZTALY_OSSZES WHERE ID=@osztalyId and TOROLT = 'F') PartnerID,
T_TANEV_OSSZES.C_NEV TANEV
FROM T_INTEZMENYADATOK_OSSZES
inner join T_TANEV_OSSZES
on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID and T_TANEV_OSSZES.TOROLT = 'F'
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
and T_TANEV_OSSZES.ID = @TanevId
-- TANULÓK
SELECT T_FELHASZNALO_OSSZES.ID TANULOID,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TANULONEV,
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO OKTATASIAZONOSITO
FROM T_FELHASZNALO_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
WHERE T_FELHASZNALO_OSSZES.TOROLT='F'
and TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
and T_FELHASZNALO_OSSZES.C_TANEVID = @TanevId
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
-- ÉRTÉKELÉSEK
SELECT ERTEKELES.C_TANULOID TANULOID,
'MAGATARTAS' TARGYNEV,
OSZTALYZAT.MAGATARTAS NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_MAGATARTAS MAGATARTAS FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1525
AND OSZTALYZAT.MAGATARTAS IS NOT NULL -- IV.Negyedévi
AND ERTEKELES.C_TANEVID = @TanevId
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
'SZORGALOM' TARGYNEV,
OSZTALYZAT.SZORGALOM NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
LEFT JOIN (SELECT ID, C_SZORGALOM SZORGALOM FROM T_OSZTALYFONOKIERTEKELES_OSSZES where TOROLT = 'F') OSZTALYZAT
ON OSZTALYZAT.ID = ERTEKELES.ID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND ERTEKELES.C_ERTEKELESTIPUSA = 1525
AND OSZTALYZAT.SZORGALOM IS NOT NULL -- IV.Negyedévi
AND ERTEKELES.C_TANEVID = @TanevId
UNION ALL
SELECT ERTEKELES.C_TANULOID TANULOID,
TARGY.TARGYNEV TARGYNEV,
ERTEKELES.C_OSZTALYZAT NEGYEDEVIERTEKELES,
ERTEKELES.C_ERTEKELESSZOVEG FELJEGYZES
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = ERTEKELES.C_TANULOID
JOIN ( SELECT ID,C_NEV TARGYNEV,C_TARGYKATEGORIA KAT FROM T_TANTARGY_OSSZES where TOROLT = 'F') TARGY
ON TARGY.ID = ERTEKELES.C_TANTARGYID
WHERE TANCSOPORT.C_OSZTALYCSOPORTID =@osztalyId
AND TARGY.KAT != 1248 --Osztályfőnöki nem jelenítődik meg
AND ERTEKELES.C_ERTEKELESTIPUSA = 1525 -- IV.Negyedévi
AND ERTEKELES.C_TANEVID = @TanevId
ORDER BY TANULOID, TARGYNEV
-- MULASZTÁSOK
SELECT MULASZT.C_TANULOID TANULOID,
CASE WHEN MULASZT.C_STATISZTIKATIPUS = 1656 THEN 'IGAZOLT' ELSE 'IGAZOLATLAN' END TIPUS,
MULASZT.C_NEGYEDIKNEGYEDEV ORASZAM
FROM T_TANULOMULASZTASSTATISZTIKA_OSSZES MULASZT
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MULASZT.C_TANULOID
WHERE MULASZT.TOROLT ='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND MULASZT.C_STATISZTIKATIPUS IN (1656,1662) -- IGAZOLT VAGY IGAZOLATLAN
AND MULASZT.C_TANEVID = @TanevId
-- TANTÁRGYI MENTESSÉGEK
SELECT MENTESSEG.C_TANULOID TANULOID,
TARGY.TARGYNEV,
MENTESSEG.C_MENTESSEGOKA MENTESSEGOKA
FROM T_TANULOMENTESSEG_OSSZES MENTESSEG
JOIN (SELECT ID, C_NEV TARGYNEV FROM T_TANTARGY_OSSZES WHERE TOROLT='F' ) TARGY
ON TARGY.ID = MENTESSEG.C_TANTARGYID
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (C_KILEPESDATUM is null or C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = MENTESSEG.C_TANULOID
WHERE MENTESSEG.TOROLT = 'F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND MENTESSEG.C_TANEVID = @TanevId
ORDER BY MENTESSEG.C_TANULOID, TARGY.TARGYNEV
-- BEJEGYZÉSEK
SELECT T_TANULOESEMENY_OSSZES.C_TANULOID TANULOID,
C_TARTALOM BEJEGYZES,
C_TIPUS TIPUS
FROM T_TANULOESEMENY_OSSZES
JOIN (SELECT C_TANULOID, C_OSZTALYCSOPORTID FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT='F'
and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
and (C_KILEPESDATUM is null or C_KILEPESDATUM >= GETDATE())) TANCSOPORT
ON TANCSOPORT.C_TANULOID = T_TANULOESEMENY_OSSZES.C_TANULOID
WHERE T_TANULOESEMENY_OSSZES.TOROLT='F'
AND TANCSOPORT.C_OSZTALYCSOPORTID = @osztalyId
AND T_TANULOESEMENY_OSSZES.C_TIPUS = 1552
AND T_TANULOESEMENY_OSSZES.C_TIPUS != 1534
AND T_TANULOESEMENY_OSSZES.C_TANEVID = @TanevId
ORDER BY T_TANULOESEMENY_OSSZES.C_TANULOID
--OSZTÁLY
SELECT T_OSZTALYCSOPORT_OSSZES.C_NEV OSZTALYNEV,
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV OSZTALYFONOKNEV
FROM T_OSZTALY_OSSZES
INNER JOIN T_FELHASZNALO_OSSZES ON T_OSZTALY_OSSZES.C_OSZTALYFONOKID = T_FELHASZNALO_OSSZES.ID and T_FELHASZNALO_OSSZES.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT_OSSZES ON T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID and T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT='F'
AND T_OSZTALYCSOPORT_OSSZES.ID=@osztalyId
AND T_OSZTALY_OSSZES.C_ALTANEVID = @TanevId
END

View file

@ -0,0 +1,35 @@
GO
/****** Object: StoredProcedure [sp_GetNemKotottMunkaIdo] Script Date: 2016.10.12. 9:50:22 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [sp_GetNemKotottMunkaIdo]
@IntezmenyId int
,@TanevId int
,@IdoszakKezdete datetime
,@IdoszakVege datetime
,@TanarId int
AS
BEGIN
SET NOCOUNT ON;
SELECT
nkm.ID as Id
,nkm.C_GROUPID as GroupID
,nkm.C_KEZDETE as Kezdete
,nkm.C_MEGJEGYZES as Megjegyzes
,nkm.C_MEGTARTOTT as Megtartott
,nkm.C_TEVEKENYSEGTIPUSA as TorvenyKategoriaID
,nkm.C_VEGE as Vege
,nkm.C_TANARID as TanarID
,nkm.C_TULAJDONOSID as TulajdonosID
,nkm.TOROLT as Torolt
FROM T_NEMKOTOTTMUNKAIDO nkm
WHERE
nkm.TOROLT = 'F' AND nkm.C_INTEZMENYID = @IntezmenyId AND nkm.C_TANEVID = @TanevId AND nkm.C_TANARID = @TanarId
AND @IdoszakKezdete <= C_KEZDETE AND @IdoszakVege > C_VEGE
END

View file

@ -0,0 +1,61 @@
GO
/****** Object: StoredProcedure [sp_GetNemKotottMunkaIdoDateByInsert] Script Date: 2016.10.12. 9:50:24 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [sp_GetNemKotottMunkaIdoDateByInsert]
@IntezmenyId int
,@TanevId int
,@IdoszakKezdete datetime
,@IdoszakVege datetime
,@KivalaszottDatum datetime
,@HetirendId int
AS
BEGIN
SET NOCOUNT ON;
DECLARE @tmp TABLE (Hetirend INT NOT NULL, HetNapja INT NOT NULL, HetSorszama INT NOT NULL);
INSERT @tmp
SELECT nn.C_HETIREND, nn.C_HETNAPJA, nn.C_HETSORSZAMA
FROM T_NAPTARINAP nn
WHERE
nn.C_INTEZMENYID = @intezmenyId AND nn.C_TANEVID = @tanevId AND nn.C_NAPDATUMA = @KivalaszottDatum
IF(@hetirendId = 1554)
BEGIN
SELECT
C_NAPDATUMA Datum
FROM T_NAPTARINAP nn
WHERE
nn.C_NAPDATUMA BETWEEN @IdoszakKezdete AND @IdoszakVege AND TOROLT = 'F'
AND C_ORARENDINAP = 'T' AND C_HETNAPJA = (SELECT HetNapja FROM @tmp)
AND C_INTEZMENYID = @intezmenyId AND C_TANEVID = @tanevId
EXCEPT
SELECT
C_DATUM Datum
FROM T_TANEVRENDJE_OSSZES TANEVRENDJE
WHERE
(TOROLT = 'F' AND (C_NAPTIPUSA IN (1386,1387,1389,1391,1392,1396,1397,1398,1399,1401) OR C_ORARENDINAP = 'F') AND C_INTEZMENYID = @IntezmenyId AND C_TANEVID=@TanevId)
END
ELSE
BEGIN
SELECT
C_NAPDATUMA as Datum
FROM
T_NAPTARINAP nn
WHERE
nn.C_NAPDATUMA BETWEEN @IdoszakKezdete AND @IdoszakVege AND TOROLT = 'F'
AND C_ORARENDINAP = 'T' AND C_HETNAPJA = (SELECT HetNapja FROM @tmp)
AND C_INTEZMENYID = @intezmenyId AND C_TANEVID = @tanevId AND C_HETIREND = @hetirendId
EXCEPT
SELECT
C_DATUM Datum
FROM T_TANEVRENDJE_OSSZES TANEVRENDJE
WHERE
(TOROLT = 'F' AND (C_NAPTIPUSA IN (1386,1387,1389,1391,1392,1396,1397,1398,1399,1401) OR C_ORARENDINAP = 'F') AND C_INTEZMENYID = @IntezmenyId AND C_TANEVID=@TanevId)
END
END

View file

@ -0,0 +1,26 @@
GO
/****** Object: StoredProcedure [sp_GetNemKotottMunkaIdoIdByDelete] Script Date: 2016.10.12. 9:50:26 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [sp_GetNemKotottMunkaIdoIdByDelete]
@IntezmenyId int
,@TanevId int
,@IdoszakKezdete datetime
,@IdoszakVege datetime
,@GroupId nvarchar(36)
AS
BEGIN
SET NOCOUNT ON;
SELECT
nkm.ID
FROM T_NEMKOTOTTMUNKAIDO nkm
WHERE
C_GROUPID = @GroupId AND C_INTEZMENYID = @IntezmenyId AND C_TANEVID = @TanevId AND TOROLT = 'F'
AND nkm.C_KEZDETE BETWEEN @IdoszakKezdete AND @IdoszakVege
END

View file

@ -0,0 +1,39 @@
-- =============================================
-- Nem kötött munkaidő részletező nyomtatványhoz tárolt eljárás -- Rudlof Kristóf
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetNemKotottMunkaidoReszletezo]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetNemKotottMunkaidoReszletezo]
END
GO
CREATE PROCEDURE [dbo].[sp_GetNemKotottMunkaidoReszletezo]
@tanevId int,
@intezmenyId int,
@tanarId int
AS
BEGIN
SET NOCOUNT ON;
select replace(CONVERT(date,nkm.c_kezdete,126),'-','.')+'.' Datum, CONVERT(VARCHAR(5),nkm.c_kezdete,108) Kezdete, CONVERT(VARCHAR(5),nkm.c_vege,108) Vege, f.c_nyomtatasinev Tanar, d.c_name Tevekenyseg, nkm.c_megjegyzes Megjegyzes, nn.c_hetsorszama as Het
from T_NEMKOTOTTMUNKAIDO_OSSZES nkm
inner join T_FELHASZNALO_OSSZES f on f.id=nkm.c_tanarid
inner join (select distinct d.c_name, d.id from T_DICTIONARYITEMBASE_OSSZES d)d on d.id=c_tevekenysegtipusa
inner join T_NAPTARINAP_OSSZES nn on CONVERT(date,nn.c_napdatuma)=CONVERT(date,nkm.c_kezdete) and nn.c_intezmenyid=@intezmenyId and nn.c_tanevid=@tanevId and nn.torolt='F'
where nkm.torolt='F' and nkm.c_tanevid=@tanevId and nkm.c_tanarid=@tanarId
END
GO

View file

@ -0,0 +1,47 @@
IF OBJECT_ID('sp_GetNemMegtartottOrakSzamaByHet') IS NOT NULL BEGIN
DROP PROCEDURE sp_GetNemMegtartottOrakSzamaByHet
END
GO
CREATE PROCEDURE [sp_GetNemMegtartottOrakSzamaByHet]
@osztalycsoportId int
,@intezmenyId int
,@tanevId int
,@hetSorszam int
AS
BEGIN
declare @aktualisHetHetirendje int = (select c_hetirend from T_NAPTARIHET where C_HETSORSZAMA=@hetSorszam and TOROLT='F' and c_tanevid=@tanevId)
SELECT
o.ID AS Id
,@hetSorszam AS HetSzama
,n.C_NAPDATUMA AS Datum
,n.C_HETNAPJA AS Hetnapja
,o.C_ORASZAM AS Oraszam
,ocst.C_NEV AS OsztalyNev
,tt.C_NEV AS TargyNev
,felh.C_NYOMTATASINEV AS TanarNev
FROM T_NAPTARINAP n
INNER JOIN T_ORARENDIORA o ON o.C_HETIREND in (@aktualisHetHetirendje, 1554) and n.C_HETNAPJA = o.C_HETNAPJA AND n.C_NAPDATUMA BETWEEN o.C_ORAERVENYESSEGKEZDETE AND o.C_ORAERVENYESSEGVEGE
INNER JOIN fnGetKapcsolodoOsztalycsoportok(@osztalycsoportId) ocs ON ocs.ID = o.C_OSZTALYCSOPORTID
INNER JOIN T_OSZTALYCSOPORT ocst ON ocst.ID = ocs.ID AND ocst.TOROLT = 'F'
INNER JOIN T_FOGLALKOZAS f ON f.ID = o.C_FOGLALKOZASID AND f.TOROLT = 'F'
INNER JOIN T_TANTARGY tt ON tt.ID = f.C_TANTARGYID AND tt.TOROLT = 'F'
LEFT JOIN T_FOGLALKOZASOK_TANAROK ft ON ft.C_FOGLALKOZASOKID = f.ID AND f.TOROLT='F'
LEFT JOIN T_FELHASZNALO felh ON felh.ID = ft.C_TANAROKID
LEFT JOIN T_TANEVRENDJE tr ON tr.C_DATUM = n.C_NAPDATUMA
LEFT JOIN T_TANITASIORA t ON t.C_ORARENDIORAID = o.ID AND t.C_NAPTARINAPID = n.ID and t.torolt='F'
WHERE n.C_NAPDATUMA < GETDATE()
AND o.C_HETNAPJA IN (1408, 1409, 1410, 1411, 1412)
AND n.C_TANEVID = @tanevId
AND n.C_HETSORSZAMA = @hetSorszam
AND n.C_ORARENDINAP='T'
AND t.ID IS NULL
and o.TOROLT='F'
and (o.C_TANORANKIVULIFOGLALKOZAS = 'F' or o.C_TANORANKIVULIFOGLALKOZAS is null)
and o.C_CSENGETESIRENDORAID is not null
ORDER BY n.C_NAPDATUMA, o.C_ORASZAM
END

View file

@ -0,0 +1,33 @@
IF OBJECT_ID('sp_GetNemMegtartottOrakSzamaPerHet') IS NOT NULL
BEGIN
DROP PROCEDURE sp_GetNemMegtartottOrakSzamaPerHet
END
GO
CREATE PROCEDURE [sp_GetNemMegtartottOrakSzamaPerHet]
@osztalycsoportId int,
@intezmenyId int,
@tanevId int
AS
BEGIN
SELECT
n.C_HETSORSZAMA HetSorszama,
count(1) NemNaplozottOrakSzama,
@osztalycsoportid OsztalyID
FROM T_NAPTARINAP n
INNER JOIN T_ORARENDIORA o ON o.C_HETIREND in (n.C_HETIREND, 1554) and n.C_HETNAPJA = o.C_HETNAPJA AND n.C_NAPDATUMA BETWEEN o.C_ORAERVENYESSEGKEZDETE AND o.C_ORAERVENYESSEGVEGE
INNER JOIN fnGetKapcsolodoOsztalycsoportok(@osztalycsoportId) ocs ON ocs.ID = o.C_OSZTALYCSOPORTID
INNER JOIN T_OSZTALYCSOPORT ocst ON ocst.ID = ocs.ID AND ocst.TOROLT = 'F'
LEFT JOIN T_TANEVRENDJE tr ON tr.C_DATUM = n.C_NAPDATUMA
LEFT JOIN T_TANITASIORA t ON t.C_ORARENDIORAID = o.ID AND t.C_NAPTARINAPID = n.ID and t.torolt='F'
WHERE n.C_NAPDATUMA < GETDATE()
AND o.C_HETNAPJA between 1408 and 1412
and isnull(tr.C_ORARENDINAP, n.C_ORARENDINAP) ='T'
AND n.C_TANEVID = @tanevId
AND t.ID is null
and o.TOROLT='F'
and (o.C_TANORANKIVULIFOGLALKOZAS = 'F' or o.C_TANORANKIVULIFOGLALKOZAS is null)
and o.C_CSENGETESIRENDORAID is not null
group by n.C_HETSORSZAMA
END

View file

@ -0,0 +1,101 @@
IF OBJECT_ID('sp_GetOraEvesSorszama') IS NOT NULL BEGIN
DROP PROCEDURE sp_GetOraEvesSorszama
END
GO
CREATE PROCEDURE sp_GetOraEvesSorszama
@tantargyId int,
@osztalyCsoportId int,
@datum datetime,
@tanarId int,
@intezmenyId int,
@tanevId int
AS
BEGIN
DECLARE @tanarSzamit bit,
@osztalybontasEgybe bit,
@osztalybontasCsoport bit
SET @tanarSzamit = dbo.fnGetRendszerbeallitasEnumBool(3075, @intezmenyId, @tanevId)
SET @osztalybontasEgybe = dbo.fnGetRendszerbeallitasEnumBool(3078, @intezmenyId, @tanevId)
SET @osztalybontasCsoport = 0
IF EXISTS (SELECT 1 FROM T_CSOPORT WHERE (ID = @osztalyCsoportId AND C_OSZTALYBONTASID IS NOT NULL) OR C_OSZTALYBONTASID = @osztalyCsoportId) BEGIN
SET @osztalybontasCsoport = 1
END
IF @osztalybontasEgybe = 0 OR @osztalybontasCsoport = 0 BEGIN
IF @tanarSzamit = 1 BEGIN
SELECT COUNT(1) AS cnt
FROM T_TANITASIORA_OSSZES t
INNER JOIN T_ORAK_TANAROK_OSSZES o ON t.ID = o.C_ORAKID
WHERE t.C_MEGTARTOTT = 'T'
AND t.C_SORSZAMOZANDO = 'T'
AND t.C_TANTARGYID = @tantargyId
AND t.C_OSZTALYCSOPORTID = @osztalyCsoportId
AND o.C_TANAROKID = @tanarId
AND t.C_ORAKEZDETE <= @datum
END
ELSE BEGIN
SELECT COUNT(1) AS cnt
FROM T_TANITASIORA_OSSZES t
WHERE t.C_MEGTARTOTT = 'T'
AND t.C_SORSZAMOZANDO = 'T'
AND t.C_TANTARGYID = @tantargyId
AND t.C_OSZTALYCSOPORTID = @osztalyCsoportId
AND t.C_ORAKEZDETE <= @datum
END
END
ELSE BEGIN
IF @tanarSzamit = 1 BEGIN
SELECT COUNT(1) AS cnt
FROM T_TANITASIORA_OSSZES t
INNER JOIN T_ORAK_TANAROK_OSSZES o ON t.ID = o.C_ORAKID
WHERE t.C_TANTARGYID = @tantargyId
AND t.C_OSZTALYCSOPORTID IN (
SELECT cs.ID
FROM T_CSOPORT cs
WHERE cs.C_OSZTALYBONTASID = (SELECT scs.C_OSZTALYBONTASID FROM T_CSOPORT scs WHERE scs.ID = @osztalyCsoportId)
UNION
SELECT cs.C_OSZTALYBONTASID
FROM T_CSOPORT cs
WHERE cs.ID = @osztalyCsoportId
UNION
SELECT cs.ID
FROM T_CSOPORT cs
WHERE cs.C_OSZTALYBONTASID = @osztalyCsoportId
UNION
SELECT @osztalyCsoportId
)
AND o.C_TANAROKID = @tanarId
AND t.C_ORAKEZDETE <= @datum
AND t.C_SORSZAMOZANDO = 'T'
AND t.C_MEGTARTOTT = 'T'
END
ELSE BEGIN
SELECT COUNT(1) AS cnt
FROM T_TANITASIORA_OSSZES t
WHERE t.C_TANTARGYID = @tantargyId
AND t.C_OSZTALYCSOPORTID IN (
SELECT cs.ID
FROM T_CSOPORT cs
WHERE cs.C_OSZTALYBONTASID = (SELECT scs.C_OSZTALYBONTASID FROM T_CSOPORT scs WHERE scs.ID = @osztalyCsoportId)
UNION
SELECT cs.C_OSZTALYBONTASID
FROM T_CSOPORT cs
WHERE cs.ID = @osztalyCsoportId
UNION
SELECT cs.ID
FROM T_CSOPORT cs
WHERE cs.C_OSZTALYBONTASID = @osztalyCsoportId
UNION
SELECT @osztalyCsoportId
)
AND t.C_ORAKEZDETE <= @datum
AND t.C_SORSZAMOZANDO = 'T'
AND t.C_MEGTARTOTT = 'T'
END
END
END
GO

Some files were not shown because too many files have changed in this diff Show more