init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,362 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetErtesitoNyomtatvany]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetErtesitoNyomtatvany]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =====================================================================
|
||||
-- Description: értesítõ nyomtatvány (félévi, év végi, I. negyedévi...)
|
||||
-- =====================================================================
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetErtesitoNyomtatvany]
|
||||
@osztalyId int,
|
||||
@tanevId int,
|
||||
@ertekelesTipus int,
|
||||
@elmeletGyakorlat bit=0,
|
||||
@kesesTipus int = 1499,
|
||||
@elmeletiOraPercben int = 45,
|
||||
@gyakorlatiOraPercben int = 60,
|
||||
@isBizonyitvany int = 0
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @intezmenyId INT = (SELECT C_INTEZMENYID FROM T_TANEV WHERE ID=@tanevId)
|
||||
|
||||
-- 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
|
||||
DECLARE @Tanulok TABLE (TANULOID INT, TANULONEV NVARCHAR(MAX), OKTATASIAZONOSITO NVARCHAR(MAX))
|
||||
INSERT INTO @Tanulok
|
||||
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
|
||||
|
||||
SELECT * FROM @Tanulok ORDER BY TANULONEV
|
||||
|
||||
-- ÉRTÉKELÉSEK
|
||||
SELECT ERTEKELES.C_TANULOID TANULOID,
|
||||
'MAGATARTAS' TARGY,
|
||||
ERT.C_NAME FELEVIERTEKELES,
|
||||
null Jegyzet,
|
||||
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 = @ertekelesTipus
|
||||
AND (OSZTALYZAT.MAGATARTAS IS NOT NULL OR (LEN(ERTEKELES.C_ERTEKELESSZOVEG)>0 and ERTEKELES.C_TANTARGYID is null) )
|
||||
AND ERTEKELES.C_TANEVID = @TanevId
|
||||
AND ERTEKELES.TOROLT='F'
|
||||
UNION ALL
|
||||
|
||||
SELECT ERTEKELES.C_TANULOID TANULOID,
|
||||
'SZORGALOM' TARGY,
|
||||
ERT.C_NAME FELEVIERTEKELES,
|
||||
null,
|
||||
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 = @ertekelesTipus
|
||||
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,
|
||||
iif(@isBizonyitvany <> 0,ERT.C_NAME, ERT.C_NAME+iif(ertekelesMegjegyzes.C_TEMA IS NULL, '', +' * '+ertekelesMegjegyzes.C_TEMA)) FELEVIERTEKELES,
|
||||
ertekelesMegjegyzes.C_TEMA Jegyzet,
|
||||
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
|
||||
AND ERTEKELES.C_ERTEKELESTIPUSA = @ertekelesTipus
|
||||
AND ERTEKELES.C_TANEVID = @TanevId
|
||||
AND ERTEKELES.TOROLT='F'
|
||||
ORDER BY TANULOID, RENDEZ
|
||||
|
||||
-- MULASZTÁSOK
|
||||
DECLARE @Idoszak INT
|
||||
DECLARE @IdoszakVege DATE
|
||||
|
||||
SET @Idoszak = (SELECT
|
||||
CASE
|
||||
WHEN @ertekelesTipus = 1519 THEN 1400 --félévi
|
||||
WHEN @ertekelesTipus = 1520 THEN 1395 --év végi
|
||||
WHEN @ertekelesTipus = 1522 THEN 1403 --I. negyedévi
|
||||
WHEN @ertekelesTipus = 1523 then 1404 --III. negyedévi
|
||||
END
|
||||
)
|
||||
|
||||
SET @IdoszakVege = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA=@Idoszak AND C_TANEVID=@tanevId AND TOROLT='F')
|
||||
|
||||
SELECT
|
||||
t.TANULOID tanuloid
|
||||
,m.Igazolt
|
||||
,m.Igazolatlan
|
||||
,m.ElmeletIgazolt
|
||||
,m.ElmeletIgazolatlan
|
||||
,m.GyakorlatiIgazolt
|
||||
,m.GyakorlatiIgazolatlan
|
||||
,m.Osszes
|
||||
FROM @Tanulok t
|
||||
LEFT JOIN (
|
||||
SELECT DISTINCT
|
||||
m.tanuloId
|
||||
,ISNULL(m.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(m.[hianyzasIgazoltTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazoltElmeletiOraban,0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0) Igazolt
|
||||
,ISNULL(m.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(m.[hianyzasIgazolatlanTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazolatlanElmeletiOraban,0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0) Igazolatlan
|
||||
,ISNULL(m.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(kp.kesesIgazoltElmeletiOraban,0) ElmeletIgazolt
|
||||
,ISNULL(m.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(kp.kesesIgazolatlanElmeletiOraban,0) ElmeletIgazolatlan
|
||||
,ISNULL(m.[hianyzasIgazoltTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0) GyakorlatiIgazolt
|
||||
,ISNULL(m.[hianyzasIgazolatlanTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0) GyakorlatiIgazolatlan
|
||||
,ISNULL(m.[hianyzasIgazoltTanoraiElmeleti], 0) + ISNULL(m.[hianyzasIgazoltTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazoltElmeletiOraban,0) + ISNULL(kp.kesesIgazoltGyakorlatiOraban,0)+
|
||||
ISNULL(m.[hianyzasIgazolatlanTanoraiElmeleti], 0) + ISNULL(m.[hianyzasIgazolatlanTanoraiGyakorlati], 0) + ISNULL(kp.kesesIgazolatlanElmeletiOraban,0) + ISNULL(kp.kesesIgazolatlanGyakorlatiOraban,0) Osszes
|
||||
FROM (
|
||||
SELECT
|
||||
tanuloId,
|
||||
[hianyzasIgazoltTanoraiElmeleti], [hianyzasIgazoltTanoraiGyakorlati],
|
||||
[hianyzasIgazolatlanTanoraiElmeleti], [hianyzasIgazolatlanTanoraiGyakorlati],
|
||||
[kesesIgazoltTanoraiElmeleti],[kesesIgazoltTanoraiGyakorlati],
|
||||
[kesesIgazolatlanTanoraiElmeleti], [kesesIgazolatlanTanoraiGyakorlati]
|
||||
FROM (
|
||||
SELECT
|
||||
x.tanuloId
|
||||
,CASE mulasztasTipus WHEN 1500 THEN 'Hianyzas' WHEN 1499 THEN 'Keses' END +
|
||||
CASE WHEN isIgazolt IS NULL THEN 'Igazolando' WHEN isIgazolt = 'T' THEN 'Igazolt' WHEN isIgazolt = 'F' THEN 'Igazolatlan' END +
|
||||
CASE isTanorai WHEN 'T' THEN 'Tanorai' WHEN 'F' THEN 'TanoranKivuli' END +
|
||||
CASE isGyakorlati WHEN 'T' THEN 'Gyakorlati' WHEN 'F' THEN 'Elmeleti' END
|
||||
AS piv
|
||||
,cnt
|
||||
FROM (
|
||||
SELECT
|
||||
m.C_ORATANULOIID AS tanuloId,
|
||||
m.C_TIPUS mulasztasTipus,
|
||||
m.C_IGAZOLT isIgazolt,
|
||||
IIF(cs.ID IS NULL OR cs.C_TIPUSA = 1034, 'T', 'F') AS isTanorai,
|
||||
IIF(t.C_GYAKORLATI='T', 'T', 'F') as isGyakorlati,
|
||||
COUNT(1) AS cnt
|
||||
FROM T_TANULOMULASZTAS_OSSZES m
|
||||
INNER JOIN T_TANITASIORA_OSSZES tn ON tn.ID = m.C_TANITASIORAKID
|
||||
INNER JOIN T_TANTARGY_OSSZES t on t.id=tn.C_TANTARGYID
|
||||
LEFT JOIN T_CSOPORT_OSSZES cs ON tn.C_OSZTALYCSOPORTID = cs.ID
|
||||
WHERE
|
||||
tn.C_DATUM <= @IdoszakVege
|
||||
AND m.C_INTEZMENYID = @intezmenyId
|
||||
AND m.C_TANEVID = @tanevId
|
||||
AND m.Torolt ='F'
|
||||
AND EXISTS (SELECT 1 FROM T_TANULOCSOPORT_OSSZES tcs WHERE tcs.C_OSZTALYCSOPORTID = @osztalyId AND tcs.C_TANULOID = m.C_ORATANULOIID AND tcs.C_BELEPESDATUM <= GETDATE() AND (tcs.C_KILEPESDATUM > GETDATE() OR tcs.C_KILEPESDATUM IS NULL))
|
||||
GROUP BY m.C_ORATANULOIID, m.C_TIPUS, m.C_IGAZOLT, IIF(cs.ID IS NULL OR cs.C_TIPUSA = 1034, 'T', 'F'), t.C_GYAKORLATI
|
||||
) x
|
||||
) p
|
||||
PIVOT (
|
||||
MAX(cnt)
|
||||
FOR piv IN (
|
||||
[hianyzasIgazoltTanoraiElmeleti], [hianyzasIgazoltTanoraiGyakorlati],
|
||||
[hianyzasIgazolatlanTanoraiElmeleti], [hianyzasIgazolatlanTanoraiGyakorlati],
|
||||
[kesesIgazoltTanoraiElmeleti],[kesesIgazoltTanoraiGyakorlati],
|
||||
[kesesIgazolatlanTanoraiElmeleti], [kesesIgazolatlanTanoraiGyakorlati])
|
||||
) AS pvt
|
||||
) m
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tanuloId
|
||||
,[kesesIgazolandoTanoraiPerc]
|
||||
,[kesesIgazoltTanoraiPerc]
|
||||
,[kesesIgazolatlanTanoraiPerc]
|
||||
FROM (
|
||||
SELECT
|
||||
x.tanuloId
|
||||
,'Keses' +
|
||||
CASE WHEN isIgazolt IS NULL THEN 'Igazolando' WHEN isIgazolt = 'T' THEN 'Igazolt' WHEN isIgazolt = 'F' THEN 'Igazolatlan' END +
|
||||
'TanoraiPerc' AS piv
|
||||
,kesesPercben
|
||||
FROM (
|
||||
SELECT
|
||||
m.C_ORATANULOIID AS tanuloId
|
||||
,m.C_IGAZOLT isIgazolt
|
||||
,SUM(m.C_KESESPERCBEN) AS kesesPercben
|
||||
FROM T_TANULOMULASZTAS_OSSZES m
|
||||
INNER JOIN T_TANITASIORA_OSSZES tn ON tn.ID = m.C_TANITASIORAKID
|
||||
LEFT JOIN T_CSOPORT_OSSZES cs ON tn.C_OSZTALYCSOPORTID = cs.ID
|
||||
WHERE
|
||||
tn.C_DATUM <= @IdoszakVege
|
||||
AND m.C_INTEZMENYID = @intezmenyId
|
||||
AND m.C_TANEVID = @tanevId
|
||||
AND m.Torolt ='F'
|
||||
AND EXISTS (SELECT 1 FROM T_TANULOCSOPORT_OSSZES tcs WHERE tcs.C_OSZTALYCSOPORTID = @osztalyId AND tcs.C_TANULOID = m.C_ORATANULOIID AND tcs.C_BELEPESDATUM <= GETDATE() AND (tcs.C_KILEPESDATUM > GETDATE() OR tcs.C_KILEPESDATUM IS NULL))
|
||||
AND (cs.ID IS NULL OR cs.C_TIPUSA = 1034)
|
||||
AND m.C_TIPUS = 1499
|
||||
GROUP BY m.C_ORATANULOIID, m.C_IGAZOLT
|
||||
) x
|
||||
) p
|
||||
PIVOT (
|
||||
MAX(kesesPercben)
|
||||
FOR piv IN
|
||||
([kesesIgazolandoTanoraiPerc], [kesesIgazoltTanoraiPerc], [kesesIgazolatlanTanoraiPerc])
|
||||
) AS pvt
|
||||
) k ON k.tanuloId = m.tanuloId
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tanuloId
|
||||
,[kesesIgazolandoTanoraiPluszOra]
|
||||
,[kesesIgazoltTanoraiPluszOra]
|
||||
,[kesesIgazolatlanTanoraiPluszOra]
|
||||
,kesesIgazoltElmeletiOraban
|
||||
,kesesIgazolatlanElmeletiOraban
|
||||
,kesesIgazoltGyakorlatiOraban
|
||||
,kesesIgazolatlanGyakorlatiOraban
|
||||
FROM (
|
||||
SELECT
|
||||
x.tanuloId
|
||||
,'Keses' +
|
||||
CASE WHEN isIgazolt IS NULL THEN 'Igazolando' WHEN isIgazolt = 'T' THEN 'Igazolt' WHEN isIgazolt = 'F' THEN 'Igazolatlan' END +
|
||||
'TanoraiPluszOra' AS piv
|
||||
,kesesOraban
|
||||
,kesesIgazoltElmeletiOraban
|
||||
,kesesIgazolatlanElmeletiOraban
|
||||
,kesesIgazoltGyakorlatiOraban
|
||||
,kesesIgazolatlanGyakorlatiOraban
|
||||
FROM (
|
||||
SELECT
|
||||
xx.tanuloId
|
||||
,xx.isIgazolt
|
||||
,SUM(xx.keses / (CASE WHEN isGyakorlati = 'F' THEN @elmeletiOraPercben ELSE @gyakorlatiOraPercben END)) AS kesesOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'F' and isIgazolt='T' THEN xx.keses / @elmeletiOraPercben ELSE 0 END) AS kesesIgazoltElmeletiOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'F' and isIgazolt='F' THEN xx.keses / @elmeletiOraPercben ELSE 0 END) AS kesesIgazolatlanElmeletiOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'T' and isIgazolt='T' THEN xx.keses / @gyakorlatiOraPercben ELSE 0 END) AS kesesIgazoltGyakorlatiOraban
|
||||
,SUM(CASE WHEN isGyakorlati = 'T' and isIgazolt='F' THEN xx.keses / @gyakorlatiOraPercben ELSE 0 END) AS kesesIgazolatlanGyakorlatiOraban
|
||||
FROM (
|
||||
SELECT
|
||||
m.C_ORATANULOIID AS tanuloId
|
||||
,m.C_IGAZOLT isIgazolt
|
||||
,t.C_GYAKORLATI AS isGyakorlati
|
||||
,SUM(m.C_KESESPERCBEN) AS keses
|
||||
FROM T_TANULOMULASZTAS_OSSZES m
|
||||
INNER JOIN T_TANITASIORA_OSSZES tn ON tn.ID = m.C_TANITASIORAKID
|
||||
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = tn.C_TANTARGYID
|
||||
LEFT JOIN T_CSOPORT_OSSZES cs ON tn.C_OSZTALYCSOPORTID = cs.ID
|
||||
WHERE m.C_INTEZMENYID = @intezmenyId AND m.C_TANEVID = @tanevId
|
||||
AND EXISTS (SELECT 1 FROM T_TANULOCSOPORT_OSSZES tcs WHERE tcs.C_OSZTALYCSOPORTID = @osztalyId AND tcs.C_TANULOID = m.C_ORATANULOIID AND tcs.C_BELEPESDATUM <= GETDATE() AND (tcs.C_KILEPESDATUM > GETDATE() OR tcs.C_KILEPESDATUM IS NULL))
|
||||
AND (cs.ID IS NULL OR cs.C_TIPUSA = 1034)
|
||||
AND m.C_TIPUS = 1499
|
||||
AND m.TOROLT = 'F'
|
||||
GROUP BY m.C_ORATANULOIID, m.C_IGAZOLT/*, tn.C_FOGLALKOZASID*/, t.C_GYAKORLATI
|
||||
) xx
|
||||
GROUP BY tanuloId, xx.isIgazolt
|
||||
) x
|
||||
) p
|
||||
PIVOT (
|
||||
MAX(kesesOraban)
|
||||
FOR piv IN
|
||||
([kesesIgazolandoTanoraiPluszOra], [kesesIgazoltTanoraiPluszOra], [kesesIgazolatlanTanoraiPluszOra])
|
||||
) AS pvt
|
||||
) kp ON m.tanuloId = kp.tanuloId
|
||||
) m on m.tanuloId=t.TanuloId
|
||||
|
||||
|
||||
|
||||
-- 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
|
||||
DECLARE @EsemenyTipus INT
|
||||
|
||||
SET @EsemenyTipus = (SELECT
|
||||
CASE
|
||||
WHEN @ertekelesTipus = 1519 THEN 1547 --félévi
|
||||
WHEN @ertekelesTipus = 1520 THEN 1548 --év végi
|
||||
WHEN @ertekelesTipus = 1522 THEN 1549 --I. negyedévi
|
||||
WHEN @ertekelesTipus = 1523 then 1551 --III. negyedévi
|
||||
END
|
||||
)
|
||||
|
||||
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 = @EsemenyTipus
|
||||
AND T_TANULOESEMENY_OSSZES.C_TIPUS != 1534
|
||||
AND T_TANULOESEMENY_OSSZES.C_TANEVID = @TanevId
|
||||
ORDER BY T_TANULOESEMENY_OSSZES.C_TANULOID
|
||||
END
|
||||
|
||||
GO
|
Loading…
Add table
Add a link
Reference in a new issue