83 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
IF OBJECT_ID('sp_GetNemMegtartottOrakSzamaPerHet') IS NOT NULL 
 | 
						|
BEGIN
 | 
						|
	DROP PROCEDURE sp_GetNemMegtartottOrakSzamaPerHet 
 | 
						|
END
 | 
						|
 | 
						|
GO 
 | 
						|
CREATE PROCEDURE [sp_GetNemMegtartottOrakSzamaPerHet] 
 | 
						|
	@osztalyId			INT, 
 | 
						|
	@intezmenyId		INT, 
 | 
						|
	@tanevId			INT 
 | 
						|
AS
 | 
						|
BEGIN
 | 
						|
	
 | 
						|
	DECLARE @CsakOrarendiOrak BIT = 0;
 | 
						|
	DECLARE @IdoszakKezdete DATETIME;
 | 
						|
	DECLARE @IdoszakVege DATETIME = CAST(GETDATE() AS DATE)
 | 
						|
	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)
 | 
						|
		,OraTipus nvarchar(200)
 | 
						|
		,Hianyzas char(1)
 | 
						|
		,Keses char(1)
 | 
						|
		,Ures char(1)
 | 
						|
		,HelyettesitoTanarID int
 | 
						|
		,HelyettesitoTanarNev nvarchar(255)
 | 
						|
		,TanarID int
 | 
						|
		,HelyettesitesId int
 | 
						|
		,AdminAltalKiirt  char(1)
 | 
						|
		,GroupId int
 | 
						|
		,Tema nvarchar(max)
 | 
						|
		,TantargyId int
 | 
						|
		,OsztCsopId int
 | 
						|
   )
 | 
						|
	
 | 
						|
	SELECT
 | 
						|
		@IdoszakKezdete = nh.C_HETKEZDONAPJA
 | 
						|
	FROM T_NAPTARIHET nh
 | 
						|
	WHERE
 | 
						|
		nh.C_INTEZMENYID = @intezmenyId AND nh.C_TANEVID = @tanevId AND nh.TOROLT = 'F'
 | 
						|
		AND nh.C_HETSORSZAMA = 1
 | 
						|
	
 | 
						|
	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,TanarID,AdminAltalKiirt,GroupId,Tema,TantargyId,OsztCsopId)
 | 
						|
	EXEC sp_GetOrarend @IntezmenyId,@TanevId,@IdoszakKezdete,@IdoszakVege,NULL,@osztalyId,NULL,@CsakOrarendiOrak,NULL
 | 
						|
 | 
						|
 | 
						|
	SELECT DISTINCT
 | 
						|
		tmp.HetSorszam AS HetSorszam
 | 
						|
		,COUNT(id) AS NemNaplozottOrakSzama
 | 
						|
		,@osztalyId AS OsztalyID
 | 
						|
	FROM @OrarendTable tmp
 | 
						|
	WHERE
 | 
						|
		tmp.OraTipus = 'OrarendiOra'
 | 
						|
		AND (@osztalyId IS NULL OR tmp.OsztCsopId = @osztalyId)
 | 
						|
	GROUP BY tmp.HetSorszam
 | 
						|
	ORDER BY tmp.HetSorszam
 | 
						|
 | 
						|
END
 | 
						|
GO |