我有一个存储数字的莲花视图。我需要对这个值进行一些数学运算,但是我在匹配类型时遇到了很多问题。
doc.numOfGold = numGold
和CInt(doc.numOfGold) = numGold
和CInt(doc.numOfGold) = CInt(numGold)
和doc.numOfGold = CInt(numGold)
所有返回类型不匹配。我尝试更改列属性以将其视为小数,但运气不佳。
有什么想法吗?
谢谢!
我有一个存储数字的莲花视图。我需要对这个值进行一些数学运算,但是我在匹配类型时遇到了很多问题。
doc.numOfGold = numGold
和CInt(doc.numOfGold) = numGold
和CInt(doc.numOfGold) = CInt(numGold)
和doc.numOfGold = CInt(numGold)
所有返回类型不匹配。我尝试更改列属性以将其视为小数,但运气不佳。
有什么想法吗?
谢谢!
永远不要访问这样的字段:“doc.fieldname”。用户 doc.GetItemValue("fieldname")(0),这将返回正确的类型。
如果 doc.numOfGold 是一个数字字段,而 numGold 是一个 int,它应该像这样工作:
Dim numOfGold as integer
numOfGold = doc.GetItemValue("numOfGold")(0)
如果 doc.numOfGold 是文本字段,则必须进行转换,例如val(doc.GetItemValue("numOfGold")(0))
还要验证您的字段值不是空字符串,例如使用字段验证公式。
永远不要访问这样的字段:“doc.fieldname”。
有点苛刻,访问文档字段值是完全可以接受的:
x = doc.FieldName(0)
Doc.FieldName = ScalarValue
甚至
Doc.FieldName = ArrayOfValues
为确保成功,您可能希望先查看“Doc.HasItem("FieldName")”(对于 getFirstItem 也是如此)。
注意:GetFirstItem 是获取字段值的直接方法,以获得最佳性能:
x = doc.getFirstItem("FieldName").Values(0)
因为这避免了“默认属性”。
此外,错误报告/语法检查可以“忽略”“假定默认值”“doc.FieldName(0)”