85 lines
3.5 KiB
Transact-SQL
85 lines
3.5 KiB
Transact-SQL
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_TestSetupsMarkIncomplete]') AND type in (N'P', N'PC'))
|
||
DROP PROCEDURE [dbo].[sp_TestSetupsMarkIncomplete]
|
||
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_TestSetupsMarkIncomplete]') AND type in (N'P', N'PC'))
|
||
BEGIN
|
||
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].[sp_TestSetupsMarkIncomplete] AS'
|
||
END
|
||
GO
|
||
|
||
ALTER PROCEDURE [dbo].[sp_TestSetupsMarkIncomplete]
|
||
@SensorId int = null
|
||
, @SensorSerialNumber varchar(50) = null
|
||
, @Message varchar(255) = null
|
||
, @TestSetupId int = null
|
||
, @TestSetupName varchar(50) = null
|
||
, @errorNumber int output
|
||
, @errorMessage nvarchar(250) output
|
||
AS
|
||
BEGIN
|
||
set @errorNumber = 0
|
||
set @errorMessage = space(0)
|
||
|
||
begin try
|
||
if(@SensorSerialNumber is null)
|
||
begin
|
||
set @TestSetupId = [dbo].[foo_IdGetTestSetup](@TestSetupName)
|
||
|
||
update TestSetups SET Dirty=1, Complete=0 , ErrorMessage = isnull(@Message, ErrorMessage) where @TestSetupName is null or TestSetupId = @TestSetupId
|
||
end
|
||
else
|
||
begin
|
||
|
||
if(@SensorId is null)
|
||
begin
|
||
set @SensorId = [dbo].[foo_IdGetSensor](@SensorSerialNumber)
|
||
end
|
||
|
||
update TestSetups
|
||
set
|
||
Dirty = 1
|
||
, Complete = 0
|
||
, ErrorMessage = isnull(@Message, ErrorMessage)
|
||
from TestObjectSensors s inner join TestSetupObjects t ON s.TestObjectId = t.TestObjectId
|
||
inner join TestSetups ts on ts.TestSetupId = t.TestSetupId WHERE s.SensorId = @SensorId
|
||
end
|
||
end try
|
||
begin catch
|
||
set @errorMessage = error_message()
|
||
set @errorNumber = error_number()
|
||
end catch
|
||
END
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
GO
|