Пример функции, которая получает внешний параметр , обрабатывает его в теле и выдаёт таблицу

Tsql теория > Пример функции, которая получает внешний параметр , обрабатывает его в теле и выдаёт таблицу
25.11.2013 9:21:09



Статья:

IF OBJECT_ID (N''dbo.fnСделка_ПолучитьЦентрПродажНаДату'') IS NOT NULL
DROP FUNCTION dbo.fnСделка_ПолучитьЦентрПродажНаДату;
GO
CREATE FUNCTION dbo.fnСделка_ПолучитьЦентрПродажНаДату (@Сделка_1C77_УИ varchar(9),@НаДату datetime = NULL)
RETURNS @ret TABLE
( ЦентрПродаж_1C77_УИ CHAR(9)
,[ЦентрПродаж] VARCHAR(255))
AS
BEGIN

IF @НаДату IS NULL SET @НаДату=GETDATE()
SET @НаДату=CONVERT(DATETIME, CONVERT(VARCHAR, @НаДату, 112))
INSERT @ret
SELECT
h2.[1C77_УИ] AS ЦентрПродаж_1C77_УИ
,h2.Наименование AS [ЦентрПродаж]
FROM tblДгв_ЦентрыПродажДляСделок h (nolock)
inner join tblФС_ЦентрыПродаж h2 (nolock) on h2.[ЦентрПродаж_ID]=h.[ЦентрПродаж_ID]
WHERE h.[Сделка_1C77_УИ]=@Сделка_1C77_УИ and
(@НаДату BETWEEN h.С AND isnull(h.По,''2100-01-01''))
and (h2.[УдаленоВИсточнике] =0);

RETURN
END

GO