Files
DP44/DataPRO_sql/dbo.sp_TestSetupDASSettingsUpdateInsert.StoredProcedure.sql

122 lines
6.0 KiB
MySQL
Raw Permalink Normal View History

2026-04-17 14:55:32 -04:00
<EFBFBD><EFBFBD>IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_TestSetupDASSettingsUpdateInsert]') AND type in (N'P', N'PC'))
DROP PROCEDURE [dbo].[sp_TestSetupDASSettingsUpdateInsert]
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_TestSetupDASSettingsUpdateInsert]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].[sp_TestSetupDASSettingsUpdateInsert] AS'
END
GO
ALTER PROCEDURE [dbo].[sp_TestSetupDASSettingsUpdateInsert]
@DASId int = 0
,@DASSerialNumber nvarchar(50)
,@TestSetupId int = 0
,@TestSetupName nvarchar(50)
,@TargetSampleRate float
,@ExcitationWarmupTimeMS int
,@AAFilterRate float
,@PreTriggerSeconds float
,@PostTriggerSeconds float
,@StatusLineCheck bit
,@BatteryCheck bit
,@InputVoltageMin float
,@InputVoltageMax float
,@BatteryVoltageMin float
,@BatteryVoltageMax float
,@LocalOnly bit
,@new_id int output
,@errorNumber int output
,@errorMessage nvarchar(250) output
AS
BEGIN
set @errorNumber = 0; set @errorMessage = space(0); set @new_id = 0;
begin try
if(@DASId=0)
begin
set @DASId = dbo.foo_IdGetDAS(@DASSerialNumber)
end
if(@TestSetupId=0)
begin
set @TestSetupId = dbo.foo_IdGetTestSetup(@TestSetupName)
end
if(exists(select [SettingId] from [dbo].[TestSetupDASSettings] where DASId = @DASId and TestSetupId = @TestSetupId))
begin
set @new_id = @DASId
exec dbo.sp_TestSetupDASSettingsUpdate
@DASId
,@DASSerialNumber
,@TestSetupId
,@TestSetupName
,@TargetSampleRate
,@ExcitationWarmupTimeMS
,@AAFilterRate
,@PreTriggerSeconds
,@PostTriggerSeconds
,@StatusLineCheck
,@BatteryCheck
,@InputVoltageMin
,@InputVoltageMax
,@BatteryVoltageMin
,@BatteryVoltageMax
,@LocalOnly
,@errorNumber output
,@errorMessage output
end
else
begin
exec dbo.sp_TestSetupDASSettingsInsert
@DASId
,@DASSerialNumber
,@TestSetupId
,@TestSetupName
,@TargetSampleRate
,@ExcitationWarmupTimeMS
,@AAFilterRate
,@PreTriggerSeconds
,@PostTriggerSeconds
,@StatusLineCheck
,@BatteryCheck
,@InputVoltageMin
,@InputVoltageMax
,@BatteryVoltageMin
,@BatteryVoltageMax
,@LocalOnly
,@new_id
,@errorNumber output
,@errorMessage output
end
end try
begin catch
set @errorNumber = ERROR_NUMBER()
set @errorMessage = ERROR_MESSAGE()
end catch;
END
GO