﻿-- =============================================
-- Description:	<Ellenőrizzuk, hogy a tanulónak van-e már egyszer adható tanuló értékelése, ha nincs akkor true, ha van akkor false>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

DROP PROCEDURE IF EXISTS [dbo].[uspCheckTanuloEgyszerAdhatoTanuloErtekelesValidation]
GO

CREATE PROCEDURE [dbo].[uspCheckTanuloEgyszerAdhatoTanuloErtekelesValidation]
	 @pId		INT
	,@pTipusId	INT
AS	
BEGIN

	-- SET NOCOUNT ON added to prevent extra result sets frominterfering with SELECT statements.
	SET NOCOUNT ON;

	DECLARE @TanuloId					INT
	DECLARE @TantargyId					INT
	DECLARE @TanuloOsztalyEvfolyamId	INT

	SELECT
		 @TanuloId					= TanuloErtekeles.C_TANULOID
		,@TantargyId				= TanuloErtekeles.C_TANTARGYID
		,@TanuloOsztalyEvfolyamId	= OsztalyCsoport.C_EVFOLYAMTIPUSA
	FROM
		T_TANULOERTEKELES_OSSZES TanuloErtekeles
	LEFT JOIN
		T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON
				OsztalyCsoport.ID		= TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
			AND	OsztalyCsoport.TOROLT	= 'F'
	WHERE
		TanuloErtekeles.ID = @pId

	IF EXISTS (
		SELECT 1
		FROM
			T_TANULOERTEKELES_OSSZES TanuloErtekeles
		INNER JOIN T_OSZTALYCSOPORT_OSSZES Osztaly ON
				Osztaly.ID					= TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
			AND	Osztaly.TOROLT				= 'F'
			AND Osztaly.C_EVFOLYAMTIPUSA	= @TanuloOsztalyEvfolyamId
		WHERE
				TanuloErtekeles.TOROLT				= 'F'
			AND TanuloErtekeles.C_TIPUSID			= @pTipusId
			AND TanuloErtekeles.C_TANULOID			= @TanuloId
			AND TanuloErtekeles.ID					!= @pId
			AND (@TantargyId IS NOT NULL AND @TantargyId = TanuloErtekeles.C_TANTARGYID OR
				 @TantargyId IS NULL AND TanuloErtekeles.C_TANTARGYID IS NULL)
	)
        SELECT 1
    ELSE
        SELECT 0

END


GO

