26 lines
973 B
Transact-SQL
26 lines
973 B
Transact-SQL
DROP FUNCTION IF EXISTS fnGetLathatoSzervezetek
|
|
GO
|
|
|
|
CREATE FUNCTION fnGetLathatoSzervezetek (
|
|
@pIntezmenyId INT
|
|
,@pTanevId INT
|
|
,@pSzervezetId INT = NULL
|
|
,@pAdatokHalmaza INT = 0 -- 0: megadott szervezet és alszervezetei, 1: megadott szervezet (SzervezetId = NULL esetén az ősszes székhely), 2: megadott szervezet alszervezetei
|
|
)
|
|
RETURNS TABLE
|
|
RETURN (
|
|
SELECT
|
|
ID
|
|
FROM T_SZERVEZET_OSSZES sz
|
|
WHERE sz.TOROLT = 'F'
|
|
AND sz.C_TANEVID = @pTanevId
|
|
AND sz.C_INTEZMENYID = @pIntezmenyId
|
|
AND ((@pAdatokHalmaza = 1 AND @pSzervezetId IS NOT NULL AND ID = @pSzervezetId)
|
|
OR (@pAdatokHalmaza = 1 AND @pSzervezetId IS NULL AND C_PARENTSZERVEZETID IS NULL)
|
|
OR (@pAdatokHalmaza = 2 AND @pSzervezetId IS NOT NULL AND C_PARENTSZERVEZETID = @pSzervezetId)
|
|
OR (@pAdatokHalmaza = 0 AND @pSzervezetId IS NOT NULL AND (C_PARENTSZERVEZETID = @pSzervezetId OR ID = @pSzervezetId))
|
|
OR (@pAdatokHalmaza = 0 AND @pSzervezetId IS NULL))
|
|
);
|
|
|
|
GO
|
|
|