题
我使用QBFC以产生在发票的Quickbooks集成应用程序。我得到抛出lineItem.Amount.SetValue(VAL为双人间),当我试图进入一个编程产生双重异常。
下列不工作:
lineItem = invoice.ORInvoiceLineAddList.Append.InvoiceLineAdd
Dim amount as Double
amount = summary.dailySold * summary.dailyRate
loggingTxtBox.AppendText("Amount is " & amount & vbNewLine)
lineItem.Amount.SetValue(amount)
我接收唯一的例外是 System.Runtime.InteropServices.COMException(0x80040305):无效量格式。 在Interop.QBFC8.IQBAmountType.SetValue(双VAL)
在以下工作:
lineItem.Amount.SetValue(20.3)
任何建议?是.NET训释硬编码的双不同于一个编程计算的一个?
Thanks- 乔纳森
解决方案
找到它。
打印出 “量” 表明21.3
然而,使用调试器“量”实际上包含21.299999999997。的SetValue只接受两个小数点双打。
这确实起作用:
amount = CDbl(amount.ToString("F"))
有圆双到小数点后两位更高效的方法?
由于
乔纳森
不隶属于 StackOverflow