Foxtable(狐表)用户栏目专家坐堂 → 数据查询


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

主题:数据查询

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/1/13 9:46:00 [显示全部帖子]

请上传实例测试

 

Dim idxs As String = "-1,"

for each bh as string in DataTables("计划配缸通知单").GetValues("订单明细编号对外")
    Dim drs As List(of DataRow) = DataTables("计划配缸通知单").Select("订单明细编号对外 = '" & bh & "'")
    If drs.count > 0 Then
        Dim tpzl As Double
        Dim jhzl As Double
        For Each dr As DataRow In drs
            tpzl = tpzl + dr("投坯重量")
            jhzl = dr("计划重量")
        Next
        If tpzl/jhzl < 0.96 Then
            idxs &= bh & ","
        End If
    End If
Next
DataTables("计划配缸通知单").loadfilter = "订单明细编号对外 in (" & idxs.trim(",") & ")"
DataTables("计划配缸通知单").load

 


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/1/13 12:39:00 [显示全部帖子]

以下是引用lk15502在2017/1/13 11:57:00的发言:
Dim idxs As String = "-1,"为什么等于-1;并且还要加上逗号

 

这种,是为了生成 数字 类型的条件,最后会得到 -1,2,9,8 之类的数据,作为条件;当没有查到数据的时候,也不至于让数据报错,因为 -1 本身就可以查。

 

你也可以不用-1,最后你判断idxs是不是空值即可。

 

如果是判断字符的,改代码

 

Dim idxs As String = "'',"

for each bh as string in DataTables("计划配缸通知单").GetValues("订单明细编号对外")
    Dim drs As List(of DataRow) = DataTables("计划配缸通知单").Select("订单明细编号对外 = '" & bh & "'")
    If drs.count > 0 Then
        Dim tpzl As Double = 0
        Dim jhzl As Double = 0
        For Each dr As DataRow In drs
            tpzl = tpzl + dr("投坯重量")
            jhzl = dr("计划重量")
        Next
        If tpzl/jhzl < 0.96 Then
            idxs &= "'" & bh & "',"
        End If
    End If
Next
DataTables("计划配缸通知单").loadfilter = "订单明细编号对外 in (" & idxs.trim(",") & ")"
DataTables("计划配缸通知单").load

 


 回到顶部