CREATE PROCEDURE [dbo].[sp_SensorsUARTInsert] @SerialNumber NVARCHAR (50), @BaudRate INT, @DataBits INT, @StopBits NVARCHAR (50), @Parity NVARCHAR (50), @FlowControl NVARCHAR (50), @DataFormat NVARCHAR (50), @LastModified DATETIME, @LastModifiedBy NVARCHAR (50), @UserTags VARBINARY (MAX), @Broken BIT, @DoNotUse BIT, @new_id INT OUTPUT, @errorNumber INT OUTPUT, @errorMessage NVARCHAR (255) OUTPUT AS BEGIN SET @errorNumber = 0 SET @errorMessage = space(0) DECLARE @SensorId AS INT DECLARE @SensorType AS TINYINT SELECT @SensorType = [TypeId] FROM [dbo].[SensorsType] WHERE [SensorType]='UART' INSERT INTO [dbo].[Sensors] ([SensorType], [SerialNumber]) VALUES (@SensorType, @SerialNumber) SELECT @SensorId = SCOPE_IDENTITY() INSERT INTO [dbo].[SensorsUART] ([SensorId], [BaudRate], [DataBits], [StopBits], [Parity], [FlowControl], [DataFormat], [LastModified], [LastModifiedBy], [UserTags], [Broken], [DoNotUse]) VALUES (@SensorId, @BaudRate, @DataBits, @StopBits, @Parity, @FlowControl, @DataFormat, @LastModified, @LastModifiedBy, @UserTags, @Broken, @DoNotUse) IF(@@error != 0) BEGIN SET @errorNumber = error_number() SET @errorMessage = error_message() END SET @new_id = @SensorId END