
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


DROP PROCEDURE IF EXISTS dbo.sp_GetTanulokFelmentesekHatarozatok
GO

CREATE PROCEDURE dbo.[sp_GetTanulokFelmentesekHatarozatok]
	@OsztalyId		INT,
	@TanevId		INT
AS
BEGIN
	SET NOCOUNT ON;
	
	/*Alap adatok*/
  SELECT DISTINCT 
	@OsztalyId					OsztalyId
	,ocs.C_NEV					OSZTALYCSOPORT_NEV
	,ofo.C_NYOMTATASINEV		OSZTFO_NEV
	,i.C_IGAZGATONEVE			INT_IGAZGATO_NEV
	,i.C_NEV					INT_NEV
	,i.C_IRANYITOSZAM			INT_IRSZAM
	,i.C_VAROS					INT_VAROS
	,dbo.fnGetDokumentumIntezmenyCime(@TanevId)	INT_CIM
	,i.C_OMKOD					INT_OMKOD
  FROM T_OSZTALYCSOPORT_OSSZES ocs 
  	INNER JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID AND o.torolt='F'
  	LEFT  JOIN T_FELHASZNALO_OSSZES ofo ON ofo.ID = o.C_OSZTALYFONOKID 
  	INNER JOIN T_INTEZMENYADATOK_OSSZES i on i.C_INTEZMENYID=ocs.C_INTEZMENYID AND i.C_TANEVID = ocs.C_TANEVID AND i.Torolt = 'F'
  WHERE 
	ocs.ID = @OsztalyId

	/*Mentességek*/
		SELECT
			tt.C_NEV				TANTARGY
			,tm.C_MENTESSEGOKA		MENTESSEG_OKA
			,IIF(C_ERTEKELESMENTESITES = 'T', 'Értékelés alóli felmentés,', '') 
			 + IIF(C_ORAMENTESITES = 'T', 'Tanóra látogatása alóli felmentés,', '') 	
			 + IIF(C_SZOVEGESENERTEKELHETO = 'T', 'Szövegesen értékelhető,', '') TIPUSA
			,dbo.fnGetDokumentumDatumFormatum(tm.C_KEZDETE)			Kezdete
			,dbo.fnGetDokumentumDatumFormatum(tm.C_VEGE)			Vege
			,ft.ID					TANULO_ID
			,ft.C_NYOMTATASINEV AS  TANULO_NEV
			,ft.C_NYOMTATASINEV + ' ' + CAST(ft.ID AS NVARCHAR)  GROUPPARAMETER
      ,@OsztalyId AS OsztalyId
      ,ft.C_OKTATASIAZONOSITO AS TanuloOktAzon
		INTO #TanuloMentesseg
		FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@TanevId, @OsztalyId, 'T') Tanulok
			INNER JOIN T_FELHASZNALO_OSSZES ft ON ft.ID = Tanulok.TanuloId AND ft.TOROLT = 'F'
			INNER JOIN T_TANULOMENTESSEG_OSSZES tm ON tm.C_TANULOID = ft.ID AND tm.TOROLT = 'F'
			INNER JOIN T_TANTARGY_OSSZES tt ON tt.ID = tm.C_TANTARGYID AND tt.TOROLT = 'F'
		ORDER BY ft.C_NYOMTATASINEV

		SELECT 
			TANTARGY
			,MENTESSEG_OKA
			,IIF(TIPUSA = '', '', LEFT(TIPUSA, LEN(TIPUSA) - 1)) TIPUSA
			,Kezdete
			,Vege
			,TANULO_ID
			,TANULO_NEV
			,GROUPPARAMETER		
      ,OsztalyId
      ,TanuloOktAzon
		FROM #TanuloMentesseg 
		ORDER BY Kezdete
		
    /* Osztály adatok */
  SELECT
    o.ID AS OsztalyId
    ,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
    ,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
    ,o.C_KEPZESIFORMA AS KepzesiForma
    ,o.C_OSZTALYFONOKID AS OsztalyfonokId
    ,o.C_TANTERVID AS TantervId
    ,o.C_SZAKMACSOPORT AS SzakmaCsoport
    ,o.C_AGAZAT AS Agazat
    ,o.C_SZAKKEPESITES AS Szakkepesites
    ,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
	  ,ocs.C_KERESZTFELEVES	OJCSJKeresztfeleves
	  ,ocs.C_VEGZOSEVFOLYAM	CSJVegzosEvfolyamu
	  ,o.C_TECHNIKAIOSZTALY	OJTechnikaiOsztaly
	  ,o.C_NEMZETISEGI		OJNemzetisegi
	  ,o.C_KETTANNYELVU		OJKettannyelvu
	  ,o.C_NYELVIELOKESZITO	OJNyelviElokeszito
	  ,o.C_LOGOPEDIAI			OJLogopediai
	  ,o.C_SPORT				OJSportOsztaly
	  ,o.C_AJPROGRAM			OJAranyJanosProgram
	  ,o.C_GYOGYPEDAGOGIAI	OJGyogypedagogiai
  FROM T_OSZTALY_OSSZES AS o
    INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
  WHERE o.ID = @OsztalyId

		DROP TABLE #TanuloMentesseg
		
END

GO