zBASE commands

* adds comments to a command file
? [<exp>] displays the value of an expression.
# [<exp>] sends the value of <exp> expression through the serial port to the printer.
AT <co-ordinates> SAY <exp> displays the value of the <exp> expression at the specified co-ordinates.
AT <co-ordinates> GET <var> formats fields on screen for operator input.
APPEND BLANK adds a blank record to the database in use
APPEND FROM <filename> [PD]/[DELIMITED] [FOR <exp>] ] adds new records to the current database from another database or Pipedream file.
CLS clears the screen.
CONTINUE extension to LOCATE command to move to next match.
COPY TO <filename> [FOR <cond>] creates new database from current one with optional conditional selection.
COPY TO <filename> [PD] {DELIMITED] [FOR <cond>] copies data from current file to new format with optional conditional pull.
COPY TO <filename> STRUCTURE [DELIMITED] creates a database file with same structure as current file, or a Pipedream file of the structure.
CREATE <file1> FROM <file2> creates zBASE file called 'file1' from Pipedream file 'file2' of format FIELD_NAME, with $ if a string field COMMA, WIDTH if its string field.
DELETE RECORD marks current record for deletion.
DELETE FILE removes selected file from directory.
DISPLAY <[STRUCTURE]/[MEMORY]/[STATUS]> shows on screen the selected option related to current use of database, memory variables and files respectively.
DISPLAY <[ALL] / [FOR <cond>]> <[FIELDS field,field,field]> shows data from current file in use

[ALL] - shows seven records before pausing.

DO <command file> runs a command file.
DO WHILE <cond> - ENDDO runs the commands enlosed in loop as long as <cond> is TRUE.
FIND <exp> searches fo key field match in indexed file.
GO [<exp> / <BOTTOM> / <TOP>] moves record pointer to <exp>th record or top/bottom.
IF <cond> - ELSE - ENDIF runs the commands after IF if <cond> is TRUE, otherwise runs commands after ELSE.
INDEX ON <fvar> TO <filename> creates an index file in order of fvar.
LET <var>=<exp> establishes a value for a variable.
LIST [ALL] works as DISPLAY without the pause every 8 lines.

[ALL] - shows all records without pausing.

LOCATE FOR <cond> moves record pointer to first record in file for which <cond> is TRUE.
QUIT closes all files and zBASE application.
RECALL RECORD removes DELETE mark on a record
RELEASE <mvar> removes specified memory variables.
RENAME <file1> TO <file2> changes name of file.
RETURN stops running current command file and returns control to previous command file or curly prompt.
SELECT <[1 or 2]> opens selected database area.
SKIP [<exp>] moves record pointer <exp> records along.
USE [<file>] closes current file and opens <file> if specified.
USE file INDEX file opens database in current area with index file.
WAIT pauses operation until a key is pressed.

zBASE Functions

CHR(<exp>) returns charater with ASCIIcode exp.
CLI (<exp$) sends <exp$> to the OZ CLI function for immediate execution.
DATE() provides current system date.
DELETED() returns 1 or 0 (TRUE / FALSE) to reflect status of current record.
EOF() returns 1 or 0 if end of file has been reached or not respectively.
FILE(<exp$>) responds with TRUE if file defined by exp does exist.
INT(<exp>) returns integer from exp.
LEN(<exp$>) shows length of string variable specified.
LOWER(<exp$>) turns string into lower case.
LTRIM(<exp$>) removes left hand blanks in string exp.
RAM() reveals RAM space available on currently selected device.
RECNO() returns current record number.
SET ECHO toggles echoing of all commands to screen.
STR To emulate a STR function use &.

} LET A=2.03

} LET A$="&A"

} ? "-"+a$+"-"

-2.03-

SUBSTR(<exp1$>,<exp2>,<exp3>) extracts the sub-string from exp1$ defined as starting at position exp2, of length exp3.
TIME() displays system time.
TRIM(<exp$>) removes trailing blanks.
UPPER(<exp$>) converts string exp$ to upper case.
VAL(<exp$>) converts ASCII string to its numeric equivalnet.
WHERE(<exp1$>,<exp2$>) shows the starting character position for where exp1$ occurs in exp2$.