Foxtable(狐表)用户栏目专家坐堂 → 复合查询功能


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

主题:复合查询功能

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


加好友 发短信
等级:婴狐 帖子:8 积分:127 威望:0 精华:0 注册:2017/6/14 16:41:00
复合查询功能  发帖心情 Post By:2017/7/10 16:22:00 [只看该作者]

图片点击可在新窗口打开查看请老师帮忙,我想做一个姓名和单位(可选)的复合查询功能,请老师帮忙写一下代码,谢谢

此主题相关图片如下:快照1.jpg
按此在新窗口浏览图片


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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2017/7/10 17:00:00 [只看该作者]

如果要回复怎么写,就是:
http://www.foxtable.com/webhelp/scr/1058.htm

如果你搞不定,你可以直接做个例子发上来,我们帮你写好。

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


加好友 发短信
等级:婴狐 帖子:8 积分:127 威望:0 精华:0 注册:2017/6/14 16:41:00
  发帖心情 Post By:2017/7/10 17:04:00 [只看该作者]

Dim tbx As WinForm.TextBox = e.Form.Controls("textfind")
Dim str As String=tbx.value
Dim dr As DataRow=DataTables("证件管理").find("姓名='"& str &"'")
If dr IsNot Nothing Then
   Dim idx As Integer = Tables("证件管理").findRow(dr)
   If idx >= 0 Then
    Tables("证件管理").position = idx
   End If
End If
姓名查询功能可以使用,还想再加个单位选择,姓名和单位一块筛选,请帮忙写下代码,谢谢

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


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


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


加好友 发短信
等级:婴狐 帖子:8 积分:127 威望:0 精华:0 注册:2017/6/14 16:41:00
  发帖心情 Post By:2017/7/10 17:23:00 [只看该作者]

试了没成功,请老师帮忙写下代码

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


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

以下是引用trqfxd在2017/7/10 17:23:00的发言:
试了没成功,请老师帮忙写下代码

 

不会做请上传具体foxtable实例。


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


加好友 发短信
等级:婴狐 帖子:8 积分:127 威望:0 精华:0 注册:2017/6/14 16:41:00
  发帖心情 Post By:2017/7/14 14:47:00 [只看该作者]

请教老师,我想实现姓名和单位复合查询功能,我的代码如下,但不成功,不知道如何将两个查询条件结合,请帮忙

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


Dim tbx As WinForm.TextBox = e.Form.Controls("textfind")
Dim str As String=tbx.value
Dim dr As DataRow=DataTables("证件管理").find("姓名='"& str &"'")
If dr IsNot Nothing Then
   Dim idx As Integer = Tables("证件管理").findRow(dr)
   If idx >= 0 Then
    Tables("证件管理").position = idx
   End If
End If
Dim cmb As WinForm.ComboBox = e.form.Controls("dw")
cmb.ComboList = DataTables("证件管理").GetComboListString("单位")
Dim Filter As String
With e.Form.Controls("dw")
    If .Value IsNot Nothing Then
        Filter = "单位= '" & .Value & "'"
    End If
End With

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


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

Dim tbx As WinForm.TextBox = e.Form.Controls("textfind")
Dim cmb As WinForm.ComboBox = e.form.Controls("dw")
Dim filter As String = "1=1"
If tbx.Text > "" Then
    filter &= " and 姓名='"& tbx.text &"'"
End If
If cmb.Text > "" Then
    filter &= " and 单位='"& cmb.text &"'"
End If
Tables("证件管理").filter = filter

 回到顶部