Foxtable(狐表)用户栏目专家坐堂 → 统计没有数据


  共有27人关注过本帖树形打印复制链接

主题:统计没有数据

帅哥哟,离线,有人找我吗?
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111738 积分:568832 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/11 14:04:00 [显示全部帖子]

先学好基础:http://www.foxtable.com/webhelp/topics/0220.htm

If e.DataCol.Name = "单号" OrElse e.DataCol.Name = "品名" OrElse e.DataCol.Name = "规格" Then '发生变化的是XX单号列   

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111738 积分:568832 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/11 14:41:00 [显示全部帖子]

再学习基础

这个是代码里使用的逻辑运算符and等:http://www.foxtable.com/webhelp/topics/0220.htm
这个是表达式里使用的逻辑运算符(只有and和or)等:http://www.foxtable.com/webhelp/topics/0102.htm

上面两种用法完全不是一回事,不能混用

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111738 积分:568832 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/11 14:42:00 [显示全部帖子]

只能说明没有同时符合这3个条件的数据

If e.DataCol.Name = "单号" OrElse e.DataCol.Name = "品名" OrElse e.DataCol.Name = "规格" Then '发生变化的是XX单号列   
Dim Filter As String = "[单号] = '" & e.NewValue & "' AND [品名] = '" & e.NewValue & "'  AND [规格] = '" & e.NewValue & "'"
msgbox(Filter )
dim a as double = DataTables("表B").Compute("Sum(完成数)", Filter)
msgbox(a)
    e.DataRow("完成数") = a
msgbox(Filter) '调试用
End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111738 积分:568832 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/11 15:25:00 [显示全部帖子]

msgbox(Filter )截图弹窗看看

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111738 积分:568832 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/1/11 17:02:00 [显示全部帖子]

很明显查询条件里有多余的空格,其次三个列都查询同样的数据,有符合这个条件的数据?

要知道e.NewValue表示的是当前正在录入的这个单元格的值,而不是表示3个列的单元格值,所以确定不应该是这样?
Dim Filter As String = "[单号] = '" & e.DataRow("单号") & "' AND [品名] = '" & e.DataRow("品名") & "'  AND [规格] = '" & e.DataRow("规格") & "'"

 回到顶部