168 lines
6.8 KiB
Transact-SQL
168 lines
6.8 KiB
Transact-SQL
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
IF OBJECT_ID('sp_GetErtesitesAltEsMulAdatok') IS NOT NULL BEGIN
|
|
DROP PROCEDURE [sp_GetErtesitesAltEsMulAdatok]
|
|
END
|
|
GO
|
|
|
|
CREATE PROCEDURE [dbo].[sp_GetErtesitesAltEsMulAdatok]
|
|
@osztalyId int,
|
|
@tanevId int,
|
|
@tankoteles nvarchar(1)
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
|
|
--Mulasztasok
|
|
DECLARE @Mulasztasok TABLE (
|
|
TanuloId INT
|
|
,Igazolt INT
|
|
,Igazolatlan INT
|
|
,ElmeletIgazolt INT
|
|
,ElmeletIgazolatlan INT
|
|
,GyakorlatIgazolt INT
|
|
,GyakorlatIgazolatlan INT
|
|
,Osszes INT
|
|
)
|
|
|
|
INSERT INTO @Mulasztasok
|
|
EXEC sp_GetDokumentumMulasztasok
|
|
@osztalyId = @osztalyId,
|
|
@tanevId = @tanevId,
|
|
@elmeletGyakorlat = 0,
|
|
@kesesTipus = 1499,
|
|
@elmeletiOraPercben = 45,
|
|
@gyakorlatiOraPercben = 60,
|
|
@ertekelesTipus = 1520 --évvégi
|
|
|
|
--Tanulói adatok
|
|
SELECT
|
|
tanulo.ID,
|
|
tanulo.C_NYOMTATASINEV TANULONEV,
|
|
tanulo.C_ANYJANEVE ANYJANEVE,
|
|
tanulo.C_SZULETESIHELY SZULETESIHELY,
|
|
tanulo.C_SZULETESIDATUM SZULETESIDATUM,
|
|
tanulo.C_NYILVANTARTASISZAM TorzslapSzam,
|
|
AllandoLakcim.IranyitoSzam1,
|
|
AllandoLakcim.Varos1,
|
|
AllandoLakcim.Kozterulet1,
|
|
AllandoLakcim.KozteruletJellege1,
|
|
AllandoLakcim.Hazszam1,
|
|
AllandoLakcim.Emelet1,
|
|
AllandoLakcim.Ajto1,
|
|
TartozkodasiHely.IranyitoSzam2,
|
|
TartozkodasiHely.Varos2,
|
|
TartozkodasiHely.Kozterulet2,
|
|
TartozkodasiHely.KozteruletJellege2,
|
|
TartozkodasiHely.Hazszam2,
|
|
TartozkodasiHely.Emelet2,
|
|
TartozkodasiHely.Ajto2,
|
|
Gondviselo.GondvNeve,
|
|
Gondviselo.GondvTelefon,
|
|
Gondviselo.GondvCim,
|
|
T_INTEZMENYADATOK_OSSZES.C_IGAZGATONEVE as INT_IGAZGATO_NEV,
|
|
T_INTEZMENYADATOK_OSSZES.C_NEV as INT_NEV,
|
|
T_INTEZMENYADATOK_OSSZES.C_OMKOD as INT_OMKOD,
|
|
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM as INT_IRSZAM,
|
|
T_INTEZMENYADATOK_OSSZES.C_VAROS as INT_VAROS,
|
|
T_INTEZMENYADATOK_OSSZES.C_CIME as INT_CIM,
|
|
T_INTEZMENYADATOK_OSSZES.C_IRANYITOSZAM + ' ' + T_INTEZMENYADATOK_OSSZES.C_VAROS + ' ' + T_INTEZMENYADATOK_OSSZES.C_CIME as INT_TELJES_CIM,
|
|
T_OSZTALYCSOPORT_OSSZES.C_NEV as OSZTALYCSOPORT_NEV,
|
|
osztf.C_VEZETEKNEV + ' ' + osztf.C_UTONEV as OSZTFO_NEV,
|
|
ISNULL(mulasztas.Igazolt,0) IGAZOLT,
|
|
ISNULL(mulasztas.Igazolatlan,0) IGAZOLATLAN
|
|
FROM T_TANULOCSOPORT_OSSZES
|
|
LEFT JOIN T_FELHASZNALO_OSSZES tanulo on tanulo.ID = T_TANULOCSOPORT_OSSZES.C_TANULOID AND tanulo.TOROLT = 'F'
|
|
LEFT JOIN T_TANULO_OSSZES on T_TANULO_OSSZES.ID = tanulo.ID AND T_TANULO_OSSZES.TOROLT = 'F'
|
|
LEFT JOIN T_OSZTALYCSOPORT_OSSZES on T_OSZTALYCSOPORT_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID AND T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
|
|
LEFT JOIN T_INTEZMENYADATOK_OSSZES on T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID = T_TANULOCSOPORT_OSSZES.C_INTEZMENYID
|
|
AND T_INTEZMENYADATOK_OSSZES.C_TANEVID = T_TANULOCSOPORT_OSSZES.C_TANEVID
|
|
AND T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
|
LEFT JOIN T_OSZTALY_OSSZES on T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID AND T_OSZTALY_OSSZES.TOROLT = 'F'
|
|
LEFT JOIN T_FELHASZNALO_OSSZES osztf on osztf.ID = T_OSZTALY_OSSZES.C_OSZTALYFONOKID AND osztf.TOROLT = 'F'
|
|
LEFT JOIN --Állandó lakcím
|
|
(SELECT
|
|
T_CIM_OSSZES.C_FELHASZNALOID TanuloID,
|
|
T_CIM_OSSZES.C_IRANYITOSZAM IranyitoSzam1,
|
|
T_CIM_OSSZES.C_VAROS Varos1,
|
|
T_CIM_OSSZES.C_KOZTERULET Kozterulet1,
|
|
T_CIM_OSSZES.C_KOZTERULETJELLEGE KozteruletJellege1,
|
|
T_CIM_OSSZES.C_HAZSZAM Hazszam1,
|
|
T_CIM_OSSZES.C_EMELET Emelet1,
|
|
T_CIM_OSSZES.C_AJTO Ajto1
|
|
FROM T_CIM_OSSZES
|
|
WHERE
|
|
T_CIM_OSSZES.TOROLT = 'F'
|
|
AND T_CIM_OSSZES.C_CIMTIPUSA = 907
|
|
) AllandoLakcim ON AllandoLakcim.TanuloID = tanulo.ID
|
|
LEFT JOIN -- Tartózkodási hely
|
|
(SELECT
|
|
T_CIM_OSSZES.C_FELHASZNALOID TanuloID,
|
|
T_CIM_OSSZES.C_IRANYITOSZAM IranyitoSzam2,
|
|
T_CIM_OSSZES.C_VAROS Varos2,
|
|
T_CIM_OSSZES.C_KOZTERULET Kozterulet2,
|
|
T_CIM_OSSZES.C_KOZTERULETJELLEGE KozteruletJellege2,
|
|
T_CIM_OSSZES.C_HAZSZAM Hazszam2,
|
|
T_CIM_OSSZES.C_EMELET Emelet2,
|
|
T_CIM_OSSZES.C_AJTO Ajto2
|
|
FROM T_CIM_OSSZES
|
|
WHERE
|
|
T_CIM_OSSZES.TOROLT = 'F'
|
|
AND T_CIM_OSSZES.C_CIMTIPUSA = 909
|
|
) TartozkodasiHely on TartozkodasiHely.TanuloID = tanulo.ID
|
|
LEFT JOIN @Mulasztasok mulasztas on mulasztas.TanuloId = tanulo.ID --Mulasztások
|
|
LEFT JOIN -- Gondviselő adatok
|
|
(
|
|
SELECT
|
|
T_GONDVISELO_OSSZES.ID,
|
|
T_GONDVISELO_OSSZES.C_TANULOID Tanulo,
|
|
T_GONDVISELO_OSSZES.C_NEV GondvNeve,
|
|
ISNULL(T_TELEFON_OSSZES.C_TELEFONSZAM,'') GondvTelefon,
|
|
ISNULL(T_CIM_OSSZES.C_OSSZETETTCIM,'') GondvCim
|
|
FROM T_GONDVISELO_OSSZES
|
|
LEFT JOIN T_TELEFON_OSSZES on T_TELEFON_OSSZES.C_GONDVISELOID = T_GONDVISELO_OSSZES.ID and T_TELEFON_OSSZES.TOROLT = 'F'
|
|
LEFT JOIN T_CIM_OSSZES on T_CIM_OSSZES.C_GONDVISELOID = T_GONDVISELO_OSSZES.ID and T_CIM_OSSZES.TOROLT = 'F'
|
|
WHERE
|
|
T_GONDVISELO_OSSZES.TOROLT = 'F'
|
|
) Gondviselo on Gondviselo.Tanulo = T_TANULO_OSSZES.ID
|
|
WHERE
|
|
T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID = @osztalyId
|
|
AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
|
|
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())
|
|
AND T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
|
|
AND T_TANULO_OSSZES.C_TANKOTELEZETT = @tankoteles
|
|
AND T_TANULOCSOPORT_OSSZES.C_TANEVID = @tanevId
|
|
ORDER BY tanulo.C_NYOMTATASINEV
|
|
|
|
|
|
--Mulasztások részletezése
|
|
SELECT DISTINCT
|
|
T_TANULOMULASZTAS_OSSZES.C_ORATANULOIID Tanulo,
|
|
T_TANITASIORA_OSSZES.C_DATUM Datum,
|
|
T_TANITASIORA_OSSZES.C_ORASZAM Oraszam,
|
|
T_TANULOMULASZTAS_OSSZES.C_TIPUS Tipus,
|
|
T_TANULOMULASZTAS_OSSZES.C_KESESPERCBEN KesesPerc,
|
|
T_OSZTALYCSOPORT_OSSZES.C_NEV OsztNev,
|
|
T_TANTARGY_OSSZES.C_NEV Tantargy
|
|
FROM T_TANULOMULASZTAS_OSSZES
|
|
INNER JOIN T_TANITASIORA_OSSZES on T_TANITASIORA_OSSZES.ID = T_TANULOMULASZTAS_OSSZES.C_TANITASIORAKID and T_TANITASIORA_OSSZES.TOROLT= 'F'
|
|
LEFT JOIN T_TANTARGY_OSSZES on T_TANTARGY_OSSZES.ID = T_TANITASIORA_OSSZES.C_TANTARGYID and T_TANTARGY_OSSZES.TOROLT = 'F'
|
|
LEFT JOIN T_TANULOCSOPORT_OSSZES on T_TANULOCSOPORT_OSSZES.C_TANULOID = T_TANULOMULASZTAS_OSSZES.C_ORATANULOIID and T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
|
|
LEFT JOIN T_OSZTALYCSOPORT_OSSZES on T_OSZTALYCSOPORT_OSSZES.ID = T_TANITASIORA_OSSZES.C_OSZTALYCSOPORTID
|
|
WHERE
|
|
T_TANULOMULASZTAS_OSSZES.C_TIPUS IN (1499, 1500)
|
|
AND T_TANULOCSOPORT_OSSZES.TOROLT='F'
|
|
AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
|
|
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())
|
|
AND T_TANULOMULASZTAS_OSSZES.C_ORATANULOIID IN (SELECT C_TANULOID FROM T_TANULOCSOPORT_OSSZES WHERE C_OSZTALYCSOPORTID=@osztalyId AND TOROLT='F')
|
|
AND T_TANULOMULASZTAS_OSSZES.C_IGAZOLT = 'F'
|
|
AND T_TANULOMULASZTAS_OSSZES.TOROLT = 'F'
|
|
AND T_TANULOMULASZTAS_OSSZES.C_TANEVID = @tanevId
|
|
ORDER BY T_TANULOMULASZTAS_OSSZES.C_ORATANULOIID, T_TANITASIORA_OSSZES.C_DATUM
|
|
|
|
END
|
|
|
|
GO |