Проблемът е, че не можете да извикате недетерминирана функция от дефинирана от потребителя функция.
Заобиколих това ограничение, като създадох изглед, извиках тази функция вътре в изгледа и използвах този изглед във вашата функция, нещо като това......
Преглед на дефиниция
CREATE VIEW vw_getRANDValue
AS
SELECT RAND() AS Value
Дефиниция на функция
ALTER FUNCTION getNumber(@_id int )
RETURNS DECIMAL(18,4)
AS
BEGIN
DECLARE @RtnValue DECIMAL(18,4);
SELECT TOP 1 @RtnValue = EmployeeID
FROM dbo.Employees
ORDER BY EmployeeID DESC
SET @RtnValue = (SELECT Value FROM vw_getRANDValue) * @RtnValue * (1.0000/100.0000) --<-- to make sure its not converted to int
RETURN @RtnValue;
END