Foxtable(狐表)用户栏目专家坐堂 → 如何排除重复值的问题


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

主题:如何排除重复值的问题

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


加好友 发短信
等级:小狐 帖子:339 积分:3760 威望:0 精华:0 注册:2017/9/7 15:20:00
如何排除重复值的问题  发帖心情 Post By:2018/12/29 15:56:00 [只看该作者]

老师您好! 问题不太好描述,所以直接上了实例!

我想做一个可以批量往仓库中放入商品资料的窗口,所以仓库中已有的商品不能显示在窗口中,

比如:往A仓库放商品则只显示A仓库以外的商品,而且不显示A仓库中已有的商品ID

也就是说:示例中选择A仓库,应该只显示商品 14,16 才是正确的!
选择B仓库,应该只显示商品 1,5,6,16 才是正确的!

不知从何下手,请老师帮助!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:重复值的问题.foxdb



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


加好友 发短信
等级:超级版主 帖子:106566 积分:541995 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/12/29 16:30:00 [只看该作者]

Dim Filter As String
If e.sender.text = "" Then
    Filter = ""
Else
    Filter = "[仓库] <> '" & e.sender.text & "'"
    Dim str As String = DataTables("产品").GetComboListString("商品ID","[仓库] = '" & e.sender.text & "'")
    Filter = Filter & " and 商品ID not in ('" & str.Replace("|","','") & "')"
End If

Tables("窗口1_Table1").Filter = Filter


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


加好友 发短信
等级:小狐 帖子:339 积分:3760 威望:0 精华:0 注册:2017/9/7 15:20:00
  发帖心情 Post By:2018/12/29 22:41:00 [只看该作者]

完美解决,谢谢啦!

只是还有点疑问,这种把仓库中所有的商品都列出来比较的话,如果商品数量成千上万的时候,会卡或者崩溃吗?图片点击可在新窗口打开查看
[此贴子已经被作者于2018/12/29 23:15:05编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/12/30 9:38:00 [只看该作者]

以下是引用304376480在2018/12/29 22:41:00的发言:
完美解决,谢谢啦!

只是还有点疑问,这种把仓库中所有的商品都列出来比较的话,如果商品数量成千上万的时候,会卡或者崩溃吗?图片点击可在新窗口打开查看
[此贴子已经被作者于2018/12/29 23:15:05编辑过]

 

1、这种查询本来效率就比较低,具体有多低,你自行测试;

 

2、你可以添加辅助列处理,那些已经确定重复的值,加一个标记,下次直接筛选标记列,不需要重复这样操作。

 


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


加好友 发短信
等级:小狐 帖子:339 积分:3760 威望:0 精华:0 注册:2017/9/7 15:20:00
  发帖心情 Post By:2018/12/30 16:58:00 [只看该作者]

以下是引用有点甜在2018/12/30 9:38:00的发言:

 

2、你可以添加辅助列处理,那些已经确定重复的值,加一个标记,下次直接筛选标记列,不需要重复这样操作。

 

辅助列?是添加一个字符列,然后把商品的所在仓库用数组{A,B,C}标记出来吗?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/12/30 17:23:00 [只看该作者]

以下是引用304376480在2018/12/30 16:58:00的发言:

辅助列?是添加一个字符列,然后把商品的所在仓库用数组{A,B,C}标记出来吗?

 

比较叫做【A显示】列,所有满足条件的行,设置为true,不满足的设置成false,下次筛选,直接筛选 a显示=true 的行。

 

 


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


加好友 发短信
等级:小狐 帖子:339 积分:3760 威望:0 精华:0 注册:2017/9/7 15:20:00
  发帖心情 Post By:2018/12/30 18:35:00 [只看该作者]

好的,谢谢了,现在先不研究这个了,以后有需要再来搞吧!

 回到顶部