以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]老师我要做一个窗体模糊搜索,请老师明示一下  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=147870)

--  作者:和谐
--  发布时间:2020/3/26 10:54:00
--  [求助]老师我要做一个窗体模糊搜索,请老师明示一下
除了隐藏列,模糊搜索返回所有显示列包含要搜索的数据
--  作者:有点蓝
--  发布时间:2020/3/26 11:14:00
--  
参考:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=52890&skin=0
--  作者:和谐
--  发布时间:2020/3/26 17:56:00
--  

Dim Filter As String = "1=2"  老师这句为什么要这样指定呢

Dim val As String = e.Form.Controls("搜索框").Text

If val > "" Then
    For Each c As DataCol In DataTables("VIP基本信息大海_VIP基本信息").DataCols
        Filter &= " or Convert(varchar(100), " & c.name & ") like \'%" & val & "%\'  "       还有这句
    Next
End If

If filter > "" Then
    DataTables("VIP基本信息大海_VIP基本信息").LoadFilter = filter
    DataTables("VIP基本信息大海_VIP基本信息").Load()
End


--  作者:有点蓝
--  发布时间:2020/3/27 8:38:00
--  
1、Dim Filter As String = "1=2"是为了减少下面这种代码判断
If Filter > "" Then
    Filter = Filter & " And "
End If

2、数值型、逻辑型列不能使用like,所以需要转换为字符串

--  作者:和谐
--  发布时间:2020/3/27 9:02:00
--  
感谢老师