-- 3.5.46 Power
-- получить ТАБЛИЦУ дополнительных Линий, проходящих через Опору с указанным идентификатором
---- GetSupportLines ----
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].GetSupportLines') and xtype in (N'FN', N'IF', N'TF'))
drop function [dbo].GetSupportLines
GO
CREATE FUNCTION GetSupportLines(@Код_опоры int)
RETURNS @retObjs TABLE (
  Код_линии_пролета int				-- код Линии, которой принадлежит пролет
, Наименование_линии_пролета nvarchar(200)	-- наименование Линии, которой принадлежит пролет
)
AS
BEGIN
	INSERT INTO @retobjs 
	SELECT DISTINCT
			 Родитель_пролета.Код_объекта_владельца
			,Имя_родителя_пролета.Наименование
	FROM Пролет П
	INNER JOIN Объект Родитель_пролета ON Родитель_пролета.Код_объекта = П.Код_пролета
		INNER JOIN Объект Имя_родителя_пролета ON Имя_родителя_пролета.Код_объекта = Родитель_пролета.Код_объекта_владельца
	WHERE
	Код_опоры_1 = @Код_опоры
	OR
	Код_опоры_2 = @Код_опоры
  RETURN
END