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