• Ahhhhh! I got it! Sort of...well, okay, it is a work-around anyway.

    Imports System

    Imports System.Data

    Imports System.Data.SqlClient

    Imports System.Data.SqlTypes

    Imports Microsoft.SqlServer.Server

    Imports Microsoft.VisualBasic.Strings

    Partial Public Class UserDefinedFunctions

    <Microsoft.SqlServer.Server.SqlFunction()> _

    Public Shared Function stringEval(ByVal equation As String) As SqlString

    Dim table As New DataTable

    Dim eqObject As Object

    eqObject = table.Compute(equation, "")

    Dim results As SqlString = SqlDecimal.Parse(eqObject.ToString()).ToString()

    Return results

    End Function

    End Class

    I'm sure someone can figure this out, but it actually works better than I had originally thought as is. To use it, I simply call it as

    select ..., convert(decimal(18,2), dbo.stringEval(stringWithMathEquation)) ...

    In case anyone uses this, or wants to tweak it, I can only get it to work by either using the string that it returns, or to use a convert or cast to decimal. It gets an error if I try to convert/cast it directly to an int. I'm not sure what all of the issues are, but it at least gives me a short-term fix and the result can then be managed with native SQL functions to change it to any other datatype.

    Thank you!