125 lines
4.4 KiB
Transact-SQL
125 lines
4.4 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS sp_GetNemNaplozottOrarendiOrak
|
|
GO
|
|
|
|
CREATE PROCEDURE sp_GetNemNaplozottOrarendiOrak
|
|
@IntezmenyId int
|
|
,@TanevId int
|
|
,@IdoszakKezdete datetime
|
|
,@IdoszakVege datetime
|
|
,@TanarId int = NULL
|
|
,@OsztalyCsoportId int = NULL
|
|
,@TantargyId int = NULL
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
|
|
SET DATEFIRST 1
|
|
|
|
DECLARE @CsakOrarendiOrak bit = 0;
|
|
DECLARE @OrarendTable TABLE (
|
|
Id int
|
|
,ORARENDIID INT
|
|
,Datum datetime
|
|
,Bontott char(1)
|
|
,Hetirend int
|
|
,HetNapja int
|
|
,HetSorszam int
|
|
,ErvenyessegKezdete datetime
|
|
,ErvenyessegVege datetime
|
|
,OraKezdete datetime
|
|
,OraVege datetime
|
|
,Oraszam int
|
|
,TargyNev nvarchar(300)
|
|
,TargyNevForMobile nvarchar(300)
|
|
,TargykategoriaID int
|
|
,Megtartott char(1)
|
|
,CsengetesiRendOraID int
|
|
,CsengetesiRendID int
|
|
,MaxNapiOraszam int
|
|
,OsztalyNev nvarchar(255)
|
|
,TanevRendOsztalyCsoportId int
|
|
,MegjelenesOka nvarchar(300)
|
|
,TanarNev nvarchar(255)
|
|
,TeremNev nvarchar(255)
|
|
,TeremId int
|
|
,OraTipus nvarchar(200)
|
|
,Hianyzas char(1)
|
|
,Keses char(1)
|
|
,Ures char(1)
|
|
,HelyettesitoTanarID int
|
|
,HelyettesitoTanarNev nvarchar(255)
|
|
,HelyettesitesId int
|
|
,TanarID int
|
|
,AdminAltalKiirt char(1)
|
|
,GroupId int
|
|
,Tema nvarchar(max)
|
|
,TantargyId int
|
|
,OsztCsopId int
|
|
)
|
|
|
|
INSERT INTO @OrarendTable (
|
|
Id,ORARENDIID,Datum,Bontott,Hetirend,HetNapja,HetSorszam,ErvenyessegKezdete,ErvenyessegVege,OraKezdete,OraVege,Oraszam,
|
|
TargyNev,TargyNevForMobile,TargykategoriaID,Megtartott,CsengetesiRendOraID,CsengetesiRendID,MaxNapiOraszam,OsztalyNev,TanevRendOsztalyCsoportId,
|
|
MegjelenesOka,TanarNev,TeremNev,TeremId,OraTipus,Hianyzas,Keses,Ures,HelyettesitoTanarID,HelyettesitoTanarNev,HelyettesitesId,TanarID,AdminAltalKiirt,GroupId,Tema,TantargyId,OsztCsopId)
|
|
EXEC sp_GetOrarend
|
|
@pIntezmenyId = @IntezmenyId
|
|
,@pTanevId = @TanevId
|
|
,@pIdoszakKezdete = @IdoszakKezdete
|
|
,@pIdoszakVege = @IdoszakVege
|
|
,@pTanarId = @TanarId
|
|
,@pIsHelyettesitesNelkul = 0
|
|
,@pOsztalyCsoportId = @OsztalyCsoportId
|
|
,@pTanuloId = NULL
|
|
,@pTantargyId = @TantargyId
|
|
,@pTeremId = NULL
|
|
,@pCsakOrarendiOrak = @CsakOrarendiOrak
|
|
,@pIsNapirend = NULL
|
|
|
|
SELECT DISTINCT
|
|
Id, ORARENDIID, Bontott, Hetirend, HetNapja,HetSorszam, ErvenyessegKezdete, ErvenyessegVege, OraKezdete, CONVERT(date, OraKezdete) as OraKezdeteDate, CONVERT(varchar(5), OraKezdete, 108) as OraKezdeteTimeText, OraVege, IIF(tmp.CsengetesiRendID IS NOT NULL, tmp.Oraszam, NULL) as Oraszam,
|
|
TargyNev, TargyNevForMobile,
|
|
TargykategoriaID, Megtartott, CsengetesiRendOraID, CsengetesiRendID,MaxNapiOraszam, OsztalyNev, MegjelenesOka, TanarNev, TeremNev,
|
|
OraTipus, Hianyzas, Keses, Ures, HelyettesitoTanarID, HelyettesitoTanarNev, HelyettesitesId, TanarID, AdminAltalKiirt, GroupId, Tema, TantargyId,
|
|
OsztCsopId, IIF(tmp.HelyettesitoTanarID IS NOT NULL, tmp.TanarNev, NULL) as HelyettesitettPedagogusNev, CONVERT(nvarchar(25), OraKezdete, 102) as OraKezdeteDateST,
|
|
DATEPART(w, OraKezdete) + 1407 AS HetNapjaValos
|
|
FROM @OrarendTable tmp
|
|
WHERE tmp.OraTipus = 'OrarendiOra' AND OraKezdete <= @IdoszakVege AND OraVege >= @IdoszakKezdete
|
|
|
|
-- Iktatás adatok
|
|
SELECT
|
|
@OsztalyCsoportId AS OsztalyId,
|
|
ocs.C_EVFOLYAMTIPUSA AS Evfolyam,
|
|
ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId,
|
|
o.C_KEPZESIFORMA AS KepzesiForma,
|
|
o.C_OSZTALYFONOKID AS OsztalyFonokId,
|
|
o.C_TANTERVID AS TantervId,
|
|
o.C_SZAKMACSOPORT AS SzakmaCsoport,
|
|
o.C_AGAZAT AS Agazat,
|
|
o.C_SZAKKEPESITES AS Szakkepesites,
|
|
o.C_RESZSZAKKEPESITES AS Reszszakkepesites,
|
|
ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves,
|
|
o.C_TECHNIKAIOSZTALY AS OJTechnikaiOsztaly,
|
|
o.C_NEMZETISEGI AS OJNemzetisegi,
|
|
o.C_KETTANNYELVU AS OJKettannyelvu,
|
|
o.C_NYELVIELOKESZITO AS OJNyelviElokeszito,
|
|
o.C_LOGOPEDIAI AS OJLogopediai,
|
|
o.C_SPORT AS OJSportOsztaly,
|
|
o.C_AJPROGRAM AS OJAranyJanosProgram,
|
|
o.C_GYOGYPEDAGOGIAI AS OJGyogypedagogiai
|
|
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
|
INNER JOIN T_OSZTALY o ON o.ID = ocs.ID
|
|
WHERE ocs.ID = @OsztalyCsoportId AND ocs.TOROLT = 'F'
|
|
AND ocs.C_TANEVID = @TanevId;
|
|
|
|
-- Tanár iktatás adatok
|
|
SELECT DISTINCT
|
|
f.ID AS TanarId
|
|
,f.C_OKTATASIAZONOSITO TanarOktAzon
|
|
FROM T_ALKALMAZOTT_OSSZES a
|
|
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = a.ID
|
|
LEFT JOIN @OrarendTable ot ON ot.TanarID = f.ID
|
|
WHERE f.C_INTEZMENYID = @IntezmenyId AND f.C_TANEVID = @TanevId
|
|
AND (@TanarId IS NULL OR f.ID = @TanarId)
|
|
END
|
|
GO
|