Files
DP44/DataPRO_sql/.svn/pristine/da/daf97c08bf381b77363e3d37292dd4814dfe1075.svn-base
2026-04-17 14:55:32 -04:00

212 lines
10 KiB
Plaintext

IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_SensorsAnalogInsert]') AND type in (N'P', N'PC'))
DROP PROCEDURE [dbo].[sp_SensorsAnalogInsert]
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_SensorsAnalogInsert]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'CREATE PROCEDURE [dbo].[sp_SensorsAnalogInsert] AS'
END
GO
ALTER PROCEDURE [dbo].[sp_SensorsAnalogInsert]
@SerialNumber nvarchar(50) = null
,@UserSerialNumber nvarchar(50)
,@Model nvarchar(50)
,@Manufacturer nvarchar(50)
,@Status nvarchar(50)
,@MeasurementUnit nvarchar(50)
,@OffsetToleranceLow float
,@OffsetToleranceHigh float
,@eId nvarchar(50)
,@Capacity float
,@Comment nvarchar(255)
,@BridgeType smallint
,@BridgeLegMode smallint
,@Shunt smallint
,@Invert bit
,@UserValue1 nvarchar(50)
,@UserValue2 nvarchar(50)
,@UserValue3 nvarchar(50)
,@FilterClass nvarchar(50)
,@BridgeResistance float
,@IsoCode nvarchar(50)
,@CheckOffset bit
,@SupportedExcitation nvarchar(50)
,@InitialEU float
,@CalInterval int
,@CalibrationSignal bit
,@InternalShuntResistance float
,@ExternalShuntResistance float
,@UniPolar bit
,@RangeLow float
,@RangeAve float
,@RangeHigh float
,@Created datetime
,@TimesUsed bigint
,@SensorCategory int
,@BypassFilter bit
,@CouplingMode smallint
,@Version int
,@LastModified datetime
,@ModifiedBy nvarchar(50)
,@LocalOnly bit
,@AxisNumber smallint
,@NumberOfAxes smallint
,@UserTags varbinary(max)
,@DoNotUse bit
,@Broken bit
,@new_id int OUTPUT
,@errorNumber int output
,@errorMessage nvarchar(250) output
AS
BEGIN
set @errorNumber = 0
set @errorMessage = space(0)
if(@SerialNumber is null)
begin
set @errorNumber = 15600
set @errorMessage = 'An invalid parameter or option was specified for procedure'
end
else
begin
if(exists(select SerialNumber from v_SensorSerialNumber where SerialNumber = @SerialNumber))
begin
set @errorMessage = 'The sensor serial mumber - ' + ltrim(rtrim(@SerialNumber)) + ' is not unique';
set @errorNumber = -1
end
else
begin
SET NOCOUNT ON;
INSERT INTO [dbo].[SensorsAnalog]
([SerialNumber]
,[UserSerialNumber]
,[Model]
,[Manufacturer]
,[Status]
,[MeasurementUnit]
,[OffsetToleranceLow]
,[OffsetToleranceHigh]
,[eId]
,[Capacity]
,[Comment]
,[BridgeType]
,[BridgeLegMode]
,[Shunt]
,[Invert]
,[UserValue1]
,[UserValue2]
,[UserValue3]
,[FilterClass]
,[BridgeResistance]
,[IsoCode]
,[CheckOffset]
,[SupportedExcitation]
,[InitialEU]
,[CalInterval]
,[CalibrationSignal]
,[InternalShuntResistance]
,[ExternalShuntResistance]
,[UniPolar]
,[RangeLow]
,[RangeAve]
,[RangeHigh]
,[Created]
,[TimesUsed]
,[SensorCategory]
,[BypassFilter]
,[CouplingMode]
,[Version]
,[LastModified]
,[ModifiedBy]
,[LocalOnly]
,[AxisNumber]
,[NumberOfAxes]
,[UserTags]
,[DoNotUse]
,[Broken])
VALUES
( @SerialNumber
,@UserSerialNumber
,@Model
,@Manufacturer
,@Status
,@MeasurementUnit
,@OffsetToleranceLow
,@OffsetToleranceHigh
,@eId
,@Capacity
,@Comment
,@BridgeType
,@BridgeLegMode
,@Shunt
,@Invert
,@UserValue1
,@UserValue2
,@UserValue3
,@FilterClass
,@BridgeResistance
,@IsoCode
,@CheckOffset
,@SupportedExcitation
,@InitialEU
,@CalInterval
,@CalibrationSignal
,@InternalShuntResistance
,@ExternalShuntResistance
,@UniPolar
,@RangeLow
,@RangeAve
,@RangeHigh
,@Created
,@TimesUsed
,@SensorCategory
,@BypassFilter
,@CouplingMode
,@Version
,@LastModified
,@ModifiedBy
,@LocalOnly
,@AxisNumber
,@NumberOfAxes
,@UserTags
,@DoNotUse
,@Broken)
set @new_id = scope_identity()
exec dbo.sp_SensorInsert @new_id, 0 /* see table dbo.SensorsType */
end
end
END
GO