Files
DP44/DataPRO_sql/.svn/pristine/cd/cd09a88d65b0bc4cb283a255973de065bd67b736.svn-base

48 lines
2.5 KiB
Plaintext
Raw Normal View History

2026-04-17 14:55:32 -04:00
<EFBFBD><EFBFBD>IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[foo_IdGetSensorByType]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
DROP FUNCTION [dbo].[foo_IdGetSensorByType]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[foo_IdGetSensorByType]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
BEGIN
execute dbo.sp_executesql @statement = N'CREATE FUNCTION [dbo].[foo_IdGetSensorByType]
(
@SerialNumber varchar(50)
,@SensorType int
)
RETURNS int
AS
BEGIN
declare @SensorId int
set @SensorId = 0
if @SensorType = 0
begin
set @SensorId = isnull((select top 1 Id from [dbo].[SensorsAnalog] where SerialNumber = @SerialNumber), 0)
end
else if @SensorType = 1
begin
set @SensorId = isnull((select top 1 Id from [dbo].[SensorsDigitalIn] where SerialNumber = @SerialNumber), 0)
end
else if @SensorType = 2
begin
set @SensorId = isnull((select top 1 Id from [dbo].[SensorsDigitalOut] where SerialNumber = @SerialNumber), 0)
end
else if @SensorType = 3
begin
set @SensorId = isnull((select top 1 Id from [dbo].[SensorsSquib] where SerialNumber = @SerialNumber), 0)
end
return @SensorId
END
'
END
GO