Functions.SetSoftSeek 方法 (Boolean) | |
返回并可选地更改设置,以确定当未找到精确匹配时,寻址操作是否会找到近似匹配。
命名空间:
XSharp.Core
程序集:
XSharp.Core (在 XSharp.Core.dll 中) 版本:2.22 GA
语法 FUNCTION SetSoftSeek(
lNewSetting AS LOGIC
) AS LOGIC
public static bool SetSoftSeek(
bool lNewSetting
)
查看代码参数
- lNewSetting
- 类型:Boolean
TRUE 在未找到精确匹配后将记录指针移动到下一个具有更高键值的记录;FALSE 在未找到精确匹配后将记录指针移动到文件末尾。
初始默认值为 FALSE。
返回值
类型:
Boolean
如果
lNewSetting 未指定,SetSoftSeek() 返回当前设置。
如果指定了
lNewSetting,则返回之前的设置。
备注
SetSoftSeek() 启用相对寻址,这是一种搜索命令并返回记录的方法,即使未找到指定键的匹配项。
当指定 TRUE 时,如果未找到寻址操作的匹配项(例如 SEEK 命令或 DBSeek() 函数),记录指针将设置为下一个逻辑记录,具有比寻址参数更高的键值。由于 DBSetFilter()、SetDeleted() 或控制顺序的条件,未可见的记录在搜索下一个更高的键值时会被跳过。
如果没有记录具有更高的键值,记录指针将定位在 LastRec() + 1,EOF() 返回 TRUE,Found() 返回 FALSE。只有实际找到记录时,Found() 才会返回 TRUE。
对于相对查找,它永远不会返回 TRUE。
当指定 FALSE 时,如果寻址操作不成功,记录指针将定位在 LastRec() + 1,EOF() 返回 TRUE,Found() 返回 FALSE。
示例
此示例从例程的开头开始相对寻址,并在例程结束时停止:
1LOCAL lSSSetting AS LOGIC
2lSSSetting := SetSoftSeek(TRUE)
3SEEK UPPER("CarlM")
4? Found()
5? EOF()
6? cName
7SetSoftSeek(lSSSetting)
参见