Foxtable(狐表)用户栏目专家坐堂 → 不同表对比参数。


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

主题:不同表对比参数。

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


加好友 发短信
等级:超级版主 帖子:107035 积分:544406 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/25 22:37:00 [只看该作者]

dr("库存表")=DataTables("订单附表").Compute("min(订单核算_出单数量)",

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


加好友 发短信
等级:九尾狐 帖子:2701 积分:17999 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2020/2/25 23:03:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20200225230106.jpg
图片点击可在新窗口打开查看
谢谢老师。最小那个可以了,
只是这个可以 通过窗口去判断吗?
比如,这里可以点击按钮判断被选择的行他们相同订单序号的中和是否大于对应的产品序号相同的数量大吗
如果大于就填出小窗口,
然后右边的大于的行筛选出,这个可以吗?感谢 感谢

就是左边表格相同编号的被选中的和是否等于右边对应相同的编号对应的数量,感谢 感谢 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:筛选行.table



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


加好友 发短信
等级:超级版主 帖子:107035 积分:544406 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/26 10:50:00 [只看该作者]

Dim dict As new Dictionary(of String,Integer)
For Each r As Row In Tables("窗口1_Table1").GetCheckedRows
    If dict.ContainsKey(r("订单序号")) Then
        dict(r("订单序号")) = dict(r("订单序号")) + r("订单数量")
    Else
        dict.Add(r("订单序号"),r("订单数量"))
    End If
Next

Dim s As String = ""
For Each r As Row In Tables("窗口1_Table2").Rows
    If dict.ContainsKey(r("产品序号")) AndAlso dict(r("产品序号")) < r("库存数量") Then
        s = s & ",'" & r("产品序号") & "'"
    End If
Next

If s > "" Then
    Tables("窗口1_Table2").Filter = "产品序号 in (" & s.Trim(",") & ")"
Else
    Tables("窗口1_Table2").Filter ="false"
End If

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


加好友 发短信
等级:九尾狐 帖子:2701 积分:17999 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2020/2/26 11:08:00 [只看该作者]

太感谢老师了,谢谢 谢谢,就是好像表1和表2有点反了样,感谢  感谢

然后大于改为小于好像也不对,老师能在帮忙看看吗?表一的可以再加一个条件吗?就是比如业务往来_货物状态不等于 待发货和已交货
Dim dict As new Dictionary(of String,Integer)
For Each r As Row In Tables("窗口1_Table1").GetCheckedRows
    If dict.ContainsKey(r("订单序号")) Then
        dict(r("订单序号")) = dict(r("订单序号")) + r("订单数量")
    Else
        dict.Add(r("订单序号"),r("订单数量"))
    End If
Next
Dim s As String = ""
For Each r As Row In Tables("窗口1_Table2").Rows
    If dict.ContainsKey(r("产品序号")) AndAlso dict(r("产品序号")) < r("库存数量") Then
        s = s & ",'" & r("产品序号") & "'"
    End If
Next
If s < "" Then
    Tables("窗口1_Table2").Filter = "产品序号 in (" & s.Trim(",") & ")"
Else
    Tables("窗口1_Table2").Filter ="false"
End If


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


加好友 发短信
等级:超级版主 帖子:107035 积分:544406 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/26 11:27:00 [只看该作者]

If s > "" Then这句代码没有问题,不要乱改

For Each r As Row In Tables("窗口1_Table1").GetCheckedRows
if r("业务往来_货物状态") <> "待发货" andalso r("业务往来_货物状态") <> "已交货" 
    If dict.ContainsKey(r("订单序号")) Then
        dict(r("订单序号")) = dict(r("订单序号")) + r("订单数量")
    Else
        dict.Add(r("订单序号"),r("订单数量"))
    End If
end if
Next

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


加好友 发短信
等级:九尾狐 帖子:2701 积分:17999 威望:0 精华:0 注册:2013/4/9 10:41:00
  发帖心情 Post By:2020/2/26 12:04:00 [只看该作者]

感谢老师,都可以了,实在是不知道如何感谢了,
现在就还是反的,老师,现在的程序是选择的行合小于表2对应行再筛选出来,然后可能改为表1选择的行的合大于表2对应的行并筛选出来吗?感谢 感谢 还有个不重要的小问题就是筛选出来后需要切换到全部显现才能在筛选。

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


加好友 发短信
等级:超级版主 帖子:107035 积分:544406 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/26 12:10:00 [只看该作者]

If dict.ContainsKey(r("产品序号")) AndAlso dict(r("产品序号")) > r("库存数量") Then

 回到顶部
总数 17 上一页 1 2