以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 怎么判断无返回记录的值? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=168782) |
-- 作者:hitzfeld -- 发布时间:2021/5/23 15:45:00 -- 怎么判断无返回记录的值? Dim Sum1 As Integer = DataTables("生产表").Compute("Sum(已生产数量)", "单号 = \'"& x &"\'") If sum1="" Then 当生产表中不存在符合条件的记录的时候,报错。 If sum1 is nothing If sum1 isnull 都试过了,都是报错........ 要怎么判断啊??求老师指点 |
-- 作者:cnsjroom -- 发布时间:2021/5/23 17:49:00 -- 回复:(hitzfeld)怎么判断无返回记录的值? Dim Sum1 As Integer 这个地方都定义为整数了 那试一试 if sum1=0 then
|
-- 作者:hitzfeld -- 发布时间:2021/5/23 20:35:00 -- 以下是引用cnsjroom在2021/5/23 17:49:00的发言:
Dim Sum1 As Integer 这个地方都定义为整数了 那试一试 if sum1=0 then cnsjroom老师好,不是这个意思,您写的也是错的,其实问题是出在“生产表”不存在复合条件为单号=x的记录会报错,如果有记录,后面的代码就没问题了。我的难点也在这里,怎么判断是否存在记录?
|
-- 作者:有点蓝 -- 发布时间:2021/5/23 21:23:00 -- if sum1=0 then虽然不能判断是否有记录,但是不可能会报错,如果报错,那是其它地方的问题 可以这样判断一下 if DataTables("生产表").Compute("count(单号)", "单号 = \'" & x & "\'") =0 then msgbox("无记录") else msgbox("有记录") Dim Sum1 As Integer = DataTables("生产表").Compute("Sum(已生产数量)", "单号 = \'"& x &"\'") 其它处理 endif
|
-- 作者:hitzfeld -- 发布时间:2021/5/24 22:18:00 -- 谢谢蓝老师,这样确实不会报错,但是我后还有个引用sum1数值判断的时候就报错了 比如if sum1>xx then 由于sum1是个空值,所以报错。 您改的代码可以用!谢谢您的指点!
|
-- 作者:tommargq2 -- 发布时间:2021/5/25 9:03:00 -- 在判断结束的处理中强制给sum1=0 [此贴子已经被作者于2021/5/25 9:03:54编辑过]
|