Foxtable(狐表)用户栏目专家坐堂 → 还是filter


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

主题:还是filter

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


加好友 发短信
等级:小狐 帖子:358 积分:4047 威望:0 精华:0 注册:2014/7/29 23:42:00
还是filter  发帖心情 Post By:2015/1/23 0:58:00 [只看该作者]

还是那三个text,一个完全匹配,两个模糊匹配,从两个表中查,帮忙再看看吧。
两个表筛出来,结果总是一行。每个text筛出至少一条数据的话,按说应该至少三行才对。但结果总是后面的覆盖前面的,最后显示一条数据。


Dim Filter1 As String
Dim Filter2 As String
Dim Filter3 As String
Dim Filter As String
Dim txt1 As String = e.Form.Controls("TextBox7").Text
Dim txt2 As String = e.Form.Controls("TextBox8").Text
Dim txt3 As String = e.Form.Controls("TextBox9").Text



txt1 = "'" & txt1 & "'"
Filter1 = "编号 = " & txt1

txt2 = "'%" & txt2 & "%'"
txt3 = "'%" & txt3 & "%'"
Filter2 = "公司名称 Like " & txt2
Filter3 = "产品名称 Like " & txt3

If txt1 <> "''" And txt2 <>"'%%'" And txt3 <>"'%%'" Then
   filter = filter1 & " or " & filter2 & " or " & filter3
 
End If

If txt1 = "''" And txt2 <>"'%%'" And txt3 <>"'%%'" Then
   filter = filter2 & " or " & filter3

End If

If txt1 = "''" And txt2 ="'%%'" And txt3 <>"'%%'" Then
   filter = filter3

End If

If txt1 <> "''" And txt2 ="'%%'" And txt3 <>"'%%'" Then
   filter = filter1 & " or " & filter3

End If

If txt1 <> "''" And txt2 ="'%%'" And txt3 ="'%%'" Then
   filter = filter1

End If

If txt1 = "''" And txt2 <>"'%%'" And txt3 ="'%%'" Then
   filter = filter2

End If

If txt1 = "''" And txt2 ="'%%'" And txt3 ="'%%'" Then
   messagebox.show("请填写要搜索的内容","提示")

End If

If txt1 <> "''" And txt2 <>"'%%'" And txt3 ="'%%'" Then
   filter = filter1 & " or " & filter2

End If

Dim dr1 As DataRow
With DataTables("ChemSign1")    
    
         .LoadFilter = Filter
    .Load
    dr1 = .Find(Filter)

End With

Dim dr2 As DataRow
With DataTables("ChemSign2")    
    
         .LoadFilter = Filter
    .Load
    dr2 = .Find(Filter)

End With


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


加好友 发短信
等级:小狐 帖子:358 积分:4047 威望:0 精华:0 注册:2014/7/29 23:42:00
  发帖心情 Post By:2015/1/23 0:58:00 [只看该作者]

 我要被这个filter折磨死了

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


加好友 发短信
等级:八尾狐 帖子:1964 积分:15604 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2015/1/23 5:54:00 [只看该作者]

Dim dr1 As DataRow
With DataTables("ChemSign1")    
    
         .LoadFilter = Filter
         .Loadtop=“”
    .Load
    dr1 = .Find(Filter) 

End With

Dim dr2 As DataRow
With DataTables("ChemSign2")    
    
         .LoadFilter = Filter
         .Loadtop=“
    .Load
这样改试试
    dr2 = .Find(Filter) 

End With

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


加好友 发短信
等级:小狐 帖子:358 积分:4047 威望:0 精华:0 注册:2014/7/29 23:42:00
回复:(新福星)Dim dr1 As DataRowWith DataTables(...  发帖心情 Post By:2015/1/23 7:29:00 [只看该作者]

 谢谢,增加那个top的一行,内容第一次搜的挺好,多次运行后面就不变化了,结果就不对了。
之前我那代码换了台电脑,运行却能出正确结果。有些郁闷。到底是为啥?

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


加好友 发短信
等级:小狐 帖子:358 积分:4047 威望:0 精华:0 注册:2014/7/29 23:42:00
回复:(machle)回复:(新福星)Dim dr1 As DataRow...  发帖心情 Post By:2015/1/23 8:03:00 [只看该作者]

 刚检查运行,又不行了。不知道代码到底哪里有问题。

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/1/23 8:05:00 [只看该作者]

弹出你的FIlter看看 值是什么

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


加好友 发短信
等级:小狐 帖子:358 积分:4047 威望:0 精华:0 注册:2014/7/29 23:42:00
回复:(Bin)弹出你的FIlter看看 值是什么  发帖心情 Post By:2015/1/23 8:12:00 [只看该作者]

 假如说前两个text有文字,点查找按钮,filter是
编号 = '1203' or 公司名称 Like '%公司%'

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/1/23 8:17:00 [只看该作者]

条件没错啊.

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


加好友 发短信
等级:小狐 帖子:358 积分:4047 威望:0 精华:0 注册:2014/7/29 23:42:00
回复:(Bin)条件没错啊.  发帖心情 Post By:2015/1/23 8:26:00 [只看该作者]

 把昨天您回复的那个按钮的代码直接复制过来,对应改完,前面那个页面一点问题没有,这个页面每次就只查出一行数据。感觉是只查出text2的,好像后面的把前面的覆盖了。

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/1/23 8:27:00 [只看该作者]

根据你7楼的条件,没有错.除非没有符合条件的数据. 

 回到顶部
总数 26 1 2 3 下一页