ibm-information-center/dist/eclipse/plugins/i5OS.ic.cl_5.4.0.1/pmtctl.htm

197 lines
7.7 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<!doctype html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Prompt Control Definition (PMTCTL)</title>
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body bgcolor="white">
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<a name="PMTCTL.Top_Of_Page"></a>
<h2>Prompt Control Definition (PMTCTL)</h2>
<table width="100%">
<tr>
<td valign="top" align="left"></td>
<td valign="top" align="right">
<a href="#PMTCTL.PARAMETERS.TABLE">Parameters</a><br>
<a href="#PMTCTL.COMMAND.EXAMPLES">Examples</a><br>
<a href="#PMTCTL.ERROR.MESSAGES">Error messages</a></td>
</tr>
</table>
<div> <a name="PMTCTL"></a>
<p>The Prompt Control (PMTCTL) statement specifies a condition that is tested to determine whether prompting is done for the parameters whose PARM statement referred to this PMTCTL statement. The PMTCTL statement must have a statement label that matches the label referred to in the <b>Prompt control (PMTCTL)</b> parameter of one or more PARM statements in the command definition source.
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#PMTCTL.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div>
<h3><a name="PMTCTL.PARAMETERS.TABLE">Parameters</a></h3>
<table border="1" cellpadding="4" cellspacing="0">
<!-- col1="10" col2="15" col3="30" col4="10" -->
<tr>
<th bgcolor="aqua" valign="bottom" align="left">Keyword</th>
<th bgcolor="aqua" valign="bottom" align="left">Description</th>
<th bgcolor="aqua" valign="bottom" align="left">Choices</th>
<th bgcolor="aqua" valign="bottom" align="left">Notes</th>
</tr>
<tr>
<td valign="top"><a href="#PMTCTL.CTL"><b>CTL</b></a></td>
<td valign="top">Controlling keyword</td>
<td valign="top"><i>Name</i></td>
<td valign="top">Required, Positional 1</td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#PMTCTL.COND"><b>COND</b></a></td>
<td valign="top">Controlling conditions</td>
<td valign="top">Values (up to 50 repetitions): <i>Element list</i></td>
<td valign="top" rowspan="3">Required, Positional 2</td>
</tr>
<tr>
<td valign="top">Element 1: Relational operator</td>
<td valign="top">
*GT, *EQ, *GE, *NL, *LT, *NE, *LE, *NG, *SPCFD, *UNSPCFD</td>
</tr>
<tr>
<td valign="top">Element 2: Controlling keyword value</td>
<td valign="top">
<i>Character value</i></td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#PMTCTL.NBRTRUE"><b>NBRTRUE</b></a></td>
<td valign="top">Number of true conditions</td>
<td valign="top">Single values: <b><u>*ALL</u></b><br>Other values: <i>Element list</i></td>
<td valign="top" rowspan="3">Optional</td>
</tr>
<tr>
<td valign="top">Element 1: Relational operator</td>
<td valign="top">
*GT, *EQ, *GE, *NL, *LT, *NE, *LE, *NG</td>
</tr>
<tr>
<td valign="top">Element 2: Number of true conditions</td>
<td valign="top">
0-25</td>
</tr>
<tr>
<td valign="top"><a href="#PMTCTL.LGLREL"><b>LGLREL</b></a></td>
<td valign="top">Logical relation</td>
<td valign="top"><b><u>*AND</u></b>, *OR</td>
<td valign="top">Optional</td>
</tr>
</table>
<table width="100%">
<tr><td align="right"><a href="#PMTCTL.Top_Of_Page">Top</a></td></tr>
</table>
</div>
<div> <a name="PMTCTL.CTL"></a>
<h3>Controlling keyword (CTL)</h3>
<p>Specifies the name of the parameter that controls the prompting. The value of the parameter specified here is compared to the value specified in the <b>Controlling conditions (COND)</b> parameter. If the <b>Prompt control program</b> prompt (PMTCTLPGM parameter) of the PARM statement is coded for the parameter specified here, the value returned by the program specified in that PMTCTLPGM parameter is compared to the values specified on the <b>Controlling conditions (COND)</b> parameter. If the parameter specified here is a list or qualified name, only the first list item or qualifier is compared.
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#PMTCTL.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="PMTCTL.COND"></a>
<h3>Controlling conditions (COND)</h3>
<p>Specifies the condition against which the parameter specified on the <b>Controlling keyword (CTL)</b> parameter is tested. Up to 50 conditions can be specified.
</p>
<dl>
<dt><b>*SPCFD</b></dt>
<dd>The condition is true, including the default value, if it is specified for the control parameter.
</dd>
<dt><b>*UNSPCFD</b></dt>
<dd>The condition is true only if the control parameter is not specified. It is not true if the default value is specified.
</dd>
<dt><b><i>relational-operator-value</i></b></dt>
<dd>Specify the relational operator and value used to compare the value of the control parameter to the value specified in the <b>Controlling conditions (COND)</b> parameter. Valid values are *GT, *EQ, *NL, *LT, *NE, *LE, and *NG.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#PMTCTL.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="PMTCTL.NBRTRUE"></a>
<h3>Number of true conditions (NBRTRUE)</h3>
<p>Specifies the number of conditions specified on the <b>Controlling conditions (COND)</b> parameter that must be true if the parameter is prompted for.
</p>
<dl>
<dt><b><u>*ALL</u></b></dt>
<dd>All the conditions must be true.
</dd>
<dt><b><i>relational-operator-value</i></b></dt>
<dd>Specify the relational operator and number used to compare the number of conditions that are true to the number specified in the <b>Number of true conditions (NBRTRUE)</b> parameter Valid values are *GT, *EQ, *GE, *NL, *LT, *NE, *LE, and *NG.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#PMTCTL.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="PMTCTL.LGLREL"></a>
<h3>Logical relation (LGLREL)</h3>
<p>Specifies, when PMTCTL statements are in a group, the logical relationship between this PMTCTL statement and the preceding PMTCTL statements in the group. This allows conditional prompting using more than one controlling parameter.
</p>
<dl>
<dt><b><u>*AND</u></b></dt>
<dd>Performs a logical AND operation of the resulting condition for this PMTCTL statement with the previous PMTCTL statement.
</dd>
<dt><b>*OR</b></dt>
<dd>Performs a logical OR operation of the resulting condition for this PMTCTL statement with the previous PMTCTL statement.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#PMTCTL.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="PMTCTL.COMMAND.EXAMPLES">Examples</a> </h3>
<p><b>Example 1: Selective Prompting with One Control Parameter</b>
</p>
<p>
<pre>
A: PMTCTL CTL(TYPE) COND((*EQ *) (*EQ *LIST)) +
NBRTRUE(*EQ 1)
</pre>
</p>
<p>If either TYPE(*) or TYPE(*LIST) is specified, the parameters which reference this PMTCTL statement are selected for prompting.
</p>
<p><b>Example 2: Selective Prompting with Multiple Control Parameters Using Multiple PMTCTL Statements</b>
</p>
<p>
<pre>
B: PMTCTL CTL(P1) COND((*EQ *ALL))
PMTCTL CTL(P1) COND((*EQ *SOME)) LGLREL(*OR)
PMTCTL CTL(P2) COND((*EQ *ALL)) LGLREL(*AND)
PMTCTL CTL(P1) COND((*EQ *NONE)) LGLREL(*OR)
PMTCTL CTL(P2) COND((*NE *ALL)) LGLREL(*AND)
</pre>
</p>
<p>The parameters which refers to this group of PMTCTL statements are selected for prompting if any of the following conditions exist:
</p>
<ul>
<li>*ALL is specified for P1.
</li>
<li>*SOME is specified for P1 and *ALL is specified for P2.
</li>
<li>*NONE is specified for P1 and *ALL is not specified for P2.
</li>
</ul>
</div>
<table width="100%">
<tr><td align="right"><a href="#PMTCTL.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="PMTCTL.ERROR.MESSAGES">Error messages</a> </h3>
<p>None
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#PMTCTL.Top_Of_Page">Top</a></td></tr>
</table>
</body>
</html>