B O F 函 数 - 图1B O F 函 数 - 图2B O F 函 数

B O F 函 数 - 图3确定当前记录指针是否在表头

语 法

BOF([ n W orkArea | cTableAlias ])

返 值 类 型逻辑值 参 数 描 述

n W o rkArea

B O F 函 数 - 图4指 定 在 非 当 前 工 作 区 中 打 开 的 表 所 在 的 工 作 区 号

cTableAlias

B O F 函 数 - 图5指 定 在 非 当 前 工 作 区 中 打 开 的 表 别 名

B O F 函 数 - 图6B O F 函 数 - 图7B O F 函 数 - 图8B O F 函 数 - 图9B O F 函 数 - 图10B O F 函 数 - 图11B O F 函 数 - 图12B O F 函 数 - 图13如果受测试的表在非当前选定工作区中打开 那么使用这些可选的参数为表指定别名或所在的工作区号 若此表未在指定的工作区中打开 则 BOF 返回 假 (.F.)

说 明

B O F 函 数 - 图14B O F 函 数 - 图15B O F 函 数 - 图16B O F 函 数 - 图17B O F 函 数 - 图18B O F 函 数 - 图19B O F 函 数 - 图20B O F 函 数 - 图21B O F 函 数 - 图22BOF 函数可用来测试一个表的记录指针是否已到文件头 如果用户 试图 将记录指针移动到表的第一条记录之前 则 BOF 返回 真 ( .T.)

示 例

B O F 函 数 - 图23B O F 函 数 - 图24B O F 函 数 - 图25B O F 函 数 - 图26B O F 函 数 - 图27B O F 函 数 - 图28B O F 函 数 - 图29以下 示例 打开了 customer 表并一次在一页上列出了公司 (Company) 名称 以表中的最后一个记录开始 继续列表直到到达文件的开头或您选择了 取消

CLOSE DATABASES

CLEAR

OPEN DATABASE (HOME() + “samples\data\testdata ”) USE customer

GO BOTTOM

local recCtr, btnValue

recCtr = 0

btnValue = 1

DO WHILE btnValue = 1 AND NOT BOF()

? “Company : “ + company recCtr = recCtr + 1

if (recCtr % 20) = 0 then

B O F 函 数 - 图30B O F 函 数 - 图31B O F 函 数 - 图32B O F 函 数 - 图33B O F 函 数 - 图34B O F 函 数 - 图35B O F 函 数 - 图36B O F 函 数 - 图37btnValue =MESSAGEBOX ( “ 单击 确定 继续 取消 退出 33 ) clear

endif

Skip -1 && 上移一个记录

ENDDO

=MESSAGEBOX (“Listing complete.”,48)

请 参 阅

EO F ( )