GO
/****** Object:  StoredProcedure [dbo].[sp_GetStatTanuloTantargyiMulasztasTanevbenMegtarthato]    Script Date: 2015.12.28. 10:29:56 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:		Dőrr Tamás
-- Create date: 2015.12.28.
-- Description:	sp_GetStatTanuloTantargyiMulasztasTanevbenMegtarthato
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetStatTanuloTantargyiMulasztasTanevbenMegtarthato]
	@TanevId int
AS
BEGIN
	SET NOCOUNT ON;

     SELECT OSZTALYCSOPORT_NEV, TANULO_NEV, TANTARGY_NEV + ' (%)' as TANTARGY_NEV, CASE WHEN [PERCENT] != '0%' THEN [PERCENT] ELSE NULL END [PERCENT]
	 FROM (
		SELECT 
			OSZTCSOP.C_NEV as OSZTALYCSOPORT_NEV
			,TANULO.TANULONEV as TANULO_NEV
			,TARGY.TARGYNEV as TANTARGY_NEV
			,COUNT(MULASZTAS.ID) as MULASZTOTTSZAM
			,f.C_ORASZAM as OSSZORASZAM
			,cast(cast(((cast(COUNT(MULASZTAS.ID) as decimal) / cast(f.C_ORASZAM as decimal)) * 100) as int) as nvarchar(50)) + '%' as 'PERCENT'
		from T_OSZTALYCSOPORT_OSSZES OSZTCSOP
		join (SELECT C_OSZTALYCSOPORTID OSZTALYCSOPORTID, C_TANULOID TANULOID FROM T_TANULOCSOPORT_OSSZES 
		WHERE TOROLT = 'F' and T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE() and (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM is null or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) TANCSOP ON TANCSOP.OSZTALYCSOPORTID = OSZTCSOP.ID 
		join (SELECT C_NYOMTATASINEV TANULONEV, ID FROM T_FELHASZNALO_OSSZES WHERE TOROLT = 'F') TANULO ON TANULO.ID = TANCSOP.TANULOID 
		join (SELECT C_OSZTALYCSOPORTID OSZTCSOPID, C_TANTARGYID TANTARGYID, ID FROM T_TANITASIORA_OSSZES WHERE TOROLT = 'F') TANORA on TANORA.OSZTCSOPID = OSZTCSOP.ID  
		join (SELECT ID, C_NEV TARGYNEV FROM T_TANTARGY_OSSZES WHERE TOROLT = 'F') TARGY on TARGY.ID = TANORA.TANTARGYID
		join T_FOGLALKOZAS_OSSZES f on f.C_OSZTALYCSOPORTID = OSZTCSOP.ID and f.C_TANTARGYID = TANORA.TANTARGYID
		LEFT JOIN (SELECT ID, C_ORATANULOIID TANULOID, C_TANITASIORAKID TANORAID FROM T_TANULOMULASZTAS_OSSZES WHERE  TOROLT = 'F' AND C_TIPUS = 1500) MULASZTAS 
						ON MULASZTAS.TANULOID = TANULO.ID AND MULASZTAS.TANORAID = TANORA.ID
		where
			OSZTCSOP.TOROLT = 'F'
			and OSZTCSOP.C_TANEVID = @TanevId
		GROUP BY OSZTCSOP.C_NEV, TANULO.TANULONEV, TARGY.TARGYNEV, f.[C_ORASZAM]
		) EREDMENY

END
