[About The Guide]
Declare database field names
FIELD <idField list> [IN <idAlias>]
<idField list> is a list of names to declare as fields to the
IN <idAlias> specifies an alias to assume when there are unaliased
references to the names specified in the <idField list>. Unaliased
references to variables in <idField list> are treated as if they are
preceded by the special field alias (FIELD->).
The FIELD statement declares the names of database fields to the
compiler, and optionally supplies an implicit alias for each name. This
allows the compiler to resolve references to variables with no explicit
alias--by implicitly assuming the specified <idAlias>. Only explicit,
unaliased references to the specified fields in the <idField list> are
affected. The FIELD statement, like all declarations, has no effect on
references made within macro expressions or variables.
The FIELD statement neither opens a database file nor verifies the
existence of the specified fields. It is useful primarily to ensure
correct references to fields whose accessibility is known at runtime.
Attempting to access the fields when the associated database is not in
USE will cause an error.
The scope of the FIELD declaration is the procedure or function in which
it occurs, or the entire program (.prg) file if the declaration precedes
all PROCEDURE or FUNCTION declarations and the /N compiler option is
FIELD statements, like other declarations, must precede any executable
statements in the procedure or function definition or the program (.prg)
file if the declaration has filewide scope.
FIELD used with the /W compiler option performs compile-time checking
for undeclared variables.
For more information on variable declarations and scoping, refer to the
Variables section in the "Basic Concepts" chapter of the Programming and
. This user-defined function includes statements to declare
database field names in both the current and Employee work areas:
FIELD CustNo, OrderNo, Salesman
FIELD EmpName, EmpCode IN Employee
USE Employee NEW
USE Orders NEW
? CustNo // Refers to Orders->CustNo
? EmpName // Refers to Employee->EmpName
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson