100 lines
2.7 KiB
Transact-SQL
100 lines
2.7 KiB
Transact-SQL
IF OBJECT_ID('[dbo].[sp_CheckTanarOra]') IS NOT NULL BEGIN
|
||
DROP PROCEDURE [dbo].[sp_CheckTanarOra]
|
||
END
|
||
GO
|
||
|
||
CREATE PROCEDURE [dbo].[sp_CheckTanarOra]
|
||
@tanarId int,
|
||
@start datetime,
|
||
@end datetime,
|
||
@IntezmenyId int,
|
||
@TanevId int,
|
||
@oraszam int = null
|
||
AS
|
||
BEGIN
|
||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||
-- interfering with SELECT statements.
|
||
SET NOCOUNT ON;
|
||
|
||
DECLARE @CsakOrarendiOrak BIT = 0; --tan<61>r<EFBFBD>k is
|
||
DECLARE @IsNapirend BIT = 0; --csak <20>rarendi (csenget<65>si rendhez k<>t<EFBFBD>tt) <20>ra
|
||
DECLARE @IdoszakKezdete DATETIME = CAST(@start AS DATE);
|
||
DECLARE @IdoszakVege DATETIME = CAST(DATEADD(DAY, 1, @end) AS DATE);
|
||
CREATE TABLE #OrarendTable (
|
||
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)
|
||
,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 IX01 CLUSTERED (OraTipus, OraKezdete, OraVege)
|
||
)
|
||
|
||
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,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 = NULL
|
||
,@pTanuloId = NULL
|
||
,@pTantargyId = NULL
|
||
,@pTeremId = NULL
|
||
,@pCsakOrarendiOrak = @CsakOrarendiOrak
|
||
,@pIsNapirend = @IsNapirend
|
||
|
||
IF(@oraszam IS NULL)
|
||
BEGIN
|
||
SELECT ORARENDIID AS C_ORARENDIORAID
|
||
FROM #OrarendTable
|
||
WHERE
|
||
OraTipus = 'OrarendiOra'
|
||
AND OraKezdete = @start
|
||
AND OraVege = @end
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
SELECT ORARENDIID AS C_ORARENDIORAID
|
||
FROM #OrarendTable
|
||
WHERE
|
||
OraTipus = 'OrarendiOra'
|
||
AND Oraszam = @oraszam
|
||
END
|
||
|
||
END
|