声明一个或多个数据库字段名,供当前例程使用。
FIELD <idFieldList> [IN <idAlias>]
<idFieldList> | 向编译器声明为字段的名称列表。 |
IN <idAlias> | 当存在对 <idFieldList> 中指定的名称的无标注引用时使用的别名。 |
使用 FIELD 语句声明字段时,对 <idFieldList> 中变量的无标记引用将被视为在其前面使用了特殊字段别名 (_FIELD->) 或 <idAlias>-> (如果指定了 IN 子句)。
与其他变量声明语句(即 LOCAL 和 MEMVAR)一样,必须将 FIELD 语句放在例程定义的任何可执行语句(包括 PRIVATE、PUBLIC 和 PARAMETERS)之前。 FIELD 语句对宏运算符没有影响,宏运算符总是假定内存变量。
FIELD 语句既不打开数据库文件,也不验证指定字段是否存在。 它主要用于确保正确引用运行时已知存在的字段。 如果在不使用相关数据库的情况下尝试访问字段,将导致运行时出错。
该功能包括在当前工作区和雇员工作区声明数据库字段名称的语句:
FUNCTION DisplayRecord()
FIELD CustNo, OrderNo, Orders
FIELD EmpName, EmpCode IN Employee
USE employee NEW
USE orders NEW
? CustNo // 指的是 Orders->CustNo
? EmpName // 指的是 Employee->EmpName
CLOSE orders
CLOSE employee
DBFieldInfo(), LOCAL, MEMVAR, STATIC