0

我有一个存储数字的莲花视图。我需要对这个值进行一些数学运算,但是我在匹配类型时遇到了很多问题。

doc.numOfGold = numGold 

CInt(doc.numOfGold) = numGold

CInt(doc.numOfGold) = CInt(numGold)

doc.numOfGold = CInt(numGold)

所有返回类型不匹配。我尝试更改列属性以将其视为小数,但运气不佳。

有什么想法吗?

谢谢!

4

2 回答 2

1

永远不要访问这样的字段:“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))

还要验证您的字段值不是空字符串,例如使用字段验证公式。

于 2010-04-16T12:52:46.120 回答
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)”

于 2010-08-17T16:09:27.070 回答