ALTER PROCEDURE [dbo].[sp_SensorsAnalogGet] @Id INT = NULL, @SerialNumber NVARCHAR (50) = NULL, @EID NVARCHAR (50) = NULL AS BEGIN SET NOCOUNT ON; IF( @Id IS NULL) BEGIN IF NULLIF(@SerialNumber, '') IS NULL BEGIN IF( @EID IS NULL) BEGIN SELECT A.id, A.SerialNumber, C.AxisNumber, C.BridgeLegMode, C.BridgeResistance, C.BridgeType, C.Broken, C.BypassFilter, C.CalibrationSignal, C.CalInterval, C.Capacity, C.CheckOffset, C.Comment, C.CouplingMode, C.Created, C.DiagnosticsMode, C.DoNotUse, C.eId, C.ExternalShuntResistance, C.FilterClass, C.InitialEU, C.InternalShuntResistance, C.Invert, C.IsoChannelName, C.IsoCode, C.LastModified, C.LocalOnly, C.Manufacturer, C.MeasurementUnit, C.Model, C.ModifiedBy, C.NumberOfAxes, C.OffsetToleranceHigh, C.OffsetToleranceLow, C.RangeAve, C.RangeHigh, C.RangeLow, C.SensorCategory, C.SensorModelId, C.Shunt, C.[Status], C.SupportedExcitation, C.TimesUsed, C.UniPolar, C.UserChannelName, C.UserCode, C.UserSerialNumber, C.UserTags, C.UserValue1, C.UserValue2, C.UserValue3, C.[Version], C.LatestCalibrationId, C.FirstUseDate FROM [dbo].[Sensors] as A INNER JOIN [dbo].[SensorsType] as B ON A.SensorType=B.TypeId INNER JOIN [dbo].[SensorsAnalog] AS C on A.Id = C.SensorId WHERE B.SensorType='Analog' END ELSE BEGIN SELECT A.id, A.SerialNumber, C.AxisNumber, C.BridgeLegMode, C.BridgeResistance, C.BridgeType, C.Broken, C.BypassFilter, C.CalibrationSignal, C.CalInterval, C.Capacity, C.CheckOffset, C.Comment, C.CouplingMode, C.Created, C.DiagnosticsMode, C.DoNotUse, C.eId, C.ExternalShuntResistance, C.FilterClass, C.InitialEU, C.InternalShuntResistance, C.Invert, C.IsoChannelName, C.IsoCode, C.LastModified, C.LocalOnly, C.Manufacturer, C.MeasurementUnit, C.Model, C.ModifiedBy, C.NumberOfAxes, C.OffsetToleranceHigh, C.OffsetToleranceLow, C.RangeAve, C.RangeHigh, C.RangeLow, C.SensorCategory, C.SensorModelId, C.Shunt, C.[Status], C.SupportedExcitation, C.TimesUsed, C.UniPolar, C.UserChannelName, C.UserCode, C.UserSerialNumber, C.UserTags, C.UserValue1, C.UserValue2, C.UserValue3, C.[Version], C.LatestCalibrationId, C.FirstUseDate FROM [dbo].[Sensors] as A INNER JOIN [dbo].[SensorsType] as B ON A.SensorType=B.TypeId INNER JOIN [dbo].[SensorsAnalog] AS C on A.Id = C.SensorId WHERE B.SensorType='Analog' AND C.eId=@EID END END ELSE BEGIN SELECT A.id, A.SerialNumber, C.AxisNumber, C.BridgeLegMode, C.BridgeResistance, C.BridgeType, C.Broken, C.BypassFilter, C.CalibrationSignal, C.CalInterval, C.Capacity, C.CheckOffset, C.Comment, C.CouplingMode, C.Created, C.DiagnosticsMode, C.DoNotUse, C.eId, C.ExternalShuntResistance, C.FilterClass, C.InitialEU, C.InternalShuntResistance, C.Invert, C.IsoChannelName, C.IsoCode, C.LastModified, C.LocalOnly, C.Manufacturer, C.MeasurementUnit, C.Model, C.ModifiedBy, C.NumberOfAxes, C.OffsetToleranceHigh, C.OffsetToleranceLow, C.RangeAve, C.RangeHigh, C.RangeLow, C.SensorCategory, C.SensorModelId, C.Shunt, C.[Status], C.SupportedExcitation, C.TimesUsed, C.UniPolar, C.UserChannelName, C.UserCode, C.UserSerialNumber, C.UserTags, C.UserValue1, C.UserValue2, C.UserValue3, C.[Version], C.LatestCalibrationId, C.FirstUseDate FROM [dbo].[Sensors] as A INNER JOIN [dbo].[SensorsType] as B ON A.SensorType=B.TypeId INNER JOIN [dbo].[SensorsAnalog] AS C on A.Id = C.SensorId WHERE B.SensorType='Analog' AND A.SerialNumber=@SerialNumber END END ELSE BEGIN SELECT A.id, A.SerialNumber, C.AxisNumber, C.BridgeLegMode, C.BridgeResistance, C.BridgeType, C.Broken, C.BypassFilter, C.CalibrationSignal, C.CalInterval, C.Capacity, C.CheckOffset, C.Comment, C.CouplingMode, C.Created, C.DiagnosticsMode, C.DoNotUse, C.eId, C.ExternalShuntResistance, C.FilterClass, C.InitialEU, C.InternalShuntResistance, C.Invert, C.IsoChannelName, C.IsoCode, C.LastModified, C.LocalOnly, C.Manufacturer, C.MeasurementUnit, C.Model, C.ModifiedBy, C.NumberOfAxes, C.OffsetToleranceHigh, C.OffsetToleranceLow, C.RangeAve, C.RangeHigh, C.RangeLow, C.SensorCategory, C.SensorModelId, C.Shunt, C.[Status], C.SupportedExcitation, C.TimesUsed, C.UniPolar, C.UserChannelName, C.UserCode, C.UserSerialNumber, C.UserTags, C.UserValue1, C.UserValue2, C.UserValue3, C.[Version], C.LatestCalibrationId, C.FirstUseDate FROM [dbo].[Sensors] as A INNER JOIN [dbo].[SensorsType] as B ON A.SensorType=B.TypeId INNER JOIN [dbo].[SensorsAnalog] AS C on A.Id = C.SensorId WHERE B.SensorType='Analog' AND A.id=@id END END