以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何设计查询快捷菜单?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=146687)

--  作者:yacity
--  发布时间:2020/2/29 11:02:00
--  如何设计查询快捷菜单?
我们用的右键快捷菜单 90%以上都是查询功能。而查询的时候90都包含*号。比如12*13 等等。但是foxtable 不支持直接查询带*号。就想到自己做一个右键快捷查询的模块。
有个问题没搞明白,这个查询窗口要归到哪一个表呢?做出了查询窗口,代码该怎么写?如何保证它能够适用所有的表呢?


此主题相关图片如下:4.jpg
按此在新窗口浏览图片
[此贴子已经被作者于2020/2/29 11:03:54编辑过]

--  作者:有点蓝
--  发布时间:2020/2/29 11:08:00
--  
窗口使用独立,模式窗口或者共有窗口,不需要归到哪个表,所有者表清空即可

当前表使用currenttable即可适用所有的表
--  作者:yacity
--  发布时间:2020/3/1 9:04:00
--  
能够查询包含*号的 字符串,适用所有当前表,当前列,代码怎么写呢?

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


--  作者:yacity
--  发布时间:2020/3/1 10:17:00
--  
Dim Filter As String
With e.Form.Controls("textbox1")
    If .Value IsNot Nothing Then
 Filter =  "guige like \'%" & .Value.Replace("*", "[*]") & "%\' or chanpinname like \'%" & .Value.Replace("*", "[*]") & "%\' "
   
    End If
End With

If Filter > "" Then
  CurrentTable.Filter = Filter
End If

如果要适用当前表,当前列 怎么写?

--  作者:y2287958
--  发布时间:2020/3/1 10:20:00
--  
CurrentTable.Cols(CurrentTable.ColSel)
--  作者:yacity
--  发布时间:2020/3/1 16:12:00
--  
???还是不会弄,能明示一下吗?
--  作者:有点蓝
--  发布时间:2020/3/1 23:01:00
--  
If Filter > "" Then
  CurrentTable.Filter = Filter
End If

这个用法就已经是适用当前表了

--  作者:yacity
--  发布时间:2020/3/2 8:47:00
--  
适用当前列呢?
--  作者:有点蓝
--  发布时间:2020/3/2 8:50:00
--  
比如

Filter =  CurrentTable.Cols(CurrentTable.ColSel).name & " like \'%" & .Value.Replace("*", "[*]") & "%\' "
--  作者:yacity
--  发布时间:2020/3/2 9:15:00
--  
图片点击可在新窗口打开查看