102 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			102 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
SET ANSI_NULLS ON
 | 
						|
GO
 | 
						|
SET QUOTED_IDENTIFIER ON
 | 
						|
GO
 | 
						|
 | 
						|
IF OBJECT_ID('[dbo].[sp_GetFelhasznaloOsztalyCsoportTantargyakErtekelesekhez]') IS NOT NULL 
 | 
						|
BEGIN
 | 
						|
  DROP PROCEDURE [dbo].[sp_GetFelhasznaloOsztalyCsoportTantargyakErtekelesekhez]
 | 
						|
END  
 | 
						|
GO
 | 
						|
 | 
						|
-- =============================================
 | 
						|
-- Description:	<Felhasználóhoz köthető osztály/csoport->tantárgy az értékelések szűréséhez>
 | 
						|
-- =============================================
 | 
						|
 | 
						|
CREATE PROCEDURE [dbo].[sp_GetFelhasznaloOsztalyCsoportTantargyakErtekelesekhez]
 | 
						|
	@pTanarID INT,
 | 
						|
	@pTanevID INT
 | 
						|
AS
 | 
						|
BEGIN
 | 
						|
 | 
						|
	-- SET NOCOUNT ON added to prevent extra result sets from
 | 
						|
	-- interfering with SELECT statements.
 | 
						|
	SET NOCOUNT ON;
 | 
						|
	
 | 
						|
  SELECT 
 | 
						|
    ID,
 | 
						|
    Nev,
 | 
						|
    ''	Tipus
 | 
						|
  FROM
 | 
						|
  (
 | 
						|
	  SELECT DISTINCT
 | 
						|
		  CONVERT(VARCHAR(10), osztalyCsoport.ID) + '¤' + CONVERT(VARCHAR(10), tantargy.ID)   ID,
 | 
						|
		  osztalyCsoport.C_NEV + ' - ' + 	tantargy.C_Nev	                                  Nev,
 | 
						|
		  'TTF'                                  					                          Tipus,
 | 
						|
		  evfolyamTipus.C_ORDER                                                               EvfolyamTipusOrder
 | 
						|
	  FROM 
 | 
						|
		  T_FOGLALKOZAS_OSSZES foglalkozas
 | 
						|
		  LEFT JOIN T_OSZTALYCSOPORT_OSSZES osztalyCsoport
 | 
						|
			  ON osztalyCsoport.ID = foglalkozas.C_OSZTALYCSOPORTID
 | 
						|
		  LEFT JOIN T_TANTARGY_OSSZES tantargy
 | 
						|
			  ON tantargy.ID = foglalkozas.C_TANTARGYID
 | 
						|
		  LEFT JOIN T_FOGLALKOZASOK_TANAROK foglalkozasokTanarok
 | 
						|
			  ON foglalkozasokTanarok.C_FOGLALKOZASOKID = foglalkozas.ID
 | 
						|
		  LEFT JOIN T_FELHASZNALO_OSSZES felhasznalo
 | 
						|
			  ON felhasznalo.ID = foglalkozasokTanarok.C_TANAROKID
 | 
						|
		  LEFT JOIN T_DICTIONARYITEMBASE_OSSZES evfolyamTipus
 | 
						|
			  ON osztalyCsoport.C_EVFOLYAMTIPUSA = evfolyamTipus.ID AND osztalyCsoport.C_TANEVID = evfolyamTipus.C_TANEVID
 | 
						|
	  WHERE 
 | 
						|
		  foglalkozas.TOROLT = 'F' AND 
 | 
						|
		  foglalkozas.C_TANEVID = @pTanevID AND 
 | 
						|
		  foglalkozasokTanarok.C_TANAROKID = @pTanarID
 | 
						|
 | 
						|
    UNION
 | 
						|
 | 
						|
	  SELECT DISTINCT
 | 
						|
		  CONVERT(VARCHAR(10), osztalyCsoport.ID) + '¤' + CONVERT(VARCHAR(10), tantargy.ID)   ID,
 | 
						|
		  osztalyCsoport.C_NEV + ' - ' + 	tantargy.C_Nev	                                  Nev,
 | 
						|
		  'Saját óra'                            					                          Tipus,
 | 
						|
		  evfolyamTipus.C_ORDER                                                               EvfolyamTipusOrder
 | 
						|
	  FROM 
 | 
						|
		  T_TANITASIORA_OSSZES tanitasiOra
 | 
						|
		  LEFT JOIN T_OSZTALYCSOPORT_OSSZES osztalyCsoport
 | 
						|
			  ON osztalyCsoport.ID = tanitasiOra.C_OSZTALYCSOPORTID
 | 
						|
		  LEFT JOIN T_TANTARGY_OSSZES tantargy
 | 
						|
			  ON tantargy.ID = tanitasiOra.C_TANTARGYID
 | 
						|
		  LEFT JOIN T_DICTIONARYITEMBASE_OSSZES evfolyamTipus
 | 
						|
			  ON osztalyCsoport.C_EVFOLYAMTIPUSA = evfolyamTipus.ID AND osztalyCsoport.C_TANEVID = evfolyamTipus.C_TANEVID
 | 
						|
	  WHERE 
 | 
						|
		  tanitasiOra.TOROLT = 'F' AND 
 | 
						|
		  tanitasiOra.C_TANEVID = @pTanevID AND 
 | 
						|
		  tanitasiOra.C_ORATULAJDONOSID = @pTanarID	
 | 
						|
 | 
						|
    UNION
 | 
						|
 | 
						|
	  SELECT DISTINCT
 | 
						|
		  CONVERT(VARCHAR(10), osztalyCsoport.ID) + '¤' + CONVERT(VARCHAR(10), tantargy.ID)   ID,
 | 
						|
		  osztalyCsoport.C_NEV + ' - ' + 	tantargy.C_Nev	                                  Nev,
 | 
						|
		  'Értékelt óra'                         					                          Tipus,
 | 
						|
		  evfolyamTipus.C_ORDER                                                               EvfolyamTipusOrder
 | 
						|
	  FROM 
 | 
						|
		  T_TANULOERTEKELES_OSSZES ertekeles
 | 
						|
		  LEFT JOIN T_OSZTALYCSOPORT_OSSZES osztalyCsoport
 | 
						|
			  ON osztalyCsoport.ID = ertekeles.C_OSZTALYCSOPORTID
 | 
						|
		  LEFT JOIN T_TANTARGY_OSSZES tantargy
 | 
						|
			  ON tantargy.ID = ertekeles.C_TANTARGYID
 | 
						|
		  LEFT JOIN T_DICTIONARYITEMBASE_OSSZES evfolyamTipus
 | 
						|
			  ON osztalyCsoport.C_EVFOLYAMTIPUSA = evfolyamTipus.ID AND osztalyCsoport.C_TANEVID = evfolyamTipus.C_TANEVID
 | 
						|
	  WHERE 
 | 
						|
		  ertekeles.TOROLT = 'F' AND 
 | 
						|
		  ertekeles.C_TANEVID = @pTanevID AND 
 | 
						|
		  ertekeles.C_ERTEKELOID = @pTanarID	
 | 
						|
    
 | 
						|
    ) innerSelect
 | 
						|
 | 
						|
    GROUP BY 
 | 
						|
      ID, Nev, EvfolyamTipusOrder
 | 
						|
    ORDER BY
 | 
						|
      EvfolyamTipusOrder
 | 
						|
 | 
						|
END
 |