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