ASP Classic 和 FormatNumber 中的计算结果

Calculations in ASP Classic and FormatNumber the result

在我之前的 post(其中每个人都非常有帮助 - 谢谢)之后,我现在遇到了另一个问题......计算和 FormatNumber 结果。

我在 SQL 中有 3 个字段,我需要对其进行简单计算,然后需要对结果应用 FormatNumber..

字段是

"OverallFee" , "WIPFee" , "RenderedFee" - 都是数字

在整个 table 期间,它们可以很好地填充以下内容。

<td width="100" align="center" class="style1"><% If Not IsNull(rs("OverallFee")) Then Response.Write ("£" + FormatNumber(rs("OverallFee"),0)) End If %></td>
<td width="100" align="center" class="style1"><% If Not IsNull(rs("RenderedFee")) Then Response.Write ("£" + FormatNumber(rs("RenderedFee"),0)) End If %></td>
<td width="100" align="center" class="style1"><%=rs("WIPFee")%></td>

现在我需要做一个计算 -

("OverallFee"/100) * "WIPFee" - "RenderedFee"

我试过了

<td width="50" align="center" class="style1"><%=((rs("OverallFee")/100)*rs("WIPFee")-rs("RenderedFee"))%></td>

应该可以,但我得到了

Microsoft VBScript runtime error '800a000d' - Type mismatch "

在那条线上,我卡住了...

我做的对吗...有更简单的方法吗?

尝试将您的数据转换为 long CLng 或 double CDbl

<%
    calc = 0 'Or a text to display

    If Not IsNull(rs("RenderedFee")) And Not IsNull(rs("OverallFee")) And Not IsNull(rs("WIPFee")) Then
        calc = (CLng(rs("OverallFee"))/100)*CLng(rs("WIPFee"))-CLng(rs("RenderedFee"))
    End If
%>

<td width="50" align="center" class="style1"><%=calc%></td>