-- ============================================= -- Description: -- ============================================= SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO DROP PROCEDURE IF EXISTS [dbo].[uspGetTanuloErtekelesDataSetByTantargy] GO CREATE PROCEDURE [dbo].[uspGetTanuloErtekelesDataSetByTantargy] @pIntezmenyId INT ,@pTanevId INT ,@pTanarId INT ,@pTantargyId INT ,@pOsztalyCsoportId INT ,@pDatum DATE = NULL AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements. SET NOCOUNT ON; IF @pDatum IS NULL SET @pDatum = CONVERT(DATE, GETDATE()) DECLARE @TanuloOsztalyEvfolyamTipusIdList TABLE( TanuloId INT PRIMARY KEY ,EvfolyamTipusId INT ) INSERT INTO @TanuloOsztalyEvfolyamTipusIdList SELECT TanuloId ,EvfolyamTipusId FROM dbo.fnGetOsztalyCsoportTanuloOsztalyList(@pIntezmenyId, @pTanevId, @pOsztalyCsoportId, @pDatum) SELECT FelhasznaloTanulo.ID TanuloId ,TanuloErtekeles.C_TANTARGYID TantargyId ,FelhasznaloTanulo.C_NYOMTATASINEV TanuloNev ,IIF(FelhasznaloTanulo.C_NEVSORREND = 'T', -- FelhasznaloTanulo.C_UTONEV + ' '+ FelhasznaloTanulo.C_VEZETEKNEV, -- FelhasznaloTanulo.C_VEZETEKNEV + ' ' + FelhasznaloTanulo.C_UTONEV) TanuloNevElotagNelkul ,FelhasznaloTanulo.C_ANYJANEVE AnyjaNeve ,FelhasznaloTanulo.C_SZULETESIDATUM SzuletesiIdo ,OsztalyCsoport.C_NEV OsztalyNev ,TanuloMentesseg.C_ERTEKELESMENTESITES ErtkelesMentesseg ,TanuloMentesseg.C_SZOVEGESENERTEKELHETO SzovegesenErtekelheto ,TanuloErtekeles.ID ID ,TanuloErtekeles.C_DATUM Datum ,TanuloErtekeles.C_TIPUSID TipusId ,FelhasznaloErtekelo.C_NYOMTATASINEV ErtekeloNyomtatasiNev ,IIF(TanuloErtekeles.ID IS NULL, -- NULL, -- CASE -- WHEN TanuloErtekeles.C_ERTEKELOID = @pTanarId -- THEN 'T' -- ELSE 'F' -- END -- ) Modosithato ,TanuloErtekeles.C_ISMAGATARTASSZORGALOM IsMagatartasSzorgalom ,TanuloErtekeles.C_ERTEKELESOSZTALYZATID ErtekelesOsztalyzatId ,TanariAtlagSuly.C_SULY Suly ,TanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg ,TanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV ErtekelesSzovegRovidNev ,TanuloErtekeles.C_ERTEKELESSZAZALEK ErtekelesSzazalek ,TanuloErtekeles.C_ERTEKELESMODID ErtekelesModId ,TanuloErtekeles.C_ERTEKELESTEMA ErtekelesTema FROM T_TANULOCSOPORT_OSSZES TanuloCsoport INNER JOIN T_FELHASZNALO_OSSZES FelhasznaloTanulo ON FelhasznaloTanulo.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID AND FelhasznaloTanulo.C_TANEVID = TanuloCsoport.C_TANEVID AND FelhasznaloTanulo.TOROLT = 'F' AND FelhasznaloTanulo.ID = TanuloCsoport.C_TANULOID LEFT JOIN T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON OsztalyCsoport.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID AND OsztalyCsoport.C_TANEVID = TanuloCsoport.C_TANEVID AND OsztalyCsoport.TOROLT = 'F' AND OsztalyCsoport.ID = TanuloCsoport.C_OSZTALYCSOPORTID LEFT JOIN T_TANULOERTEKELES_OSSZES TanuloErtekeles ON TanuloErtekeles.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID AND TanuloErtekeles.C_TANEVID = TanuloCsoport.C_TANEVID AND TanuloErtekeles.TOROLT = 'F' AND TanuloErtekeles.C_TANTARGYID = @pTantargyId AND TanuloErtekeles.C_TANULOID = TanuloCsoport.C_TANULOID LEFT JOIN T_OSZTALYCSOPORT_OSSZES Osztaly ON Osztaly.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID AND Osztaly.C_TANEVID = TanuloErtekeles.C_TANEVID AND Osztaly.TOROLT = 'F' AND Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID AND Osztaly.C_EVFOLYAMTIPUSA = (SELECT EvfolyamTipusId FROM @TanuloOsztalyEvfolyamTipusIdList WHERE TanuloId = TanuloErtekeles.C_TANULOID) LEFT JOIN T_FELHASZNALO_OSSZES FelhasznaloErtekelo ON FelhasznaloErtekelo.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID AND FelhasznaloErtekelo.C_TANEVID = TanuloCsoport.C_TANEVID AND FelhasznaloErtekelo.TOROLT = 'F' AND FelhasznaloErtekelo.ID = TanuloErtekeles.C_ERTEKELOID LEFT JOIN T_TANARIATLAGSULY_OSSZES TanariAtlagSuly ON TanariAtlagSuly.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID AND TanariAtlagSuly.C_TANEVID = TanuloCsoport.C_TANEVID AND TanariAtlagSuly.TOROLT = 'F' AND TanariAtlagSuly.C_ERTEKELESMODID = TanuloErtekeles.C_ERTEKELESMODID AND TanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'F' AND TanuloErtekeles.C_ERTEKELESOSZTALYZATID IS NOT NULL LEFT JOIN T_TANULOMENTESSEG_OSSZES TanuloMentesseg ON TanuloMentesseg.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID AND TanuloMentesseg.C_TANEVID = TanuloCsoport.C_TANEVID AND TanuloMentesseg.TOROLT = 'F' AND TanuloMentesseg.C_TANULOID = FelhasznaloTanulo.ID AND TanuloMentesseg.C_TANTARGYID = @pTantargyId AND (TanuloMentesseg.C_KEZDETE IS NULL OR TanuloMentesseg.C_KEZDETE <= @pDatum) AND (TanuloMentesseg.C_VEGE IS NULL OR TanuloMentesseg.C_VEGE >= @pDatum) WHERE TanuloCsoport.C_INTEZMENYID = @pIntezmenyId AND TanuloCsoport.C_TANEVID = @pTanevId AND TanuloCsoport.TOROLT = 'F' AND TanuloCsoport.C_OSZTALYCSOPORTID = @pOsztalyCsoportId AND TanuloCsoport.C_BELEPESDATUM <= @pDatum AND (TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM >= @pDatum) END GO