Foxtable(狐表)用户栏目专家坐堂 → [求助]筛选


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

主题:[求助]筛选

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


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/27 14:49:00 [显示全部帖子]

代码没有问题。确定有这个列名,并且有加载这个列

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


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/28 9:09:00 [显示全部帖子]

请上传实例测试

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


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/29 8:36:00 [显示全部帖子]

2个表都使用了同样的条件,但是2个表的列是不一样的。应该分开设置条件,比如:

Dim Filter As String
With e.Form.Controls("收款状态")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "收款状态 = '" & .Value & "'"
    End If
End With
……其它和承运人明细表有关的条件
If Filter > "" Then
    Tables("承运人明细表").Filter = Filter
End If

Dim Filter2 As String
With e.Form.Controls("收款标识")
    If .Value IsNot Nothing Then
        If Filter2 > "" Then
            Filter2 = Filter & " And "
        End If
        Filter2 = Filter2 & "收款标识 = '" & .Value & "'"
    End If
End With
……其它和接单明细表有关的条件
If Filter2 > "" Then
    Tables("接单明细表").Filter = Filter2
End If

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


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/1 13:53:00 [显示全部帖子]

如果窗口表是副本,参考:http://www.foxtable.com/webhelp/topics/1906.htm

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


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/1 14:21:00 [显示全部帖子]

既然副本Table是独立的,所以它必须有自己的名称,这样才能和原Table区分开来,其名称为 :

窗口名称_控件名称

假定副本Table控件的名称为“Table1”,所在窗口的名称为“窗口1”,那么不管其绑定到哪一个表,它的名称都是“窗口1_Table1”,我们可以通过这个名称来引用它 ,例如:

Tables("窗口1_Table1").Filter = "产品 = 'PD01'"


如果还是看不懂,请上传实例


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


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/1 15:54:00 [显示全部帖子]

改为使用窗口表的名称啊,这种基本的帮助都看不懂么

Tables("接单明细表")改为Tables("窗口1_接单明细表")

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


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/5 20:28:00 [显示全部帖子]


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


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/7 8:58:00 [显示全部帖子]

和规格型号的用法完全一样,条件改为日期不就行了?同样的用法,有区别吗?

Dim cmb As WinForm.ComboBox = e.Sender
If e.Form.Controls("DateTimePicker1").Value <> Nothing
    cmb.ComboList = DataTables("表A").GetComboListString("型号", "日期 = #" & e.Form.Controls("DateTimePicker1").Value & "#")
End If
[此贴子已经被作者于2020/7/7 8:59:11编辑过]

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


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/19 21:18:00 [显示全部帖子]

参考:http://www.foxtable.com/webhelp/topics/1058.htm

Dim cbo As WinForm.ComboBox = e.Form.Controls("ComboBox1")
Dim Filter As String
If cbo.text > "" Then
    Filter = cbo.text
    With e.Form.Controls("TextBox1")
        Filter = Filter & " like '%" & .Value & "%'"
    End With
End If

Tables("表A").Filter = Filter 

如果要查询后台,要改为加载
DataTables("表A").LoadFilter = Filter 
DataTables("表A").Load

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


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/20 15:50:00 [显示全部帖子]


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