Files
DP44/DataPRO/Modules/Database/DatabaseMigrationScripts/.svn/pristine/5b/5b8ce2309dde9867701cc86486cda722094a4311.svn-base

95 lines
2.5 KiB
Plaintext
Raw Normal View History

2026-04-17 14:55:32 -04:00
CREATE PROCEDURE [dbo].[sp_SensorCalibrationsInsert_98]
@Id INT = NULL,
@SensorSerialNumber NVARCHAR (50) = NULL,
@SensorType TinyInt = NULL,
@CalibrationDate DATETIME,
@Username NVARCHAR (50),
@LocalOnly BIT,
@NonLinear BIT,
@ModifyDate DATETIME,
@IsProportional BIT,
@RemoveOffset BIT,
@ZeroMethod NVARCHAR (255),
@CertificationDocuments NVARCHAR (2048),
@InitialOffset NVARCHAR (MAX),
@CalibrationRecords NVARCHAR (255),
@SetLatestCalibrationId BIT,
@SensitivityInspection INT = NULL,
@CalibrationNote NVARCHAR (2048),
@UsageCount INT = NULL,
@new_id INT OUTPUT,
@errorNumber INT OUTPUT,
@errorMessage NVARCHAR (255) OUTPUT
AS
BEGIN
SET @errorNumber = 0
SET @errorMessage = space(0)
DECLARE @SensorId AS INT
SET @SensorId = @Id
IF( @Id IS NULL)
BEGIN
SELECT @SensorId = [Id] FROM [dbo].[Sensors] WHERE [SensorType]=@SensorType AND [SerialNumber]=@SensorSerialNumber
END
IF( @SensorId IS NULL)
BEGIN
SET @errorNumber=1
SET @errorMessage='Sensor not found'
END
ELSE
BEGIN
DECLARE @CalibrationTypeId AS INT
SET @CalibrationTypeId = [dbo].[foo_IdGetCalibrationType](@NonLinear, @CalibrationRecords)
INSERT INTO [dbo].[SensorCalibrations] (
[SensorId],
[CalibrationDate],
[Username],
[LocalOnly],
[NonLinear],
[CalibrationTypeId],
[CalibrationRecords],
[ModifyDate],
[IsProportional],
[RemoveOffset],
[ZeroMethod],
[CertificationDocuments],
[InitialOffset],
[SensitivityInspection],
[CalibrationNote],
[UsageCount])
VALUES (
@SensorId,
@CalibrationDate,
@Username,
@LocalOnly,
@NonLinear,
@CalibrationTypeId,
@CalibrationRecords,
@ModifyDate,
@IsProportional,
@RemoveOffset,
@ZeroMethod,
@CertificationDocuments,
@InitialOffset,
@SensitivityInspection,
@CalibrationNote,
@UsageCount)
SET @new_id = SCOPE_IDENTITY()
IF (@SetLatestCalibrationId = 1 )
BEGIN
UPDATE [dbo].[SensorsAnalog] SET [LatestCalibrationId]=@new_id WHERE [SensorId]=@SensorId
END
--IF(@CalibrationRecords != space(0) AND @SensorId !=0 AND @CalibrationTypeId != 0 AND @new_id !=0 )
--BEGIN
-- EXEC [dbo].[sp_SensorCalibrationRecordProsess] @SensorId, @new_id, @CalibrationTypeId, @CalibrationRecords, @errorNumber output, @errorMessage output
--END
IF(@@error!=0)
BEGIN
SET @errorNumber = error_number()
SET @errorMessage = error_message()
END
END
END