Foxtable(狐表)用户栏目专家坐堂 → 如何列出不重复值


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

主题:如何列出不重复值

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


加好友 发短信
等级:婴狐 帖子:11 积分:137 威望:0 精华:0 注册:2016/4/9 11:31:00
如何列出不重复值  发帖心情 Post By:2016/5/31 10:30:00 [只看该作者]

请教一下,我有三个表分别为 报价主表 报价明细表 产品资料表
报价主表和报价明细表以报价单编号关联,
我用窗口加载产品资料表,添加产品资料进去报价明细表后,往后如果还要再添加进去,希望窗口的产品资料表只列出尚未添加过的产品资料,

DataTables("产品资料表").LoadFilter = "产品资料编号 not in (select 产品资料编号 fro m {报价明细表})"
DataTables("产品资料表").Load

因为每个客户的产品报价项目不相同,我以报价单编号作为区分客户,所以希望窗口的产品资料表,显示以报价单编号过滤并且产品资料编号不重复值,要怎么写才好?

[此贴子已经被作者于2016/5/31 10:37:14编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/31 10:37:00 [只看该作者]

这个意思?

 

Dim bjdh As String = "123456789"

DataTables("产品资料表").LoadFilter = "产品资料编号 not in (select 产品资料编号 fro m {报价明细表} Where 报价单编号 = '" & bjdh & "')"
DataTables("产品资料表").Load

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


加好友 发短信
等级:婴狐 帖子:11 积分:137 威望:0 精华:0 注册:2016/4/9 11:31:00
  发帖心情 Post By:2016/5/31 11:15:00 [只看该作者]

以下是引用大红袍在2016/5/31 10:37:00的发言:

这个意思?

 

Dim bjdh As String = "123456789"

DataTables("产品资料表").LoadFilter = "产品资料编号 not in (select 产品资料编号 fro m {报价明细表} Where 报价单编号 = '" & bjdh & "')"
DataTables("产品资料表").Load

好像不是这样

 

假使产品资料表里有10种产品

报价单编号001已经加入其中4种产品,报价单编号002已经加入7种产品,

当我在报价主表选中报价单编号001时进入窗口,希望窗口的产品资料表,显示是报价单编号001尚未加入的6种产品,

而在报价主表选中报价单编号002时进入窗口,希望窗口的产品资料表,显示是报价单编号002尚未加入的3种产品。

 

 


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/31 11:19:00 [只看该作者]

就是3楼那样的代码,bjdh替换成对应的单号就可以啊。

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


加好友 发短信
等级:婴狐 帖子:11 积分:137 威望:0 精华:0 注册:2016/4/9 11:31:00
  发帖心情 Post By:2016/5/31 12:09:00 [只看该作者]

以下是引用大红袍在2016/5/31 11:19:00的发言:
就是3楼那样的代码,bjdh替换成对应的单号就可以啊。

Dim bjdh As String = " '" & Tables("报价单主表").Current("报价单编号") & "' "

DataTables("产品资料表").LoadFilter = "产品资料编号 not in (select 产品资料编号 fro m {报价明细表} Where 报价单编号 = '" & bjdh & "')"
DataTables("产品资料表").Load

 

语法错误。 在查询表达式 '(产品资料编号 not in (select 产品资料编号 fro m [~TMPCLP报价明细表] Where 报价单编号 = ' 'BJD0002 ''))' 中。


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/31 12:09:00 [只看该作者]

Dim bjdh As String = Tables("报价单主表").Current("报价单编号")

DataTables("产品资料表").LoadFilter = "产品资料编号 not in (select 产品资料编号 fro m {报价明细表} Where 报价单编号 = '" & bjdh & "')"
DataTables("产品资料表").Load

 


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


加好友 发短信
等级:婴狐 帖子:11 积分:137 威望:0 精华:0 注册:2016/4/9 11:31:00
  发帖心情 Post By:2016/5/31 12:15:00 [只看该作者]

以下是引用大红袍在2016/5/31 12:09:00的发言:

Dim bjdh As String = Tables("报价单主表").Current("报价单编号")

DataTables("产品资料表").LoadFilter = "产品资料编号 not in (select 产品资料编号 fro m {报价明细表} Where 报价单编号 = '" & bjdh & "')"
DataTables("产品资料表").Load

 

可以了,谢谢老师


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


加好友 发短信
等级:婴狐 帖子:11 积分:137 威望:0 精华:0 注册:2016/4/9 11:31:00
  发帖心情 Post By:2016/5/31 12:26:00 [只看该作者]

以下是引用大红袍在2016/5/31 12:09:00的发言:

Dim bjdh As String = Tables("报价单主表").Current("报价单编号")

DataTables("产品资料表").LoadFilter = "产品资料编号 not in (select 产品资料编号 fro m {报价明细表} Where 报价单编号 = '" & bjdh & "')"
DataTables("产品资料表").Load

 

出现一个奇怪现象,回到产品资料表只出现刚筛选后的几个资料,而且报价明细表里除了产品资料编号,以外的产品资料讯息都显示空白,重新开启foxtable,都又可以正常显示,这是什么情形?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/31 14:31:00 [只看该作者]

那你不要用加载,改成筛选

 

Dim bjdh As String = Tables("报价单主表").Current("报价单编号")

Dim bhs As String = DataTables("报价明细表").GetComboListString("产品资料编号", "报价单编号 = '" & bjdh & "'").replace("|", "','")

Tables("产品资料表").Filter = "产品资料编号 not in ('" & bhs & "')"
 

 

 


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


加好友 发短信
等级:婴狐 帖子:11 积分:137 威望:0 精华:0 注册:2016/4/9 11:31:00
  发帖心情 Post By:2016/5/31 18:04:00 [只看该作者]

以下是引用大红袍在2016/5/31 14:31:00的发言:

那你不要用加载,改成筛选

 

Dim bjdh As String = Tables("报价单主表").Current("报价单编号")

Dim bhs As String = DataTables("报价明细表").GetComboListString("产品资料编号", "报价单编号 = '" & bjdh & "'").replace("|", "','")

Tables("产品资料表").Filter = "产品资料编号 not in ('" & bhs & "')"
 

 

 

复制贴进窗口的AfterLoad,可是是显示全部产品,并没有筛选


 回到顶部
总数 14 1 2 下一页