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


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

主题:还是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折磨死了

 回到顶部
帅哥哟,离线,有人找我吗?
machle
  3楼 | 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
  4楼 | 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 [显示全部帖子]

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

 回到顶部
帅哥哟,离线,有人找我吗?
machle
  5楼 | 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 '%公司%'

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


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

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

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


加好友 发短信
等级:小狐 帖子:358 积分:4047 威望:0 精华:0 注册:2014/7/29 23:42:00
回复:(Bin)根据你7楼的条件,没有错.除非没有符合条...  发帖心情 Post By:2015/1/23 8:28:00 [显示全部帖子]

 我是看着后台数据点查询测试,肯定有数据。

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


加好友 发短信
等级:小狐 帖子:358 积分:4047 威望:0 精华:0 注册:2014/7/29 23:42:00
回复:(Bin)看11楼.  发帖心情 Post By:2015/1/23 8:34:00 [显示全部帖子]

 我分别在text里输入数据,每个都能搜出一行数据,然后再逐个组合,发现,text2的优先性高于text3,text3的优先性高于text1,text2条件查出来的一行数据会把3的覆盖,3的会把1的覆盖。
按说应该显示很多行数据,但是每次至多显示1行。就是优先性最高的那个text条件查出来的数据。
[此贴子已经被作者于2015-1-23 8:34:51编辑过]

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


加好友 发短信
等级:小狐 帖子:358 积分:4047 威望:0 精华:0 注册:2014/7/29 23:42:00
回复:(Bin)根据你7楼的条件,没有错.除非没有符合条...  发帖心情 Post By:2015/1/23 9:03:00 [显示全部帖子]

 我做了个例子发现是动态加载数据源的问题,我把加载外部数据默认是1行,改成10行显示10行。按说我那个datatable.loadfilter算是动态加载条件了啊?

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


加好友 发短信
等级:小狐 帖子:358 积分:4047 威望:0 精华:0 注册:2014/7/29 23:42:00
回复:(Bin)你把加载行数,改为加载所有行.  发帖心情 Post By:2015/1/23 9:05:00 [显示全部帖子]

 那每次打开软件,加载表的速度会很慢啊。

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