IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_CalculatedChannelsGet]') AND type in (N'P', N'PC')) DROP PROCEDURE [dbo].[sp_CalculatedChannelsGet] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_CalculatedChannelsGet]') AND type in (N'P', N'PC')) BEGIN EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].[sp_CalculatedChannelsGet] AS' END GO ALTER PROCEDURE [dbo].[sp_CalculatedChannelsGet] @CalculatedChannelsId int = null ,@TestSetupName varchar(50) = null AS BEGIN SET NOCOUNT ON; SELECT c.[Id] ,c.[Operation] ,c.[CalculatedChannelValueCode] ,c.[InputChannelIds] ,c.[CFCForInputChannels] ,c.[CFCForOutput] ,t.[TestSetupName] ,c.[CCName] FROM [dbo].[CalculatedChannels] c inner join [dbo].[TestSetups] t on t.TestSetupId = c.TestSetupId where (@CalculatedChannelsId is null or c.Id = @CalculatedChannelsId) AND (@TestSetupName is null or t.TestSetupName = @TestSetupName) END GO