DCL
Initiate and communicate to a cached sub-process.

Format
 Dcl expression [/ Qualifiers ]
 expressionAny valid DCL command.
 The DCL statement enables you to initiate and communicate to a cached
sub-process. When the first DCL statement in an IDML program executes, a
sub-process is spawned. The same sub-process is reused for subsequent DCL statements.
 NOTE
 A separate sub-process is used for DCL statements which specify the /OUTPUT_FORM qualifier. This results in up to two separate DCL command streams. In the case of two DCL command streams, one command stream executes commands whose output is directed to the terminal's screen, and another executes commands whose output is directed to the specified form.

Qualifiers
 /Data=Pass a line or lines of data to a subprocess.
Example:
Dcl "USE SELECT"
/Data="CUSTOMERS" &
/Data="" &
/Data="NAME" &
/Data="" &
/Data=""
The /DATA qualifier allows menu programs (among others) to feed data to programs being run.
When any /DATA qualifier is specified, a temporary .COM file is created to hold the data between $DECK and $EOD statements.
 /NorepaintDo not repaint the screen after the statement executes.
 /Output_form=FORMForm to which to display output.
/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.