SPAWN
Spawn a sub-process. For multiple executions of subprocesses, use the DCL statement instead. Also do not use SPAWN or DCL to execute another IDML program. Instead, use the IDML statement.

Format
 SPAWN [ command-line ] [/Qualifiers ...]
 command-lineOptional command line to pass to the sub-process. If there is no command line, the sub-process prompts the user for a command.

The command line may include the qualifiers permitted by the DCL SPAWN command.


These are:
 /CLI=cli_nameCommand language interpreter name (other than DCL).
 /INPUT=filespecSet SYS$INPUT: to "filespec". Default is the user's terminal.
 /NOWAITIf you use /NOWAIT, the parent process continues executing while the sub-process executes.
 /NOSYMBOLDon't pass the parent's symbol tables to the sub-process.
 /NOLOGICALSDon't pass the parent's logical tables to the sub-process.
 /NOKEYPADDon't copy keypad definitions and the current keypad state from the parent process.
 /NOTIFYBroadcast a message to your terminal when the sub-process finishes executing or aborts.
 /OUTPUT=filespecSet SYS$OUTPUT: to "filespec". Default is the user's terminal.
 /PROCESS=process_nameCreated process name.
 /PROMPT=prompt_stringDCL prompt string.
 NOTE
 If you want to use qualifiers with the spawned sub-process, you must use an additional set of quotation marks around the sub-process and its qualifiers.
 For example:
 Spawn "'PRINT MYLIST/COPIES=7'/NOWAIT"

Qualifiers
/Fail=LABELLabel to which to branch if the statement fails.
If LABEL is %EXIT, exit the routine or loop.
If in a loop, and LABEL is %CONTINUE, continue the loop. If not in a loop, and LABEL is %CONTINUE, an error message displays.
 /Succeed=LABELLabel to which to branch if the statement succeeds.
If LABEL is %EXIT, exit the routine or loop. If in a loop, and LABEL is %CONTINUE, continue the loop. If not in a loop, and LABEL is %CONTINUE, an error message displays.
 /NofailDo not signal an error. Instead, set the
internal variable %FAIL.
 /NorepaintDo not repaint the screen after the statement has executed.

Example
 Spawn "@R.COM/OUTPUT = R.LOG/INPUT = NL:/NOWAIT/NOTIFY"
 
 log_name = "PAY " & %PID & ".LOG"
 Spawn "@PAY/NOWAIT/NOTIFY/OUTPUT=" & log_name/Fail:NOSPAWN