kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20190730115146_KRETA2_528/uspGetUtolsoBeNemIrtOrak.sql
2024-03-13 00:33:46 +01:00

133 lines
3 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS uspGetUtolsoBeNemIrtOrak
GO
CREATE PROCEDURE uspGetUtolsoBeNemIrtOrak
@pIntezmenyId int
,@pTanevId int
,@pTanarId int
,@pDarab int
AS BEGIN
SET NOCOUNT ON;
DECLARE
@pIdoszakKezdete datetime
,@pIdoszakVege datetime
CREATE TABLE #OrarendiOrak (
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
,INDEX IX1 CLUSTERED(Datum, HetNapja, Oraszam, TanevRendOsztalyCsoportId, TantargyId, TanarID)
)
SELECT
@pIdoszakKezdete = tanev.C_ELSOTANITASINAP
,@pIdoszakVege = (CASE WHEN tanev.C_AKTIV = 'T' THEN GETDATE() ELSE tanev.C_UTOLSOTANITASINAP END)
FROM T_TANEV_OSSZES tanev
WHERE tanev.TOROLT = 'F'
AND tanev.ID = @pTanevId
AND tanev.C_INTEZMENYID = @pIntezmenyId
INSERT INTO #OrarendiOrak (
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 = @pIntezmenyId
,@pTanevId = @pTanevId
,@pIdoszakKezdete = @pIdoszakKezdete
,@pIdoszakVege = @pIdoszakVege
,@pTanarId = @pTanarId
,@pIsHelyettesitesNelkul = 0
,@pOsztalyCsoportId = NULL
,@pTanuloId = NULL
,@pTantargyId = NULL
,@pTeremId = NULL
,@pCsakOrarendiOrak = 0
,@pIsNapirend = NULL
SELECT TOP (@pDarab)
orak.Id AS Id
,CONVERT(nvarchar(25), OraKezdete, 102) AS Datum
,IIF(orak.CsengetesiRendID IS NOT NULL, orak.Oraszam, N'-') AS Oraszam
,orak.OsztalyNev AS OsztalyCsoport
,orak.TargyNev AS Tantargy
FROM #OrarendiOrak orak
WHERE orak.OraTipus = N'OrarendiOra'
AND orak.OraKezdete <= @pIdoszakVege
AND orak.OraVege >= @pIdoszakKezdete
ORDER BY orak.OraKezdete DESC
END
GO