init
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
CREATE PROCEDURE [dbo].[sp_AnalogDiagnosticsUpdateInsert]
|
||||
@Id BIGINT NULL,
|
||||
@DiagnosticRunId BIGINT,
|
||||
@Excitation Float NULL,
|
||||
@ExcitationStatus SmallInt,
|
||||
@Offset Float NULL,
|
||||
@OffsetStatus SmallInt,
|
||||
@ActualRange Float NULL,
|
||||
@ActualRangeStatus SmallInt,
|
||||
@Shunt Float NULL,
|
||||
@ShuntStatus SmallInt,
|
||||
@Noise Float NULL,
|
||||
@NoiseStatus SmallInt,
|
||||
@SensorId Int NULL,
|
||||
@SensorSerialNumber NVARCHAR(255),
|
||||
@DasId Int NULL,
|
||||
@DASSerialNumber NVARCHAR(50),
|
||||
@DASChannelIdx Int,
|
||||
@UserCode NVARCHAR(50),
|
||||
@UserChannelName NVARCHAR(50),
|
||||
@IsoCode NVARCHAR(50),
|
||||
@IsoChannelName NVARCHAR(50),
|
||||
@ScaleFactorMV Float,
|
||||
@CalibrationRecordId INT NULL,
|
||||
@CalibrationRecord NVARCHAR(MAX),
|
||||
@Timestamp DateTime,
|
||||
@errorNumber INT OUTPUT,
|
||||
@errorMessage NVARCHAR (255) OUTPUT,
|
||||
@new_id BIGINT OUTPUT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
set @errorNumber = 0; set @errorMessage = space(0);
|
||||
|
||||
IF NOT EXISTS(SELECT [Id] FROM [dbo].[DiagnosticRuns] WHERE [Id]=@DiagnosticRunId)
|
||||
BEGIN
|
||||
SET @ErrorNumber = 100;
|
||||
SET @ErrorMessage ='Invalid Diagnostic Id';
|
||||
END
|
||||
ELSE if(exists(select Id from [dbo].[DiagnosticRuns] where Id = @Id))
|
||||
begin
|
||||
set @new_id = @Id;
|
||||
UPDATE [dbo].[AnalogDiagnostics] SET [Shunt]=@Shunt, [ShuntStatus]=@ShuntStatus, [Excitation]=@Excitation, [ExcitationStatus]=@ExcitationStatus, [Offset]=@Offset, [OffsetStatus]=@OffsetStatus, [ActualRange]=@ActualRange, [ActualRangeStatus]=@ActualRangeStatus,[Noise]=@Noise,[NoiseStatus]=@NoiseStatus,[SensorId]=@SensorId,[SensorSerialNumber]=@SensorSerialNumber, [DASId]=@DasId,[DASSerialNumber]=@DASSerialNumber, [DASChannelIdx]=@DASChannelIdx, [UserCode]=@UserCode, [UserChannelName]= @UserChannelName, [IsoCode]=@IsoCode, [IsoChannelName]=@IsoChannelName, [ScaleFactor]=@ScaleFactorMV, [CalibrationRecordId]=@CalibrationRecordId, [CalibrationRecordXML]=@CalibrationRecord, [Timestamp]=@Timestamp;
|
||||
end
|
||||
else
|
||||
begin
|
||||
INSERT INTO [dbo].[AnalogDiagnostics] ([Shunt], [ShuntStatus], [DiagnosticRunId], [Excitation], [ExcitationStatus], [Offset], [OffsetStatus], [ActualRange], [ActualRangeStatus], [Noise], [NoiseStatus], [SensorId], [SensorSerialNumber], [DASId], [DASSerialNumber], [DASChannelIdx], [UserCode], [UserChannelName], [IsoCode], [IsoChannelName], [ScaleFactor], [CalibrationRecordId], [CalibrationRecordXML], [Timestamp]) VALUES (@Shunt, @ShuntStatus, @DiagnosticRunId, @Excitation, @ExcitationStatus,@Offset,@OffsetStatus,@ActualRange,@ActualRangeStatus,@Noise,@NoiseStatus,@SensorId,@SensorSerialNumber,@DasId,@DASSerialNumber,@DASChannelIdx,@UserCode,@UserChannelName,@IsoCode,@IsoChannelName,@ScaleFactorMV,@CalibrationRecordId,@CalibrationRecord,@Timestamp);
|
||||
SET @new_id = SCOPE_IDENTITY();
|
||||
end
|
||||
IF(@@error != 0)
|
||||
BEGIN
|
||||
SET @errorNumber = error_number()
|
||||
SET @errorMessage = error_message()
|
||||
END
|
||||
END
|
||||
@@ -0,0 +1,54 @@
|
||||
ALTER PROCEDURE [dbo].[sp_TestSetupsDelete]
|
||||
@TestSetupId INT = 0,
|
||||
@TestSetupName NVARCHAR(50) = NULL,
|
||||
@errorNumber INT OUTPUT,
|
||||
@errorMessage NVARCHAR(255) OUTPUT
|
||||
AS
|
||||
BEGIN
|
||||
SET @errorNumber = 0;
|
||||
SET @errorMessage = SPACE(0);
|
||||
BEGIN TRY
|
||||
BEGIN TRANSACTION [tDeleteTestSetups]
|
||||
|
||||
IF(@TestSetupId = 0)
|
||||
BEGIN
|
||||
SET @TestSetupId = [dbo].foo_IdGetTestSetup(@TestSetupName)
|
||||
END
|
||||
|
||||
DELETE FROM [dbo].[TestSetupObjectMetaData] where TestSetupId = @TestSetupId
|
||||
DELETE FROM [dbo].[TestSetupHardware] where TestSetupId = @TestSetupId
|
||||
DELETE FROM [dbo].[LevelTriggers] where TestSetupId = @TestSetupId
|
||||
DELETE FROM [dbo].[CalculatedChannels] where TestSetupId = @TestSetupId
|
||||
DELETE FROM [dbo].[TestGraphs] where TestSetupId = @TestSetupId
|
||||
|
||||
/*Delete group channel settings*/
|
||||
DELETE A FROM [dbo].[GroupChannelSettings] AS A INNER JOIN [dbo].[Channels] AS B ON A.ChannelId=B.Id
|
||||
INNER JOIN [dbo].[Groups] AS C ON B.GroupId=C.Id INNER JOIN [dbo].TestSetupGroups AS D ON C.Id=D.GroupId WHERE D.TestSetupId=@TestSetupId
|
||||
/*Delete group hardware*/
|
||||
DELETE A FROM [dbo].[GroupHardware] AS A INNER JOIN [dbo].[TestSetupGroups] AS B ON A.GroupId=B.GroupId WHERE B.TestSetupId=@TestSetupId
|
||||
/*Delete group channels*/
|
||||
DELETE A FROM [dbo].[Channels] AS A INNER JOIN [dbo].[TestSetupGroups] AS B ON A.GroupId = B.GroupId WHERE B.TestSetupId=@TestSetupId
|
||||
/*grab a copy of all groups associated with test so we can delete them*/
|
||||
SELECT [GroupId] INTO #temptable FROM [dbo].[TestSetupGroups] WHERE [TestSetupId]=@TestSetupId
|
||||
/*unassociate the group from the test setup*/
|
||||
DELETE FROM [dbo].[TestSetupGroups] WHERE [TestSetupId] = @TestSetupId
|
||||
/*delete the groups*/
|
||||
DELETE FROM [dbo].[Groups] WHERE [Id] IN (SELECT [GroupId] FROM #tempTable)
|
||||
|
||||
/*delete test specific hardware */
|
||||
UPDATE [dbo].[Channels] SET [DASId] = 0, [DASChannelIndex]=0 FROM [dbo].[Channels] AS A INNER JOIN [dbo].[DAS] AS B ON A.DASId=B.DASId WHERE B.TestId=@TestSetupId
|
||||
DELETE A FROM [dbo].[TestSetupHardware] AS A INNER JOIN [dbo].[DAS] as B ON A.DASId=B.DASId WHERE B.TestId=@TestSetupId
|
||||
DELETE A FROM [dbo].[GroupHardware] AS A INNER JOIN [dbo].[DAS] as B on A.DASId=B.DASId WHERE B.TestId=@TestSetupId
|
||||
DELETE A FROM [dbo].[DASChannels] AS A INNER JOIN [dbo].[DAS] AS B on A.DASId=B.DASId WHERE B.TestId=@TestSetupId
|
||||
DELETE [dbo].[DAS] WHERE [TestId]=@TestSetupId
|
||||
|
||||
/*finally delete the test setup*/
|
||||
DELETE FROM [dbo].[TestSetups] where TestSetupId = @TestSetupId
|
||||
COMMIT TRANSACTION [tDeleteTestSetups]
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
SET @errorNumber = error_number()
|
||||
SET @errorMessage = error_message()
|
||||
ROLLBACK TRANSACTION [tDeleteTestSetups]
|
||||
END CATCH
|
||||
END
|
||||
Reference in New Issue
Block a user