DROP PROCEDURE IF EXISTS uspDeleteEgyediNapOsztalycsoport GO CREATE PROCEDURE uspDeleteEgyediNapOsztalycsoport @pTanevRendjeId INT ,@pOsztalycsoportId INT ,@pIsKapcsolodoCsoportokIs CHAR(1) ,@pModifierId INT AS BEGIN SET NOCOUNT ON DECLARE @napDatuma DATETIME, @osszesOsztalyraVonatkozik CHAR(1); SELECT @napDatuma = C_DATUM, @osszesOsztalyraVonatkozik = C_OSSZESCSOPORTRAVONATKOZIK FROM T_TANEVRENDJE_OSSZES WHERE ID = @pTanevRendjeId DECLARE @sql NVARCHAR(MAX) = ''; SET @sql += N' UPDATE oo SET oo.TOROLT = ''T'' ,LASTCHANGED = GETDATE() ,MODIFIER = @pModifierId FROM T_ORARENDIORA_OSSZES AS oo LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE AS ocstr ON ocstr.C_OSZTALYCSOPORTID = oo.C_OSZTALYCSOPORTID WHERE oo.C_EGYEDINAP = ''T'' AND oo.C_ORAERVENYESSEGKEZDETE = @napDatuma AND oo.C_ORAERVENYESSEGVEGE = @napDatuma AND oo.TOROLT = ''F'' ' IF(@pIsKapcsolodoCsoportokIs = 'T') BEGIN SET @sql += N' AND oo.C_OSZTALYCSOPORTID IN ( SELECT ID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalycsoportId AND TOROLT = ''F'' UNION SELECT ID FROM T_CSOPORT_OSSZES WHERE C_OSZTALYBONTASID = @pOsztalycsoportId AND TOROLT = ''F'') ' END ELSE BEGIN SET @sql += N' AND oo.C_OSZTALYCSOPORTID = @pOsztalycsoportId ' END EXEC sp_executesql @sql, N' @napDatuma datetime ,@pOsztalycsoportId INT ,@pModifierId INT' ,@napDatuma = @napDatuma ,@pOsztalycsoportId = @pOsztalycsoportId ,@pModifierId = @pModifierId END GO