以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 查询按钮公式  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=53000)

--  作者:wumingrong1
--  发布时间:2014/6/27 10:47:00
--  [求助] 查询按钮公式
我有以下一个“查询”按钮的命令,一点击这个按钮,那么他会进行筛选出符合条件的内容;如果我是希望不要继续筛选、只是将光标移到到符合条件的行上,怎么修改这个命令?

Dim 输入查询日期 As Date = e.form.controls("输入查询日期").Value
Tables("网维中心值班表").Filter=  "[日期] = #"& 输入查询日期 & "#"

--  作者:有点甜
--  发布时间:2014/6/27 10:48:00
--  
如果有多行呢?
--  作者:wumingrong1
--  发布时间:2014/6/27 10:53:00
--  
如果只有一行那么将光标移动到该行、如果有多行就进行筛选
--  作者:有点甜
--  发布时间:2014/6/27 10:53:00
--  

 你可以参考这个方法。

 

http://www.foxtable.com/help/topics/0553.htm

 


--  作者:有点甜
--  发布时间:2014/6/27 10:55:00
--  
以下是引用wumingrong1在2014-6-27 10:53:00的发言:
如果只有一行那么将光标移动到该行、如果有多行就进行筛选

 

Dim 输入查询日期 As Date = e.form.controls("输入查询日期").Value
Dim Filter As String =  "[日期] = #"& 输入查询日期 & "#"
If Tables("网维中心值班表").Compute("count(_Identify)", filter) = 1 Then
    Tables("网维中心值班表").Position = Tables("网维中心值班表").FindRow(filter, 0, False)
Else
    Tables("网维中心值班表").filter = filter
End If


--  作者:wumingrong1
--  发布时间:2014/6/27 16:24:00
--  
我有有个  右键菜单 中有一个查询公式;如果查询不到任何内容、那么表中显示的就是全空;但这是我是无法使用右键的,那么我也就无法使用右键的取消筛选按钮进行取消筛选;我该如何确保在查询不到内容的时候弹出提示而不进行任何操作?

Syscmd.Filter.Contains()

--  作者:有点甜
--  发布时间:2014/6/27 16:30:00
--  
Dim 输入查询日期 As Date = e.form.controls("输入查询日期").Value
Dim Filter As String =  "[日期] = #"& 输入查询日期 & "#"
Dim count As Integer = Tables("网维中心值班表").Compute("count(_Identify)", filter)
If count  = 1 Then
    Tables("网维中心值班表").Position = Tables("网维中心值班表").FindRow(filter, 0, False)
Else If count = 0 Then
    msgbox("没查到")
Else
    Tables("网维中心值班表").filter = filter
End If

--  作者:wumingrong1
--  发布时间:2014/6/27 16:43:00
--  
如果我使用的是    Syscmd.Filter.Contains()   这个命令(就是打开系统自动的窗口);该怎么做?


图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看

筛选结果为空、此时无法使用右键的  取消筛选  按钮

图片点击可在新窗口打开查看此主题相关图片如下:3.jpg
图片点击可在新窗口打开查看


--  作者:有点甜
--  发布时间:2014/6/27 16:47:00
--  

 去设置表的beforeFilter

 

Dim count As Integer = e.Table.Compute("count(_Identify)", e.Filter)
If count = 0 Then
    msgbox("没有查找到")
    e.cancel = True
End If