Files
DP44/DataPRO/Modules/Database/DatabaseMigrationScripts/.svn/pristine/21/2121e976a35b86ea7c533aba9e3fe217c87b7dac.svn-base
2026-04-17 14:55:32 -04:00

48 lines
2.7 KiB
Plaintext

CREATE PROCEDURE [dbo].[sp_SensorTestHistoryUpdateInsert]
@SensorTestHistoryId bigint=NULL,
@TestHistoryId bigint,
@SensorId int = NULL,
@SerialNumber nvarchar(MAX),
@Capacity float=NULL,
@Range float=NULL,
@CalibrationDate datetime=NULL,
@HardwareChannelName nvarchar(MAX)=NULL,
@ISOChannelName nvarchar(MAX)=NULL,
@ISOCode nvarchar(50)=NULL,
@UserChannelName nvarchar(MAX)=NULL,
@UserCode nvarchar(50)=NULL,
@Sensitivity nvarchar(MAX)=NULL,
@FilterClass nvarchar(50)=NULL,
@IsProportional bit=NULL,
@LinearizationFormula nvarchar(MAX)=NULL,
@EID nvarchar(50)=NULL,
@MeasuredExcitation decimal(18,0)=NULL,
@MeasurementUnit nvarchar(MAX)=NULL,
@SamplesPerSecond int=NULL,
@AAF int=NULL,
@new_id int output,
@errorNumber int output,
@errorMessage nvarchar(250) output
AS
BEGIN
set @errorNumber = 0;
set @errorMessage = space(0);
begin try
IF @SensorTestHistoryId is NOT NULL
BEGIN
UPDATE [dbo].[SensorTestHistory] SET [TestHistoryId]=@TestHistoryId,[SensorId]=@SensorId,[SerialNumber]=@SerialNumber,[Capacity]=@Capacity,[Range]=@Range,[CalibrationDate]=@CalibrationDate,[HardwareChannelName]=@HardwareChannelName,[ISOChannelName]=@ISOChannelName,[ISOCode]=@ISOCode,[UserChannelName]=@UserChannelName,[UserCode]=@UserCode,[Sensitivity]=@Sensitivity,[FilterClass]=@FilterClass,[IsProportional]=@IsProportional,[LinearizationFormula]=@LinearizationFormula,[EID]=@EID,[MeasuredExcitation]=@MeasuredExcitation,[MeasurementUnit]=@MeasurementUnit,[SamplesPerSecond]=@SamplesPerSecond,[AAF]=@AAF WHERE [SensorTestHistoryId]=@SensorTestHistoryId
SET @new_id=@SensorTestHistoryId
END
ELSE
BEGIN
INSERT INTO [dbo].[SensorTestHistory] ([TestHistoryId],[SensorId],[SerialNumber],[Capacity],[Range],[CalibrationDate],[HardwareChannelName],[ISOChannelName],[ISOCode],[UserChannelName],[UserCode],[Sensitivity],[FilterClass],[IsProportional],[LinearizationFormula],[EID],[MeasuredExcitation],[MeasurementUnit],[SamplesPerSecond],[AAF])
VALUES
(@TestHistoryId,@SensorId,@SerialNumber,@Capacity,@Range,@CalibrationDate,@HardwareChannelName,@ISOChannelName,@ISOCode,@UserChannelName,@UserCode,@Sensitivity,@FilterClass,@IsProportional,@LinearizationFormula,@EID,@MeasuredExcitation,@MeasurementUnit,@SamplesPerSecond,@AAF)
set @new_id = scope_identity();
END
end try
begin catch
set @errorMessage = error_message()
set @errorNumber = error_number()
end catch;
END