SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF OBJECT_ID('[sp_GetErtekelesReszletek]') IS NOT NULL BEGIN DROP PROCEDURE [sp_GetErtekelesReszletek] END GO -- ============================================= -- Description: -- ============================================= CREATE PROCEDURE [sp_GetErtekelesReszletek] @pIntezmenyId INT, @pTanevId INT, @pTanuloId INT, @pTantargyId INT, @pToroltElemek CHAR = 'F', @pTanarId INT AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; SELECT TanuloErtekeles.ID ,TanuloErtekeles.C_ERTEKELESDATUM AS ErtekelesDatuma ,TanuloErtekeles.C_ERTEKELESTIPUSA AS ErtekelesTipusa ,TanuloErtekeles.C_ERTEKELESSZOVEG AS ErtekelesSzovege ,TanuloErtekeles.C_OSZTALYZAT AS Osztalyzat ,TanuloErtekeles.C_TANORAID TanoraID ,OsztalyzatErtekeles.C_ERTEKELESMODJA AS ErtekelesModja ,OsztalyzatErtekeles.C_SZAZALEK AS Szazalek ,OsztalyzatErtekeles.C_TEMA AS Tema ,TanuloErtekeles.TOROLT AS Torolt ,TanuloCsoport.C_TANULOID AS TanuloId ,Felhasznalo.C_NYOMTATASINEV AS Ertekelo ,CASE WHEN TanuloErtekeles.CREATOR = @pTanarId THEN 'T' ELSE 'F' END Modosithato FROM( SELECT DISTINCT [C_TANULOID] FROM [T_TANULOCSOPORT] WHERE [TOROLT] = 'F' AND [C_TANULOID] = @pTanuloId AND [C_BELEPESDATUM] < GETDATE() AND ([C_KILEPESDATUM] IS NULL OR [C_KILEPESDATUM] >= GETDATE()) AND [C_INTEZMENYID] = @pIntezmenyId AND [C_TANEVID] = @pTanevId ) AS TanuloCsoport INNER JOIN ( SELECT [ID] ,[C_ERTEKELESDATUM] ,[C_ERTEKELESTIPUSA] ,[C_ERTEKELESSZOVEG] ,[C_OSZTALYZAT] ,[C_TANULOID] ,[C_ERTEKELOID] ,[C_TANORAID] ,[TOROLT] ,[CREATOR] FROM [T_TANULOERTEKELES_OSSZES] WHERE [C_TANTARGYID] = @pTantargyId --Ha a törölt flag True, a törölt elemeket is visszaadjuk AND [TOROLT] = IIF(@pToroltElemek = 'T', [TOROLT], 'F') AND [C_INTEZMENYID] = @pIntezmenyId AND [C_TANEVID] = @pTanevId ) AS TanuloErtekeles ON TanuloCsoport.C_TANULOID = TanuloErtekeles.C_TANULOID INNER JOIN ( SELECT [ID] ,[C_ERTEKELESMODJA] ,[C_SZAZALEK] ,[C_TEMA] ,[TOROLT] FROM [T_OSZTALYZATERTEKELES_OSSZES] WHERE --Ha a törölt flag True, a törölt elemeket is visszaadjuk [TOROLT] = IIF(@pToroltElemek = 'T', [TOROLT], 'F') AND [C_ALINTEZMENYID] = @pIntezmenyId AND [C_ALTANEVID] = @pTanevId ) AS OsztalyzatErtekeles ON OsztalyzatErtekeles.ID = TanuloErtekeles.ID INNER JOIN ( SELECT [ID] ,[C_NYOMTATASINEV] FROM [T_FELHASZNALO] WHERE [TOROLT] = 'F' AND [C_INTEZMENYID] = @pIntezmenyId AND [C_TANEVID] = @pTanevId ) AS Felhasznalo ON Felhasznalo.ID = TanuloErtekeles.C_ERTEKELOID END