kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20190116145748_OM_2010/uspGetTanarTanitottTanuloi.sql
2024-03-13 00:33:46 +01:00

60 lines
No EOL
2.1 KiB
Transact-SQL

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 = (SELECT C_DEFAULTFELADATKATEGORIAID FROM T_TANEV WHERE ID = @pTanevId)
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