135 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			135 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
DROP PROCEDURE IF EXISTS uspGetKiirtHelyettesitesek
 | 
						|
GO
 | 
						|
 | 
						|
CREATE PROCEDURE uspGetKiirtHelyettesitesek
 | 
						|
   @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 = (CASE WHEN tanev.C_AKTIV = 'T' THEN GETDATE() ELSE tanev.C_ELSOTANITASINAP END)
 | 
						|
    ,@pIdoszakVege = tanev.C_UTOLSOTANITASINAP
 | 
						|
  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
 | 
						|
    AND orak.HelyettesitoTanarID = @pTanarId
 | 
						|
  ORDER BY orak.OraKezdete ASC
 | 
						|
 | 
						|
END
 | 
						|
GO
 |