替代滤波方法/单场滤波

介绍

那里有很多过滤方法,这是

不是有关如何在Access中进行过滤的教程。 此外,Access在界面中内置了一些很棒的“筛选”选项,但是由于人们不再自己解决问题,通常最终需要进行某种培训。

我以为我会分享我们已经使用了两年的非常成功的过滤方法。 不是为了胆小的人

而不是针对初学者 ,实际上, 这不是针对初学者的,因为有很多设置可以使它起作用,但是对于那些正在构建密集数据库的人来说,您可能会发现值得付出努力。

从用户的角度来看,它非常易于使用且功能强大。 他们所看到的只是一个工具栏,可以在其中输入一些搜索条件。 一旦他们输入了文本,或者他们从组合框中选择了一个预定义的过滤器,表单的过滤器就会更新以返回其中包含用户信息的记录。 而已。 请勿在文本中添加*。 没有选择要查看的字段。

数据

需要“过滤器”表来定义过滤器。 由于筛选器的根定义位于表中,因此它在执行操作方面具有很大的灵活性。 过滤器表的几个关键字段是

BaseTableWhere 。 这些字段直接与SQL关键字From和Where有关。 存储的Where子句代表SQL Where子句,当应用实际的Filter时,存储的Where子句通常会对其执行一些字符串替换。 该表中还有其他一些字段,用于定义如何使用过滤器以及如何实现过滤器。

要定义过滤器(存储在过滤器表中),有一个名为“过滤器”的表单,其中以“过滤器表”为源。 我知道,对吧? 这是一个非常繁忙的表格,因为正在进行很多工作。

编码

就像Access中的大多数内容一样,数据只是其中的一半。 通常,还需要一些代码来理解数据。 要使过滤器正常工作(

您可能不需要了解所有这一切; 仅供参考。 您可能只想跳到示例 ):
  • 一些控件需要添加到表单
    cboFilter
    LblFilter
    btnFilter
    btnRemoveFilter
    lblFilterNotice
    imgFilterNotice
  • 一些代码需要添加到表单中。 有关实际代码,请参见示例。 并非所有这些都是必要的,但这是一个很好的清单。
    Form_Load()
    callFormCurrent()
    Form_Current()
    btnFilter_Click()
    cboFilter_AfterUpdate()
    updateFilter()
    btnRemoveFilter_Click()
  • 需要一些全局变量。 它们使用不多,但需要使用它们才能允许弹出窗体收集更多信息的更复杂的过滤器。
    公用gFilterName作为字符串
    公共gFilterParmText1作为字符串
    公用gFilterParmText2作为字符串
    公共gFilterParmText3作为字符串
    公共gFilterParmText4作为字符串
    公用gFilterParmDate1作为字符串
    公用gFilterParmDate2作为字符串
  • 需要向模块添加一些通用代码,这是完成大部分繁重工作的地方。 还有其他支持这些方法的方法,但请注意这三种方法。
    getTableFilters()
    buildDefaultFilterWhereClause()
    buildFilterWhereClause()
    replaceTags()
这个例子。 再次,这不是初学者!

似乎最好的方法是通过为示例数据库提供一些不同的过滤实现,来了解所有这些如何组合在一起。

  • “过滤器”按钮是定义所有过滤器的位置。
  • 报价,客户,员工,文件和事件日志按钮将打开示例表格,这些表格都可以使用不同的过滤方法进行过滤。
    报价-使用客户和雇员表来构建超级基本报价。
    客户-仅一些客户记录。 该表格可以用作查找或基本显示。
    员工-基本的用户表,在整个示例中都可用作ComboBox的源。 它还说明了如何过滤权限。
    文件-这可以是一张毛茸茸的表格,它允许用户从要过滤和报告的文件夹中导入文件信息列表。
    事件日志-示例数据库具有自定义事件处理程序,该事件处理程序将引发的所有错误转储到事件日志中,然后可以对其进行过滤。
  • “关于”按钮为数据库提供了一些其他用法。
附加图片
文件类型:jpg SingleFieldFilter_Quote.jpg (42.0 KB,716浏览)
文件类型:jpg SingleFieldFilter_Filter.jpg (73.1 KB,699视图)
文件类型:jpg SingleFieldFilter_MainMenu.jpg (45.2 KB,615视图)
附加的文件
文件类型:zip SingleFieldFilter.zip (433.5 KB,120视图)

From: https://bytes.com/topic/access/insights/966994-alternative-filter-method-single-field-filtering

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值