USE [DataPRO] GO /****** Object: StoredProcedure [dbo].[sp_TestSetupGroupsGet] Script Date: 1/23/2019 3:40:47 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO /*SELECT A.Id, A.SerialNumber, A.DisplayName, A.Embedded, A.LastModifiedBy, A.LastModified FROM [dbo].Groups AS A INNER JOIN [dbo].TestSetupGroups as B ON A.Id=B.GroupId INNER JOIN [dbo].TestSetups AS C on C.TestSetupId=B.TestSetupId WHERE C.TestSetupName=@TestSetupName*/ ALTER PROCEDURE [dbo].[sp_TestSetupGroupsGet] @GroupId INT = NULL, @TestSetupId INT = NULL, @TestSetupName NVARCHAR (255) = NULL AS BEGIN SET NOCOUNT ON; if( @GroupId IS NULL) BEGIN if( @TestSetupId IS NULL) BEGIN SELECT A.GroupId, A.DisplayOrder, A.Position, A.TestObjectType, A.TestSetupId, B.DisplayName, B.Embedded, B.SerialNumber FROM [dbo].[TestSetupGroups] AS A INNER JOIN [dbo].[Groups] AS B ON A.GroupId=B.Id INNER JOIN [dbo].[TestSetups] AS C ON A.TestSetupId=C.TestSetupId WHERE C.TestSetupName=@TestSetupName END ELSE BEGIN SELECT A.GroupId, A.DisplayOrder, A.Position, A.TestObjectType, A.TestSetupId, B.DisplayName, B.Embedded, B.SerialNumber FROM [dbo].[TestSetupGroups] AS A INNER JOIN [dbo].[Groups] AS B ON A.GroupId=B.Id WHERE A.TestSetupId=@TestSetupId END END ELSE BEGIN if( @TestSetupId IS NULL) BEGIN SELECT A.GroupId, A.DisplayOrder, A.Position, A.TestObjectType, A.TestSetupId, B.DisplayName, B.Embedded, B.SerialNumber FROM [dbo].[TestSetupGroups] AS A INNER JOIN [dbo].[Groups] AS B ON A.GroupId=B.Id WHERE A.GroupId=@GroupId END ELSE BEGIN SELECT A.GroupId, A.DisplayOrder, A.Position, A.TestObjectType, A.TestSetupId, B.DisplayName, B.Embedded, B.SerialNumber FROM [dbo].[TestSetupGroups] AS A INNER JOIN [dbo].[Groups] AS B ON A.GroupId=B.Id WHERE A.TestSetupId=@TestSetupId AND A.GroupId=@GroupId END END END