The root statement provides an interface to the B-tree indexes for subsequent references with the key statement.
root file.ref, a.code to root.var{then|else statement.block}
file.ref | File reference as a string expression. |
a.code | String expression containing the a (algebraic) processing code located in the file-defining item that identifies the index to use. The index must have previously been created with create-index. |
root.var | Used by subsequent key statements. |
This is similar to the open statement, in that a root statement is an open of an index, and must precede a key statement just as an open statement must precede a read statement. Any number of indexes can be opened at once, provided that each has a unique root variable.
Numeric indexes will open regardless of the current case sensitivity settings. For non-numeric indexes, the case sensitivity of the index must match the current case setting, which can be set at TCL with the case command, and over-ridden in a BASIC program with the casing statement.
The optional then clause is executed if the specified index is found. The else clause is executed if it is not found.
The key statement, in conjunction with the initializing root statement, provides the ability to sequentially cruise on any defined index for a particular file.
The root statement must precede the key statement.
fname = "customer" root fname,"a1" to cust.root else print "file is missing" goto 999 end