Foxtable(狐表)用户栏目专家坐堂 → 关于逻辑判断问题


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

主题:关于逻辑判断问题

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


加好友 发短信
等级:幼狐 帖子:72 积分:724 威望:0 精华:0 注册:2013/3/27 13:32:00
关于逻辑判断问题  发帖心情 Post By:2013/4/12 23:01:00 [只看该作者]


多个产品产品分别卖给多家客户,收款后,则 "是否收款"列为TRUE。
在"统计表A"中判断:如果"销售表B"中 某个"产品"收款全部结清(即"是否收款"全为真),则"统计表A"的"是否收款完毕"为真。

这个逻辑判断可以这么写吗? 

DataColChanged事件中这样写:
Dim dr As DataRow = e.DataRow
If e.DataCol.Name = "产品" Then
   dr("是否收款完毕") = DataTables("销售表B").Compute("Sum(是否收款)","[产品] = '" & e.DataRow(" 产品 ") & "'")
End If

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


加好友 发短信
等级:二尾狐 帖子:504 积分:3492 威望:0 精华:3 注册:2012/11/13 15:49:00
  发帖心情 Post By:2013/4/12 23:06:00 [只看该作者]

应该不能

你两表之间的关联是通过什么来关联?

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


加好友 发短信
等级:幼狐 帖子:72 积分:724 威望:0 精华:0 注册:2013/3/27 13:32:00
  发帖心情 Post By:2013/4/12 23:13:00 [只看该作者]

没进行关联,那应该怎么写呢



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


加好友 发短信
等级:三尾狐 帖子:619 积分:3656 威望:0 精华:1 注册:2012/6/13 22:00:00
  发帖心情 Post By:2013/4/12 23:18:00 [只看该作者]

)","[产品] = '" & e.DataRow(" 产品 ") & "'")

这个表述错误

你这个是在表a中写的,表a中哪里会有这个[产品]呢,有也是e.datarow("产品")

你这个可以使用find来找到所有满足条件的行,然后对所有的行进行判断

如果判断结果正确,那么表a的某个值为true


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


加好友 发短信
等级:幼狐 帖子:72 积分:724 威望:0 精华:0 注册:2013/3/27 13:32:00
  发帖心情 Post By:2013/4/12 23:24:00 [只看该作者]

哈哈,这样写就可以了。
Dim dr As DataRow = e.DataRow
If e.DataCol.Name = "产品" Then
Dim dr0 As DataRow
dr0 = DataTables("销售表B").
Find("[产品] = '" & e.DataRow(" 产品 ") & "'  and  [是否收款]= False  ")
If dr0 IsNot Nothing Then '如果找到的话
dr("是否收款完毕")  =  False 
Else
dr("是否收款完毕")  =  True
End If


 回到顶部