ibm-information-center/dist/eclipse/plugins/i5OS.ic.apis_5.4.0.1/qusrtvei.htm

1790 lines
48 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">
<meta name="Copyright" content="Copyright (c) 2006 by IBM Corporation">
<title>Retrieve Exit Information (QUSRTVEI, QusRetrieveExitInformation)
API</title>
<!-- Begin Header Records ========================================= -->
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<!-- Change History: -->
<!-- YYMMDD USERID Change description -->
<!-- File cleanup completed Sept 2001 by v2cdijab -->
<!-- End Header Records -->
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body>
<!-- Java sync-link -->
<script type="text/javascript" language="Javascript" src="../rzahg/synch.js">
</script>
<a name="top"></a>
<h2>Retrieve Exit Information (QUSRTVEI, QusRetrieveExitInformation) API</h2>
<div class="box" style="width: 80%;">
<br>
&nbsp;&nbsp;Required Parameter Group:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">1</td>
<td align="left" valign="top" width="50%">Continuation handle</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="20%">Char(16)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">Receiver variable</td>
<td align="left" valign="top">Output</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">Length of receiver variable</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="left" valign="top">Format name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(8)</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">Exit point name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(20)</td>
</tr>
<tr>
<td align="center" valign="top">6</td>
<td align="left" valign="top">Exit point format name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(8)</td>
</tr>
<tr>
<td align="center" valign="top">7</td>
<td align="left" valign="top">Exit program number</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="left" valign="top">Exit program selection criteria</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">9</td>
<td align="left" valign="top">Error code</td>
<td align="left" valign="top">I/O</td>
<td align="left" valign="top">Char(*)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Service Program Name: QUSRGFA2<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Retrieve Exit Information (OPM, QUSRTVEI; ILE,
QusRetrieveExitInformation) API retrieves information about one or more exit
points and their associated exit programs. This API returns information similar
to the Work with Registration Information (WRKREGINF) command.</p>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>API Public Authority</em></dt>
<dd>*USE</dd>
<dt><em>Exit Registration Lock</em></dt>
<dd>*SHRNUP</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Continuation handle</strong></dt>
<dd>INPUT; CHAR(16)
<p> The value returned to the user in the receiver variable when only partial
exit information is returned. This parameter must be set to blanks on the first
call to this API. This parameter is used when more information is available to
return than what could fit in the receiver variable. When you specify a
continuation handle for this parameter, all other parameters must have the same
values as the call to the API that generated the continuation handle. Failure
to do so may result in incomplete or inaccurate information.</p>
<p> Entries are only returned in their entirety; the API never returns anything
less. If there is not enough space for the entire entry, the continuation
handle is set to something other than blanks.</p>
</dd>
<dt><strong>Receiver variable</strong></dt>
<dd>OUTPUT; CHAR(*)
<p> The variable that is to receive the exit information requested.</p>
</dd>
<dt><strong>Length of receiver variable</strong></dt>
<dd>INPUT; BINARY(4)
<p> The length of the receiver variable. If the length is larger than the size
of the receiver variable, the results may not be predictable. The minimum
length is 8 bytes.</p>
</dd>
<dt><strong>Format name</strong></dt>
<dd>INPUT; CHAR(8)
<p> The format of the exit information to be returned. You must use one of the
following format names:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>EXTI0100</em></td>
<td align="left" valign="top">Exit point information</td>
</tr>
<tr>
<td align="left" valign="top"><em>EXTI0200</em></td>
<td align="left" valign="top">Basic exit program information</td>
</tr>
<tr>
<td align="left" valign="top"><em>EXTI0300</em></td>
<td align="left" valign="top">Complete exit program information</td>
</tr>
</table>
<p> Refer to <a href="#HDREXINF1">EXTI0100 Format</a>, <a href="#HDREXINF2">
EXTI0200 Format</a>, and <a href="#HDREXINF3">EXTI0300 Format</a> for more
information.</p>
</dd>
<dt><strong>Exit point name</strong></dt>
<dd>INPUT; CHAR(20)
<p> The name of the exit point for which information is being retrieved. You
must use one of the following values.</p>
<p><strong>Note:</strong> The specified values in these value descriptions
pertain to the exit point format name, exit program number, and exit program
selection criteria fields.</p>
<table cellpadding="5">
<!-- cols="20 80" -->
<tr>
<td align="left" valign="top"><em>*ALL</em></td>
<td align="left" valign="top">All registered and unregistered exit point names
that meet the specified values will be returned.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*REGISTERED</em></td>
<td align="left" valign="top">All registered exit point names that meet the
specified values will be returned.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*UNREGISTERED</em></td>
<td align="left" valign="top">All unregistered exit point names that meet the
specified values will be returned.</td>
</tr>
<tr>
<td align="left" valign="top"><em>generic*</em></td>
<td align="left" valign="top">All registered and unregistered exit point names
that have names beginning with the generic string and meet the specified values
will be returned.</td>
</tr>
<tr>
<td align="left" valign="top"><em>exit point name</em></td>
<td align="left" valign="top">The registered or unregistered exit point name
that was specified that meets the specified values will be returned.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Exit point format name</strong></dt>
<dd>INPUT; CHAR(8)
<p> The exit point format name associated with an exit point. You must use one
of the following values.</p>
<p><strong>Note:</strong> The specified values in these value descriptions
pertain to the exit point name, exit program number, and exit program selection
criteria fields.</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*ALL</em></td>
<td align="left" valign="top">All exit point format names that meet the
specified values will be returned.</td>
</tr>
<tr>
<td align="left" valign="top"><em>generic*</em></td>
<td align="left" valign="top">All exit point format names that have names
beginning with the generic string and meet the specified values will be
returned.</td>
</tr>
<tr>
<td align="left" valign="top"><em>exit point format name</em></td>
<td align="left" valign="top">The exit point format name that was specified
that meets the specified values will be returned.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Exit program number</strong></dt>
<dd>INPUT; BINARY(4)
<p> The number of the exit program. If you specify format EXTI0100, this
parameter is ignored. You must use one of the following values.</p>
<p><strong>Note:</strong> The specified values in these value descriptions
pertain to the exit point name, exit point format name, and exit program
selection criteria fields.</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>-1</em></td>
<td align="left" valign="top">All exit programs that meet the specified values
will be returned.</td>
</tr>
<tr>
<td align="left" valign="top"><em>exit program number</em></td>
<td align="left" valign="top">The exit program number to be returned. The entry
must meet the specified values to be returned. The valid range is 1 through
2&nbsp;147&nbsp;483&nbsp;647.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Exit program selection criteria</strong></dt>
<dd>INPUT; CHAR(*)
<p> The selection criteria to be used when selecting which exit programs
associated with the exit point are returned. The comparison data is compared
against the exit program data. The comparison data and the exit program data to
compare it to must be from 1 through 256 characters, and no CCSID normalization
is performed. Using characters from the invariant character set for the
comparison data is recommended.</p>
<p>For format EXTI0100, this parameter is ignored.</p>
<p>The information must be in the following format:</p>
<dl>
<dt><em>Number of selection criteria</em></dt>
<dd>BINARY(4)</dd>
<dd>The total number of selection criteria. Specify 0 if no selection criteria
are specified. The maximum value for this field is 1.</dd>
<dt><em>Selection criteria array</em></dt>
<dd>CHAR(*)</dd>
<dd>The selection criteria. Refer to <a href="#HDRSELCR">Format for Exit
Program Selection Criteria</a> for more information.</dd>
</dl>
<br>
</dd>
<dt><strong>Error code</strong></dt>
<dd>I/O; CHAR(*)
<p> The structure in which to return error information. For the format of the
structure, see <a href="../apiref/error.htm#hdrerrcod">Error Code Parameter</a>.</p>
</dd>
</dl>
<br>
<h3><a name="HDREXINF1">EXTI0100 Format</a></h3>
<p>The following information is returned for the EXTI0100 format. This format
provides information on an exit point. For a detailed description of each
field, see <a href="#HDRFLDZCS">Field Descriptions</a>.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Bytes returned</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Bytes available</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(16)</td>
<td align="left" valign="top">Continuation handle</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to first exit point entry</td>
</tr>
<tr>
<td align="center" valign="top">28</td>
<td align="center" valign="top">1C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of exit point entries returned</td>
</tr>
<tr>
<td align="center" valign="top">32</td>
<td align="center" valign="top">20</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of exit point entry</td>
</tr>
<tr>
<td align="center" valign="top">36</td>
<td align="center" valign="top">24</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4"><strong>Note:</strong> Exit point
entry information. These fields are repeated for each exit point entry
returned.</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Exit point name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Exit point format name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Maximum number of exit programs</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Current number of exit programs</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Allow deregistration</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Allow change of exit point controls</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Registered exit point</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Preprocessing exit program name for adding an
exit program</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Preprocessing exit program library name for
adding an exit program</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Preprocessing exit program format name for adding
an exit program</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Preprocessing exit program name for removing an
exit program</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Preprocessing exit program library name for
removing an exit program</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Preprocessing exit program format name for
removing an exit program</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Preprocessing exit program name for retrieving
exit information</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Preprocessing exit program library name for
retrieving exit information</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Preprocessing exit program format name for
retrieving exit information</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Exit point description indicator</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Exit point description message file name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Exit point description message file library
name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(7)</td>
<td align="left" valign="top">Exit point description message ID</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(50)</td>
<td align="left" valign="top">Exit point text description</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDREXINF2">EXTI0200 Format</a></h3>
<p>The following information is returned for the EXTI0200 format. This format
provides basic information on an exit program. The exit programs will be in
ascending sequence based on the exit point name, exit point format name, and
exit program number. For a detailed description of each field, see <a href=
"#HDRFLDZCS">Field Descriptions</a>.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Bytes returned</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Bytes available</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(16)</td>
<td align="left" valign="top">Continuation handle</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to first exit program entry</td>
</tr>
<tr>
<td align="center" valign="top">28</td>
<td align="center" valign="top">1C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of exit program entries returned</td>
</tr>
<tr>
<td align="center" valign="top">32</td>
<td align="center" valign="top">20</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of exit program entry</td>
</tr>
<tr>
<td align="center" valign="top">36</td>
<td align="center" valign="top">24</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4"><strong>Note:</strong> Exit program
entry information. These fields are repeated for each exit program entry
returned.</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to next exit program entry</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Exit point name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Exit point format name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Registered exit point</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Complete entry</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Exit program number</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Exit program name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Exit program library name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Exit program data CCSID</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to exit program data</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of exit program data</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Threadsafe</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Multithreaded job action</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">QMLTTHDACN system value</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4"><strong>Note:</strong> Exit program
data</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Exit program data</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDREXINF3">EXTI0300 Format</a></h3>
<p>The following information is returned for the EXTI0300 format. This format
provides complete information on an exit program. The exit programs will be in
ascending sequence based on the exit point name, exit point format name, and
exit program number. For a detailed description of each field, see <a href=
"#HDRFLDZCS">Field Descriptions</a>.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Bytes returned</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Bytes available</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(16)</td>
<td align="left" valign="top">Continuation handle</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to first exit program entry</td>
</tr>
<tr>
<td align="center" valign="top">28</td>
<td align="center" valign="top">1C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of exit program entries returned</td>
</tr>
<tr>
<td align="center" valign="top">32</td>
<td align="center" valign="top">20</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of exit program entry</td>
</tr>
<tr>
<td align="center" valign="top">36</td>
<td align="center" valign="top">24</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4"><strong>Note:</strong> Exit program
entry information. These fields are repeated for each exit program entry
returned.</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to next exit program entry</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Exit point name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Exit point format name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Registered exit point</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Complete entry</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Exit program number</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Exit program name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Exit program library name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Exit program description indicator</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Exit program description message file name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Exit program description message file library
name</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(7)</td>
<td align="left" valign="top">Exit program description message ID</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(50)</td>
<td align="left" valign="top">Exit program text description</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Exit program data CCSID</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to exit program data</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of exit program data</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Threadsafe</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Multithreaded job action</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">QMLTTHDACN system value</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4"><strong>Note:</strong> Exit program
data</td>
</tr>
<tr>
<td align="center" valign="top"><br>
</td>
<td align="center" valign="top"><br>
</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Exit program data</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRFLDZCS">Field Descriptions</a></h3>
<p><strong>Allow change of exit point controls.</strong> Whether the exit point
controls can be changed. The possible values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The exit point controls cannot be changed.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The exit point controls can be changed.</td>
</tr>
</table>
<p><strong>Allow deregistration.</strong> Whether the exit point can be
deregistered. The possible values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The exit point cannot be deregistered.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The exit point can be deregistered.</td>
</tr>
</table>
<p><strong>Bytes available.</strong> The number of bytes of data available to
be returned. All available data is returned if enough space is provided.</p>
<p>If the continuation handle is set to a value other than blanks, this field
contains an approximation of the total bytes available. At a minimum, this
field contains the actual number of bytes available.</p>
<p><strong>Bytes returned.</strong> The number of bytes of data returned.</p>
<p><strong>Complete entry.</strong> Whether the information returned for the
exit point is complete and accurate. Incomplete information may occur when an
exit point's provider is storing the exit program information instead of having
the registration facility store it. The exit point notifies the API that the
information it returned to the API is incomplete or inaccurate.</p>
<p>All information for the exit program entry up to this field is complete and
accurate. All information for the exit program entry following this field
should be ignored.</p>
<p>The possible values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The exit point entry information is not complete
or accurate.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The exit point entry information is complete and
accurate.</td>
</tr>
</table>
<p><strong>Continuation handle.</strong> The handle that is returned when more
data is available to return, but the receiver variable is not large enough. The
handle indicates the point in the repository that the retrieval stopped. If the
handle is used on the next call to the API, the API returns more data starting
at the point that the handle indicates. This field is set to blanks when all
information is returned.</p>
<p><strong>Current number of exit programs.</strong> The current number of exit
programs associated with the exit point.</p>
<p><strong>Exit point description indicator.</strong> Whether the exit point
description is contained in a message file or text. The possible values
follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The exit point description is contained in a
message file.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The exit point description is text.</td>
</tr>
</table>
<p><strong>Exit point description message file name.</strong> The name of the
message file that contains the exit point description. This field will contain
blanks when a text description is provided for the exit point description.</p>
<p><strong>Exit point description message file library name.</strong> The name
of the library in which the exit point description message file resides. This
field will contain blanks when a text description is provided for the exit
point description.</p>
<p><strong>Exit point description message ID.</strong> The message identifier
for the exit point description. This field will contain blanks when a text
description is provided for the exit point description.</p>
<p><strong>Exit point format name.</strong> The exit point format name
associated with the exit point.</p>
<p><strong>Exit point name.</strong> The exit point name.</p>
<p><strong>Exit point text description.</strong> The text for the exit point
description. This field will contain blanks when a message file and message
identifier are provided for the exit point description.</p>
<p><strong>Exit program data.</strong> The data that is associated with the
exit program.</p>
<p><strong>Exit program data CCSID.</strong> The coded character set identifier
(CCSID) that is used in working with the exit program data.</p>
<p><strong>Exit program description indicator.</strong> Whether the exit
program description is contained in a message file or text. The possible values
follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The exit program description is contained in a
message file.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The exit program description is text.</td>
</tr>
</table>
<p><strong>Exit program description message file name.</strong> The name of the
message file that contains the exit program description. This field will
contain blanks when a text description is provided for the exit program
description.</p>
<p><strong>Exit program description message file library name.</strong> The
name of the library in which the exit program description message file resides.
This field will contain blanks when a text description is provided for the exit
program description.</p>
<p><strong>Exit program description message ID.</strong> The message identifier
for the exit program description. This field will contain blanks when a text
description is provided for the exit program description.</p>
<p><strong>Exit program library name.</strong> The library in which the exit
program resides.</p>
<p><strong>Exit program name.</strong> The name of the exit program.</p>
<p><strong>Exit program number.</strong> The exit program number associated
with the exit program. This number determines the processing sequence of the
exit programs associated with the exit point, where the lowest number should be
processed first.</p>
<p><strong>Exit program text description.</strong> The text for the exit
program description. This field will contain blanks when a message file and
message identifier are provided for the exit program description.</p>
<p><strong>Length of exit point entry.</strong> The length of an exit point
entry that is returned. This value should be used in determining the offset to
the next exit point entry.</p>
<p><strong>Length of exit program data.</strong> The length of the exit program
data that is returned.</p>
<p><strong>Length of exit program entry.</strong> The length of an exit program
entry, not including the exit program data, that is returned.</p>
<p><strong>Maximum number of exit programs.</strong> The maximum number of exit
programs that the exit point allows.</p>
<p><strong>Multithreaded job action</strong>. The action to take when calling
an exit program in a multithreaded job. The possible values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Run the exit program in the current multithreaded
job.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">Run the exit program in the current multithreaded
job, but send an informational message. CPI3C80 can be used as the
informational message.</td>
</tr>
<tr>
<td align="left" valign="top"><em>3</em></td>
<td align="left" valign="top">Do not run the exit program in the current
multithreaded job. Depending on the exit point, do one of the following:
<ol>
<li>Send an escape message and do not call the exit program. CPF3C80 can be
used as the escape message.</li>
<li>Send an informational message and do not call the exit program. CPF3C80 can
be used as the informational message.</li>
<li>Call the exit program in a non-multithreaded job.</li>
</ol>
</td>
</tr>
</table>
<p><strong>Number of exit point entries returned.</strong> The number of exit
point entries returned. If the receiver variable is not large enough to hold
all of the information, this number contains only the number of exit point
entries actually returned.</p>
<p><strong>Number of exit program entries returned.</strong> The number of exit
program entries returned. If the receiver variable is not large enough to hold
all of the information, this number contains only the number of exit program
entries actually returned.</p>
<p><strong>Offset to exit program data.</strong> The offset to the exit program
data. The offset is from the beginning of the structure.</p>
<p><strong>Offset to first exit point entry.</strong> The offset to the first
exit point entry returned. The offset is from the beginning of the structure.
If no entries are returned, the offset is set to zero.</p>
<p><strong>Offset to first exit program entry.</strong> The offset to the first
exit program entry returned. The offset is from the beginning of the structure.
If no entries are returned, the offset is set to zero.</p>
<p><strong>Offset to next exit program entry.</strong> The offset to the next
exit program entry returned. The offset is from the beginning of the structure.
If there are no more exit program entries, this value is zero.</p>
<p><strong>Preprocessing exit program format name for adding an exit
program.</strong> The format name for the Preprocessing Exit Program for
Add.</p>
<p><strong>Preprocessing exit program format name for removing an exit
program.</strong> The format name for the Preprocessing Exit Program for
Remove.</p>
<p><strong>Preprocessing exit program format name for retrieving an exit
program.</strong> The format name for the Preprocessing Exit Program for
Retrieve.</p>
<p><strong>Preprocessing exit program library name for adding an exit
program.</strong> The library in which the Preprocessing Exit Program for Add
resides.</p>
<p><strong>Preprocessing exit program library name for removing an exit
program.</strong> The library in which the Preprocessing Exit Program for
Remove resides.</p>
<p><strong>Preprocessing exit program library name for retrieving an exit
program.</strong> The library in which the Preprocessing Exit Program for
Retrieve resides.</p>
<p><strong>Preprocessing exit program name for adding an exit program.</strong>
The preprocessing exit program name that is called by the registration facility
when the Add Exit Program API is called for the exit point.</p>
<p><strong>Preprocessing exit program name for removing an exit
program.</strong> The preprocessing exit program name that is called by the
registration facility when the Remove Exit Program API is called for the exit
point.</p>
<p><strong>Preprocessing exit program name for retrieving exit
information.</strong> The preprocessing exit program name that is called by the
registration facility when the Retrieve Exit Information API is called for the
exit point.</p>
<p><strong>QMLTTHDACN system value</strong>. A flag that indicates whether the
QMLTTHDACN system value was used in determining the multithreaded job
action.</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The QMLTTHDACN system value was not used to
determine the multithreaded job action.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The QMLTTHDACN system value was used to determine
the multithreaded job action.</td>
</tr>
</table>
<p><strong>Registered exit point.</strong> Whether the exit point is registered
or unregistered. The possible values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The exit point is unregistered.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The exit point is registered.</td>
</tr>
</table>
<p><strong>Reserved.</strong> An ignored field.</p>
<p><strong>Threadsafe</strong>. The thread safety status of the exit program
entry. The possible values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The exit program entry is not threadsafe.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The threadsafe status of the exit program entry
is not known.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">The exit program entry is threadsafe.</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRSELCR">Format for Exit Program Selection Criteria</a></h3>
<p>This table shows the format for the exit program selection criteria
parameter. For a detailed description of each field, see <a href="#HDRFLDDCS2">
Field Descriptions</a>.</p>
<table border width="50%" cellpadding="5">
<tr>
<th align="left" valign="top">Type</th>
<th align="left" valign="top">Field</th>
</tr>
<tr>
<td align="left" valign="top" width="30%">BINARY(4)</td>
<td align="left" valign="top" width="70%">Size of criteria entry</td>
</tr>
<tr>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Comparison operator</td>
</tr>
<tr>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Start position in exit program data</td>
</tr>
<tr>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of comparison data</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Comparison data</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRFLDDCS2">Field Descriptions</a></h3>
<p><strong>Comparison data.</strong> The data to compare to the exit program
data.</p>
<p><strong>Comparison operator.</strong> The comparison value to be used when
comparing the exit program data with the comparison data. The following value
can be specified:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The comparison data equals the exit program
data.</td>
</tr>
</table>
<p><strong>Length of comparison data.</strong> The length of the data to
compare to the exit program data. The length of the comparison data must be
between 1 and 256.</p>
<p><strong>Size of criteria entry.</strong> The size of the selection criteria
entry, including this field.</p>
<p><strong>Start position in exit program data.</strong> The starting position
of the exit program data against which the comparison data is matched. The
starting position is based on 0. Valid starting positions are from 0 through
2047.</p>
<br>
<h3>Error Messages</h3>
<table width="100%" cellpadding="5">
<!-- cols="15 85" -->
<tr>
<th align="left" valign="top">Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td width="15%" valign="top">CPF24B4 E</td>
<td width="85%" valign="top">Severe error while addressing parameter list.</td>
</tr>
<tr>
<td valign="top">CPF3C19 E</td>
<td valign="top">Error occurred with receiver variable specified.</td>
</tr>
<tr>
<td valign="top">CPF3C1E E</td>
<td valign="top">Required parameter &amp;1 omitted.</td>
</tr>
<tr>
<td valign="top">CPF3C21 E</td>
<td valign="top">Format name &amp;1 is not valid.</td>
</tr>
<tr>
<td valign="top">CPF3C24 E</td>
<td valign="top">Length of the receiver variable is not valid.</td>
</tr>
<tr>
<td valign="top">CPF3C36 E</td>
<td valign="top">Number of parameters, &amp;1, entered for this API was not
valid.</td>
</tr>
<tr>
<td valign="top">CPF3C90 E</td>
<td valign="top">Literal value cannot be changed.</td>
</tr>
<tr>
<td valign="top">CPF3CD2 E</td>
<td valign="top">Exit point name &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF3CD3 E</td>
<td valign="top">Exit point format name &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF3CD9 E</td>
<td valign="top">Requested function cannot be performed at this time.</td>
</tr>
<tr>
<td valign="top">CPF3CDA E</td>
<td valign="top">Registration facility repository not available for use.</td>
</tr>
<tr>
<td valign="top">CPF3CDB E</td>
<td valign="top">Exit point &amp;1 with format &amp;2 does not exist.</td>
</tr>
<tr>
<td valign="top">CPF3CE1 E</td>
<td valign="top">Exit program number &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF3CE2 E</td>
<td valign="top">Continuation handle not valid</td>
</tr>
<tr>
<td valign="top">CPF3CE3 E</td>
<td valign="top">Continuation handle no longer valid.</td>
</tr>
<tr>
<td valign="top">CPF3CE4 E</td>
<td valign="top">Comparison operator &amp;1 not valid for exit program
selection criteria.</td>
</tr>
<tr>
<td valign="top">CPF3CE6 E</td>
<td valign="top">Search criteria start position and length exceed
boundary.</td>
</tr>
<tr>
<td valign="top">CPF3CE7 E</td>
<td valign="top">Number of selection criteria entries not valid.</td>
</tr>
<tr>
<td valign="top">CPF3CE8 E</td>
<td valign="top">Start position not valid.</td>
</tr>
<tr>
<td valign="top">CPF3CE9 E</td>
<td valign="top">Length of comparison data not valid.</td>
</tr>
<tr>
<td valign="top">CPF3CF1 E</td>
<td valign="top">Error code parameter not valid.</td>
</tr>
<tr>
<td valign="top">CPF3CF2 E</td>
<td valign="top">Error(s) occurred during running of &amp;1 API.</td>
</tr>
<tr>
<td valign="top">CPF8100 E</td>
<td valign="top">All CPF81xx messages could be returned. xx is from 01 to
FF.</td>
</tr>
<tr>
<td valign="top">CPF9802 E</td>
<td valign="top">Not authorized to object &amp;2 in &amp;3.</td>
</tr>
<tr>
<td valign="top">CPF9810 E</td>
<td valign="top">Library &amp;1 not found.</td>
</tr>
<tr>
<td valign="top">CPF9811 E</td>
<td valign="top">Program &amp;1 in library &amp;2 not found.</td>
</tr>
<tr>
<td valign="top">CPF9820 E</td>
<td valign="top">Not authorized to use library &amp;1.</td>
</tr>
<tr>
<td valign="top">CPF9872 E</td>
<td valign="top">Program or service program &amp;1 in library &amp;2 ended.
Reason code &amp;3.</td>
</tr>
</table>
<br>
<hr>
API introduced: V3R1
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#top">Top</a> | <a href=
"reg1.htm">Registration Facility APIs</a> | <a href="aplist.htm">APIs by
category</a></td>
</tr>
</table>
</center>
</body>
</html>