Note | 该命令在头文件中定义,将由 X# 预处理器预处理为函数调用。如果禁用标准头文件 (-nostddefs),该命令将不可用。如果告诉编译器使用不同的标准头文件(-stddef ),则此命令也可能不可用。 |
将指针移动到指定记录。
GO[TO] <uRecID> | TOP | BOTTOM [[IN|ALIAS] <workarea>]
<uRecID> | 要转到的记录。 <uRecID> 的数据类型和解释由 RDD 决定。 对于 .DBF 文件,它是记录编号。 如果 <uRecID> 不存在,工作区将定位到 LastRec() + 1,EoF() 和 BoF() 都返回 TRUE。 |
TOP | 指定当前工作区的第一个逻辑记录。 |
BOTTOM | 指定当前工作区的最后一条逻辑记录。 |
IN | ALIAS <workarea> | 指定执行操作的工作区。 |
可见性: 即使某条记录可能不可见(例如,由于 DbSetFilter()、SetDeleted(TRUE) 或条件控制命令的原因),您仍然可以访问该记录。
此示例保存当前记录编号,搜索关键字,然后将记录指针恢复到保存的位置:
FUNCTION KeyExists(uKeyExpr)
LOCAL nSavRecord := RECNO()
// 保存当前记录指针位置
LOCAL lFound
SEEK uKeyExpr
IF (lFound := Found())
.
. <Statements>
.
ENDIF
GOTO nSavRecord // 恢复记录指针
// 位置
RETURN lFound
XSharp.RT.DLL
DbGoTo(), DbSetFilter(), DBSetRelation(), LastRec(), RecNo(), SetDeleted() , SET RELATION, SKIP