размещение удобного для читателя обходного пути, который я использовал.Я написал автономный процесс для возврата случайного int с помощью метода NewId
CREATE PROCEDURE sp_RandUpTo
@max int
AS
BEGIN
declare @return int
SET NOCOUNT ON;
SELECT @return = abs(checksum(newid())) % (@max)
return @return
END
, а затем выполнил процедуру в нужной переменной в вашем UDF
declare @OptionSelect int, @OptionMax int = 100
exec @OptionSelect = spRandUpTo @OptionMax