Foxtable(狐表)用户栏目专家坐堂 → [求助]请教getcomboliststring结果中如何去掉特定值


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

主题:[求助]请教getcomboliststring结果中如何去掉特定值

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


加好友 发短信
等级:幼狐 帖子:174 积分:1665 威望:0 精华:0 注册:2018/4/22 18:54:00
[求助]请教getcomboliststring结果中如何去掉特定值  发帖心情 Post By:2019/4/2 23:55:00 [只看该作者]


老师好,深夜请教,打扰了,谢谢

下面的代码目的是在人员录入窗口先录入乡镇,然后从词典中用SQLGetComboListString方法筛选出该乡镇的供养单位,填入“供养单位”控件中,但代码不能用,请指教

Dim gydw As String = e.Form.Controls("ComboBox3").value 
Dim gnq As String = RibbonTabs.SelectedTab.Name   '---定义gnq是功能区的名称
If gnq = "乡镇敬老院人员信息系统" Then  '---如果功能区名称是乡镇集中供养人员信息系统
    e.sender.ComboList = DataTables("乡镇及供养单位词典").SQLGetComboListString("乡镇供养单位","乡镇供养单位 Like '%" & gydw & "% '" & " And 乡镇供养单位 Like '%敬老院%'")
ElseIf gnq = "村级养老点人员信息系统" Then
    e.sender.ComboList = DataTables("乡镇及供养单位词典").SQLGetComboListString("乡镇供养单位","乡镇供养单位 Like '%" & gydw & "% '" & " And 乡镇供养单位 Not Like '%敬老院%'")
End If

图片点击可在新窗口打开查看此主题相关图片如下:360截图2019040223412285.jpg
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:360截图20190402234258039.jpg
图片点击可在新窗口打开查看


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


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

Dim gydw As String = e.Form.Controls("ComboBox3").value 
Dim gnq As String = RibbonTabs.SelectedTab.Name   '---定义gnq是功能区的名称
If gnq = "乡镇敬老院人员信息系统" Then  '---如果功能区名称是乡镇集中供养人员信息系统
    e.sender.ComboList = DataTables("乡镇及供养单位词典").SQLGetComboListString("乡镇供养单位","乡镇供养单位 Like '%" & gydw & "%'" & " And 乡镇供养单位 Like '%敬老院%'")
ElseIf gnq = "村级养老点人员信息系统" Then
    e.sender.ComboList = DataTables("乡镇及供养单位词典").SQLGetComboListString("乡镇供养单位","乡镇供养单位 Like '%" & gydw & "%'" & " And 乡镇供养单位 Not Like '%敬老院%'")
End If

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


加好友 发短信
等级:幼狐 帖子:174 积分:1665 威望:0 精华:0 注册:2018/4/22 18:54:00
  发帖心情 Post By:2019/4/3 9:33:00 [只看该作者]

有点甜老师,我看了看,您对代码没有修改,可是代码不能用,麻烦您再仔细看看、改改
[此贴子已经被作者于2019/4/3 9:33:55编辑过]

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


加好友 发短信
等级:童狐 帖子:232 积分:1938 威望:0 精华:0 注册:2019/3/20 10:45:00
  发帖心情 Post By:2019/4/3 10:11:00 [只看该作者]

GetComboListString 是从 DataTables 中取值,能不能根据 table 当前显示的记录(已经经过筛选了)来取值?

或者说直接获取table中某列的不重复值?
[此贴子已经被作者于2019/4/3 10:12:13编辑过]

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


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

直接复制粘贴上面的代码测试即可啊

 

 


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


加好友 发短信
等级:幼狐 帖子:174 积分:1665 威望:0 精华:0 注册:2018/4/22 18:54:00
  发帖心情 Post By:2019/4/3 13:06:00 [只看该作者]

以下是引用有点甜在2019/4/3 10:18:00的发言:

直接复制粘贴上面的代码测试即可啊

 

 我把项目的bin文件夹删除之后再启动就能用了,谢谢甜老师


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


加好友 发短信
等级:幼狐 帖子:174 积分:1665 威望:0 精华:0 注册:2018/4/22 18:54:00
  发帖心情 Post By:2019/4/3 13:10:00 [只看该作者]

以下是引用martin723在2019/4/3 10:11:00的发言:
GetComboListString 是从 DataTables 中取值,能不能根据 table 当前显示的记录(已经经过筛选了)来取值?

或者说直接获取table中某列的不重复值?

SQLGetComboListString 是从datatables 中提取不重复的值,我这段代码涉及二次提取,感觉这种方法最简洁。谢谢


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


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

方法一,在后面加上你table的条件,如

 

 e.sender.ComboList = DataTables("乡镇及供养单位词典").SQLGetComboListString("乡镇供养单位","乡镇供养单位 Like '%" & gydw & "%'" & " And 乡镇供养单位 Not Like '%敬老院%' and " & Tables("表A").filter)

 

方法二,循环每一行获取不重复值,如

 

Dim t As Table = Tables("表A")
Dim ls As new List(of String)
For Each r As Row In t.Rows
    If ls.contains(r("第一列")) = False Then
        ls.add(r("第一列"))
    End If
Next
msgbox(String.join("|", ls.Toarray))


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


加好友 发短信
等级:幼狐 帖子:174 积分:1665 威望:0 精华:0 注册:2018/4/22 18:54:00
  发帖心情 Post By:2019/4/3 22:45:00 [只看该作者]

真心感谢甜老师不厌其烦、举一反三的指教!

 回到顶部