USE [DataPRO] GO /****** Object: StoredProcedure [dbo].[sp_ChannelsDelete] Script Date: 4/4/2019 9:06:14 AM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[sp_ChannelsDelete] @Id BIGINT = NULL, @GroupId INT = NULL, @DASId INT = NULL, @SensorId INT = NULL, @TestSetupId INT = NULL, @TestSetupName [NVARCHAR] (255) = NULL, @errorNumber INT OUTPUT, @errorMessage NVARCHAR (255) OUTPUT AS BEGIN SET NOCOUNT ON; SET @errorNumber=0 SET @errorMessage='' --IF( @Id IS NULL) --BEGIN -- IF( @GroupId IS NULL) -- BEGIN -- IF( @DASId IS NULL) -- BEGIN -- IF( @SensorId IS NULL) -- BEGIN -- IF( @TestSetupId IS NULL) -- BEGIN -- IF NULLIF(@TestSetupName, '') IS NULL -- BEGIN -- DELETE FROM Channels -- END -- ELSE -- BEGIN -- DELETE A FROM [dbo].[Channels] AS A inner join [dbo].Groups AS B ON A.GroupId=B.Id INNER JOIN [dbo].TestSetupGroups AS C ON B.Id=C.GroupId INNER JOIN [dbo].TestSetups AS D on C.TestSetupId=D.TestSetupId WHERE D.TestSetupName=@TestSetupName -- END -- END -- ELSE -- BEGIN -- DELETE A FROM [dbo].[Channels] AS A INNER JOIN [dbo].Groups as B ON A.GroupId=B.Id INNER JOIN [dbo].TestSetupGroups AS C on B.Id=C.GroupId WHERE C.TestSetupId=@TestSetupId -- END -- END -- ELSE -- BEGIN -- DELETE FROM [dbo].[Channels] WHERE [SensorId]=@SensorId -- END -- END -- ELSE -- BEGIN -- DELETE FROM [dbo].[Channels] WHERE [DASId]=@DASId -- END -- END -- ELSE -- BEGIN -- DELETE FROM [dbo].[Channels] WHERE [GroupId]=@GroupId -- END --END --ELSE --BEGIN exec sp_GroupChannelSettingsDelete @Id, NULL -- Remove all settings ,@errorNumber output, @errorMessage output IF(@@error != 0) BEGIN SET @errorNumber = error_number() SET @errorMessage = error_message() END ELSE BEGIN DELETE FROM [dbo].[Channels] WHERE [Id]=@Id END --END IF(@@error != 0) BEGIN SET @errorNumber = error_number() SET @errorMessage = error_message() END END