init
This commit is contained in:
@@ -0,0 +1,210 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP FUNCTION IF EXISTS fnGetDokumentumErtekelesekOsztalyonkent
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumErtekelesekOsztalyonkent (@tanevId INT, @osztalyCsoportId INT, @ertekelesTipusa INT = NULL, @csakTanorai BIT = 1, @csakKivlasztottOsztalyCsoport BIT = 0, @atsoroltTanuloErtekelesek INT = 0)
|
||||
RETURNS @retTanuloErtekeles TABLE
|
||||
(
|
||||
ErtekelesId INT NOT NULL,
|
||||
Datum DATE,
|
||||
TipusId INT,
|
||||
ErtekelesSzoveg NVARCHAR(MAX),
|
||||
ErtekelesSzovegRovidNev NVARCHAR(3),
|
||||
ErtekelesOsztalyzatId INT,
|
||||
ErtekelesOsztalyzatValue INT,
|
||||
ErtekelesOsztalyzatNev NVARCHAR(MAX),
|
||||
ErtekelesSzazalek NVARCHAR(MAX),
|
||||
MagatartasOsztalyzatId INT,
|
||||
MagatartasOsztalyzatValue INT,
|
||||
MagatartasOsztalyzatNev NVARCHAR(MAX),
|
||||
MagatartasSzoveg NVARCHAR(MAX),
|
||||
MagatartasSzovegRovidNev NVARCHAR(3),
|
||||
MagatartasErtekId INT,
|
||||
MagatartasErtek NVARCHAR(MAX),
|
||||
MagatartasErtekOsztalyzatkent INT,
|
||||
SzorgalomOsztalyzatId INT,
|
||||
SzorgalomOsztalyzatValue INT,
|
||||
SzorgalomOsztalyzatNev NVARCHAR(MAX),
|
||||
SzorgalomSzoveg NVARCHAR(MAX),
|
||||
SzorgalomSzovegRovidNev NVARCHAR(3),
|
||||
SzorgalomErtekId INT,
|
||||
SzorgalomErtek NVARCHAR(MAX),
|
||||
SzorgalomErtekOsztalyzatkent INT,
|
||||
TanuloId INT,
|
||||
TanuloCsoportId INT,
|
||||
OsztalyCsoportId INT,
|
||||
TantargyId INT,
|
||||
TantargyNevZarojellel NVARCHAR(MAX),
|
||||
TantargyNevNyomtatvanyban NVARCHAR(MAX),
|
||||
TantargyNev NVARCHAR(MAX),
|
||||
TantargyAngolNev NVARCHAR(MAX),
|
||||
TantargyNemetNev NVARCHAR(MAX),
|
||||
TargyKategoriaId INT,
|
||||
FotargyE CHAR(1),
|
||||
Altantargy CHAR(1),
|
||||
FotargyId INT,
|
||||
ErtekelesTema NVARCHAR(MAX),
|
||||
ErtekeloId INT,
|
||||
ErtekelesModjaId INT,
|
||||
IsMagatartasSzorgalom CHAR(1),
|
||||
Jeloles NVARCHAR(MAX),
|
||||
JelolesAndErtekelesTema NVARCHAR(MAX)
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = (SELECT tev.C_DEFAULTFELADATKATEGORIAID FROM T_TANEV_OSSZES tev WHERE tev.ID = @tanevId)
|
||||
INSERT INTO @retTanuloErtekeles
|
||||
SELECT DISTINCT
|
||||
tanuloErtekeles.ID,
|
||||
tanuloErtekeles.C_DATUM,
|
||||
tanuloErtekeles.C_TIPUSID,
|
||||
tanuloErtekeles.C_ERTEKELESSZOVEG,
|
||||
tanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV,
|
||||
tanuloErtekeles.C_ERTEKELESOSZTALYZATID,
|
||||
ertekelesOsztalyzat.C_VALUE,
|
||||
ertekelesOsztalyzat.C_NAME,
|
||||
IIF(tanuloErtekeles.C_ERTEKELESSZAZALEK IS NOT NULL, CONVERT(NVARCHAR(3), tanuloErtekeles.C_ERTEKELESSZAZALEK)+'%', NULL),
|
||||
tanuloErtekeles.C_MAGATARTASOSZTALYZATID,
|
||||
magatartasOsztalyzat.C_VALUE,
|
||||
magatartasOsztalyzat.C_NAME,
|
||||
tanuloErtekeles.C_MAGATARTASSZOVEG,
|
||||
tanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV,
|
||||
tanuloErtekeles.C_MAGATARTASERTEKID,
|
||||
magatartasErtek.C_NAME,
|
||||
magatartasErtek.C_VALUE + 1,
|
||||
tanuloErtekeles.C_SZORGALOMOSZTALYZATID,
|
||||
szorgalomOsztalyzat.C_VALUE,
|
||||
szorgalomOsztalyzat.C_NAME,
|
||||
tanuloErtekeles.C_SZORGALOMSZOVEG,
|
||||
tanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV,
|
||||
tanuloErtekeles.C_SZORGALOMERTEKID,
|
||||
szorgalomErtek.C_NAME,
|
||||
szorgalomErtek.C_VALUE + 1,
|
||||
tanuloErtekeles.C_TANULOID,
|
||||
TanuloCsoportId,
|
||||
tanuloErtekeles.C_OSZTALYCSOPORTID,
|
||||
tanuloErtekeles.C_TANTARGYID,
|
||||
IIF(tantargy.C_NEV <> tantargy.C_NEVNYOMTATVANYBAN AND tantargy.C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN +' ('+tantargy.C_NEV+')', tantargy.C_NEV),
|
||||
tantargy.C_NEVNYOMTATVANYBAN,
|
||||
tantargy.C_NEV,
|
||||
tantargy.C_ANGOLNEV,
|
||||
tantargy.C_NEMETNEV,
|
||||
tantargy.C_TARGYKATEGORIA,
|
||||
tantargy.C_FOTARGYE,
|
||||
tantargy.C_ALTANTARGYKENTNYOMTATVANYBAN,
|
||||
tantargy.C_FOTARGYID,
|
||||
tanuloErtekeles.C_ERTEKELESTEMA,
|
||||
tanuloErtekeles.C_ERTEKELOID,
|
||||
tanuloErtekeles.C_ERTEKELESMODID,
|
||||
tanuloErtekeles.C_ISMAGATARTASSZORGALOM,
|
||||
IIF(tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL AND tanuloErtekeles.C_TIPUSID IN (1519, 1520),
|
||||
'<i>(' + CAST(CHAR(ROW_NUMBER() OVER(PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_DATUM) + 96) AS NVARCHAR(10))+')</i>',
|
||||
''),
|
||||
IIF(tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL AND tanuloErtekeles.C_TIPUSID IN(1519, 1520),
|
||||
'<i>('+CAST(CHAR(ROW_NUMBER() OVER(PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_DATUM) + 96) AS NVARCHAR(10)) + ')</i>: ' + tanuloErtekeles.C_ERTEKELESTEMA,
|
||||
'')
|
||||
FROM T_TANULOERTEKELES_OSSZES tanuloErtekeles
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyCsoportId, 'T') tanulo ON tanulo.TanuloId = tanuloErtekeles.C_TANULOID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON TanuloCsoport.C_TANULOID = tanuloErtekeles.C_TANULOID
|
||||
AND TanuloCsoport.C_OSZTALYCSOPORTID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
AND tanuloErtekeles.C_DATUM BETWEEN TanuloCsoport.C_BELEPESDATUM AND ISNULL(TanuloCsoport.C_KILEPESDATUM, GETDATE())
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
LEFT JOIN T_TANTARGY_OSSZES tantargy ON tantargy.Id = tanuloErtekeles.C_TANTARGYID
|
||||
AND (tantargy.C_TARGYKATEGORIA <> 1248 OR tantargy.C_TARGYKATEGORIA IS NULL)
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ertekelesOsztalyzat ON ertekelesOsztalyzat.ID = tanuloErtekeles.C_ERTEKELESOSZTALYZATID
|
||||
AND ertekelesOsztalyzat.C_TANEVID = @tanevId
|
||||
AND ertekelesOsztalyzat.C_TYPE LIKE 'OsztalyzatTipus'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES magatartasOsztalyzat ON magatartasOsztalyzat.ID = tanuloErtekeles.C_MAGATARTASOSZTALYZATID
|
||||
AND magatartasOsztalyzat.C_TANEVID = @tanevId
|
||||
AND magatartasOsztalyzat.C_TYPE LIKE 'OsztalyzatTipus'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES szorgalomOsztalyzat ON szorgalomOsztalyzat.ID = tanuloErtekeles.C_SZORGALOMOSZTALYZATID
|
||||
AND szorgalomOsztalyzat.C_TANEVID = @tanevId
|
||||
AND szorgalomOsztalyzat.C_TYPE LIKE 'OsztalyzatTipus'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES magatartasErtek ON magatartasErtek.ID = tanuloErtekeles.C_MAGATARTASERTEKID
|
||||
AND magatartasErtek.C_TANEVID = @tanevId
|
||||
AND magatartasErtek.C_TYPE LIKE 'MagatartasErtekelesTipus'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES szorgalomErtek ON szorgalomErtek.ID = tanuloErtekeles.C_SZORGALOMERTEKID
|
||||
AND szorgalomErtek.C_TANEVID = @tanevId
|
||||
AND szorgalomErtek.C_TYPE LIKE 'SzorgalomErtekelesTipus'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES osztalyCsoport ON osztalyCsoport.ID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
AND osztalyCsoport.TOROLT = 'F'and osztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
LEFT JOIN T_CSOPORT_OSSZES csoport ON csoport.ID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_OSZTALY_OSSZES osztaly ON osztaly.ID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
WHERE
|
||||
tanuloErtekeles.C_TANEVID = @tanevId
|
||||
AND tanuloErtekeles.TOROLT = 'F'
|
||||
AND (@atsoroltTanuloErtekelesek > 0
|
||||
OR (tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
IN(
|
||||
SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyCsoportId, @tanevId, 0))
|
||||
)
|
||||
)
|
||||
AND (@ertekelesTipusa IS NULL OR C_TIPUSID = @ertekelesTipusa)
|
||||
AND (@csakKivlasztottOsztalyCsoport = 0 OR tanuloErtekeles.C_OSZTALYCSOPORTID = @osztalyCsoportId)
|
||||
AND (@csakTanorai = 0 OR osztaly.ID IS NOT NULL OR
|
||||
(csoport.ID IS NOT NULL AND csoport.C_TIPUSA
|
||||
IN(
|
||||
SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@tanevId)
|
||||
)
|
||||
)
|
||||
)
|
||||
AND BelepesDatum <= tanuloErtekeles.C_DATUM
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= tanuloErtekeles.C_DATUM)
|
||||
|
||||
option (recompile);
|
||||
|
||||
IF @atsoroltTanuloErtekelesek = 1
|
||||
BEGIN
|
||||
DECLARE @osztalyTantargyak TABLE
|
||||
(
|
||||
TantargyId INT
|
||||
);
|
||||
|
||||
INSERT INTO @osztalyTantargyak
|
||||
SELECT DISTINCT
|
||||
TantargyId
|
||||
FROM
|
||||
@retTanuloErtekeles
|
||||
WHERE
|
||||
OsztalyCsoportId IN
|
||||
(
|
||||
SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyCsoportId, @tanevId, 0)
|
||||
)
|
||||
|
||||
UNION
|
||||
|
||||
SELECT DISTINCT
|
||||
C_TANTARGYID
|
||||
FROM
|
||||
T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyCsoportId, @tanevId, 0) AS OSZTALYCSOPORT ON OSZTALYCSOPORT.ID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
WHERE
|
||||
T_FOGLALKOZAS_OSSZES.TOROLT = 'F'
|
||||
|
||||
DELETE FROM @retTanuloErtekeles
|
||||
WHERE
|
||||
ErtekelesId NOT IN
|
||||
(
|
||||
SELECT
|
||||
ErtekelesId
|
||||
FROM
|
||||
@retTanuloErtekeles
|
||||
WHERE
|
||||
TantargyId IS NULL
|
||||
OR TantargyId IN
|
||||
(
|
||||
SELECT
|
||||
TantargyId
|
||||
FROM @osztalyTantargyak
|
||||
)
|
||||
)
|
||||
END
|
||||
RETURN
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,114 @@
|
||||
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;
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = (SELECT tev.C_DEFAULTFELADATKATEGORIAID FROM T_TANEV_OSSZES tev WHERE tev.ID = @tanevId)
|
||||
|
||||
--fejléc
|
||||
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' AND f.C_TANEVID = @tanevId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.id = f.C_OKTATASINEVELESIFELADATTIPUS AND d.C_TANEVID = @tanevId
|
||||
WHERE
|
||||
i.C_TANEVID = @tanevId
|
||||
|
||||
|
||||
--#tanulok
|
||||
SELECT DISTINCT
|
||||
tn.ID tanuloID
|
||||
,tn.C_NYOMTATASINEV TanuloNeve
|
||||
,tn.C_SZULETESIDATUM szulDat
|
||||
INTO #Tanulok_tmp
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON f.C_OSZTALYCSOPORTID = tcs.C_OSZTALYCSOPORTID AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES tn ON tn.ID = tcs.C_TANULOID
|
||||
WHERE
|
||||
f.C_TANARID = @alkalmazottId
|
||||
AND f.C_TANEVID=@TANEVID
|
||||
AND f.TOROLT='F'
|
||||
ORDER BY TanuloNeve
|
||||
|
||||
|
||||
SELECT tanuloNeve
|
||||
INTO #duplikatNevek
|
||||
FROM #Tanulok_tmp
|
||||
GROUP BY tanuloNeve
|
||||
HAVING COUNT(tanuloNeve) > 1
|
||||
|
||||
SELECT tanuloID,
|
||||
TanuloNeve + IIF(TanuloNeve IN (SELECT tanuloNeve FROM #duplikatNevek), ' - ('
|
||||
+ (FORMAT(szulDat, 'yyyy.MM.dd') + ', '
|
||||
+ dbo.fnGetDokumentumTanuloAktualisOsztaly (tanuloID) +')' ), '') TanuloNeve /*TODO:Tobb Osztaly*//*OM-1652*/
|
||||
FROM #Tanulok_tmp
|
||||
ORDER BY tanuloNeve
|
||||
|
||||
|
||||
--tanuloinfo
|
||||
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
|
||||
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 AND ocs.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES f ON f.C_OSZTALYCSOPORTID = ocs.ID
|
||||
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 = f.C_TANARID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND tcs.C_TANULOID = e.C_TANULOID AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES tn ON tn.ID = tcs.C_TANULOID
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dt ON dt.ID = e.C_ERTEKELESTIPUSA AND dt.C_TANEVID = @tanevId
|
||||
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
|
||||
f.C_TANARID = @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 AND ocs.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES f ON f.C_OSZTALYCSOPORTID = ocs.ID
|
||||
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 = f.C_TANARID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND tcs.C_TANULOID = e.C_TANULOID AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES tn ON tn.ID = tcs.C_TANULOID
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dt ON dt.ID = e.C_ERTEKELESTIPUSA AND dt.C_TANEVID = @tanevId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dm ON dm.ID = oe.C_MAGATARTAS AND dm.C_TANEVID = @tanevId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES ds ON ds.ID = oe.C_SZORGALOM AND ds.C_TANEVID = @tanevId
|
||||
WHERE
|
||||
f.C_TANARID = @alkalmazottId
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE())
|
||||
AND e.C_TANEVID=@TANEVID
|
||||
AND e.TOROLT='F'
|
||||
|
||||
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,74 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetTanuloGondviseloExportData]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetTanuloGondviseloExportData]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Gondviselők adatait adja vissza>
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[sp_GetTanuloGondviseloExportData]
|
||||
@pTanevId INT
|
||||
,@pIntezmenyId INT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = (SELECT tev.C_DEFAULTFELADATKATEGORIAID FROM T_TANEV_OSSZES tev WHERE tev.ID = @pTanevId)
|
||||
|
||||
SELECT DISTINCT
|
||||
tanulo.ID TanuloId
|
||||
,felhasznalo.C_NYOMTATASINEV TanuloNeve
|
||||
,felhasznalo.C_OKTATASIAZONOSITO OktatasiAzonosito
|
||||
,osztcsop.C_NEV TanuloOsztalya /*TODO:Tobb Osztaly*//*OM-1604*/
|
||||
,gondviselo.ID GondviseloId
|
||||
,gondviselo.C_NEV GondviseloNeve
|
||||
,gondviselo.C_ROKONSAGFOKA GondviseloRokonsagifoka
|
||||
,telefon.C_TELEFONSZAM GondviseloTelefonszama
|
||||
,email.C_EMAILCIM GondviseloEmailcime
|
||||
,tancsop.C_KILEPESDATUM KilepesDatuma
|
||||
FROM
|
||||
T_TANULO_OSSZES tanulo
|
||||
LEFT JOIN
|
||||
T_GONDVISELO_OSSZES gondviselo ON gondviselo.C_TANULOID = tanulo.ID
|
||||
LEFT JOIN
|
||||
T_FELHASZNALO_OSSZES felhasznalo ON felhasznalo.ID = tanulo.ID
|
||||
LEFT JOIN
|
||||
T_TANULOCSOPORT_OSSZES tancsop ON tancsop.C_TANULOID = tanulo.ID
|
||||
LEFT JOIN
|
||||
T_OSZTALYCSOPORT_OSSZES osztcsop ON osztcsop.ID = tancsop.C_OSZTALYCSOPORTID AND osztcsop.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
LEFT JOIN
|
||||
T_TELEFON_OSSZES telefon ON telefon.C_GONDVISELOID = gondviselo.ID
|
||||
LEFT JOIN
|
||||
T_EMAIL_OSSZES email ON email.C_GONDVISELOID = gondviselo.ID
|
||||
WHERE
|
||||
(gondviselo.ID IS NULL OR gondviselo.ID IN (SELECT ID FROM T_GONDVISELO_OSSZES WHERE T_GONDVISELO_OSSZES.TOROLT='F'))
|
||||
AND felhasznalo.TOROLT ='F'
|
||||
AND (tancsop.C_OSZTALYCSOPORTID IS NULL OR tancsop.C_OSZTALYCSOPORTID IN (
|
||||
SELECT
|
||||
T_OSZTALY_OSSZES.ID
|
||||
FROM
|
||||
T_OSZTALY_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_OSZTALY_OSSZES.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
WHERE
|
||||
T_OSZTALY_OSSZES.TOROLT='F'
|
||||
|
||||
)
|
||||
)
|
||||
AND tanulo.C_ALTANEVID = @pTanevId
|
||||
AND tanulo.C_ALINTEZMENYID = @pIntezmenyId
|
||||
ORDER BY
|
||||
felhasznalo.C_NYOMTATASINEV
|
||||
|
||||
END
|
||||
|
||||
GO
|
||||
|
@@ -0,0 +1,221 @@
|
||||
IF OBJECT_ID('[dbo].[sp_GetTanuloiAdatlapAdatok]') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetTanuloiAdatlapAdatok]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetTanuloiAdatlapAdatok]
|
||||
@osztCsopID int,
|
||||
@TanevId int
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
SET NOCOUNT ON;
|
||||
DECLARE @DefaultFeladatKategoriaId int = (SELECT tev.C_DEFAULTFELADATKATEGORIAID FROM T_TANEV_OSSZES tev WHERE tev.ID = @TanevId)
|
||||
--Fejléc
|
||||
SELECT
|
||||
T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
|
||||
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
|
||||
dbo.fnGetDokumentumIntezmenyCime(@tanevId) 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 T_OSZTALY_OSSZES.C_OSZTALYFONOKID
|
||||
FROM T_OSZTALY_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_OSZTALY_OSSZES.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
WHERE T_OSZTALY_OSSZES.ID=@osztCsopID and T_OSZTALY_OSSZES.TOROLT = 'F') PartnerID,
|
||||
(SELECT OFO.C_NYOMTATASINEV
|
||||
FROM T_OSZTALY_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_OSZTALY_OSSZES.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
INNER JOIN T_FELHASZNALO_OSSZES OFO
|
||||
ON OFO.ID = T_OSZTALY_OSSZES.C_OSZTALYFONOKID and OFO.TOROLT = 'F'
|
||||
WHERE T_OSZTALY_OSSZES.ID=@osztCsopID and T_OSZTALY_OSSZES.TOROLT = 'F') OSZTALYFONOK,
|
||||
(SELECT to2.C_NEV FROM T_OSZTALYCSOPORT_OSSZES to2
|
||||
WHERE ID = @osztCsopID and to2.TOROLT = 'F'
|
||||
AND to2.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId) 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_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
||||
AND T_INTEZMENYADATOK_OSSZES.C_TANEVID = @TanevId
|
||||
|
||||
CREATE TABLE #EmailCimTableTemp (FelhasznaloId INT, EmailCim NVARCHAR(MAX))
|
||||
INSERT INTO #EmailCimTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulo
|
||||
INNER JOIN T_EMAIL_OSSZES email ON email.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
email.TOROLT = 'F'
|
||||
AND email.C_TANEVID = @TanevId
|
||||
AND LEN(C_EMAILCIM) > 0
|
||||
|
||||
CREATE TABLE #EmailCimTable (FelhasznaloId INT, EmailCim NVARCHAR(MAX))
|
||||
INSERT INTO #EmailCimTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(Btemp.EmailCim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM #EmailCimTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Email
|
||||
FROM #EmailCimTableTemp temp
|
||||
|
||||
CREATE TABLE #TelefonszamTableTemp (FelhasznaloId INT, Telefonszam NVARCHAR(MAX))
|
||||
INSERT INTO #TelefonszamTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @TanevId
|
||||
AND LEN(C_TELEFONSZAM) > 0
|
||||
|
||||
CREATE TABLE #TelefonszamTable (FelhasznaloId INT, Telefonszam NVARCHAR(MAX))
|
||||
INSERT INTO #TelefonszamTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(Btemp.Telefonszam AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM #TelefonszamTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Telefonszam
|
||||
FROM #TelefonszamTableTemp temp
|
||||
|
||||
CREATE TABLE #TanuloCimTable (FelhasznaloId INT, Cim NVARCHAR(MAX), Cimtipusa INT)
|
||||
INSERT INTO #TanuloCimTable
|
||||
SELECT DISTINCT
|
||||
TanuloId
|
||||
,STUFF((
|
||||
SELECT CAST(Btemp.Cim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim(0, @tanevId, @osztCsopID) btemp
|
||||
WHERE
|
||||
temp.TanuloId = btemp.TanuloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Cim
|
||||
,temp.CimTipusa
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim(0, @tanevId, @osztCsopID) temp
|
||||
|
||||
CREATE TABLE #GondviselokTableTemp (FelhasznaloId INT, Gondviselo NVARCHAR(MAX))
|
||||
INSERT INTO #GondviselokTableTemp
|
||||
SELECT
|
||||
Gondviselo.TanuloId TanuloId
|
||||
,Gondviselo.GondviseloNev + ISNULL('('+rokonsagiFoka.C_NAME+')', '') Gondviselo
|
||||
FROM fnGetDokumentumGondviselok (@osztCsopID, @tanevId, 'F', 'T') Gondviselo
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES rokonsagiFoka ON Gondviselo.RokonsagifokId = rokonsagiFoka.ID AND rokonsagiFoka.C_TANEVID = @TanevId
|
||||
|
||||
CREATE TABLE #GondviselokTable (FelhasznaloId INT, Gondviselo NVARCHAR(MAX))
|
||||
INSERT INTO #GondviselokTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT ', ' + btemp.Gondviselo
|
||||
FROM #GondviselokTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,2,'') Gondviselo
|
||||
FROM #GondviselokTableTemp temp
|
||||
|
||||
|
||||
--Tanulók Adatai
|
||||
SELECT DISTINCT
|
||||
T_TANULO_OSSZES.C_BEIRASINAPLOSORSZAM,
|
||||
tanulok.NaploSorszam NaploSorszam,
|
||||
tanulok.TorzslapSzam TorzslapSzam,
|
||||
T_TANEV_OSSZES.C_NEV TANEV,
|
||||
T_OSZTALYCSOPORT_OSSZES.C_NEV OSZTALYNEV,
|
||||
T_OSZTALY_OSSZES.C_KEPZESIFORMA Kepzesiforma,
|
||||
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV NEV,
|
||||
gondviselo.Gondviselo GONDVISELO,
|
||||
T_FELHASZNALO_OSSZES.C_SZULETESINEV SZULETESINEV,
|
||||
T_FELHASZNALO_OSSZES.C_ANYJANEVE ANYJANEVE,
|
||||
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO,
|
||||
T_FELHASZNALO_OSSZES.C_SZULETESIHELY,
|
||||
T_FELHASZNALO_OSSZES.C_SZULETESIORSZAG Szuletesiorszag,
|
||||
FORMAT(T_FELHASZNALO_OSSZES.C_SZULETESIDATUM, 'yyyy.MM.dd.') C_SZULETESIDATUM,
|
||||
T_FELHASZNALO_OSSZES.C_ALLAMPOLGARSAGA Allampolgarsag,
|
||||
T_FELHASZNALO_OSSZES.C_ANYANYELVE Anyanyelv,
|
||||
T_FELHASZNALO_OSSZES.C_NYILVANTARTASKEZDETE,
|
||||
T_TANULO_OSSZES.C_TANKOTELEZETT Tankotelezett,
|
||||
T_TANULO_OSSZES.C_TANKOTELEZETTSEGVEGE,
|
||||
T_TANULO_OSSZES.C_JOGVISZONYVARHATOBEFEJEZESE,
|
||||
T_TANULO_OSSZES.C_DIAKIGAZOLVANYSZAM,
|
||||
T_TANULO_OSSZES.C_DIAKIGAZOLVANYKELTE,
|
||||
T_TANULO_OSSZES.C_BANKSZAMLASZAM,
|
||||
|
||||
AllandoLakcim.Cim,
|
||||
|
||||
TartozkodasiHely.CIM TartozkodasiHely,
|
||||
|
||||
telefon.Telefonszam C_TELEFONSZAM,
|
||||
email.EmailCim C_EMAILCIM,
|
||||
|
||||
T_TANULO_OSSZES.C_BEJARO Bejaro,
|
||||
T_TANULO_OSSZES.C_SZAKMAIGYAKORLATON Szakmaigyak,
|
||||
T_TANULO_OSSZES.C_VENDEG Vendeg,
|
||||
T_TANULO_OSSZES.C_JOGVISZONYATSZUNETELTETO Jogviszonyszunetelteto,
|
||||
T_TANULO_OSSZES.C_MAGANTANULO Magantanulo,
|
||||
T_TANULO_OSSZES.C_MAGANTANULOSAGANAKOKA,
|
||||
T_TANULO_OSSZES.C_MAGANTANULOSAGKEZDETE,
|
||||
T_TANULO_OSSZES.C_SZAKKEPESITESSZAMA,
|
||||
T_TANULO_OSSZES.C_TANULOIJOGVISZONYOSELTARTOTT,
|
||||
T_TANULO_OSSZES.C_TOBBGYERMEKIGAZOLASSZAMA,
|
||||
T_TANULO_OSSZES.C_EVISMETLO Evismetlo,
|
||||
T_TANULO_OSSZES.C_SZOCIALISTAMOGATAS Szoctam,
|
||||
T_TANULO_OSSZES.C_HATRANYOSHELYZETU,
|
||||
T_TANULO_OSSZES.C_VESZELYEZTETETT Veszelyeztetett,
|
||||
T_TANULO_OSSZES.C_HALMOZOTTANFOGYATEKOS Halmfogyatekos,
|
||||
T_TANULO_OSSZES.C_ETKEZESIKEDVEZMENY,
|
||||
T_TANULO_OSSZES.C_TERITESIDIJATFIZETO Teriteses,
|
||||
T_TANULO_OSSZES.C_TANDIJATFIZETO Tandijas,
|
||||
T_TANULO_OSSZES.C_INGYENESTANKONVYELLATASA,
|
||||
T_TANULO_OSSZES.C_TANULOSZERZODESES Tanszerzodeses,
|
||||
T_TANULO_OSSZES.C_POLGARISZERZODESES Polgszerzodeses,
|
||||
T_TANULO_OSSZES.C_RENDSZERESGYERMEKVEDELMIKEDV,
|
||||
T_TANULO_OSSZES.C_ALLAMIGONDOZOTT Allamigond,
|
||||
T_TANULO_OSSZES.C_KOLLEGIUMIELLATASOS Kollegiumi,
|
||||
T_TANULO_OSSZES.C_TARTOSGYOGYKEZELESSZAMA,
|
||||
T_TANULO_OSSZES.C_SAJATOSNEVELESU Sajatosnevelesu,
|
||||
T_TANULO_OSSZES.C_SNILETSZAMSULY,
|
||||
T_TANULO_OSSZES.C_SNIKIALLITOINTEZMENY,
|
||||
FORMAT(T_TANULO_OSSZES.C_SNIOKMANYERVENYESSEGKEZDETE, 'yyyy.MM.dd.') C_SNIOKMANYERVENYESSEGKEZDETE,
|
||||
T_TANULO_OSSZES.C_BTMPROBLEMAS Btmproblemas,
|
||||
T_TANULO_OSSZES.C_BTMLETSZAMSULY,
|
||||
T_TANULO_OSSZES.C_BTMHATAROZATOKMANYSZAM,
|
||||
FORMAT(T_TANULO_OSSZES.C_BTMOKMANYERVENYESSEGKEZDETE, 'yyyy.MM.dd.') C_BTMOKMANYERVENYESSEGKEZDETE,
|
||||
T_TANULO_OSSZES.C_BTMKIALLITOINTEZMENY,
|
||||
T_TANULO_OSSZES.C_ELSOINTEZMENYOMKOD,
|
||||
T_FELHASZNALO_OSSZES.C_IGAZOLVANYSZAM,
|
||||
igazolvanyTipusa.C_NAME AS IgazolvanyTipusa
|
||||
--megjegyzés
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulok ON tanulok.TanuloId = T_FELHASZNALO_OSSZES.Id
|
||||
INNER JOIN T_TANULO_OSSZES on T_TANULO_OSSZES.ID = T_FELHASZNALO_OSSZES.ID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES on T_TANULOCSOPORT_OSSZES.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES on T_OSZTALYCSOPORT_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID AND T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId /*TODO:Tobb Osztaly*//*OM-1662*/
|
||||
INNER JOIN T_OSZTALY_OSSZES on T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID
|
||||
LEFT JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_TANEVID
|
||||
LEFT JOIN #TelefonszamTable telefon on telefon.FelhasznaloId = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN #EmailCimTable email on email.FelhasznaloId = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN #GondviselokTable gondviselo on gondviselo.FelhasznaloId = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES igazolvanyTipusa ON T_FELHASZNALO_OSSZES.C_IGAZOLVANYTIPUSA = igazolvanyTipusa.ID AND igazolvanyTipusa.C_TANEVID = @TanevId
|
||||
LEFT JOIN #TanuloCimTable AllandoLakcim ON AllandoLakcim.FelhasznaloId = T_FELHASZNALO_OSSZES.ID AND AllandoLakcim.Cimtipusa = 907
|
||||
LEFT JOIN #TanuloCimTable TartozkodasiHely ON TartozkodasiHely.FelhasznaloId = T_FELHASZNALO_OSSZES.ID AND TartozkodasiHely.Cimtipusa = 909
|
||||
WHERE
|
||||
T_FELHASZNALO_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
AND T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
|
||||
AND T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
|
||||
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,206 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokCsoportokTantargyiStatisztika]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokCsoportokTantargyiStatisztika]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokCsoportokTantargyiStatisztika]
|
||||
@pTanevId INT,
|
||||
@pErtekelestipusaId INT,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pLezaroNaptipusId INT,
|
||||
@pAtsoroltTanuloAdatok INT = 1
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE @ElsoFelveVege INT = 1400
|
||||
DECLARE @IneVege INT = 1403
|
||||
DECLARE @IIIneVege INT = 1404
|
||||
DECLARE @UtolsoTanitasiNap INT = 1395
|
||||
DECLARE @VegzosUtolsoTanitasiNap INT = 1402
|
||||
|
||||
DECLARE @osztalyok TABLE(OSZTALYID INT, NEV NVARCHAR(MAX), EVFOLYAM INT, SORREND INT);
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
DECLARE @osztalyokCsoportokErtekeles TABLE (TECHNIKAIID NVARCHAR(MAX), OSZTALYCSOPORTID INT, OSZTALYCSOPORTNEV NVARCHAR(MAX), SORREND INT, TANTARGYID INT, TANTARGYNEV NVARCHAR(MAX), AKTUALISLETSZAM INT, ATLAG FLOAT);
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, BELEPESDATUM DATE, KILEPESDATUM DATE);
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = (SELECT tev.C_DEFAULTFELADATKATEGORIAID FROM T_TANEV_OSSZES tev WHERE tev.ID = @pTanevId)
|
||||
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT TANTARGYAK.ID AS TANTARGYID, COALESCE(TANTARGYAK.C_NEVNYOMTATVANYBAN, TANTARGYAK.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, TANTARGYAK.C_FOTARGYE, TANTARGYAK.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANTARGY_OSSZES AS TANTARGYAK
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGYAK.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = TANTARGYAK.C_TANEVID
|
||||
WHERE TANTARGYAK.TOROLT = 'F' AND TANTARGYAK.C_TANEVID = @pTanevId
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
SELECT CAST(OSZTALYCSOPORT.ID AS nvarchar(MAX)) + '_' + CAST(OSZTALYCSOPORT.ID AS nvarchar(MAX)) AS TECHNIKAIID, OSZTALYCSOPORT.ID AS OSZTALYID, OSZTALYCSOPORT.C_NEV AS NEV,
|
||||
OSZTALYCSOPORT.C_EVFOLYAMTIPUSA AS EVFOLYAM, EVFOLYAM.C_ORDER AS SORREND, (SELECT COUNT(TanuloId) FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, OSZTALYCSOPORT.ID, 0)) AS AKTUALISLETSZAM, /*TODO:Tobb Osztaly*//*OM-1610*/
|
||||
C_KERESZTFELEVES AS KERESZTFELEVES, C_VEGZOSEVFOLYAM AS VEGZOSEVFOLYAM,
|
||||
ROW_NUMBER() OVER(ORDER BY EVFOLYAM.C_ORDER ASC, OSZTALYCSOPORT.C_NEV ASC) AS Row#
|
||||
,@pTanevId TanevId
|
||||
,OSZTALY.C_OSZTALYFONOKID OsztalyfonokId
|
||||
,OSZTALYCSOPORT.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,OSZTALY.C_TANTERVID TantervId
|
||||
,OSZTALY.C_KEPZESIFORMA KepzesiForma
|
||||
,OSZTALY.C_AGAZAT Agazat
|
||||
,OSZTALY.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,OSZTALY.C_SZAKKEPESITES Szakkepesites
|
||||
,OSZTALY.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,OSZTALYCSOPORT.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,OSZTALYCSOPORT.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,OSZTALY.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,OSZTALY.C_NEMZETISEGI OJNemzetisegi
|
||||
,OSZTALY.C_KETTANNYELVU OJKettannyelvu
|
||||
,OSZTALY.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,OSZTALY.C_LOGOPEDIAI OJLogopediai
|
||||
,OSZTALY.C_SPORT OJSportOsztaly
|
||||
,OSZTALY.C_AJPROGRAM OJAranyJanosProgram
|
||||
,OSZTALY.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
INTO #tempOsztalyok
|
||||
FROM T_OSZTALY_OSSZES AS OSZTALY
|
||||
JOIN T_OSZTALYCSOPORT_OSSZES AS OSZTALYCSOPORT ON OSZTALY.ID = OSZTALYCSOPORT.ID AND OSZTALYCSOPORT.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
JOIN T_DICTIONARYITEMBASE_OSSZES AS EVFOLYAM ON EVFOLYAM.ID = OSZTALYCSOPORT.C_EVFOLYAMTIPUSA AND EVFOLYAM.TOROLT = 'F' AND EVFOLYAM.C_TANEVID = OSZTALY.C_ALTANEVID
|
||||
WHERE OSZTALYCSOPORT.TOROLT = 'F' AND OSZTALY.C_ALTANEVID = @pTanevId
|
||||
ORDER BY Row#;
|
||||
|
||||
DECLARE @pOsztalyId INT = 0;
|
||||
DECLARE @sorrend INT = 0;
|
||||
DECLARE @keresztFeleves BIT = 0;
|
||||
DECLARE @vegzosEvfolyamu BIT = 0;
|
||||
WHILE (1 = 1)
|
||||
BEGIN
|
||||
SELECT TOP 1 @pOsztalyId = OSZTALYID, @sorrend = Row#, @keresztFeleves = IIF(KERESZTFELEVES = 'T', 1, 0), @vegzosEvfolyamu = IIF(VEGZOSEVFOLYAM = 'T', 1, 0)
|
||||
FROM #tempOsztalyok
|
||||
WHERE @sorrend < Row#
|
||||
ORDER BY Row#;
|
||||
IF @@ROWCOUNT = 0
|
||||
BEGIN
|
||||
BREAK;
|
||||
END
|
||||
|
||||
|
||||
--Osztalyjellemzok alapjan a nyito/lezaro naptipus csereje
|
||||
DECLARE @pKezdeteOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, @pTanevrendjeTanevKezdeteNaptipusId,
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @pLezaroOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, IIF(@vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pKezdeteOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_ELSOTANITASINAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pLezaroOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
|
||||
INSERT INTO @osztalyTanulok (TANULOID, BELEPESDATUM, KILEPESDATUM) (
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS TANULOID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES
|
||||
WHERE T_TANULOCSOPORT_OSSZES.TOROLT = 'F' AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < @idoszakVege
|
||||
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND T_FELHASZNALO_OSSZES.C_TANEVID = @pTanevId
|
||||
);
|
||||
|
||||
INSERT INTO @osztalyokCsoportokErtekeles(TECHNIKAIID, OSZTALYCSOPORTID, OSZTALYCSOPORTNEV, SORREND, TANTARGYID, TANTARGYNEV, AKTUALISLETSZAM, ATLAG)
|
||||
SELECT CAST(@pOsztalyId AS nvarchar(MAX)) + '_' + CAST(OsztalyCsoportId AS nvarchar(MAX)) AS TechnikaiId, OsztalyCsoportId, OSZTALYCSOPORT.C_NEV + (IIF(CSOPORT.ID IS NOT NULL, ' (' + (SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId) + ')', '')) AS OsztalyCsoportNev, @sorrend,
|
||||
TantargyId, TantargyNev,
|
||||
(SELECT COUNT(TanuloId) FROM (
|
||||
SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, OsztalyCsoportId, 0)
|
||||
INTERSECT
|
||||
SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 0)) AS T) AS Aktualisletszam,
|
||||
AVG(CAST (ErtekelesOsztalyzatValue AS float)) AS Atlag
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent(@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, 1) AS ERTEKELESEK
|
||||
INNER JOIN @osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = ERTEKELESEK.TanuloId
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES AS OSZTALYCSOPORT ON OSZTALYCSOPORT.ID = OsztalyCsoportId AND OSZTALYCSOPORT.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
LEFT JOIN T_CSOPORT_OSSZES AS CSOPORT ON CSOPORT.ID = OSZTALYCSOPORT.ID
|
||||
WHERE IsMagatartasSzorgalom = 'F'
|
||||
GROUP BY OsztalyCsoportId, OSZTALYCSOPORT.C_NEV, TantargyId, TantargyNev, CSOPORT.ID
|
||||
END
|
||||
|
||||
SELECT *
|
||||
FROM (
|
||||
SELECT DISTINCT TECHNIKAIID, OSZTALYCSOPORTID, OSZTALYCSOPORTNEV, AKTUALISLETSZAM, SORREND
|
||||
FROM @osztalyokCsoportokErtekeles
|
||||
UNION
|
||||
SELECT TECHNIKAIID, OSZTALYID AS OSZTALYCSOPORTID, NEV AS OSZTALYCSOPORTNEV, AKTUALISLETSZAM, Row# AS SORREND
|
||||
FROM #tempOsztalyok
|
||||
) AS OSZTALYOKCSOPORTOK
|
||||
ORDER BY SORREND, OSZTALYCSOPORTNEV;
|
||||
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV
|
||||
FROM @tantargyak;
|
||||
|
||||
SELECT *
|
||||
FROM @osztalyokCsoportokErtekeles;
|
||||
|
||||
select OSZTALYID AS OsztalyId
|
||||
,EVFOLYAM AS EvfolyamTipusa
|
||||
,FeladatEllatasiHelyId
|
||||
,KepzesiForma
|
||||
,OsztalyfonokId
|
||||
,TantervId
|
||||
,OJAranyJanosProgram
|
||||
,OJCSJKeresztfeleves
|
||||
,OJGyogypedagogiai
|
||||
,OJKettannyelvu
|
||||
,OJLogopediai
|
||||
,OJNemzetisegi
|
||||
,OJNyelviElokeszito
|
||||
,OJSportOsztaly
|
||||
,OJTechnikaiOsztaly
|
||||
,SzakmaCsoport
|
||||
,Agazat
|
||||
,Szakkepesites
|
||||
,Reszszakkepesites from #tempOsztalyok;
|
||||
|
||||
select cs.ID CsoportId
|
||||
,cs.C_CSOPORTVEZETOID as Csoportvezeto
|
||||
,cs.C_TIPUSA as CsoportTipus
|
||||
,ocs.C_KERESZTFELEVES as OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM as CSJVegzosEvfolyamu
|
||||
from T_CSOPORT_OSSZES cs
|
||||
inner join @osztalyokCsoportokErtekeles ocse on ocse.OSZTALYCSOPORTID = cs.iD
|
||||
inner join T_OSZTALYCSOPORT_OSSZES ocs on ocs.ID = cs.ID;
|
||||
|
||||
IF OBJECT_ID('tempdb..#tempOsztalyok') IS NOT NULL DROP TABLE #tempOsztalyok
|
||||
IF OBJECT_ID('tempdb..#tempErtekeles') IS NOT NULL DROP TABLE #tempErtekeles
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,375 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokTantargyiStatisztika]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokTantargyiStatisztika]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokTantargyiStatisztika]
|
||||
@pTanevId INT,
|
||||
@pIntezmenyId INT,
|
||||
@pErtekelestipusaId INT,
|
||||
@pLezaroNaptipusId INT,
|
||||
@pTanoraiCsoportTipusIds INT = 1034,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pNemMulasztaIgazolasTipusIds INT = 1532, -- Iskola érdekű távollét
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@pElmeletgyakorlat BIT = 0
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
--Const
|
||||
DECLARE @ElsoFelveVege INT = 1400
|
||||
DECLARE @IneVege INT = 1403
|
||||
DECLARE @IIIneVege INT = 1404
|
||||
DECLARE @UtolsoTanitasiNap INT = 1395
|
||||
DECLARE @VegzosUtolsoTanitasiNap INT = 1402
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, @pIntezmenyId, @pTanevId);
|
||||
DECLARE @DefaultFeladatKategoriaId int = (SELECT tev.C_DEFAULTFELADATKATEGORIAID FROM T_TANEV_OSSZES tev WHERE tev.ID = @pTanevId)
|
||||
|
||||
DECLARE @osztalyoktanoraicsoportok TABLE (OSZTALYCSOPORTID INT PRIMARY KEY, C_TIPUSA INT, C_VEGZOSEVFOLYAM CHAR(1));
|
||||
DECLARE @osztalycsoportok TABLE (OSZTALYCSOPORTID INT PRIMARY KEY);
|
||||
DECLARE @aktualisOsztalyCsoportok TABLE (OSZTALYCSOPORTID INT);
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, BELEPESDATUM DATE, KILEPESDATUM DATE);
|
||||
DECLARE @szurtMulasztas TABLE (TIPUS_CHAR CHAR(1), C_TIPUS INT , C_IGAZOLT CHAR(1), C_TANULOID INT, C_GYAKORLATI CHAR(1), KESESPERC INT, MULASZTASOK_SZAMA INT);
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
DECLARE @osztalyok TABLE(OSZTALYID INT, NEV NVARCHAR(MAX), EVFOLYAM INT, SORREND INT);
|
||||
DECLARE @osztalyokTanulokszama TABLE (OSZTALYID INT, TANULOKSZAMA INT);
|
||||
DECLARE @osztalyokErtekeles TABLE (OSZTALYID INT, TANTARGYID INT, ATLAG FLOAT);
|
||||
DECLARE @osztalyokMagszorg TABLE (OSZTALYID INT, MAGATLAG FLOAT, SZORGATLAG FLOAT);
|
||||
DECLARE @osztalyokMulasztas TABLE (OSZTALYID INT, TIPUS_CHAR CHAR(1), C_TIPUS INT, C_IGAZOLT CHAR(1), MULASZTASOK_SZAMA INT, C_GYAKORLATI CHAR(1), DESCR CHAR(3));
|
||||
-- OSZTÁLYOK ÉS TANÓRAI CSOPORTOK
|
||||
INSERT INTO @osztalyoktanoraicsoportok (OSZTALYCSOPORTID, C_TIPUSA, C_VEGZOSEVFOLYAM) (
|
||||
SELECT T_OSZTALYCSOPORT_OSSZES.ID, C_TIPUSA, C_VEGZOSEVFOLYAM
|
||||
FROM T_OSZTALYCSOPORT_OSSZES
|
||||
LEFT JOIN T_CSOPORT_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = T_CSOPORT_OSSZES.ID
|
||||
LEFT JOIN T_OSZTALY_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = T_OSZTALY_OSSZES.ID
|
||||
WHERE ( C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId)) OR T_OSZTALY_OSSZES.ID IS NOT NULL)
|
||||
AND C_TANEVID = @pTanevId
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
|
||||
);
|
||||
-- TANTÁRGYAK
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT T_TANTARGY_OSSZES.ID AS TANTARGYID, COALESCE(T_TANTARGY_OSSZES.C_NEVNYOMTATVANYBAN, T_TANTARGY_OSSZES.C_NEV) AS TANTARGY_NEV, TARGYKAT.C_NAME AS TARGYKATEGORIA_NEV, TARGYKAT.C_VALUE AS TARGYKATEGORIA_SORSZAM, T_TANTARGY_OSSZES.C_FOTARGYE, T_TANTARGY_OSSZES.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANTARGY_OSSZES
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKAT ON TARGYKAT.ID = T_TANTARGY_OSSZES.C_TARGYKATEGORIA AND TARGYKAT.C_TANEVID = T_TANTARGY_OSSZES.C_TANEVID
|
||||
WHERE T_TANTARGY_OSSZES.TOROLT = 'F' AND T_TANTARGY_OSSZES.C_INTEZMENYID = @pIntezmenyId AND T_TANTARGY_OSSZES.C_TANEVID = @pTanevId
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
-- OSZTÁLYOK
|
||||
SELECT T_OSZTALYCSOPORT_OSSZES.ID AS OSZTALYID, T_OSZTALYCSOPORT_OSSZES.C_NEV AS NEV, T_OSZTALYCSOPORT_OSSZES.C_EVFOLYAMTIPUSA AS EVFOLYAM, EVFOLYAMTIPUS.C_ORDER AS SORREND,
|
||||
C_KERESZTFELEVES AS KERESZTFELEVES, C_VEGZOSEVFOLYAM AS VEGZOSEVFOLYAM,
|
||||
ROW_NUMBER() OVER(ORDER BY EVFOLYAMTIPUS.C_ORDER ASC, T_OSZTALYCSOPORT_OSSZES.C_NEV ASC) AS Row#
|
||||
,@pTanevId TanevId
|
||||
,T_OSZTALY_OSSZES.C_OSZTALYFONOKID OsztalyfonokId
|
||||
,T_OSZTALYCSOPORT_OSSZES.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,T_OSZTALY_OSSZES.C_TANTERVID TantervId
|
||||
,T_OSZTALY_OSSZES.C_KEPZESIFORMA KepzesiForma
|
||||
,T_OSZTALY_OSSZES.C_AGAZAT Agazat
|
||||
,T_OSZTALY_OSSZES.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,T_OSZTALY_OSSZES.C_SZAKKEPESITES Szakkepesites
|
||||
,T_OSZTALY_OSSZES.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,T_OSZTALYCSOPORT_OSSZES.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,T_OSZTALYCSOPORT_OSSZES.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,T_OSZTALY_OSSZES.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,T_OSZTALY_OSSZES.C_NEMZETISEGI OJNemzetisegi
|
||||
,T_OSZTALY_OSSZES.C_KETTANNYELVU OJKettannyelvu
|
||||
,T_OSZTALY_OSSZES.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,T_OSZTALY_OSSZES.C_LOGOPEDIAI OJLogopediai
|
||||
,T_OSZTALY_OSSZES.C_SPORT OJSportOsztaly
|
||||
,T_OSZTALY_OSSZES.C_AJPROGRAM OJAranyJanosProgram
|
||||
,T_OSZTALY_OSSZES.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
INTO #tempOsztalyok
|
||||
FROM T_OSZTALYCSOPORT_OSSZES
|
||||
JOIN T_OSZTALY_OSSZES ON T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID
|
||||
JOIN T_TANEV_OSSZES ON T_TANEV_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_TANEVID
|
||||
JOIN T_DICTIONARYITEMBASE_OSSZES AS EVFOLYAMTIPUS ON EVFOLYAMTIPUS.ID = T_OSZTALYCSOPORT_OSSZES.C_EVFOLYAMTIPUSA AND EVFOLYAMTIPUS.TOROLT = 'F' AND EVFOLYAMTIPUS.C_TANEVID = T_TANEV_OSSZES.ID
|
||||
WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_INTEZMENYID=@pIntezmenyId
|
||||
AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.ID = @pTanevId
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
|
||||
ORDER BY Row#;
|
||||
|
||||
IF OBJECT_ID('tempdb..#tempMulasztas') IS NOT NULL
|
||||
DROP TABLE #tempMulasztas;
|
||||
|
||||
CREATE TABLE #tempMulasztas (
|
||||
ID INT IDENTITY(1,1) PRIMARY KEY,
|
||||
TIPUS_CHAR CHAR(1), TIPUS INT, IGAZOLT CHAR(1), TANULOID NVARCHAR(20), GYAKORLATI CHAR(1), KESESPERC INT, MULASZTASOK_SZAMA INT, OSZTALYCSOPORTID INT, DATUM DATETIME);
|
||||
|
||||
INSERT INTO #tempMulasztas(TIPUS_CHAR, TIPUS, IGAZOLT, TANULOID, GYAKORLATI, KESESPERC, MULASZTASOK_SZAMA, OSZTALYCSOPORTID, DATUM)
|
||||
SELECT IIF(C_TIPUS = @pMulasztasTipusIdKeses, 'K', 'H'), C_TIPUS, C_IGAZOLT, C_ORATANULOIID, C_GYAKORLATI, SUM(C_KESESPERCBEN), COUNT(1) AS MULASZTASOK_SZAMA, TanitasiOra.C_OSZTALYCSOPORTID, C_DATUM
|
||||
FROM T_TANULOMULASZTAS_OSSZES TanuloMulasztas
|
||||
INNER JOIN T_TANITASIORA_OSSZES TanitasiOra ON TanitasiOra.ID = TanuloMulasztas.C_TANITASIORAKID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON
|
||||
TanuloCsoport.C_TANULOID = TanuloMulasztas.C_ORATANULOIID
|
||||
AND TanuloCsoport.C_OSZTALYCSOPORTID = TanitasiOra.C_OSZTALYCSOPORTID
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
AND TanitasiOra.C_DATUM BETWEEN TanuloCsoport.C_BELEPESDATUM AND ISNULL(TanuloCsoport.C_KILEPESDATUM, GETDATE())
|
||||
INNER JOIN T_TANTARGY_OSSZES t on t.ID = TanitasiOra.C_TANTARGYID
|
||||
WHERE TanuloMulasztas.C_TIPUS IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
AND TanitasiOra.C_OSZTALYCSOPORTID IN (SELECT Id FROM fnGetDokumentumOsztalyVagyTanoraiCsoport (@pTanevId))
|
||||
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA IS NULL OR C_IGAZOLASTIPUSA <> 1533))
|
||||
AND TanuloMulasztas.TOROLT = 'F' AND TanuloMulasztas.C_IGAZOLT IS NOT NULL
|
||||
AND TanitasiOra.TOROLT = 'F' AND TanitasiOra.C_MEGTARTOTT = 'T'
|
||||
AND TanuloMulasztas.C_TANEVID = @pTanevId
|
||||
GROUP BY C_TIPUS, C_IGAZOLT, C_ORATANULOIID, C_GYAKORLATI, TanitasiOra.C_OSZTALYCSOPORTID, C_DATUM
|
||||
|
||||
|
||||
DECLARE @pOsztalyId INT = 0;
|
||||
DECLARE @sorrend INT = 0;
|
||||
DECLARE @keresztFeleves BIT = 0;
|
||||
DECLARE @vegzosEvfolyamu BIT = 0;
|
||||
|
||||
WHILE (1 = 1)
|
||||
BEGIN
|
||||
DELETE FROM @szurtMulasztas;
|
||||
DELETE FROM @osztalycsoportok;
|
||||
DELETE FROM @aktualisOsztalyCsoportok;
|
||||
DELETE FROM @osztalyTanulok;
|
||||
|
||||
SELECT TOP 1 @pOsztalyId = OSZTALYID, @sorrend = Row#, @keresztFeleves = IIF(KERESZTFELEVES = 'T', 1, 0), @vegzosEvfolyamu = IIF(VEGZOSEVFOLYAM = 'T', 1, 0)
|
||||
FROM #tempOsztalyok
|
||||
WHERE @sorrend < Row#
|
||||
ORDER BY Row#;
|
||||
IF @@ROWCOUNT = 0
|
||||
BEGIN
|
||||
BREAK;
|
||||
END
|
||||
|
||||
--Osztalyjellemzok alapjan a nyito/lezaro naptipus csereje
|
||||
DECLARE @pKezdeteOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, @pTanevrendjeTanevKezdeteNaptipusId,
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @pLezaroOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, IIF(@vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pKezdeteOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_ELSOTANITASINAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pLezaroOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
INSERT INTO @osztalycsoportok (OSZTALYCSOPORTID) (
|
||||
SELECT ID FROM fnGetKapcsolodoOsztalycsoportok(@pOsztalyId)
|
||||
WHERE (ID IN (SELECT T_OSZTALY_OSSZES.ID FROM T_OSZTALY_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_OSZTALY_OSSZES.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
) OR ID IN (SELECT ID FROM T_CSOPORT WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))))
|
||||
);
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID) (
|
||||
SELECT ID FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT T_OSZTALY_OSSZES.ID FROM T_OSZTALY_OSSZES INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_OSZTALY_OSSZES.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))))
|
||||
);
|
||||
-- TANULÓK
|
||||
INSERT INTO @osztalyTanulok (TANULOID, BELEPESDATUM, KILEPESDATUM) (
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS TANULOID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES
|
||||
WHERE T_TANULOCSOPORT_OSSZES.TOROLT = 'F' AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < @idoszakVege
|
||||
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND T_FELHASZNALO_OSSZES.C_TANEVID = @pTanevId
|
||||
);
|
||||
--TANULÓK LISTA
|
||||
INSERT INTO @osztalyokTanulokszama (OSZTALYID, TANULOKSZAMA)
|
||||
SELECT @pOsztalyId AS OSZTALYID, COUNT(T_FELHASZNALO_OSSZES.ID) AS TANULOKSZAMA
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN @osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = T_FELHASZNALO_OSSZES.ID;
|
||||
|
||||
--ÉRTÉKELÉS LISTA
|
||||
IF OBJECT_ID('tempdb..#tempOsztalyErtekelesek') IS NOT NULL
|
||||
DROP TABLE #tempOsztalyErtekelesek;
|
||||
SELECT * INTO #tempOsztalyErtekelesek FROM fnGetDokumentumErtekelesekOsztalyonkent (@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, @pAtsoroltTanuloAdatok) AS ERTEKELESEK
|
||||
|
||||
INSERT INTO @osztalyokErtekeles (OSZTALYID, TANTARGYID, ATLAG)
|
||||
SELECT @pOsztalyId AS OSZTALYID, TantargyId, ROUND(AVG(CAST(ErtekelesOsztalyzatValue AS FLOAT)), 2) AS ATLAG
|
||||
FROM #tempOsztalyErtekelesek AS ERTEKELESEK
|
||||
INNER JOIN @osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = ERTEKELESEK.TanuloId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = ERTEKELESEK.TargyKategoriaId AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE TantargyId IS NOT NULL AND (FotargyE = 'T' OR Altantargy = 'T') AND ErtekelesOsztalyzatValue IS NOT NULL
|
||||
GROUP BY TantargyId;
|
||||
--MAGATARTAS-SZORGALOM LISTA
|
||||
INSERT INTO @osztalyokMagszorg (OSZTALYID, MAGATLAG, SZORGATLAG)
|
||||
SELECT @pOsztalyId AS OSZTALYID, ROUND(AVG(CAST(COALESCE(MagatartasOsztalyzatValue, MagatartasErtekOsztalyzatkent) AS FLOAT)), 2) AS MAGATLAG, ROUND(AVG(CAST(COALESCE(SzorgalomOsztalyzatValue, SzorgalomErtekOsztalyzatkent) AS FLOAT)), 2) AS SZORGATLAG
|
||||
FROM #tempOsztalyErtekelesek AS ERTEKELESEK
|
||||
INNER JOIN @osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = ERTEKELESEK.TanuloId
|
||||
WHERE TantargyId IS NULL AND COALESCE(MagatartasOsztalyzatValue, MagatartasErtekOsztalyzatkent) IS NOT NULL AND COALESCE(SzorgalomOsztalyzatValue, SzorgalomErtekOsztalyzatkent) IS NOT NULL ;
|
||||
|
||||
--MULASZTÁS
|
||||
INSERT INTO @szurtMulasztas (TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, C_GYAKORLATI, KESESPERC, MULASZTASOK_SZAMA)
|
||||
SELECT TIPUS_CHAR, TIPUS, IGAZOLT, TanuloMulasztas.TANULOID, GYAKORLATI, SUM(KESESPERC), SUM(MULASZTASOK_SZAMA)
|
||||
FROM #tempMulasztas AS TanuloMulasztas
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') AS TANULO ON TANULO.TanuloId = TanuloMulasztas.TANULOID
|
||||
INNER JOIN @osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = TanuloMulasztas.TanuloId
|
||||
WHERE TANULO.BelepesDatum <= DATUM
|
||||
AND (TANULO.KilepesDatum IS NULL OR TANULO.KilepesDatum >= DATUM)
|
||||
AND (IIF(@pAtsoroltTanuloAdatok > 0, 1, 0) = 1 OR (OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT))))
|
||||
AND (@idoszakEleje IS NULL OR DATUM >= @idoszakEleje)
|
||||
AND (@idoszakVege IS NULL OR DATUM <= @idoszakVege)
|
||||
GROUP BY TIPUS_CHAR, TIPUS, IGAZOLT, TanuloMulasztas.TANULOID, GYAKORLATI
|
||||
|
||||
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
INSERT INTO @osztalyokMulasztas (OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, MULASZTASOK_SZAMA, C_GYAKORLATI, DESCR)
|
||||
SELECT @pOsztalyId AS OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, CASE WHEN TIPUS_CHAR = 'K' THEN SUM(KESESORA) ELSE SUM(MULASZTASOK_SZAMA) END MULASZTASOK_SZAMA, 'F' AS C_GYAKORLATI, TIPUS_CHAR + C_IGAZOLT + 'F' AS DESCR
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, SUM(KESESPERC) AS KESESPERC, SUM(KESESPERC)/45 AS KESESORA, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA
|
||||
FROM @szurtMulasztas
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID
|
||||
) AS T_SUM_MULASZTAS
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT
|
||||
ORDER BY C_TIPUS DESC, C_IGAZOLT DESC;
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @osztalyokMulasztas (OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, MULASZTASOK_SZAMA, C_GYAKORLATI, DESCR)
|
||||
SELECT @pOsztalyId AS OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, CASE WHEN TIPUS_CHAR = 'K' THEN SUM(KESESORA) ELSE SUM(MULASZTASOK_SZAMA) END MULASZTASOK_SZAMA, C_GYAKORLATI, TIPUS_CHAR + C_IGAZOLT + C_GYAKORLATI
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, KESESPERC, KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN 45 ELSE 45 END) AS KESESORA, MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM @szurtMulasztas
|
||||
) AS T_SUM_MULASZTAS
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_GYAKORLATI, C_IGAZOLT
|
||||
ORDER BY C_TIPUS DESC, C_IGAZOLT DESC;
|
||||
END
|
||||
END
|
||||
DECLARE @cols AS NVARCHAR(MAX);
|
||||
DECLARE @colsHeader AS NVARCHAR(MAX);
|
||||
DECLARE @query AS NVARCHAR(MAX);
|
||||
|
||||
SELECT OSZTALYID, TANTARGYID, ATLAG
|
||||
INTO #tempErtekeles
|
||||
FROM @osztalyokErtekeles;
|
||||
|
||||
SELECT OSZTALYID, MAGATLAG, SZORGATLAG
|
||||
INTO #tempMagSzorgErtekeles
|
||||
FROM @osztalyokMagszorg;
|
||||
|
||||
SELECT OSZTALYID, TANULOKSZAMA
|
||||
INTO #tempTanulokszama
|
||||
FROM @osztalyokTanulokszama;
|
||||
|
||||
SELECT @colsHeader = ISNULL(@colsHeader + ', ', '') + QUOTENAME(TANTARGYAK.TANTARGYID) + ' AS ' + QUOTENAME(TANTARGYAK.TANTARGY_NEV),
|
||||
@cols = ISNULL(@cols + ', ', '') + QUOTENAME(TANTARGYAK.TANTARGYID)
|
||||
FROM (
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_SORSZAM
|
||||
FROM @tantargyak
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
SET @query =
|
||||
'SELECT NEV AS [Osztályok], TANULOILETSZAM.TANULOKSZAMA AS [Tanulók száma], MAGSZORGERTEKELES.MAGATLAG AS [Magatartás átlag], MAGSZORGERTEKELES.SZORGATLAG AS [Szorgalom átlag], ' + @colsHeader + '
|
||||
FROM (SELECT OSZTALYID, NEV, Row# FROM #tempOsztalyok) AS OSZTALYOK
|
||||
LEFT JOIN (
|
||||
SELECT OSZTALYID AS E_OSZTALYID, TANTARGYID, ATLAG
|
||||
FROM #tempErtekeles
|
||||
) AS ERTEKELES ON ERTEKELES.E_OSZTALYID = OSZTALYOK.OSZTALYID
|
||||
PIVOT (
|
||||
MAX(ATLAG)
|
||||
FOR TANTARGYID IN (' + @cols + ')
|
||||
) AS PIVOTTABLE
|
||||
LEFT JOIN #tempTanulokszama AS TANULOILETSZAM ON PIVOTTABLE.OSZTALYID = TANULOILETSZAM.OSZTALYID
|
||||
LEFT JOIN (
|
||||
SELECT OSZTALYID AS MSZE_OSZTALYID, MAGATLAG, SZORGATLAG
|
||||
FROM #tempMagSzorgErtekeles
|
||||
) AS MAGSZORGERTEKELES ON PIVOTTABLE.OSZTALYID = MAGSZORGERTEKELES.MSZE_OSZTALYID
|
||||
ORDER BY Row#';
|
||||
execute(@query);
|
||||
|
||||
SELECT * INTO #tempForPivotMulasztas
|
||||
FROM @osztalyokMulasztas;
|
||||
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
SET @cols = 'HTF,KTF,HFF,KFF'
|
||||
SET @colsHeader = 'HTF AS [Igazolt hiányzás],KTF AS [Igazolt késés (óra)],HFF AS [Igazolatlan hiányzás],KFF AS [Igazolatlan késés (óra)]'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @cols = 'HTF,KTF,HFF,KFF,HTT,KTT,HFT,KFT'
|
||||
SET @colsHeader = 'HTF AS [Elméleti igazolt hiányzás],KTF AS [Elméleti igazolt késés (óra)],HFF AS [Elméleti igazolatlan hiányzás],KFF AS [Elméleti igazolatlan késés (óra)],HTT AS [Gyakorlati igazolt hiányzás],KTT AS [Gyakorlati igazolt késés (óra)],HFT AS [Gyakorlati igazolatlan hiányzás],KFT AS [Gyakorlati igazolatlan késés (óra)]'
|
||||
END
|
||||
SET @query =
|
||||
'SELECT ' + @colsHeader + '
|
||||
FROM (SELECT OSZTALYID, NEV, Row# FROM #tempOsztalyok) AS OSZTALYOK
|
||||
LEFT JOIN (
|
||||
SELECT OSZTALYID AS M_OSZTALYID, MULASZTASOK_SZAMA, DESCR
|
||||
FROM #tempForPivotMulasztas
|
||||
) AS MULASZTAS ON MULASZTAS.M_OSZTALYID = OSZTALYOK.OSZTALYID
|
||||
PIVOT (
|
||||
MAX(MULASZTASOK_SZAMA)
|
||||
FOR DESCR IN (' + @cols + ')
|
||||
) AS PIVOTTABLE
|
||||
ORDER BY Row#';
|
||||
execute(@query);
|
||||
|
||||
select OSZTALYID AS OsztalyId
|
||||
,EVFOLYAM AS EvfolyamTipusa
|
||||
,FeladatEllatasiHelyId
|
||||
,KepzesiForma
|
||||
,OsztalyfonokId
|
||||
,TantervId
|
||||
,OJAranyJanosProgram
|
||||
,OJCSJKeresztfeleves
|
||||
,OJGyogypedagogiai
|
||||
,OJKettannyelvu
|
||||
,OJLogopediai
|
||||
,OJNemzetisegi
|
||||
,OJNyelviElokeszito
|
||||
,OJSportOsztaly
|
||||
,OJTechnikaiOsztaly
|
||||
,SzakmaCsoport
|
||||
,Agazat
|
||||
,Szakkepesites
|
||||
,Reszszakkepesites from #tempOsztalyok;
|
||||
|
||||
IF OBJECT_ID('tempdb..#tempOsztalyok') IS NOT NULL DROP TABLE #tempOsztalyok
|
||||
IF OBJECT_ID('tempdb..#tempTanulokszama') IS NOT NULL DROP TABLE #tempTanulokszama
|
||||
IF OBJECT_ID('tempdb..#tempErtekeles') IS NOT NULL DROP TABLE #tempErtekeles
|
||||
IF OBJECT_ID('tempdb..#tempForPivotMulasztas') IS NOT NULL DROP TABLE #tempForPivotMulasztas
|
||||
|
||||
IF OBJECT_ID('tempdb..#tempOsztalyErtekelesek') IS NOT NULL DROP TABLE #tempOsztalyErtekelesek;
|
||||
IF OBJECT_ID('tempdb..#tempMulasztas') IS NOT NULL DROP TABLE #tempMulasztas;
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,260 @@
|
||||
-- =============================================
|
||||
-- Description: <Előszedjük a tanuló értékeléseket főtárgy/altárgy alapján>
|
||||
-- =============================================
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP PROCEDURE IF EXISTS [dbo].[uspGetTanuloErtekelesDataSetByFotargyAltargy]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[uspGetTanuloErtekelesDataSetByFotargyAltargy]
|
||||
@pIntezmenyId INT
|
||||
,@pTanevId INT
|
||||
,@pTanarId INT
|
||||
,@pTanuloId INT
|
||||
,@pFotargyAltargyId INT
|
||||
,@pDatum DATE = NULL
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
IF @pDatum IS NULL
|
||||
SET @pDatum = CONVERT(DATE, GETDATE())
|
||||
|
||||
DECLARE @evfolyamTipusId INT = (SELECT EvfolyamTipusId FROM dbo.fnGetTanuloOsztaly(@pTanuloId, @pDatum)) /*TODO:Tobb Osztaly*//*OM-1642*/
|
||||
DECLARE @DefaultFeladatKategoriaId int = (SELECT tev.C_DEFAULTFELADATKATEGORIAID FROM T_TANEV_OSSZES tev WHERE tev.ID = @pTanevId)
|
||||
|
||||
|
||||
CREATE TABLE #KapcsopodoTantargyak(
|
||||
ID INT
|
||||
,C_FOTARGYID INT
|
||||
,C_NEV NVARCHAR(255)
|
||||
,C_TARGYKATEGORIA INT
|
||||
,C_INTEZMENYID INT
|
||||
,C_TANEVID INT
|
||||
)
|
||||
INSERT INTO
|
||||
#KapcsopodoTantargyak
|
||||
SELECT
|
||||
ID
|
||||
,C_FOTARGYID
|
||||
,C_NEV
|
||||
,C_TARGYKATEGORIA
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
FROM
|
||||
fnGetKapcsolodoTantargyak(@pIntezmenyId, @pTanevId, @pFotargyAltargyId)
|
||||
|
||||
CREATE TABLE #OsztalyCsoportIdList(
|
||||
ID INT PRIMARY KEY
|
||||
)
|
||||
INSERT INTO
|
||||
#OsztalyCsoportIdList (ID)
|
||||
SELECT
|
||||
OsztalyCsoport.ID
|
||||
FROM
|
||||
T_TANULOCSOPORT_OSSZES TanuloCsoport
|
||||
INNER JOIN
|
||||
T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON
|
||||
OsztalyCsoport.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID
|
||||
AND OsztalyCsoport.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
AND OsztalyCsoport.TOROLT = 'F'
|
||||
AND OsztalyCsoport.ID = TanuloCsoport.C_OSZTALYCSOPORTID
|
||||
AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
WHERE
|
||||
TanuloCsoport.C_INTEZMENYID = @pIntezmenyId
|
||||
AND TanuloCsoport.C_TANEVID = @pTanevId
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
AND TanuloCsoport.C_TANULOID = @pTanuloId
|
||||
AND TanuloCsoport.C_BELEPESDATUM <= GETDATE()
|
||||
AND (TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM >= GETDATE())
|
||||
|
||||
CREATE TABLE #Tantargyak(
|
||||
ID INT
|
||||
,C_FOTARGYID INT
|
||||
,C_NEV NVARCHAR(255)
|
||||
,C_TARGYKATEGORIA INT
|
||||
,C_INTEZMENYID INT
|
||||
,C_TANEVID INT
|
||||
);
|
||||
WITH tantargy_CTE (C_TANTARGYID, C_FOTARGYID, C_INTEZMENYID, C_TANEVID)
|
||||
AS (
|
||||
SELECT DISTINCT
|
||||
Foglalkozas.C_TANTARGYID,
|
||||
Tantargy.C_FOTARGYID,
|
||||
Tantargy.C_INTEZMENYID,
|
||||
Tantargy.C_TANEVID
|
||||
FROM
|
||||
T_FOGLALKOZAS_OSSZES Foglalkozas
|
||||
INNER JOIN
|
||||
T_TANTARGY_OSSZES Tantargy ON
|
||||
Tantargy.C_INTEZMENYID = Foglalkozas.C_INTEZMENYID
|
||||
AND Tantargy.C_TANEVID = Foglalkozas.C_TANEVID
|
||||
AND Tantargy.TOROLT = 'F'
|
||||
AND Tantargy.ID = Foglalkozas.C_TANTARGYID
|
||||
INNER JOIN
|
||||
#OsztalyCsoportIdList OsztalyCsoport ON
|
||||
OsztalyCsoport.ID = Foglalkozas.C_OSZTALYCSOPORTID
|
||||
WHERE
|
||||
Foglalkozas.C_INTEZMENYID = @pIntezmenyId
|
||||
AND Foglalkozas.C_TANEVID = @pTanevId
|
||||
AND Foglalkozas.TOROLT = 'F'
|
||||
|
||||
UNION
|
||||
|
||||
SELECT DISTINCT
|
||||
OrarendiOra.C_TANTARGYID,
|
||||
Tantargy.C_FOTARGYID,
|
||||
Tantargy.C_INTEZMENYID,
|
||||
Tantargy.C_TANEVID
|
||||
FROM
|
||||
T_ORARENDIORA_OSSZES OrarendiOra
|
||||
INNER JOIN
|
||||
T_TANTARGY_OSSZES Tantargy ON
|
||||
Tantargy.C_INTEZMENYID = OrarendiOra.C_INTEZMENYID
|
||||
AND Tantargy.C_TANEVID = OrarendiOra.C_TANEVID
|
||||
AND Tantargy.TOROLT = 'F'
|
||||
AND Tantargy.ID = OrarendiOra.C_TANTARGYID
|
||||
INNER JOIN
|
||||
#OsztalyCsoportIdList OsztalyCsoport ON
|
||||
OsztalyCsoport.ID = OrarendiOra.C_OSZTALYCSOPORTID
|
||||
WHERE
|
||||
OrarendiOra.C_INTEZMENYID = @pIntezmenyId
|
||||
AND OrarendiOra.C_TANEVID = @pTanevId
|
||||
AND OrarendiOra.TOROLT = 'F'
|
||||
|
||||
UNION
|
||||
|
||||
SELECT DISTINCT
|
||||
TanuloErtekeles.C_TANTARGYID,
|
||||
Tantargy.C_FOTARGYID,
|
||||
Tantargy.C_INTEZMENYID,
|
||||
Tantargy.C_TANEVID
|
||||
FROM
|
||||
T_TANULOERTEKELES_OSSZES TanuloErtekeles
|
||||
INNER JOIN
|
||||
T_TANTARGY_OSSZES Tantargy ON
|
||||
Tantargy.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
|
||||
AND Tantargy.C_TANEVID = TanuloErtekeles.C_TANEVID
|
||||
AND Tantargy.TOROLT = 'F'
|
||||
AND Tantargy.ID = TanuloErtekeles.C_TANTARGYID
|
||||
INNER JOIN
|
||||
T_OSZTALYCSOPORT_OSSZES Osztaly ON
|
||||
Osztaly.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
|
||||
AND Osztaly.C_TANEVID = TanuloErtekeles.C_TANEVID
|
||||
AND Osztaly.TOROLT = 'F'
|
||||
AND Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
|
||||
AND Osztaly.C_EVFOLYAMTIPUSA = @evfolyamTipusId
|
||||
AND Osztaly.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
WHERE
|
||||
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
|
||||
AND TanuloErtekeles.C_TANEVID = @pTanevId
|
||||
AND TanuloErtekeles.TOROLT = 'F'
|
||||
AND TanuloErtekeles.C_TANULOID = @pTanuloId
|
||||
AND TanuloErtekeles.C_TANTARGYID IS NOT NULL
|
||||
)
|
||||
INSERT INTO
|
||||
#Tantargyak (ID, C_FOTARGYID, C_NEV, C_TARGYKATEGORIA, C_INTEZMENYID, C_TANEVID)
|
||||
SELECT DISTINCT
|
||||
KapcsopodoTantargy.ID,
|
||||
KapcsopodoTantargy.C_FOTARGYID,
|
||||
KapcsopodoTantargy.C_NEV,
|
||||
KapcsopodoTantargy.C_TARGYKATEGORIA,
|
||||
KapcsopodoTantargy.C_INTEZMENYID,
|
||||
KapcsopodoTantargy.C_TANEVID
|
||||
FROM
|
||||
tantargy_CTE
|
||||
INNER JOIN
|
||||
#KapcsopodoTantargyak KapcsopodoTantargy ON
|
||||
tantargy_CTE.C_TANTARGYID = KapcsopodoTantargy.ID
|
||||
OR tantargy_CTE.C_FOTARGYID = KapcsopodoTantargy.ID
|
||||
WHERE
|
||||
(KapcsopodoTantargy.ID <> @pFotargyAltargyId)
|
||||
|
||||
SELECT
|
||||
@pTanuloId TanuloId
|
||||
,Tantargy.ID TantargyId
|
||||
|
||||
,Tantargy.C_NEV TantargyNev
|
||||
|
||||
,TanuloErtekeles.ID ID
|
||||
,TanuloErtekeles.C_DATUM Datum
|
||||
,TanuloErtekeles.C_ROGZITESDATUM RogzitesDatum
|
||||
,TanuloErtekeles.C_TIPUSID TipusId
|
||||
,FelhasznaloErtekelo.C_NYOMTATASINEV ErtekeloNyomtatasiNev
|
||||
,IIF(TanuloErtekeles.ID IS NULL, --
|
||||
NULL, --
|
||||
CASE --
|
||||
WHEN TanuloErtekeles.C_ERTEKELOID = @pTanarId --
|
||||
THEN 'T' --
|
||||
ELSE 'F' --
|
||||
END --
|
||||
) Modosithato
|
||||
,TanuloErtekeles.CREATED Created
|
||||
,TanuloErtekeles.C_ISMAGATARTASSZORGALOM IsMagatartasSzorgalom
|
||||
,TanuloErtekeles.C_ISERTESITESELKULDVE IsErtesitesElkuldve
|
||||
|
||||
,TanuloErtekeles.C_ERTEKELESOSZTALYZATID ErtekelesOsztalyzatId
|
||||
,TanariAtlagSuly.C_SULY Suly
|
||||
,TanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
|
||||
,TanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV ErtekelesSzovegRovidNev
|
||||
,TanuloErtekeles.C_ERTEKELESSZAZALEK ErtekelesSzazalek
|
||||
,TanuloErtekeles.C_ERTEKELESMODID ErtekelesModId
|
||||
,TanuloErtekeles.C_ERTEKELESTEMA ErtekelesTema
|
||||
|
||||
,Tantargy.C_TARGYKATEGORIA TantargyKategoriaId
|
||||
,Fotargy.ID FotargyId
|
||||
,Fotargy.C_NEV FotargyNev
|
||||
,Fotargy.C_TARGYKATEGORIA FotargyTantargyKategoriaId
|
||||
FROM
|
||||
#Tantargyak Tantargy
|
||||
LEFT JOIN(
|
||||
SELECT
|
||||
TanuloErtekeles.*
|
||||
FROM
|
||||
T_TANULOERTEKELES_OSSZES TanuloErtekeles
|
||||
INNER JOIN
|
||||
T_OSZTALYCSOPORT_OSSZES Osztaly ON
|
||||
Osztaly.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
|
||||
AND Osztaly.C_TANEVID = TanuloErtekeles.C_TANEVID
|
||||
AND Osztaly.TOROLT = 'F'
|
||||
AND Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
|
||||
AND Osztaly.C_EVFOLYAMTIPUSA = @evfolyamTipusId
|
||||
AND Osztaly.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
WHERE
|
||||
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
|
||||
AND TanuloErtekeles.C_TANEVID = @pTanevId
|
||||
AND TanuloErtekeles.TOROLT = 'F'
|
||||
AND TanuloErtekeles.C_TANULOID = @pTanuloId
|
||||
) AS TanuloErtekeles ON
|
||||
TanuloErtekeles.C_TANTARGYID = Tantargy.ID
|
||||
LEFT JOIN
|
||||
T_FELHASZNALO_OSSZES FelhasznaloErtekelo ON
|
||||
FelhasznaloErtekelo.C_INTEZMENYID = Tantargy.C_INTEZMENYID
|
||||
AND FelhasznaloErtekelo.C_TANEVID = Tantargy.C_TANEVID
|
||||
AND FelhasznaloErtekelo.TOROLT = 'F'
|
||||
AND FelhasznaloErtekelo.ID = TanuloErtekeles.C_ERTEKELOID
|
||||
LEFT JOIN
|
||||
T_TANARIATLAGSULY_OSSZES TanariAtlagSuly ON
|
||||
TanariAtlagSuly.C_INTEZMENYID = Tantargy.C_INTEZMENYID
|
||||
AND TanariAtlagSuly.C_TANEVID = Tantargy.C_TANEVID
|
||||
AND TanariAtlagSuly.TOROLT = 'F'
|
||||
AND TanariAtlagSuly.C_ERTEKELESMODID = TanuloErtekeles.C_ERTEKELESMODID
|
||||
AND TanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'F'
|
||||
AND TanuloErtekeles.C_ERTEKELESOSZTALYZATID IS NOT NULL
|
||||
LEFT JOIN
|
||||
T_TANTARGY_OSSZES Fotargy ON
|
||||
Fotargy.C_INTEZMENYID = Tantargy.C_INTEZMENYID
|
||||
AND Fotargy.C_TANEVID = Tantargy.C_TANEVID
|
||||
AND Fotargy.TOROLT = 'F'
|
||||
AND Fotargy.ID = Tantargy.C_FOTARGYID
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
@@ -0,0 +1,130 @@
|
||||
-- =============================================
|
||||
-- Description: <Előszedjük a tanuló értékeléseket magatartás/szorgalom alapján>
|
||||
-- =============================================
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP PROCEDURE IF EXISTS [dbo].[uspGetTanuloErtekelesDataSetByMagatartasSzorgalom]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[uspGetTanuloErtekelesDataSetByMagatartasSzorgalom]
|
||||
@pIntezmenyId INT
|
||||
,@pTanevId INT
|
||||
,@pTanarId INT
|
||||
,@pOsztalyCsoportId INT
|
||||
,@pDatum DATE = NULL
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = (SELECT tev.C_DEFAULTFELADATKATEGORIAID FROM T_TANEV_OSSZES tev WHERE tev.ID = @pTanevId)
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
IF @pDatum IS NULL
|
||||
SET @pDatum = CONVERT(DATE, GETDATE())
|
||||
|
||||
CREATE TABLE #TanuloOsztalyEvfolyamTipusIdList(
|
||||
TanuloId INT PRIMARY KEY
|
||||
,EvfolyamTipusId INT
|
||||
)
|
||||
INSERT INTO
|
||||
#TanuloOsztalyEvfolyamTipusIdList
|
||||
SELECT
|
||||
TanuloId
|
||||
,EvfolyamTipusId
|
||||
FROM
|
||||
dbo.fnGetOsztalyCsoportTanuloOsztalyList(@pIntezmenyId, @pTanevId, @pOsztalyCsoportId, @pDatum) /*TODO:Tobb Osztaly*//*OM-1649*/
|
||||
|
||||
SELECT
|
||||
FelhasznaloTanulo.ID TanuloId
|
||||
,NULL TantargyId
|
||||
|
||||
,FelhasznaloTanulo.C_NYOMTATASINEV TanuloNev
|
||||
,IIF(FelhasznaloTanulo.C_NEVSORREND = 'T', --
|
||||
FelhasznaloTanulo.C_UTONEV + ' '+ FelhasznaloTanulo.C_VEZETEKNEV, --
|
||||
FelhasznaloTanulo.C_VEZETEKNEV + ' ' + FelhasznaloTanulo.C_UTONEV) TanuloNevElotagNelkul
|
||||
,FelhasznaloTanulo.C_ANYJANEVE AnyjaNeve
|
||||
,FelhasznaloTanulo.C_SZULETESIDATUM SzuletesiIdo
|
||||
,OsztalyCsoport.C_NEV OsztalyNev
|
||||
|
||||
,TanuloErtekeles.ID ID
|
||||
,TanuloErtekeles.C_DATUM Datum
|
||||
,TanuloErtekeles.C_ROGZITESDATUM RogzitesDatum
|
||||
,TanuloErtekeles.C_TIPUSID TipusId
|
||||
,FelhasznaloErtekelo.C_NYOMTATASINEV ErtekeloNyomtatasiNev
|
||||
,IIF(TanuloErtekeles.ID IS NULL, --
|
||||
NULL, --
|
||||
CASE --
|
||||
WHEN TanuloErtekeles.C_ERTEKELOID = @pTanarId --
|
||||
THEN 'T' --
|
||||
ELSE 'F' --
|
||||
END --
|
||||
) Modosithato
|
||||
,TanuloErtekeles.CREATED Created
|
||||
,TanuloErtekeles.C_ISMAGATARTASSZORGALOM IsMagatartasSzorgalom
|
||||
,TanuloErtekeles.C_ISERTESITESELKULDVE IsErtesitesElkuldve
|
||||
|
||||
,TanuloErtekeles.C_MAGATARTASOSZTALYZATID MagatartasOsztalyzatId
|
||||
,TanuloErtekeles.C_MAGATARTASSZOVEG MagatartasSzoveg
|
||||
,TanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV MagatartasSzovegRovidNev
|
||||
,TanuloErtekeles.C_MAGATARTASERTEKID MagatartasErtekId
|
||||
,TanuloErtekeles.C_SZORGALOMOSZTALYZATID SzorgalomOsztalyzatId
|
||||
,TanuloErtekeles.C_SZORGALOMSZOVEG SzorgalomSzoveg
|
||||
,TanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV SzorgalomSzovegRovidNev
|
||||
,TanuloErtekeles.C_SZORGALOMERTEKID SzorgalomErtekId
|
||||
FROM
|
||||
T_TANULOCSOPORT_OSSZES TanuloCsoport
|
||||
INNER JOIN
|
||||
T_FELHASZNALO_OSSZES FelhasznaloTanulo ON
|
||||
FelhasznaloTanulo.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID
|
||||
AND FelhasznaloTanulo.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
AND FelhasznaloTanulo.TOROLT = 'F'
|
||||
AND FelhasznaloTanulo.ID = TanuloCsoport.C_TANULOID
|
||||
LEFT JOIN
|
||||
T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON
|
||||
OsztalyCsoport.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID
|
||||
AND OsztalyCsoport.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
AND OsztalyCsoport.TOROLT = 'F'
|
||||
AND OsztalyCsoport.ID = TanuloCsoport.C_OSZTALYCSOPORTID
|
||||
AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
LEFT JOIN(
|
||||
SELECT
|
||||
TanuloErtekeles.*
|
||||
FROM
|
||||
T_TANULOERTEKELES_OSSZES TanuloErtekeles
|
||||
INNER JOIN
|
||||
T_OSZTALYCSOPORT_OSSZES Osztaly ON
|
||||
Osztaly.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
|
||||
AND Osztaly.C_TANEVID = TanuloErtekeles.C_TANEVID
|
||||
AND Osztaly.TOROLT = 'F'
|
||||
AND Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
|
||||
AND Osztaly.C_EVFOLYAMTIPUSA = (SELECT EvfolyamTipusId FROM #TanuloOsztalyEvfolyamTipusIdList WHERE TanuloId = TanuloErtekeles.C_TANULOID)
|
||||
AND Osztaly.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
WHERE
|
||||
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
|
||||
AND TanuloErtekeles.C_TANEVID = @pTanevId
|
||||
AND TanuloErtekeles.TOROLT = 'F'
|
||||
AND TanuloErtekeles.C_TANTARGYID IS NULL
|
||||
) AS TanuloErtekeles ON
|
||||
TanuloErtekeles.C_TANULOID = TanuloCsoport.C_TANULOID
|
||||
LEFT JOIN
|
||||
T_FELHASZNALO_OSSZES FelhasznaloErtekelo ON
|
||||
FelhasznaloErtekelo.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID
|
||||
AND FelhasznaloErtekelo.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
AND FelhasznaloErtekelo.TOROLT = 'F'
|
||||
AND FelhasznaloErtekelo.ID = TanuloErtekeles.C_ERTEKELOID
|
||||
WHERE
|
||||
TanuloCsoport.C_INTEZMENYID = @pIntezmenyId
|
||||
AND TanuloCsoport.C_TANEVID = @pTanevId
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
AND TanuloCsoport.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND TanuloCsoport.C_BELEPESDATUM <= @pDatum
|
||||
AND (TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM >= @pDatum)
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
Reference in New Issue
Block a user