Смятам, че UDF са много удобни и ги използвам през цялото време.
Не съм сигурен каква е обосновката на Microsoft да не включи еквивалент на sys.functions в SQL Server 2005 (или SQL Server 2008, доколкото мога да преценя), но е достатъчно лесно да пуснете свой собствен:
CREATE VIEW my_sys_functions_equivalent
AS
SELECT *
FROM sys.objects
WHERE type IN ('FN', 'IF', 'TF') -- scalar, inline table-valued, table-valued