以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  怎么把红色的筛选条件合在一起?单个筛选都成立,我想合并筛选,怎么都合不成?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=45701)

--  作者:小刚
--  发布时间:2014/2/9 10:21:00
--  怎么把红色的筛选条件合在一起?单个筛选都成立,我想合并筛选,怎么都合不成?

Dim khmc As WinForm.TextBox = e.Form.Controls("客户名称")
Dim khxh As WinForm.TextBox = e.Form.Controls("客户型号")
Dim rq1 As WinForm.DateTimePicker = e.Form.Controls("日期1") \'As  Date
Dim rq2 As WinForm.DateTimePicker = e.Form.Controls("日期2") \'As  Date
Dim Filter As String

Filter ="[客户名称] like \'%" & khmc.text & "%\'"
Filter ="[客户型号] like \'%" & khmc.text & "%\'"
Filter= "[下单日期] >= #" & rq1.text & "# And [下单日期] <= #" & rq2.text & "#"

DataTables("市场").LoadFilter = Filter
DataTables("市场").Load()

 

 

怎么把红色的筛选条件合在一起?单个筛选都成立,我想合并筛选,怎么都合不成?

另外帮忙加个判断条件,假如是空值的话,就不参与筛选。

谢谢!


--  作者:blackzhu
--  发布时间:2014/2/9 10:24:00
--  
帮助的  设计查询窗口  看看
--  作者:lsy
--  发布时间:2014/2/9 10:26:00
--  

老规矩,上例子。

对账做好了,你看一下。

[此贴子已经被作者于2014-2-9 10:26:01编辑过]

--  作者:小刚
--  发布时间:2014/2/9 10:43:00
--  
以下是引用blackzhu在2014-2-9 10:24:00的发言:
帮助的  设计查询窗口  看看

Dim Filter As String
With
e.Form.Controls("cmbProduct")
   
If .Value IsNot Nothing Then
        Filter =
"产品 = \'" & .Value & "\'"
   
End If
End
With
With
e.Form.Controls("cmbCustomer")
   
If .Value IsNot Nothing Then
       
If Filter > "" Then
            Filter = Filter &
" And "
       
End If
        Filter = Filter &
"客户 = \'" & .Value & "\'"
   
End If
End
With
... ... ...

 

只是针对Tables,我这是数据源DataTables,共同筛选是不一样的。


--  作者:blackzhu
--  发布时间:2014/2/9 10:44:00
--  
如果你觉得是这样,那我就无话可说了.
--  作者:小刚
--  发布时间:2014/2/9 11:09:00
--  
以下是引用blackzhu在2014-2-9 10:44:00的发言:
如果你觉得是这样,那我就无话可说了.

不要误会了,我是不会转变,不是说例子没用。道歉。


--  作者:小刚
--  发布时间:2014/2/9 11:10:00
--  
以下是引用lsy在2014-2-9 10:26:00的发言:

老规矩,上例子。

对账做好了,你看一下。

[此贴子已经被作者于2014-2-9 10:26:01编辑过]

例子已经上传了,谢谢!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:再谈筛选.rar


--  作者:blackzhu
--  发布时间:2014/2/9 12:16:00
--  
Dim Filter As String
With
 e.Form.Controls("cmbProduct")
    
If .Value IsNot Nothing Then
        Filter = 
"产品 = \'" & .Value & "\'"
    
End If
End
 With
With
 e.Form.Controls("cmbCustomer")
    
If .Value IsNot Nothing Then
        
If Filter > "" Then
            Filter = Filter & 
" And "
        
End If
        Filter = Filter & 
"客户 = \'" & .Value & "\'"
    
End If
End
 With
if  Filter > "" then
DataTables("市场").LoadFilter = Filter
DataTables("市场").Load()
end if