HALT

In application programs, sets break points where execution is to be halted.

Syntax

HALT

Comments

The HALT command suspends execution of the currently executing application program and displays the HALT prompt (>>) at the terminal. You can then enter any command, including a call to another program.

The SET SINGLESTEP ON command causes the HALT command to be automatically executed after each command in the currently executing program.

If executed at the HALT prompt, BYE, RETURN, STOP, and global SET commands act in the usual manner. Local SET commands (e.g., LEXTRACE, RUNTIME, FLOW) is applied to the suspended program when it resumes.

If desired, you can redefine HALT to perform any useful function.

To re-define HALT, first ERASE the HALT program. Next, change the definition of HALT in the Documents EntitySet: make HALT correspond to a disk file called HALT.DOC. CREATE HALT again, ensuring that HALT.DOC contains the commands to perform the desired function.

For example, if you wanted to track memory use, HALT.DOC can contain the line:

system ” chkdsk”

% this command shows memory use

If you were to issue the command SET SINGLESTEP ON, the new version of HALT would be executed after every command, giving you a continuous record of disk and memory use.

Example

halt  % at >> prompt, you can turn on tracing,

   % output variables, etc.

 

GRAPH

Starts a graphics program.

Syntax

GRAPH expression [ RESET|CLOSE] [INVISIBLE] [BACKGROUND]

Parameters

expression

 

A character string, or expression that evaluates to a character string. The content of the string is passed to the graphics program call (e.g., parameters). If no parameters are required, specify the null string.

 

RESET

 

Flushes all internal data buffers to disk.

 

CLOSE

 

Flushes all internal data buffers to disk, and closes all files not currently in use.

 

INVISIBLE

 

Executes the graphics program without affecting the screen display.

 

BACKGROUND

 

Executes the graphics program asynchronously while Zim continues to run. You can continue working, and have a number of graphics sessions running concurrently.

 

Note: BACKGROUND is ignored in some operating environments.

Comments

The value of the system variable $Graphics identifies the graphics program to be run. If $Graphics has not been assigned a value, the default value is used.

When you exit a graphics program that was not run in the BACKGROUND, execution of your application program resumes following the call to the graphics program.

 

See Also

EDIT

SYSTEM

EDIT

Starts a text editor to edit an application document.

Syntax

EDIT docname [BACKGROUND]

Parameters

docname

The name of an application document.

BACKGROUND

Indicates that the editor is to be executed asynchronously while the application continues to run.

Comments

The value assigned to $Editor should be the full path and file name of the desired text editor.

With BACKGROUND omitted, the EDIT command causes execution to be suspended; the editor takes over. When you exit from the text editor, execution resumes from the point at which the EDIT command was encountered.

With BACKGROUND specified, the editor can be running in its own window while the application continues to execute. You can have concurrent editing sessions.

Note: Any return code that is generated by the editor is placed in the $ErrCode system variable.

BACKGROUND is ignored in some operating environments and when using Zim Thin Client.

Example

To start a text editor, edit.com, for editing MainProg, enter

let $Editor = “NotePad”

edit MainProg

that sets the $Editor system variable to the name of the desired edit program. It then calls up that program to edit the specified file.

 

See Also

$Editor

$ErrCode

GRAPH

SYSTEM

REPORT HEADING

Specifies the report heading.

Syntax

REPORT HEADING [TEMPLATE name] reportitem [:format:]

Parameters

TEMPLATE name

For graphical reports, the name of an optional template to define the layout of the report.

reportitem

Any valid expression. Complex expressions must be enclosed in parentheses. When you specify more than one expression, each must be separated from the next by at least one space.

format

A set of instructions defining the format for the associated reportitem. Format is enclosed in : (colons) and can consist of any valid combination of format options.

Comments

Generates a line-oriented heading at the start of a report, regardless of whether the report itself is line-oriented or column-oriented. To generate column-oriented headings, use the BREAK (Reports) command with a constant expression.

Typically, the items specified are text (for titles), blank lines, dates, and so on. The heading can include individual data values only from the first member of the REPORT FROM set.

 

See Also

How to Use The Report Generator

PAGE FOOTING

REPORT FOOTING

Report Item Format Options

PREVIOUS

Moves the current member pointer one or more records “up” in a result set.

Syntax

PREVIOUS [num] [setname]

Parameters

num

 

The number of members “further up” into setname that the current member pointer is to be moved. Num can be:
an integer constant (15, 200);
a variable, form field, or parameter that evaluates to an integer;
the word ALL.
The default value for num is 1. If num is negative, PREVIOUS num actually moves the current member pointer “down” in the set.

 

setname

 

The name of a result set. If setname is omitted, the current set is used.

 

Comments

UP is a synonym for PREVIOUS.

Example

previous 10

Moves the current member pointer 10 members “up” towards the start of the set.

previous 5 MySet

list 5 MySet

Moves the current member pointer “up” five members, then lists five members (starting with the new current member).

 

See Also

$currentmember

BOTTOM

DOWN

LOCATE

NEXT

TOP

CURSOR

Positions the text cursor in the current window.

 

Note: This command has been deprecated in Zim 8.50.
It is still accepted for backwards compatibility, but it is ignored.

Syntax

CURSOR expression1 expression2

Parameters

expression1A number or an expression that evaluates to a number. If the expression is complex, it must be enclosed in parentheses.
Indicates the character row in which the cursor is to be positioned. It should be a number from 1 to the maximum number of rows in the current window.
expression2A number or an expression that evaluates to a number. If the expression is complex, it must be enclosed in parentheses.
Indicates the character column in which the cursor is to be positioned. It should be a number from 1 to the maximum number of columns in the current window.

Comments

The text cursor is placed at the specified row (expression1) and column (expression2) coordinates.

Examples

cursor 10 (60/2)

output “Press Enter to continue” ;

input

Positions the cursor at row 10 and column 30, and displays a message.

 

input $CursorRow $CursorCol

cursor $CursorRow $CursorCol

Prompts for a new cursor position, and moves the cursor.

LOGIN

Identifies the current user to Zim for security purposes.

Syntax

LOGIN username [password]

Parameters

username

A character string, or an expression that evaluates to a character string.
The character string is checked against the list of valid user names (as defined in the Users EntitySet). User names are case-sensitive.
Complex expressions must be enclosed in parentheses.

password

A character string, or an expression that evaluates a character string.
If username does not have a defined password, any password entered is ignored.
Complex expressions must be enclosed in parentheses.

Comments

The LOGIN command can be entered at any time during an application session.

When the software is started, it automatically tries to log the user as the default user ZIM. If ZIM is not a defined user in the Users entity set, access to any EntitySets or relationships is denied.

Example

If your user name is Boss and your password is $profits, to log in use

login “Boss” “$profits”

If you do not have a password, all you need to login is

login newuser

This example can be used if the application uses a log-in form

login fLogin.Username fLogin.Password

 

See Also

PASSWORD

PERMISSION

Securing Data Inside an Application

REPORT FOOTING

Specifies the report footing.

Syntax

REPORT FOOTING [TEMPLATE name] reportitem [:format:]

Parameters

TEMPLATE nameFor graphical reports, the name of an optional template to define the layout of the report.
reportitemAny valid expression. Complex expressions must be enclosed in parentheses. When you specify more than one expression, each must be separated from the next by at least one space.
formatA set of instructions defining the format for the associated reportitem. Format is enclosed in : (colons) and can consist of any valid combination of format options.

Comments

Generates a line-oriented footing at the very end of the report, regardless of whether the report itself is line-oriented or column-oriented. To generate column-oriented footings, use the BREAK (Reports) command with a constant expression.

The footing can include individual data values only from the last member of the REPORT FROM set. However, summary data computed over all records in the set (using aggregate functions) can appear in the footing.

See Also

How to Use The Report Generator

PAGE FOOTING

REPORT HEADING

Report Item Format Options

COMPILE

Compiles an application program.

Syntax

COMPILE progdocname

Parameters

progdocname

The name of the application document that contains the application program to be compiled.

Comments

The COMPILE command reads the program compiles it, and stores the compiled version in a separate disk file. The source program is then marked as being compiled. Thereafter, the compiled version of the program is used when that program is called.

As the Compiler processes an application program, it reports any errors that it finds in the command statements. The syntactic and semantic checks performed during compilation are identical to those performed when the program is parsed using the PARSE command or when the source program is run interpretively.

If no fatal errors are detected, the Compiler completes the compilation. If a fatal error is detected, the compilation terminates.

The PARSE command should be used before compiling a program to ensure the program is syntactically correct.

The application program is identified as compiled even if errors are encountered during compilation.

The UNCOMPILE command can be used to mark a compile program as “not compiled”. The SET RUNTIME OFF command forces the software to execute all application programs interpretively.

Example

compile MyProg

 

See Also

$COMPILESTATUS

GENERATE

PARSE

SET COMPILEMODE

SET RUNTIME

SET SQLCOMPILE

OUTPUT

Outputs the results of one or more expressions.

Syntax

OUTPUT [expression] [;]

Parameters

expressionAny valid expression. Complex expressions must be enclosed in parentheses. When you specify more than one expression, each must be separated from the next by at least one space.

Comments

OUTPUT evaluates expression and sends the result to the current output device. If expression uses fields from the current set, the values are taken from the current member in that set.
OUTPUT sends one line of characters to the current output destination (application document). The software automatically terminates the output line with a carriage return/line feed combination. You can suppress the carriage return/line feed combination by placing a semicolon (;) at the end of the OUTPUT command.
You can redirect output from the terminal using a SET OUTPUT command.
To specify the number of spaces to appear between output values, use a SET COLUMNSPACING command.

Example

To send the values of the variable TestVar and the form field fEmpform.

output TestVar fEmpform.LastName

To send the values from two OUTPUT commands to one line of the application documents MyDoc, enter

set output MyDoc

output TestVar;

output fEmpform.LastName

The following commands cause the character string following OUTPUT to display on the current output device:

output “Please enter your first and last names: “;

input FirstName LastName

Important

If it is needed the issue the INPUT command in the same line as its corresponding text, the colon “:” must be present at the end of the text, just like the example above.

See Also

INPUT

pt_BRPortuguese