DROP PROCEDURE IF EXISTS uspGetTanarTanitottTanuloi GO CREATE PROCEDURE uspGetTanarTanitottTanuloi @pTanarId int ,@pFoglalkozasId int = NULL ,@pFoglalkozasTipusId int = NULL ,@pTanevId int ,@pIntezmenyId int AS BEGIN DECLARE @sql nvarchar(max) ,@sqlWhere nvarchar(max) ,@defaultFeladatKategoriaId int SET @defaultFeladatKategoriaId = 7553 --alapképzés SET @sql = N' SELECT fh.ID ,fh.C_NYOMTATASINEV AS TanuloNev ,IIF(fh.C_NEVSORREND = ''T'', -- fh.C_UTONEV + '' '' + fh.C_VEZETEKNEV, -- fh.C_VEZETEKNEV + '' '' + fh.C_UTONEV) AS TanuloNevElotagNelkul ,OCS.C_NEV AS FoglalkozasNev ,f.C_FOGLALKOZASTIPUSA AS Tipus ,f.C_TANTARGYID AS TantargyId ,tgy.C_NEV AS TantargyNev FROM T_FOGLALKOZAS_OSSZES f INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON f.C_OSZTALYCSOPORTID = ocs.ID AND OCS.C_FELADATKATEGORIAID = @defaultFeladatKategoriaId AND ocs.TOROLT = ''F'' INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND tcs.TOROLT = ''F'' INNER JOIN T_FELHASZNALO_OSSZES fh ON tcs.C_TANULOID = fh.ID AND fh.TOROLT = ''F'' INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ID = f.C_TANTARGYID AND tgy.TOROLT = ''F'' WHERE f.C_TANARID = @pTanarId AND f.TOROLT = ''F'' AND tcs.C_BELEPESDATUM < GETDATE() AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= GETDATE()) ' + IIF(@pFoglalkozasId IS NOT NULL, 'AND f.ID = @pFoglalkozasId', '') + ' ' + IIF(@pFoglalkozasTipusId IS NOT NULL, 'AND f.C_FOGLALKOZASTIPUSA = @pFoglalkozasTipusId', '') + ' AND f.C_TANEVID = @pTanevId AND f.C_INTEZMENYID = @pIntezmenyId ' EXEC sp_executesql @sql, N' @pTanarId int ,@pFoglalkozasId int ,@pFoglalkozasTipusId int ,@pTanevId int ,@pIntezmenyId int ,@defaultFeladatKategoriaId int' ,@pTanarId = @pTanarId ,@pFoglalkozasId = @pFoglalkozasId ,@pFoglalkozasTipusId = @pFoglalkozasTipusId ,@pTanevId = @pTanevId ,@pIntezmenyId = @pIntezmenyId ,@defaultFeladatKategoriaId = @defaultFeladatKategoriaId END GO