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

107 lines
4.7 KiB
MySQL
Raw 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_DASChannelsUpdateInsert]') AND type in (N'P', N'PC'))
DROP PROCEDURE [dbo].[sp_DASChannelsUpdateInsert]
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_DASChannelsUpdateInsert]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].[sp_DASChannelsUpdateInsert] AS'
END
GO
ALTER PROCEDURE [dbo].[sp_DASChannelsUpdateInsert]
@HardwareId nvarchar(50)
,@ChannelIdx int
,@SupportedBridges int
,@SupportedExcitations int
,@DASDisplayOrder int
,@LocalOnly bit
,@SupportedDigitalInputModes int
,@SupportedSquibFireModes int
,@SupportedDigitalOutputModes int
,@ModuleSerialNumber nvarchar(16)
,@ModuleArrayIndex int
,@new_id int OUTPUT
,@errorNumber int output
,@errorMessage nvarchar(250) output
AS
BEGIN
SET NOCOUNT ON;
set @errorNumber = 0
set @errorMessage = space(0)
declare @DASId int
set @DASId = dbo.foo_IdGetDAS(@HardwareId)
set @new_id = dbo.foo_IdGetDASChannel(@DASId, @ChannelIdx)
if(exists(select * from [dbo].[DASChannels] where DASChannelId = @new_id))
begin
exec dbo.sp_DASChannelsUpdate @DASId
,@ChannelIdx
,@SupportedBridges
,@SupportedExcitations
,@DASDisplayOrder
,@LocalOnly
,@SupportedDigitalInputModes
,@SupportedSquibFireModes
,@SupportedDigitalOutputModes
,@ModuleSerialNumber
,@ModuleArrayIndex
,@errorNumber output
,@errorMessage output
end
else
begin
exec dbo.sp_DASChannelsInsert @DASId
,@ChannelIdx
,@SupportedBridges
,@SupportedExcitations
,@DASDisplayOrder
,@LocalOnly
,@SupportedDigitalInputModes
,@SupportedSquibFireModes
,@SupportedDigitalOutputModes
,@ModuleSerialNumber
,@ModuleArrayIndex
,@new_id output
,@errorNumber output
,@errorMessage output
set @new_id = SCOPE_IDENTITY();
end
END
GO