DbServer.SetFilter 方法 | |
设置过滤条件。
命名空间:
VO
程序集:
VORDDClasses (在 VORDDClasses.dll 中) 版本:2.22 GA
语法 VIRTUAL METHOD SetFilter(
cbFilterBlock,
cFilterText
) AS USUAL CLIPPER
[ClipperCallingConventionAttribute(new string[] { ... })]
public virtual __Usual SetFilter(
__Usual cbFilterBlock = default,
__Usual cFilterText = default
)
查看代码参数
- cbFilterBlock (Optional)
- 类型:__Usual
以可执行形式表示过滤条件的代码块。如果省略代码块,则过滤表达式的字符串版本将宏编译为代码块。 - cFilterText (Optional)
- 类型:__Usual
过滤条件。如果省略,DBServer:Filter 访问方法返回 NULL_STRING。
返回值
类型:
__Usual
如果成功则返回 TRUE;否则返回 FALSE。
备注
两个参数都指定过滤表达式,一个是代码块形式,一个是字符串形式。两个参数都是可选的,但必须提供至少一个。
指定这两种形式的原因是编译的代码块更快,而字符串版本可以通过 Filter 访问方法报告回来。
显然,如果指定了两种形式,它们应该定义相同的表达式。
示例
以下示例演示了使用 DBServer:SetFilter() 设置过滤器的各种方法。过滤条件是客户编号(CustNo)超过 20,000。请注意,用户 GoTop()
方法通过移动记录指针来调用过滤表达式。
1
2oDBCust:SetFilter({||CustNo > 20000})
3oDBCust:GoTop()
4
5oDBCust:SetFilter({||CustNo > 20000}, "CustNo > 20000")
6oDBCust:GoTop()
7
8oDBCust:SetFilter(, "CustNo > 20000")
9oDBCust:GoTop()
10
11oDBCust:SetFilter(, [ Gender = '] + SELF:cGender + ['] )
12oDBCust:GoTop()
参见