kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20171010205924_KRETA_3340/sp_GetErtesitesAltEsMulAdatok.sql
2024-03-13 00:33:46 +01:00

148 lines
No EOL
5.3 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]
@pOsztalyId INT,
@pTanevId INT,
@pTankoteles BIT,
@pIskolaErdekuSzamit BIT
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 = @pOsztalyId,
@tanevId = @pTanevId,
@elmeletGyakorlat = 0,
@kesesTipus = 1499,
@elmeletiOraPercben = 45,
@gyakorlatiOraPercben = 60,
@ertekelesTipus = 1520, --évvégi
@iskolaErdekuSzamit = @pIskolaErdekuSzamit
--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_VAROS as INT_VAROS,
dbo.fnGetDokumentumIntezmenyCime(@pTanevId) as INT_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 = @pOsztalyId
AND T_TANULOCSOPORT_OSSZES.C_TANULOID IN (SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'F'))
AND T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
AND T_TANULO_OSSZES.C_TANKOTELEZETT = IIF(@pTankoteles = 0, 'F', 'T')
AND T_TANULOCSOPORT_OSSZES.C_TANEVID = @pTanevId
ORDER BY tanulo.C_NYOMTATASINEV
--Mulasztások részletezése
SELECT
*
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes(@pTanevId, @pOsztalyId, @pIskolaErdekuSzamit)
WHERE
Igazolt = 'F'
END
GO