HOLD

<< Click to Display Table of Contents >>

Navigation:  Reference > Commands >

HOLD

The form of the HOLD command is:

HOLD variable.'text',

Both text and a variable must appear. Text may not be more than 60 characters in length. The variable may be of any type. If it has not previously been defined, a letter (S,M,W,I,C) denoting the type of the variable must precede variable in the command.

The HOLD command is used for communication between CL and the terminal during execution. When a HOLD command is encountered, the text and variable contents are displayed at the screen, and control is passed to you to enter one or more interactive commands, as follows:

C Display the current data location (all codes)
Cx Display data location x and make this the current data location
D Display 80 data location columns including the current data location
Dx Display card x and make this the current card
E Edit. Set a "no write" flag (as if EL (edit and list) command has been executed) and continue execution
F Finish. Switch off interactive mode, as if RCP NODIS were if effect
G Go. If a CP (checkpoint) command has been found prior to this point in the CL script, return to it continue execution. If not, action is as for the E (edit) command
I Ignore. Take on action and continue execution
Q Quit. Terminate the run immediately, as if STOP had been executed.
$x Display the current value of variable X
x= Set the data location. If x is a 2-digit number, column x on the current card is set, and if it is a 3-digit number, then the current card and column are changed. Data may be entered following the =sign
Adata Any other entry is treated as data. If the data is preceded by the letter A then the data following is treated as ASCII characters. The first character (after the A) is written to the current column, the second to the next, and so on.
data If A is not used then data should be in the form of codes (&-0123456789) or the letter B, denoting a blank column. The first code is written into the current column, the second into the next column, and so on. Two or more codes can be entered into a single column by surrounding them with "/".

More than one command may be entered on a single line separated by commas; so, for example, if the card column is $123 and you enter the line:

4&6,67=4,278=/13/5/78v/,d1,c9,g

then the effect will be to:

set $123 to 4

set $124 to V

set $125 to 6

set $167 to 4

set $278 to 1 and 3

set $279 to 5

set $280 to 7 and 8 and V

display $101-180

display $109

go back to the last CP (checkpoint) and return control to the CL script.

A summary of the number of times each HOLD command is executed is shown in the Report file.

If the run control parameter NODIS is set, then all HOLD commands are treated as if they were EL (edit and list) commands.

Examples of HOLD commands:

hold $127.'Please re-enter column 127',

hold $213-217.'This value is wrong',

hold $class.'Error in social class',

hold i $int1.'This integer is faulty',