123 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			123 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
-- =============================================
 | 
						|
-- Description:	<Minden intézmény aktív tanévéből visszaadja a még kinem küldött értékeléseket figyelembe véve a késleltetéseket is>
 | 
						|
-- =============================================
 | 
						|
SET ANSI_NULLS ON
 | 
						|
GO
 | 
						|
SET QUOTED_IDENTIFIER ON
 | 
						|
GO
 | 
						|
 | 
						|
DROP PROCEDURE IF EXISTS [dbo].[uspGetAllSchemaKikuldendoErtekeles]
 | 
						|
GO
 | 
						|
 | 
						|
CREATE PROCEDURE [dbo].[uspGetAllSchemaKikuldendoErtekeles]
 | 
						|
	 @DATUM				 DATETIME
 | 
						|
	,@EVKOZIJEGY		 INT
 | 
						|
	,@FELEVIJEGY		 INT
 | 
						|
	,@EVVEGIJEGY		 INT
 | 
						|
	,@INEGYEDVESJEGY	 INT
 | 
						|
	,@IINEGYEDVESJEGY	 INT
 | 
						|
	,@IIINEGYEDVESJEGY	 INT
 | 
						|
	,@IVNEGYEDVESJEGY	 INT
 | 
						|
AS
 | 
						|
BEGIN
 | 
						|
 | 
						|
	-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
 | 
						|
	SET NOCOUNT ON;
 | 
						|
	
 | 
						|
	SELECT
 | 
						|
		 I.C_AZONOSITO
 | 
						|
		,I.ID INTEZMENYID
 | 
						|
		,T.ID TANEVID
 | 
						|
		,[dbo].[fnGetRendszerbeallitasSelectedValue](7380,I.ID,T.ID) Kesleltetes
 | 
						|
		,[dbo].[fnGetRendszerbeallitasDateValue](5438,I.ID,T.ID) Felevi_jegyek_megjelenesenek_datuma
 | 
						|
		,[dbo].[fnGetRendszerbeallitasDateValue](5439,I.ID,T.ID) Ev_vegi_jegyek_megjelenesenek_datuma
 | 
						|
		,[dbo].[fnGetRendszerbeallitasDateValue](5440,I.ID,T.ID) Ev_vegi_jegyek_megjelenesenek_datuma_vegzos
 | 
						|
		,[dbo].[fnGetRendszerbeallitasDateValue](7362,I.ID,T.ID) I_Negyedeves_jegyek_megjelenesenek_datuma
 | 
						|
		,[dbo].[fnGetRendszerbeallitasDateValue](7363,I.ID,T.ID) II_Negyedeves_jegyek_megjelenesenek_datuma
 | 
						|
		,[dbo].[fnGetRendszerbeallitasDateValue](7364,I.ID,T.ID) III_Negyedeves_jegyek_megjelenesenek_datuma
 | 
						|
		,[dbo].[fnGetRendszerbeallitasDateValue](7365,I.ID,T.ID) IV_Negyedeves_jegyek_megjelenesenek_datuma
 | 
						|
	INTO #temp
 | 
						|
	FROM T_TANEV T
 | 
						|
	INNER JOIN T_INTEZMENY I ON I.TOROLT = 'F' AND T.C_INTEZMENYID = I.ID
 | 
						|
	WHERE T.C_AKTIV = 'T' AND T.TOROLT = 'F' 
 | 
						|
 | 
						|
	SELECT TOP(5000)
 | 
						|
		 ID
 | 
						|
		,TanuloNev
 | 
						|
		,C_AZONOSITO IntezmenyAzonosito
 | 
						|
		,TanuloId 
 | 
						|
		,TantargyNev
 | 
						|
		,C_ERTEKELESOSZTALYZATID ErtekelesOsztalyzatId
 | 
						|
		,Osztalyzat 
 | 
						|
		,C_ERTEKELESSZAZALEK ErtekelesSzazalek
 | 
						|
		,C_ERTEKELESSZOVEG ErtekelesSzoveg
 | 
						|
		,FeladatkategoriaId
 | 
						|
	FROM
 | 
						|
		(SELECT 
 | 
						|
			 TE.[ID]
 | 
						|
			,T.C_AZONOSITO
 | 
						|
			,T.INTEZMENYID INTEZMENYID
 | 
						|
			,T.TANEVID TANEVID
 | 
						|
			,CASE WHEN T.Felevi_jegyek_megjelenesenek_datuma <= @DATUM THEN 1 ELSE 0 END FelEviJegyekMegjelenjenek
 | 
						|
			--NOTE: Ha végzős, akkor a végzős évvégi jegy megjelenítés dátumát vesszük figyelembe, különben az évvégi jegy megjelenítés dátumát!
 | 
						|
			,CASE WHEN IIF(OCS.C_VEGZOSEVFOLYAM = 'T', T.Ev_vegi_jegyek_megjelenesenek_datuma_vegzos, T.Ev_vegi_jegyek_megjelenesenek_datuma) <= @DATUM THEN 1 ELSE 0 END EvVegiJegyekMegjelenjenek
 | 
						|
			,CASE WHEN T.I_Negyedeves_jegyek_megjelenesenek_datuma <= @DATUM THEN 1 ELSE 0 END INegyedevesJegyekMegjelenjenek
 | 
						|
			,CASE WHEN T.II_Negyedeves_jegyek_megjelenesenek_datuma <= @DATUM THEN 1 ELSE 0 END IINegyedevesJegyekMegjelenjenek
 | 
						|
			,CASE WHEN T.III_Negyedeves_jegyek_megjelenesenek_datuma <= @DATUM THEN 1 ELSE 0 END IIINegyedevesJegyekMegjelenjenek
 | 
						|
            ,CASE WHEN 
 | 
						|
				IIF(OCS.C_VEGZOSEVFOLYAM = 'T',
 | 
						|
					--NOTE: Ha végzős, akkor a végzős évvégi jegy megjelenítés és a IV. negyedéves jegy megjelenítés dátum közül a korábbit vesszük figyelembe!
 | 
						|
					CASE WHEN T.IV_Negyedeves_jegyek_megjelenesenek_datuma < T.Ev_vegi_jegyek_megjelenesenek_datuma_vegzos THEN T.IV_Negyedeves_jegyek_megjelenesenek_datuma ELSE T.Ev_vegi_jegyek_megjelenesenek_datuma_vegzos END, 					
 | 
						|
					--NOTE: Ha nem végzős, akkor a IV. negyedéves jegy megjelenítés dátumát vesszük figyelembe!
 | 
						|
					T.IV_Negyedeves_jegyek_megjelenesenek_datuma
 | 
						|
				) <= @DATUM THEN 1 ELSE 0 END IVNegyedevesJegyekMegjelenjenek
 | 
						|
			,DATEADD(HOUR, T.Kesleltetes, TE.CREATED) KesleltetettDatum
 | 
						|
			,CASE WHEN TE.C_TIPUSID = @EVKOZIJEGY THEN 1 ELSE 0 END EvKoziJegy
 | 
						|
			,CASE WHEN TE.C_TIPUSID = @FELEVIJEGY THEN 1 ELSE 0 END FelEviJegy
 | 
						|
			,CASE WHEN TE.C_TIPUSID = @EVVEGIJEGY THEN 1 ELSE 0 END EvVegiJegy
 | 
						|
			,CASE WHEN TE.C_TIPUSID = @INEGYEDVESJEGY THEN 1 ELSE 0 END INegyedevesJegy
 | 
						|
			,CASE WHEN TE.C_TIPUSID = @IINEGYEDVESJEGY THEN 1 ELSE 0 END IINegyedevesJegy
 | 
						|
			,CASE WHEN TE.C_TIPUSID = @IIINEGYEDVESJEGY THEN 1 ELSE 0 END IIINegyedevesJegy
 | 
						|
			,CASE WHEN TE.C_TIPUSID = @IVNEGYEDVESJEGY THEN 1 ELSE 0 END IVNegyedevesJegy
 | 
						|
			,F.C_NYOMTATASINEV TanuloNev
 | 
						|
			,TANULO.ID TanuloId
 | 
						|
			,TARGY.C_NEV TantargyNev
 | 
						|
			,TE.C_ERTEKELESOSZTALYZATID
 | 
						|
			,TE.C_ERTEKELESSZAZALEK
 | 
						|
			,TE.C_ERTEKELESSZOVEG
 | 
						|
			,TE.C_ERTEKELESSZOVEGROVIDNEV
 | 
						|
			,DIB.C_NAME Osztalyzat
 | 
						|
			,OCS.C_FELADATKATEGORIAID FeladatkategoriaId
 | 
						|
		FROM T_TANULOERTEKELES TE
 | 
						|
		INNER JOIN #temp T ON TE.C_TANEVID = T.TANEVID 
 | 
						|
		INNER JOIN T_TANULO TANULO ON TANULO.TOROLT ='F' AND TANULO.ID = TE.C_TANULOID
 | 
						|
		INNER JOIN T_FELHASZNALO F ON F.TOROLT = 'F' AND TANULO.ID = F.ID
 | 
						|
		INNER JOIN T_TANULOCSOPORT TCS ON TCS.TOROLT = 'F' AND TANULO.ID = TCS.C_TANULOID AND
 | 
						|
			TCS.C_BELEPESDATUM <= @DATUM AND (TCS.C_KILEPESDATUM IS NULL OR TCS.C_KILEPESDATUM >= @DATUM)
 | 
						|
		INNER JOIN T_OSZTALY O ON O.TOROLT = 'F' AND TCS.C_OSZTALYCSOPORTID = O.ID
 | 
						|
		INNER JOIN T_OSZTALYCSOPORT OCS ON OCS.TOROLT = 'F' AND OCS.ID = O.ID
 | 
						|
		LEFT JOIN T_TANTARGY TARGY ON TARGY.TOROLT = 'F' AND TARGY.ID = TE.C_TANTARGYID 
 | 
						|
		LEFT JOIN T_DICTIONARYITEMBASE DIB ON DIB.TOROLT = 'F' AND DIB.C_TANEVID = TE.C_TANEVID AND TE.C_ERTEKELESOSZTALYZATID = DIB.ID            
 | 
						|
		WHERE TE.TOROLT = 'F' AND TE.C_ISERTESITESELKULDVE = 'F'
 | 
						|
	) SB
 | 
						|
	WHERE SB.KesleltetettDatum <= @DATUM AND (
 | 
						|
		(EvKoziJegy = 1)
 | 
						|
		OR
 | 
						|
		(FelEviJegy = 1 AND FelEviJegyekMegjelenjenek = 1)
 | 
						|
		OR
 | 
						|
		(EvVegiJegy = 1 AND EvVegiJegyekMegjelenjenek = 1)
 | 
						|
		OR
 | 
						|
		(INegyedevesJegy = 1 AND INegyedevesJegyekMegjelenjenek = 1)
 | 
						|
		OR
 | 
						|
		(IINegyedevesJegy = 1 AND IINegyedevesJegyekMegjelenjenek = 1)
 | 
						|
		OR
 | 
						|
		(IIINegyedevesJegy = 1 AND IIINegyedevesJegyekMegjelenjenek = 1)
 | 
						|
		OR
 | 
						|
		(IVNegyedevesJegy = 1 AND IVNegyedevesJegyekMegjelenjenek = 1))
 | 
						|
 | 
						|
END
 | 
						|
 | 
						|
 | 
						|
GO
 | 
						|
 |