kreta/Kreta.DataAccess.Migrations/DBScripts/Database/dbo/Stored procedures/uspGetOsztalycsoportTanevrendje.sql
2024-03-13 00:33:46 +01:00

51 lines
1.6 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS uspGetOsztalycsoportTanevrendje
GO
CREATE PROCEDURE uspGetOsztalycsoportTanevrendje
@pIntezmenyId int
,@pTanevId int
,@pOsztalyCsoportId int
,@pOsszesCsoportVonatkozokat bit = NULL
,@pDate datetime = NULL
AS
BEGIN
SET NOCOUNT ON;
DECLARE @sql nvarchar(max)
SET @sql = N''
SET @sql += N'
SELECT
ID
,C_HETIREND
,C_DATUM
,C_CSENGETESIRENDID
,C_NAPTIPUSA
,C_HETNAPJA
,C_OSSZESCSOPORTRAVONATKOZIK
,C_ORARENDINAP
FROM T_TANEVRENDJE_OSSZES
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE on T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID = T_TANEVRENDJE_OSSZES.ID
WHERE
T_TANEVRENDJE_OSSZES.TOROLT = ''F''
and T_TANEVRENDJE_OSSZES.C_TANEVID = @pTanevId
and T_TANEVRENDJE_OSSZES.C_INTEZMENYID = @pIntezmenyId
' + IIF(@pOsszesCsoportVonatkozokat IS NULL ,
'and (T_OSZTALYCSOPORT_TANEVRENDJE.C_OSZTALYCSOPORTID = @pOsztalyCsoportId OR T_OSZTALYCSOPORT_TANEVRENDJE.C_OSZTALYCSOPORTID is null)',
IIF(@pOsszesCsoportVonatkozokat = 0,
'and T_OSZTALYCSOPORT_TANEVRENDJE.C_OSZTALYCSOPORTID = @pOsztalyCsoportId ',
'and T_OSZTALYCSOPORT_TANEVRENDJE.C_OSZTALYCSOPORTID is null')) + '
'+IIF(@pDate IS NOT NULL,'and T_TANEVRENDJE_OSSZES.C_DATUM = @pDate', '')
EXEC sp_executesql @sql, N'
@pIntezmenyId int
,@pTanevId int
,@pOsztalyCsoportId int
,@pDate datetime = NULL'
,@pIntezmenyId = @pIntezmenyId
,@pTanevId = @pTanevId
,@pOsztalyCsoportId = @pOsztalyCsoportId
,@pDate = @pDate
END
GO