2010-04-15 61 views
0

我有一个存储数字的莲花视图。我需要对价值进行一些数学计算,但是我有很多问题需要进行匹配。莲花视图列与字符串/整数比较

doc.numOfGold = numGold 

CInt(doc.numOfGold) = numGold

CInt(doc.numOfGold) = CInt(numGold)

doc.numOfGold = CInt(numGold)

所有返回类型不匹配。我试着改变列属性来把它当作十进制数,没有更好的运气。

有什么想法?

谢谢!

回答

1

千万不要访问像这样的字段:“doc.fieldname”。用户doc.GetItemValue(“fieldname”)(0),这将返回正确的类型。

如果doc.numOfGold是numberfield,并numGold是一个int,它应该像这样工作:

Dim numOfGold as integer 
numOfGold = doc.GetItemValue("numOfGold")(0) 

如果doc.numOfGold是一个文本框,你必须做一个转换,例如val(doc.GetItemValue("numOfGold")(0))

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

+0

+5,如果我能忽略”。谢谢。我不知道val的说法。 – 2010-04-16 14:41:22

+0

谢谢,只要它有帮助;-) – 2010-04-22 07:55:01

0

千万不要访问像这样的字段: “doc.fieldname”。

位苛刻,访问文档字段的值是可接受的perfectably:

X = doc.FieldName(0)

Doc.FieldName = ScalarValue

甚至

督.FieldName = ArrayOfValues

为了确保成功,您可能需要查看'Doc .HasItem(“FieldName”)'首先(对于getFirstItem也是如此)。

NB:GetFirstItem是直接的方式获取字段值,最大的性能:

X = doc.getFirstItem( “字段名”)值(0)

因为这避免了“默认属性”。

此外,“假设默认“doc.FieldName(0)”可以“通过错误报告/语法检查