我想在水晶报表查看器中使用类型数据整数过滤数据,例如:age,但我的代码不起作用,CR会抛出错误消息。
以下是我的代码
Dim age As Integer
age = Val(TextBox1.Text)
Try
Me.CrystalReportViewer1.SelectionFormula = "{biodata.age} = '" & age.ToString & "'"
Me.CrystalReportViewer1.RefreshReport()
Catch ex As Exception
MsgBox(ex.Message)
End Try
这是错误消息。
这里需要一个数字...... 细节:....
有人可以指导我如何解决这个问题吗?
答案 0 :(得分:0)
首先,不建议发布 Bla blah 。它只是复制粘贴的问题,所以不妨把完整的错误文本。
您的回答:
您的数据库字段{biodata.age}
似乎是数字。在这种情况下,CR不喜欢你的“ToString”转换。您有两个选择:
1)删除代码中的ToString
并将“age
”作为int传递。
Me.CrystalReportViewer1.SelectionFormula = "{biodata.age} = & age &)"
2)如果您想继续使用age.ToString
,请使用ToNumber(age.ToString)
。这会将您的字符串转换为CR中的int。
像下面的东西,我不确定vb语法,但你不需要单引号。
Me.CrystalReportViewer1.SelectionFormula = "{biodata.age} = ToNumber(& age.ToString &)"
要检查字段的类型,请右键单击字段资源管理器中的数据库字段,然后选中显示字段类型。