122 lines
5.6 KiB
Transact-SQL
122 lines
5.6 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS uspGetIskolalatogatasiIgazolas
|
|
GO
|
|
|
|
CREATE PROCEDURE uspGetIskolalatogatasiIgazolas
|
|
@osztalyId int
|
|
,@tanevId int
|
|
,@pDatum date
|
|
,@pIsSzakkepzoIntezmeny bit
|
|
,@pNappaliRendszeruIskolaiOktatasId int
|
|
,@pFelnottoktatasNappaliRendszeruId int
|
|
,@pFelnottkepzesesJogviszonyId int = NULL
|
|
,@pTanuloiJogviszonyId int
|
|
AS BEGIN
|
|
SET NOCOUNT ON;
|
|
|
|
-- fejléc
|
|
SELECT
|
|
IntezmenyAdatok.C_NEV AS IntezmenyNeve
|
|
,IntezmenyAdatok.C_IGAZGATONEVE AS IGAZGATONEVE
|
|
,IntezmenyAdatok.C_VAROS AS IntezmenyVaros
|
|
,IntezmenyAdatok.C_OMKOD AS OmAzonosito
|
|
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) AS IntezmenyCime
|
|
,C_OSZTALYFONOKID AS PartnerID
|
|
,KepzesTipus.C_NAME AS KepzesForma
|
|
,Tanev.C_NEV AS TANEV
|
|
,ocs.C_NEV AS Osztaly
|
|
,ocs.ID AS OsztalyId
|
|
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
|
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
|
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
|
,Osztaly.C_OSZTALYFONOKID AS OsztalyFonokId
|
|
,Osztaly.C_TANTERVID AS TantervId
|
|
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
|
,ocs.C_ISTECHNIKAI AS OJTechnikaiOsztaly
|
|
,Osztaly.C_NEMZETISEGI AS OJNemzetisegi
|
|
,Osztaly.C_KETTANNYELVU AS OJKettannyelvu
|
|
,Osztaly.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
|
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI AS OJIsGyogypedagogiaiLogopediai
|
|
,Osztaly.C_SPORT AS OJSportOsztaly
|
|
,Osztaly.C_AJPROGRAM AS OJAranyJanosProgram
|
|
,Osztaly.C_SZAKMACSOPORT AS SzakmaCsoport
|
|
,Osztaly.C_AGAZAT AS Agazat
|
|
,Osztaly.C_SZAKKEPESITES AS Szakkepesites
|
|
,Osztaly.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
|
,Osztaly.C_AGAZATUJSZKTTIPUSID AS UjSzktAgazat
|
|
,Osztaly.C_SZAKMATIPUSID AS UjSzktSzakma
|
|
,Osztaly.C_SZAKMAIRANYTIPUSID AS UjSzktSzakmairany
|
|
,Osztaly.C_TANULMANYITERULETNKTTIPUSID AS NktTanulmanyiTerulet
|
|
,Osztaly.C_SZAKKEPESITESNKTTIPUSID AS NktSzakkepesites
|
|
,Osztaly.C_SZAKIRANYNKTTIPUSID AS NktSzakirany
|
|
FROM T_INTEZMENYADATOK_OSSZES IntezmenyAdatok
|
|
INNER JOIN T_TANEV_OSSZES Tanev ON Tanev.ID = IntezmenyAdatok.C_TANEVID
|
|
AND Tanev.TOROLT = 'F'
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = @osztalyId
|
|
AND ocs.C_TANEVID = IntezmenyAdatok.C_TANEVID
|
|
AND ocs.TOROLT = 'F'
|
|
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.C_ALTANEVID = IntezmenyAdatok.C_TANEVID
|
|
AND Osztaly.ID = ocs.ID
|
|
AND Osztaly.TOROLT = 'F'
|
|
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES KepzesTipus ON KepzesTipus.ID = ocs.C_KEPZESIFORMA
|
|
AND KepzesTipus.C_TANEVID = IntezmenyAdatok.C_TANEVID
|
|
AND KepzesTipus.TOROLT = 'F'
|
|
WHERE IntezmenyAdatok.TOROLT = 'F'
|
|
AND IntezmenyAdatok.C_TANEVID = @tanevId
|
|
|
|
-- tanulók
|
|
SELECT
|
|
Felhasznalo.C_NYOMTATASINEV AS TanuloNev
|
|
,Felhasznalo.C_OKTATASIAZONOSITO AS OktatasiAzonosito
|
|
,dbo.fnGetDokumentumDatumFormatum(Felhasznalo.C_SZULETESIDATUM) AS SzuletesiIdo
|
|
,Felhasznalo.C_SZULETESIHELY AS SzuletesiHely
|
|
,Felhasznalo.C_ANYJANEVE AS AnyjaNeve
|
|
,dbo.fnGetDokumentumDatumFormatum(TanugyiAdatok.C_NYILVANTARTASKEZDETE) AS JogviszonyKezdete
|
|
,dbo.fnGetDokumentumDatumFormatum(TanugyiAdatok.C_JOGVISZONYVARHATOBEFEJEZESE) AS JogviszonyVarhatoBefejezese
|
|
,dbo.fnGetDokumentumDatumFormatum(TanuloCsoport.C_KILEPESDATUM) AS KilepesDatum
|
|
,IIF(TanuloCsoport.C_KILEPESDATUM IS NOT NULL AND TanuloCsoport.C_KILEPESDATUM <= @pDatum, 'T', 'F') AS IsKilepett
|
|
,Felhasznalo.ID AS TanuloId
|
|
,ocs.ID AS OsztalyId
|
|
,ocs.C_NEV AS Osztaly
|
|
,IIF(@pIsSzakkepzoIntezmeny = 1, KepzesTipusTanuloTanugyiAdatok.C_NAME, KepzesTipusOsztaly.C_NAME) AS KepzesForma
|
|
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') s
|
|
INNER JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Felhasznalo.Id = s.TanuloId
|
|
INNER JOIN T_TANEV_OSSZES t on t.ID = Felhasznalo.C_TANEVID AND t.TOROLT = 'F'
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON TanuloCsoport.c_tanuloid = s.TanuloId
|
|
AND TanuloCsoport.ID = s.TanuloCsoportId
|
|
AND TanuloCsoport.TOROLT = 'F'
|
|
AND TanuloCsoport.C_TANEVID = @tanevId
|
|
AND TanuloCsoport.C_OSZTALYCSOPORTID = @osztalyId
|
|
AND TanuloCsoport.C_BELEPESDATUM <= @pDatum
|
|
AND (@pFelnottkepzesesJogviszonyId IS NULL OR (TanuloCsoport.C_JOGVISZONYTIPUSID IS NULL OR TanuloCsoport.C_JOGVISZONYTIPUSID <> @pFelnottkepzesesJogviszonyId))
|
|
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES TanugyiAdatok ON TanugyiAdatok.C_TANULOCSOPORTID = TanuloCsoport.Id
|
|
AND TanugyiAdatok.TOROLT = 'F'
|
|
AND TanugyiAdatok.C_TANEVID = @tanevId
|
|
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID
|
|
AND Osztaly.TOROLT = 'F'
|
|
AND Osztaly.C_ALTANEVID = TanuloCsoport.C_TANEVID
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = TanuloCsoport.C_OSZTALYCSOPORTID
|
|
AND ocs.TOROLT = 'F'
|
|
AND ocs.C_TANEVID = TanuloCsoport.C_TANEVID
|
|
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES KepzesTipusOsztaly ON KepzesTipusOsztaly.ID = ocs.C_KEPZESIFORMA
|
|
AND KepzesTipusOsztaly.C_TANEVID = ocs.C_TANEVID
|
|
AND KepzesTipusOsztaly.TOROLT = 'F'
|
|
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES KepzesTipusTanuloTanugyiAdatok ON KepzesTipusTanuloTanugyiAdatok.ID = TanugyiAdatok.C_TANTERVIJELLEGID
|
|
AND KepzesTipusTanuloTanugyiAdatok.C_TANEVID = TanugyiAdatok.C_TANEVID
|
|
AND KepzesTipusTanuloTanugyiAdatok.TOROLT = 'F'
|
|
WHERE @pIsSzakkepzoIntezmeny = 0
|
|
OR (
|
|
@pIsSzakkepzoIntezmeny = 1
|
|
AND (
|
|
TanuloCsoport.C_JOGVISZONYTIPUSID = @pTanuloiJogviszonyId
|
|
OR (
|
|
TanuloCsoport.C_JOGVISZONYTIPUSID IS NULL
|
|
AND
|
|
KepzesTipusTanuloTanugyiAdatok.ID IN (@pNappaliRendszeruIskolaiOktatasId, @pFelnottoktatasNappaliRendszeruId)
|
|
)
|
|
) OR t.C_SORSZAM <= 40
|
|
)
|
|
ORDER BY Felhasznalo.C_NYOMTATASINEV
|
|
|
|
END
|
|
|
|
GO
|