59 lines
3.2 KiB
Transact-SQL
59 lines
3.2 KiB
Transact-SQL
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[foo_DBExportDASChannel]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
|
||
DROP FUNCTION [dbo].[foo_DBExportDASChannel]
|
||
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_DBExportDASChannel]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
|
||
BEGIN
|
||
execute dbo.sp_executesql @statement = N'CREATE FUNCTION [dbo].[foo_DBExportDASChannel]
|
||
(
|
||
@dasId int
|
||
)
|
||
RETURNS xml
|
||
AS
|
||
BEGIN
|
||
|
||
RETURN isnull((SELECT [DASChannelId]
|
||
,[DASId]
|
||
,[DASSerialNumber]
|
||
,[Type]
|
||
,[ChannelIdx]
|
||
,[SupportedBridges]
|
||
,[SupportedExcitations]
|
||
,[DASDisplayOrder]
|
||
,[LocalOnly]
|
||
,[SupportedDigitalInputModes]
|
||
,[SupportedSquibFireModes]
|
||
,[SupportedDigitalOutputModes]
|
||
,[ModuleSerialNumber]
|
||
,[ModuleArrayIndex]
|
||
from
|
||
(SELECT [DASChannelId]
|
||
,d.[DASId]
|
||
,d.[SerialNumber] as DASSerialNumber
|
||
,d.[Type]
|
||
,[ChannelIdx]
|
||
,[SupportedBridges]
|
||
,[SupportedExcitations]
|
||
,[DASDisplayOrder]
|
||
,dch.[LocalOnly]
|
||
,[SupportedDigitalInputModes]
|
||
,[SupportedSquibFireModes]
|
||
,[SupportedDigitalOutputModes]
|
||
,[ModuleSerialNumber]
|
||
,[ModuleArrayIndex]
|
||
|
||
FROM [dbo].[DASChannels] dch
|
||
inner join [dbo].[DAS] d on d.DASId = dch.DASId
|
||
where dch.DASId = @dasId ) DASChannel
|
||
for xml auto, BINARY BASE64, root(''DASChannels'')), ''<DASChannel />'')
|
||
END
|
||
|
||
|
||
'
|
||
END
|
||
|
||
GO
|