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

2424 lines
72 KiB
HTML

<!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 Message (QMHRTVM) 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. -->
<!-- MH1TEMP SCRIPT A converted by B2H R4.1 (346) (CMS) by HOLTJM at -->
<!-- RCHVMW2 on 26 Jan 1999 at 10:37:34 -->
<!-- Change History: -->
<!-- YYMMDD USERID Change description -->
<!--File Edited Sept 2001 by v2cdijab -->
<!-- End Header Records -->
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body>
<a name="Top_Of_Page"></a>
<!--Java sync-link-->
<script type="text/javascript" language="Javascript" src="../rzahg/synch.js">
</script>
<h2>Retrieve Message (QMHRTVM) API</h2>
<div class="box" style="width: 70%;">
<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%">Message information</td>
<td align="left" valign="top" width="20%">Output</td>
<td align="left" valign="top" width="20%">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">Length of message information</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">3</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">4</td>
<td align="left" valign="top">Message identifier</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(7)</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">Qualified message file 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">Replacement data</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">7</td>
<td align="left" valign="top">Length of replacement data</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">Replace substitution values</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(10)</td>
</tr>
<tr>
<td align="center" valign="top">9</td>
<td align="left" valign="top">Return format control characters</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(10)</td>
</tr>
<tr>
<td align="center" valign="top">10</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;Optional Parameter Group:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">11</td>
<td align="left" valign="top" width="50%">Retrieve Option</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="20%">Char(10)</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="left" valign="top">CCSID to convert to</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">13</td>
<td align="left" valign="top">CCSID of replacement data</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Retrieve Message (QMHRTVM) API retrieves the message description of a
predefined message. The <strong>message description</strong> is created with
the Add Message Description (ADDMSGD) command. It consists of the text of the
message and other information, such as the message help and the default reply
for the message. You can use the QMHRTVM API to copy the text of predefined
messages into a program.</p>
<p>Retrieving a message is not the same as receiving a message. Retrieving a
message with this API returns the message and associated information stored in
the message file. In contrast, receiving a message with the Receive Nonprogram
Message (QMHRCVM) or Receive Program Message (QMHRCVPM) API focuses on the
message as it is sent to a particular user or program at a particular time. The
information returned from the QMHRCVM or the QMHRCVPM API includes details
about who sent the message, when it was sent, why it was sent, and so on.</p>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>Message File Authority</em></dt>
<dd>*USE</dd>
<dt><em>Message File Library Authority</em></dt>
<dd>*EXECUTE</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Message information</strong></dt>
<dd>OUTPUT; CHAR(*)
<p>The variable that receives information returned, in the format specified in
the format name parameter, of the length specified in the length of message
information parameter. If the user is retrieving the next message of the last
message of a message file or the first message of an empty message file, blanks
are returned for the message information field.</p>
</dd>
<dt><strong>Length of message information</strong></dt>
<dd>INPUT; BINARY(4)
<p>The size of the area to contain the message information, in bytes. The
minimum size is 8.</p>
<p>This parameter must specify the size of the variable you use for the message
information parameter. If this parameter specifies a longer size, other parts
of storage could be overwritten when the API returns the information.</p>
<p>The API returns as much information as it can fit in this length. If the
available message information is longer, it is truncated. If the available
message information is shorter, the unused output area is unchanged; whatever
is already stored in that space remains there.</p>
<p>To determine how much information the API actually returns in response to
this call, see the bytes returned field in the message information format. To
determine how much information the API could return if space were available,
see the bytes available field.</p>
</dd>
<dt><strong>Format name</strong></dt>
<dd>INPUT; CHAR(8)
<p>The format to use for the message information. Specify one of these format
names:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>RTVM0100</em></td>
<td align="left" valign="top">Brief message information. For details, see <a
href="#HDRRTVM1">RTVM0100 Format</a>.</td>
</tr>
<tr>
<td align="left" valign="top"><em>RTVM0200</em></td>
<td align="left" valign="top">Similar to RTVM0100 plus message severity, alert
index, alert option, log indicator, and default reply. For details, see <a
href="#HDRRTVM2">RTVM0200 Format</a>.</td>
</tr>
<tr>
<td align="left" valign="top"><em>RTVM0300</em></td>
<td align="left" valign="top">Similar to RTVM0200 plus the message ID, CCSID
information, and the replacement text formats. For details, see <a href=
"#HDRRTVM3">RTVM0300 Format</a>.</td>
</tr>
<tr>
<td align="left" valign="top"><em>RTVM0400</em></td>
<td align="left" valign="top">All message information. For details, see <a
href="#HDRRTVM4">RTVM0400 Format</a>.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Message identifier</strong></dt>
<dd>INPUT; CHAR(7)
<p>The identifying code for the predefined message being retrieved. If the
retrieve option parameter is *FIRST, this field is ignored and the first
alphabetical message is retrieved from the message file.</p>
</dd>
<dt><strong>Qualified message file name</strong></dt>
<dd>INPUT; CHAR(20)
<p>The name of the message file from which to retrieve the message information
and the library in which it resides. The first 10 characters specify the file
name; thesecond 10 characters specify the library. You can use these special
values for the library name:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*CURLIB</em></td>
<td align="left" valign="top">The job's current library</td>
</tr>
<tr>
<td align="left" valign="top"><em>*LIBL</em></td>
<td align="left" valign="top">The library list</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Replacement data</strong></dt>
<dd>INPUT; CHAR(*)
<p>The values to insert in the substitution variables in the predefined message
and message help.</p>
<p>If you use blanks for this parameter, blanks are inserted for the
substitution variables.</p>
<p>If this parameter contains pointer data, each pointer must start on a
16-byte boundary to keep the data accurate.</p>
</dd>
<dt><strong>Length of replacement data</strong></dt>
<dd>INPUT;BINARY(4)
<p>The length of the replacement data parameter, in bytes. Valid values are 0
through 32767.</p>
</dd>
<dt><strong>Replace substitution variables</strong></dt>
<dd>INPUT; CHAR(10)
<p>Whether to replace the substitution variables with the values given in the
replacement data parameter. Specify one of these values:</p>
<table cellpadding="5">
<!-- cols="10 90" -->
<tr>
<td align="left" valign="top"><em>*NO</em></td>
<td align="left" valign="top">Do not use the replacement data. Instead, return
the substitution variable numbers (that is, &amp;1, &amp;2, and so on) in the
message text.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*YES</em></td>
<td align="left" valign="top">Use the replacement data in the message text. If
you specified blanks in the replacement data parameter, blanks are used for the
substitution variables.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Return format control characters</strong></dt>
<dd>INPUT; CHAR(10)
<p>Whether or not the format control characters are returned in the message
help output field. Specify one of these values:</p>
<table cellpadding="5">
<!-- cols="10 90" -->
<tr>
<td align="left" valign="top"><em>*NO</em></td>
<td align="left" valign="top">Do not return the format control characters in
the text.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*YES</em></td>
<td align="left" valign="top">Return the format control characters in the
text.</td>
</tr>
</table>
<p>Three format control characters can be returned within the message. They are
defined in the online help of the Add Message Description (ADDMSGD) command to
have these meanings:</p>
<table cellpadding="5">
<!-- cols="10 90" -->
<tr>
<td align="left" valign="top"><em>&amp;N</em></td>
<td align="left" valign="top">Forces the text to a new line (column 2). If the
text is longer than one line, the next lines are indented to column 4 until the
end of text or another format control character is found.</td>
</tr>
<tr>
<td align="left" valign="top"><em>&amp;P</em></td>
<td align="left" valign="top">Forces the text to a new line indented to column
6. If the text is longer than one line, the next lines start in column 4 until
the end of text or another format control character is found.</td>
</tr>
<tr>
<td align="left" valign="top"><em>&amp;B</em></td>
<td align="left" valign="top">Forces the text to a new line, starting in column
4. If the text is longer than one line, the next lines are indented to column 6
until the end of text or another format control character is found.</td>
</tr>
</table>
<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>Optional Parameter Group</h3>
<dl>
<dt><strong>Retrieve option</strong></dt>
<dd>INPUT; CHAR(10)
<p>If this parameter is not used, it is defaulted to *MSGID. The following
options are allowed:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*MSGID</em></td>
<td align="left" valign="top">Retrieve the message description specified by the
message ID parameter. This is the default value of this parameter.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*NEXT</em></td>
<td align="left" valign="top">Retrieve the next message description in the
message file that is after the message description specified on the message ID
parameter.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*FIRST</em></td>
<td align="left" valign="top">Retrieve the first message description of the
message file. Note that if *FIRST is specified for this parameter, the message
ID parameter is ignored.</td>
</tr>
</table>
<p><strong>Note:</strong> Although the last 4 characters of a message
identifier can be thought of as 4 hexadecimal numbers, the values 'A' through
'F' are treated as characters when sorting. For example, CPFAAAA is listed
before CPF0001.</p>
</dd>
<dt><strong>CCSID to convert to</strong></dt>
<dd>INPUT; BINARY(4)
<p>The coded character set identifier (CCSID) in which you want your message
text returned. This only applies to text returned in the message and message
help fields. The following values are allowed:</p>
<table cellpadding="5">
<!-- cols="10 90" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The retrieved message description is converted to
the CCSID of the job. This is the default value if this parameter is not
specified.
<p>If the job is 65535 and the text or data is something other than EBCDIC
single byte or EBCDIC mixed, the text and data are converted to the default job
CCSID.</p>
</td>
</tr>
<tr>
<td align="left" valign="top"><em>65535</em></td>
<td align="left" valign="top">The retrieved message description will not be
converted before it is returned.</td>
</tr>
<tr>
<td align="left" valign="top"><em>CCSID</em></td>
<td align="left" valign="top">A valid CCSID in which you want your message text
returned. The CCSID must be between 1 and 65535. The CCSID will be validated by
this API.
<p>Only CCSIDs that a job can be changed to are accepted. For a list of valid
job CCSIDs, prompt the CCSID parameter on the Change Job (CHGJOB) CL
command.</p>
</td>
</tr>
</table>
<p><strong>Note:</strong> If the text contains substitution variables, only the
substitution variables that are *CCHAR type data are converted to this CCSID.
All other message data is not converted before being returned.</p>
</dd>
<dt><strong>CCSID of replacement data</strong></dt>
<dd>INPUT; BINARY(4)
<p>The coded character set identifier (CCSID) that the supplied replacement
data is in. This only applies to parts of the replacement data that are defined
as *CCHAR. The *CCHAR data is converted from this CCSID to the CCSID in which
you want all your text converted. The following values are allowed:</p>
<table cellpadding="5">
<!-- cols="10 90" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The replacement data is assumed in the CCSID of
the job. This is the default value if this parameter is not specified.</td>
</tr>
<tr>
<td align="left" valign="top"><em>65535</em></td>
<td align="left" valign="top">The replacement data will not be converted.</td>
</tr>
<tr>
<td align="left" valign="top"><em>CCSID</em></td>
<td align="left" valign="top">Specifies a valid CCSID that your replacement
data is in. The CCSID must be between 1 and 65535. The CCSID is validated by
this API. For a list of valid CCSIDs, see <a href=
"../nls/rbagsccsidmsgsup2.htm">CCSIDs: Message Support</a> in the Globalization
topic.</td>
</tr>
</table>
</dd>
</dl>
<br>
<h3><a name="HDRRTVM1">RTVM0100 Format</a></h3>
<p>The following table lists the fields in the RTVM0100 format. For more
information about each field, see <a href="#HDRRTVMFD">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">BINARY(4)</td>
<td align="left" valign="top">Length of message returned</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message available</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message help returned</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message help available</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Message</td>
</tr>
<tr>
<td align="left" valign="top" rowspan="1" colspan="2">The offset to this field
equals the last offset identified plus the length of the previous variable
length fields.</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Message help</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRRTVM2">RTVM0200 Format</a></h3>
<p>The following table lists the fields in the RTVM0200 format. For more
information about each field, see <a href="#HDRRTVMFD">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">BINARY(4)</td>
<td align="left" valign="top">Message severity<br>
</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Alert index</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">CHAR(9)</td>
<td align="left" valign="top">Alert option<br>
</td>
</tr>
<tr>
<td align="center" valign="top">25</td>
<td align="center" valign="top">19</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Log indicator<br>
</td>
</tr>
<tr>
<td align="center" valign="top">26</td>
<td align="center" valign="top">1A</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</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">Length of default reply 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 default reply available</td>
</tr>
<tr>
<td align="center" valign="top">36</td>
<td align="center" valign="top">24</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message returned</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message available</td>
</tr>
<tr>
<td align="center" valign="top">44</td>
<td align="center" valign="top">2C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message help returned</td>
</tr>
<tr>
<td align="center" valign="top">48</td>
<td align="center" valign="top">30</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message help available</td>
</tr>
<tr>
<td align="center" valign="top">52</td>
<td align="center" valign="top">34</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Default reply</td>
</tr>
<tr>
<td align="left" valign="top" rowspan="2" colspan="2">The offset to this field
equals the last offset identified plus the length of the previous variable
length fields.</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Message</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Message help</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRRTVM3">RTVM0300 Format</a></h3>
<p>The following table lists the fields in the RTVM0300 format. For more
information about each field, see <a href="#HDRRTVMFD">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">BINARY(4)</td>
<td align="left" valign="top">Message severity</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Alert index</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">CHAR(9)</td>
<td align="left" valign="top">Alert option</td>
</tr>
<tr>
<td align="center" valign="top">25</td>
<td align="center" valign="top">19</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Log indicator</td>
</tr>
<tr>
<td align="center" valign="top">26</td>
<td align="center" valign="top">1A</td>
<td align="left" valign="top">CHAR(7)</td>
<td align="left" valign="top">Message ID</td>
</tr>
<tr>
<td align="center" valign="top">33</td>
<td align="center" valign="top">21</td>
<td align="left" valign="top">CHAR(3)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">36</td>
<td align="center" valign="top">24</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of substitution variable formats</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">CCSID conversion status indicator of text</td>
</tr>
<tr>
<td align="center" valign="top">44</td>
<td align="center" valign="top">2C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">CCSID conversion status indicator of replacement
data</td>
</tr>
<tr>
<td align="center" valign="top">48</td>
<td align="center" valign="top">30</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">CCSID of text returned</td>
</tr>
<tr>
<td align="center" valign="top">52</td>
<td align="center" valign="top">34</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of default reply</td>
</tr>
<tr>
<td align="center" valign="top">56</td>
<td align="center" valign="top">38</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of default reply returned</td>
</tr>
<tr>
<td align="center" valign="top">60</td>
<td align="center" valign="top">3C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of default reply available</td>
</tr>
<tr>
<td align="center" valign="top">64</td>
<td align="center" valign="top">40</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of message</td>
</tr>
<tr>
<td align="center" valign="top">68</td>
<td align="center" valign="top">44</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message returned</td>
</tr>
<tr>
<td align="center" valign="top">72</td>
<td align="center" valign="top">48</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message available</td>
</tr>
<tr>
<td align="center" valign="top">76</td>
<td align="center" valign="top">4C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of message help</td>
</tr>
<tr>
<td align="center" valign="top">80</td>
<td align="center" valign="top">50</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message help returned</td>
</tr>
<tr>
<td align="center" valign="top">84</td>
<td align="center" valign="top">54</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message help available</td>
</tr>
<tr>
<td align="center" valign="top">88</td>
<td align="center" valign="top">58</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of substitution variable formats</td>
</tr>
<tr>
<td align="center" valign="top">92</td>
<td align="center" valign="top">5C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of substitution variable formats
returned</td>
</tr>
<tr>
<td align="center" valign="top">96</td>
<td align="center" valign="top">60</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of substitution variable formats
available</td>
</tr>
<tr>
<td align="center" valign="top">100</td>
<td align="center" valign="top">64</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of substitution variable format
element</td>
</tr>
<tr>
<td align="center" valign="top">104</td>
<td align="center" valign="top">68</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="left" valign="top" rowspan="4" colspan="2">The offsets to these
fields are specified in the previous offset variables.</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Default reply</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Message</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Message help</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Substitution variable formats</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRRTVM4">RTVM0400 Format</a></h3>
<p>The following table lists the fields in the RTVM0400 format. For more
information about each field, see <a href="#HDRRTVMFD">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">BINARY(4)</td>
<td align="left" valign="top">Message severity</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Alert index</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">CHAR(9)</td>
<td align="left" valign="top">Alert option</td>
</tr>
<tr>
<td align="center" valign="top">25</td>
<td align="center" valign="top">19</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Log indicator</td>
</tr>
<tr>
<td align="center" valign="top">26</td>
<td align="center" valign="top">1A</td>
<td align="left" valign="top">CHAR(7)</td>
<td align="left" valign="top">Message ID</td>
</tr>
<tr>
<td align="center" valign="top">33</td>
<td align="center" valign="top">21</td>
<td align="left" valign="top">CHAR(3)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">36</td>
<td align="center" valign="top">24</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of substitution variable formats</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">CCSID conversion status indicator of text</td>
</tr>
<tr>
<td align="center" valign="top">44</td>
<td align="center" valign="top">2C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">CCSID conversion status indicator of replacement
data</td>
</tr>
<tr>
<td align="center" valign="top">48</td>
<td align="center" valign="top">30</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">CCSID of text returned</td>
</tr>
<tr>
<td align="center" valign="top">52</td>
<td align="center" valign="top">34</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of default reply</td>
</tr>
<tr>
<td align="center" valign="top">56</td>
<td align="center" valign="top">38</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of default reply returned</td>
</tr>
<tr>
<td align="center" valign="top">60</td>
<td align="center" valign="top">3C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of default reply available</td>
</tr>
<tr>
<td align="center" valign="top">64</td>
<td align="center" valign="top">40</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of message</td>
</tr>
<tr>
<td align="center" valign="top">68</td>
<td align="center" valign="top">44</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message returned</td>
</tr>
<tr>
<td align="center" valign="top">72</td>
<td align="center" valign="top">48</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message available</td>
</tr>
<tr>
<td align="center" valign="top">76</td>
<td align="center" valign="top">4C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of message help</td>
</tr>
<tr>
<td align="center" valign="top">80</td>
<td align="center" valign="top">50</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message help returned</td>
</tr>
<tr>
<td align="center" valign="top">84</td>
<td align="center" valign="top">54</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of message help available</td>
</tr>
<tr>
<td align="center" valign="top">88</td>
<td align="center" valign="top">58</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of substitution variable formats</td>
</tr>
<tr>
<td align="center" valign="top">92</td>
<td align="center" valign="top">5C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of substitution variable formats
returned</td>
</tr>
<tr>
<td align="center" valign="top">96</td>
<td align="center" valign="top">60</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of substitution variable formats
available</td>
</tr>
<tr>
<td align="center" valign="top">100</td>
<td align="center" valign="top">64</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of substitution variable format
element</td>
</tr>
<tr>
<td align="center" valign="top">104</td>
<td align="center" valign="top">68</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Reply type</td>
</tr>
<tr>
<td align="center" valign="top">114</td>
<td align="center" valign="top">72</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">116</td>
<td align="center" valign="top">74</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Maximum reply length</td>
</tr>
<tr>
<td align="center" valign="top">120</td>
<td align="center" valign="top">78</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Maximum reply decimal positions</td>
</tr>
<tr>
<td align="center" valign="top">124</td>
<td align="center" valign="top">8C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of valid reply value entries</td>
</tr>
<tr>
<td align="center" valign="top">128</td>
<td align="center" valign="top">80</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of valid reply values entries
returned</td>
</tr>
<tr>
<td align="center" valign="top">132</td>
<td align="center" valign="top">84</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of valid reply value entries returned</td>
</tr>
<tr>
<td align="center" valign="top">136</td>
<td align="center" valign="top">88</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of valid reply value entries
available</td>
</tr>
<tr>
<td align="center" valign="top">140</td>
<td align="center" valign="top">8C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of valid reply value entry</td>
</tr>
<tr>
<td align="center" valign="top">144</td>
<td align="center" valign="top">90</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of special reply value entries</td>
</tr>
<tr>
<td align="center" valign="top">148</td>
<td align="center" valign="top">94</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of special reply values returned</td>
</tr>
<tr>
<td align="center" valign="top">152</td>
<td align="center" valign="top">98</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of special reply value entries
returned</td>
</tr>
<tr>
<td align="center" valign="top">156</td>
<td align="center" valign="top">9C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of special reply value entries
available</td>
</tr>
<tr>
<td align="center" valign="top">160</td>
<td align="center" valign="top">A0</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of special reply value entry</td>
</tr>
<tr>
<td align="center" valign="top">164</td>
<td align="center" valign="top">A4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of lower range reply value</td>
</tr>
<tr>
<td align="center" valign="top">168</td>
<td align="center" valign="top">A8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of lower range reply value returned</td>
</tr>
<tr>
<td align="center" valign="top">172</td>
<td align="center" valign="top">AC</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of lower range reply value available</td>
</tr>
<tr>
<td align="center" valign="top">176</td>
<td align="center" valign="top">B0</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of upper range reply value</td>
</tr>
<tr>
<td align="center" valign="top">180</td>
<td align="center" valign="top">B4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of upper range reply value returned</td>
</tr>
<tr>
<td align="center" valign="top">184</td>
<td align="center" valign="top">B8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of upper range reply value available</td>
</tr>
<tr>
<td align="center" valign="top">188</td>
<td align="center" valign="top">BC</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of relational test entry</td>
</tr>
<tr>
<td align="center" valign="top">192</td>
<td align="center" valign="top">C0</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of relational test entry returned</td>
</tr>
<tr>
<td align="center" valign="top">196</td>
<td align="center" valign="top">C4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of relational test entry available</td>
</tr>
<tr>
<td align="center" valign="top">200</td>
<td align="center" valign="top">C8</td>
<td align="left" valign="top">CHAR(7)</td>
<td align="left" valign="top">Message creation date</td>
</tr>
<tr>
<td align="center" valign="top">207</td>
<td align="center" valign="top">CF</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">208</td>
<td align="center" valign="top">D0</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Message creation level number</td>
</tr>
<tr>
<td align="center" valign="top">212</td>
<td align="center" valign="top">D4</td>
<td align="left" valign="top">CHAR(7)</td>
<td align="left" valign="top">Message modification date</td>
</tr>
<tr>
<td align="center" valign="top">219</td>
<td align="center" valign="top">DB</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">220</td>
<td align="center" valign="top">DC</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Message modification level number</td>
</tr>
<tr>
<td align="center" valign="top">224</td>
<td align="center" valign="top">E0</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Stored CCSID of message</td>
</tr>
<tr>
<td align="center" valign="top">228</td>
<td align="center" valign="top">E4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset of dump list entries</td>
</tr>
<tr>
<td align="center" valign="top">232</td>
<td align="center" valign="top">E8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of dump list entries returned</td>
</tr>
<tr>
<td align="center" valign="top">236</td>
<td align="center" valign="top">EC</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of dump list entries returned</td>
</tr>
<tr>
<td align="center" valign="top">240</td>
<td align="center" valign="top">F0</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of dump list entries available</td>
</tr>
<tr>
<td align="center" valign="top">244</td>
<td align="center" valign="top">F4</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Default program name</td>
</tr>
<tr>
<td align="center" valign="top">254</td>
<td align="center" valign="top">FE</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Default program library name</td>
</tr>
<tr>
<td align="left" valign="top" rowspan="10" colspan="2">The offsets to these
fields are specified in the previous offset variables.</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Default reply</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Message</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Message help</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Substitution variable formats</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Valid reply value entries</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Special reply value entries</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Lower range reply value</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Upper range reply value</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Relational test entry</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Dump list entries</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRRTVMRLT">Relational Test Entry Format</a></h3>
<p>The following table lists the fields in the Relational Test Entry format.
For more information about each field, see <a href="#HDRRTVMFD">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%">CHAR(10)</td>
<td align="left" valign="top" width="60%">Relational operator</td>
</tr>
<tr>
<td align="center" valign="top">10</td>
<td align="center" valign="top">A</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of relational value</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Relational value</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRRTVMSRV">Special Reply Value Entry Format</a></h3>
<p>The following table lists the fields in the Special Reply Value Entry
format. For more information about each field, see <a href="#HDRRTVMFD">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%">CHAR(32)</td>
<td align="left" valign="top" width="60%">From-value</td>
</tr>
<tr>
<td align="center" valign="top">32</td>
<td align="center" valign="top">20</td>
<td align="left" valign="top">CHAR(32)</td>
<td align="left" valign="top">To-value</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRRTVMSVF">Substitution Variable Format</a></h3>
<p>The following table lists the fields in the Substitution Variable format.
For more information about each field,see <a href="#HDRRTVMFD">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%">Length of replacement data for
substitution variable</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">Field size or decimal positions</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Substitution variable type</td>
</tr>
<tr>
<td align="center" valign="top">18</td>
<td align="center" valign="top">12</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRRTVMVRE">Valid Reply Entry Format</a></h3>
<p>The following table lists the fields in the Valid Reply Entry format. For
more information about each field, see <a href="#HDRRTVMFD">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%">CHAR(32)</td>
<td align="left" valign="top" width="60%">Valid reply value</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRRTVMFD">Field Descriptions</a></h3>
<p>This section describes the fields returned in further detail. The fields are
listed in alphabetical order.</p>
<p><strong>Alert index.</strong> The format number for the message data field.
This number is also called the resource name variable. For more information,
see the <a href="../books/sc415413.pdf" target="_blank">Alerts Support</a>
<img src="wbpdf.gif" alt="Link to PDF"> book.</p>
<p><strong>Alert option.</strong> Whether and when an SNA alert is created and
sent for the message. Valid values follow:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*DEFER</em></td>
<td align="left" valign="top">An alert is sent after local problem
analysis.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*IMMED</em></td>
<td align="left" valign="top">An alert is sent immediately when the message is
sent to a message queue that has the allow alerts attribute set to *YES.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*NO</em></td>
<td align="left" valign="top">No alert is sent.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*UNATTEND</em></td>
<td align="left" valign="top">An alert is sent immediately when the system is
running in unattended mode (when the value of the alert status network
attribute, ALRSTS, is *UNATTEND).</td>
</tr>
</table>
<p>For more information, see the <em>Alerts Support</em> book.</p>
<p><strong>Bytes available.</strong> The length of all available information
about the format. Bytes available can be greater than the length specified in
the APIs length of message information parameter. If it is greater, the
information returned is truncated.</p>
<p><strong>Bytes returned.</strong> The length of all information returned in
the format. The value of the bytes returned field is always less than or equal
to the value of the length of message information parameter, and less than or
equal to the bytes available. If the bytes returned value is less than the
length of message information value, the unused space is unchanged.</p>
<p><strong>CCSID conversion status indicator of replacement data.</strong> This
value indicates the status of any CCSID conversion that may have occurred when
inserting the replacement data into the message description. The following
values may be returned:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">No conversion was needed because the CCSID of the
data matched the CCSID you wanted the data converted to.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">No conversion occurred because either the data
was 65535 or the CCSID you wanted the data converted to was 65535.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">No conversion occurred because you did not supply
enough space for the data or the replacement data did not contain any *CCHAR
type substitution variables.</td>
</tr>
<tr>
<td align="left" valign="top"><em>3</em></td>
<td align="left" valign="top">The data was converted to the CCSID specified
using the best fit conversion tables.</td>
</tr>
<tr>
<td align="left" valign="top"><em>4</em></td>
<td align="left" valign="top">A conversion error occurred using the best fit
conversion tables so a default conversion was attempted. This completed without
error.</td>
</tr>
<tr>
<td align="left" valign="top"><em>-1</em></td>
<td align="left" valign="top">An error occurred on both the best fit and
default conversions. The data was not converted.</td>
</tr>
</table>
<p><strong>CCSID conversion status indicator of text.</strong> This value
indicates the status of any CCSID conversion that may have occurred when
retrieving the message description from the message file. The following values
may be returned:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">No conversion was needed because the CCSID of the
text matched the CCSID you wanted the text converted to.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">No conversion occurred because either the text
was 65535 or the CCSID you wanted the text converted to was 65535.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">No conversion occurred because you did not supply
enough space for the text.</td>
</tr>
<tr>
<td align="left" valign="top"><em>3</em></td>
<td align="left" valign="top">The text was converted to the CCSID specified
using the best fit conversion tables.</td>
</tr>
<tr>
<td align="left" valign="top"><em>4</em></td>
<td align="left" valign="top">A conversion error occurred using the best fit
conversion tables so a default conversion was attempted. This completed without
error.</td>
</tr>
<tr>
<td align="left" valign="top"><em>-1</em></td>
<td align="left" valign="top">An error occurred on the best fit conversion. The
text was not converted.</td>
</tr>
</table>
<p><strong>CCSID of text returned.</strong> The coded character set identifier
in which the text of the message description is returned.</p>
<p><strong>Note:</strong> If a conversion error occurs or if the CCSID you
requested the text to be converted to is 65535, the CCSID that the message
description is stored in is returned. Otherwise the CCSID you wanted your text
converted to is returned. If you do not want the text converted before it is
returned but you do want to know the CCSID that the message description is
stored in, specify 65535 on the coded character set identifier to convert to
parameter. The CCSID the message description is stored in is returned in the
coded character set identifier or text returned field.</p>
<p>The CCSID returned in the coded character set identifier for text returned
may not apply to the replacement data substituted in the text returned. Only
the *CCHAR substitution variables are converted to the CCSID specified. The
rest of the replacement data is not converted before it is returned. Also, if
an error occurred trying to convert the replacement data from the CCSID of the
message data to the CCSID to convert to, the replacement data would not be
converted before it is returned.</p>
<p><strong>Default program library name.</strong> The library specified for the
default program. This can be the actual library name, *LIBL, or *CURLIB.</p>
<p><strong>Default program name.</strong> The name of the program called to
take default action if this message is sent as an escape message to a program
or procedure that is not monitoring for it.</p>
<p><strong>Default reply.</strong> The default reply for the message identifier
retrieved.</p>
<p><strong>Dump list entry.</strong> Each dump list entry is a BINARY(4) value
that specifies data to be dumped when the message is sent as an escape message
to a program that is not monitoring for it. The following values may be
returned:</p>
<table cellpadding="5">
<!-- cols="10 90" -->
<tr>
<td align="left" valign="top"><em>1-99</em></td>
<td align="left" valign="top">The number of the message data field that is to
be dumped.</td>
</tr>
<tr>
<td align="left" valign="top"><em>-1</em></td>
<td align="left" valign="top">The data areas of the job are dumped as specified
by the Dump Job (DMPJOB) command. This corresponds to the special value *JOBDMP
that can be specified in the DMPLST parameter of the ADDMSGD and CHGMSGD
commands.</td>
</tr>
<tr>
<td align="left" valign="top"><em>-2</em></td>
<td align="left" valign="top">The internal machine data structures related to
the machine process in which the job is running are dumped to the machine error
log. This corresponds to the special value *JOBINT that can be specified in the
DMPLST parameter of the ADDMSGD and CHGMSGD commands.</td>
</tr>
<tr>
<td align="left" valign="top"><em>-4</em></td>
<td align="left" valign="top">The job information produced by the Display Job
(DSPJOB) command is printed. This corresponds to the special value *JOB that
can be specified in the DMPLST parameter of the ADDMSGD and CHGMSGD
commands.</td>
</tr>
</table>
<p><strong>Field size or decimal positions.</strong> This value is used in one
of two ways, depending on the substitution variable type.</p>
<ul>
<li>If the substitution variable type is *QTDCHAR, *CHAR, *CCHAR, *HEX, or *SPP
and *VARY is specified as the length of replacement data for the substitution
variable, the size of the length portion of the replacement data is returned.
This value is 2 if the length portion is 2 bytes long, or 4 if the length
portion is 4 bytes long.<br>
<br>
</li>
<li>When the substitution variable type is *DEC, the number of decimal
positions in the substitution variable is returned.<br>
<br>
</li>
<li>In all other cases, 0 is returned.</li>
</ul>
<p><strong>From-value.</strong> The from-value in a special reply value entry.
This is a value that can be entered as a reply to the message even though it
may not meet the other reply validity checking specifications. It will be
accepted and converted to a valid response specified in the to-value.</p>
<p><strong>Length (general information about the following length
fields).</strong> These formats use two types of length fields, each related to
a single variable length text field. (The variable length text fields return
information to the caller.) The first type of length field is returned length;
the second is available length. <strong>Returned length</strong> is the actual
length of the text in the variable length text field. <strong>Available
length</strong> is the length of the text before it is placed in the variable
length text field. It is always greater than or equal to the returned length.
If the available length equals the returned length, all the message information
is returned. If the text is truncated when placed in the variable length field,
the available length is greater than the returned length by the number of
characters truncated.</p>
<p><strong>Length of default reply available.</strong> The length of the
available default reply, in bytes.</p>
<p><strong>Length of default reply returned.</strong> The length of the
returned default reply, in bytes.</p>
<p><strong>Length of dump list entries available.</strong> The length of the
available dump list entries, in bytes.</p>
<p><strong>Length of dump list entries returned.</strong> The length of the
available dump list entries that were actually returned, in bytes.</p>
<p><strong>Length of lower range reply value available.</strong> The length of
the available lower range reply value, in bytes.</p>
<p><strong>Length of lower range reply value returned.</strong> The length of
the returned lower range reply value, in bytes.</p>
<p><strong>Length of message available.</strong> The length of the available
message text, in bytes.</p>
<p><strong>Length of message help available.</strong> The length of the
available help information for the message, in bytes.</p>
<p><strong>Length of message help returned.</strong> The length of the returned
help information for the message, in bytes.</p>
<p><strong>Length of message returned.</strong> The length of the returned
message text, in bytes.</p>
<p><strong>Length of relational test entry available.</strong> The length of
the available relational test entry, in bytes.</p>
<p><strong>Length of relational test entry returned.</strong> The length of the
returned relational test entry, in bytes.</p>
<p><strong>Length of relational value.</strong> The length of the value to be
compared to the reply entered for a relational test entry, in bytes.</p>
<p><strong>Length of replacement data for substitution variable.</strong> The
number of characters or digits that are needed in the message replacement data
for this substitution variable. The value returned is dependant on the
substitution variable type and length:</p>
<ul>
<li>-1 is returned if the length is *VARY.<br>
<br>
</li>
<li>The total number of decimal digits (including the fractional portion) is
returned if the substitution variable type is *DEC.<br>
<br>
</li>
<li>In all other cases, the value returned is the size in bytes of the
substitution variable.</li>
</ul>
<p><strong>Length of special reply value entriesavailable.</strong> The total
length in bytes of all the available special reply value entries.</p>
<p><strong>Length of special reply value entries returned.</strong> The length
in bytes of the special reply value entries that were actually returned.</p>
<p><strong>Length of special reply value entry.</strong> The length of the
special reply value entry, in bytes.</p>
<p><strong>Length of substitution variable format element.</strong> The length
in bytes of each substitution variable format element.</p>
<p><strong>Length of substitution variable formats available.</strong> The
total length in bytes of all the available substitution variable formats.</p>
<p><strong>Length of substitution variable formats returned.</strong> The
length in bytes of the substitution variable formats that were actually
returned.</p>
<p><strong>Length of upper range reply value available.</strong> The length of
the available upper range reply value, in bytes.</p>
<p><strong>Length of upper range reply value returned.</strong> The length of
the returned upper range reply value, in bytes.</p>
<p><strong>Length of valid reply value entries available.</strong> The total
length in bytes of all the available valid reply value entries.</p>
<p><strong>Length of valid reply value entries returned.</strong> The length in
bytes of the valid reply value entries that were actually returned.</p>
<p><strong>Length of valid reply value entry.</strong> The length of the valid
reply value entry, in bytes.</p>
<p><strong>Log indicator.</strong> The log problem indicator for the message
retrieved. Possible values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>N</em></td>
<td align="left" valign="top">Problems are not logged.</td>
</tr>
<tr>
<td align="left" valign="top"><em>Y</em></td>
<td align="left" valign="top">Problems are logged.</td>
</tr>
</table>
<p><strong>Lower range reply value.</strong> The lower value limit for the
valid reply.</p>
<p><strong>Maximum reply decimal positions.</strong> The maximum number of
decimal positions allowed in the message reply.</p>
<p><strong>Maximum reply length.</strong> The maximum length of a reply to an
inquiry or notify message.</p>
<p><strong>Message.</strong> The text of the message retrieved.</p>
<p><strong>Message creation date.</strong> The date this the message was
created, in CYYMMDD format.</p>
<p><strong>Message creation level number.</strong> The level number of this
message. This will be a value from 1 to 99.</p>
<p><strong>Message help.</strong> The message help for the message
retrieved.</p>
<p><strong>Message ID.</strong> The message ID of the message retrieved.</p>
<p><strong>Message modification date.</strong> The date this message was
modified, in CYYMMDD format.</p>
<p><strong>Message modification level number.</strong> The modification level
number of this message. This will be a value from 1 to 99.</p>
<p><strong>Message severity.</strong> The severity of the message
retrieved.</p>
<p><strong>Number of dump list entries returned.</strong> The number of dump
list entries that were returned in the message information format. The dump
list entry field is repeated once for each dump list entry.</p>
<p><strong>Number of special reply values returned.</strong> The number of
special reply values that were returned in the message information format. The
special reply value entry field structure is repeated once for each special
reply value.</p>
<p><strong>Number of substitution variable formats.</strong> The number of
substitution variables in the message description. The substitution variable
formats field structure is repeated once for each substitution variable in the
message.</p>
<p><strong>Number of valid reply values returned.</strong> The number of valid
reply values that were returned in the message information format. The valid
reply value entry field structure is repeated once for each valid reply
value.</p>
<p><strong>Offset of default reply.</strong> The offset of the default reply,
in bytes.</p>
<p><strong>Offset of dump list entries.</strong> The offset of the dump list
entries, in bytes.</p>
<p><strong>Offset of lower range reply value.</strong> The offset of the lower
range reply value, in bytes.</p>
<p><strong>Offset of message.</strong> The offset of the first-level message,
in bytes.</p>
<p><strong>Offset of message help.</strong> The offset of the second-level
message, in bytes.</p>
<p><strong>Offset of relational test entry.</strong> The offset of the
relational test entry, in bytes.</p>
<p><strong>Offset of special reply value entries.</strong> The offset of the
special reply value entries, in bytes.</p>
<p><strong>Offset of substitution variable formats.</strong> The offset in
bytes to the substitution variable formats.</p>
<p><strong>Offset of upper range reply value.</strong> The offset of the upper
range reply value, in bytes.</p>
<p><strong>Offset of valid reply value entries.</strong> The offset of the
valid reply value entries, in bytes.</p>
<p><strong>Relational operator.</strong> The relational operator for a
relational test entry. This value is one of the following:</p>
<table cellpadding="5">
<!-- cols="10 90" -->
<tr>
<td align="left" valign="top"><em>*LT</em></td>
<td align="left" valign="top">Less than</td>
</tr>
<tr>
<td align="left" valign="top"><em>*LE</em></td>
<td align="left" valign="top">Less than or equal to</td>
</tr>
<tr>
<td align="left" valign="top"><em>*GT</em></td>
<td align="left" valign="top">Greater than</td>
</tr>
<tr>
<td align="left" valign="top"><em>*GE</em></td>
<td align="left" valign="top">Greater than or equal to</td>
</tr>
<tr>
<td align="left" valign="top"><em>*EQ</em></td>
<td align="left" valign="top">Equal to</td>
</tr>
<tr>
<td align="left" valign="top"><em>*NE</em></td>
<td align="left" valign="top">Not equal to</td>
</tr>
</table>
<p><strong>Relational test entry.</strong> The relational test for the reply
value that is defined in the message description. For more information, see <a
href="#HDRRTVMRLT">Relational Test Entry</a>.</p>
<p><strong>Relational value.</strong> The value to be compared to the reply
entered for a relational test entry.</p>
<p><strong>Reply type.</strong> The type of valid values that can be made to an
inquiry or notify message. One of the following values will be returned:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*CHAR</em></td>
<td align="left" valign="top">Any character string is valid. If it is a quoted
character string, the apostrophes are passed as part of the character
string.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*NONE</em></td>
<td align="left" valign="top">No reply type is specified.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*DEC</em></td>
<td align="left" valign="top">Only a decimal number is a valid reply.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*ALPHA</em></td>
<td align="left" valign="top">Only an alphabetic string is valid. Blanks are
not allowed.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*NAME</em></td>
<td align="left" valign="top">Only a simple name is a valid reply. The name
does not have to be an object name, but it must start with an alphabetic
character; the remaining characters must be alphanumeric.</td>
</tr>
</table>
<p><strong>Reserved.</strong> An ignored field.</p>
<p><strong>Special reply value entries.</strong> Each special reply value that
is defined in the message description is returned in a special reply value
entry. For more information, see <a href="#HDRRTVMSRV">Special Reply Value
Entry</a>.</p>
<p><strong>Stored CCSID of message.</strong> The CCSID that was specified for
the message. For messages created on a release prior to V3R1 the value 65535
will be returned.</p>
<p><strong>Substitution variable formats.</strong> Each substitution variable
that is defined in the message description is returned in a substitution
variable format. For more information, see <a href="#HDRRTVMSVF">Substitution
Variable Format</a>.</p>
<p><strong>Substitution variable type.</strong> The type of data the
substitution variable contains and how the data is formatted when substituted
into the returned message text. The value is one of the following types:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*QTDCHAR</em></td>
<td align="left" valign="top">A character string formatted with enclosing
apostrophes ('Monday, the 1st').</td>
</tr>
<tr>
<td align="left" valign="top"><em>*CHAR</em></td>
<td align="left" valign="top">A character string formatted without enclosing
apostrophes.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*CCHAR</em></td>
<td align="left" valign="top">A convertible character string.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*HEX</em></td>
<td align="left" valign="top">A string of bytes formatted as a hexadecimal
value (X'C0F4').</td>
</tr>
<tr>
<td align="left" valign="top"><em>*SPP</em></td>
<td align="left" valign="top">A 16-byte space pointer to data in a space
object.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*DEC</em></td>
<td align="left" valign="top">A packed decimal number that is formatted in the
message as a signed decimal value with a decimal point.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*BIN</em></td>
<td align="left" valign="top">A binary value that is 2, 4, or 8 bytes long
(B'0000 0000 0011 1010') and is formatted in the message as a signed decimal
value (58).</td>
</tr>
<tr>
<td align="left" valign="top"><em>*UBIN</em></td>
<td align="left" valign="top">A binary value that is 2, 4 or 8 bytes long
(B'0000 0000 0011 1010') and is formatted in the message as an unsigned decimal
value (58).</td>
</tr>
<tr>
<td align="left" valign="top"><em>*DTS</em></td>
<td align="left" valign="top">An 8-byte field that contains a system date/time
stamp. The date/time stamp contains the date followed by one blank separator
and then the time.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*SYP</em></td>
<td align="left" valign="top">A 16-byte system pointer to a system object.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*ITV</em></td>
<td align="left" valign="top">An 8-byte binary field that contains the time
interval (in seconds) for wait time-out conditions.</td>
</tr>
</table>
<p><strong>To-value.</strong> The to-value in a special reply value entry. This
is the value that will be used as the reply value when the value entered
matches the from-value.</p>
<p><strong>Upper range reply value.</strong> The upper value limit for the
valid reply.</p>
<p><strong>Valid reply entries.</strong> Each valid reply value that is defined
in the message description is returned in a valid reply value entry. For more
information, see <a href="#HDRRTVMVRE">Valid Reply Entry</a>.</p>
<p><strong>Valid reply value.</strong> The valid reply value in a valid reply
value entry.</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 align="left" valign="top" width="15%">CPF24AA E</td>
<td align="left" valign="top" width="85%">Value for replace substitution
variables not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF24AB E</td>
<td align="left" valign="top">Value for return format control characters not
valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF24A7 E</td>
<td align="left" valign="top">Value for the length of message information not
valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF24B4 E</td>
<td align="left" valign="top">Severe error while addressing parameter
list.</td>
</tr>
<tr>
<td align="left" valign="top">CPF24B6 E</td>
<td align="left" valign="top">Length of &amp;1, not valid for message text or
data.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2401 E</td>
<td align="left" valign="top">Not authorized to library &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2407 E</td>
<td align="left" valign="top">Message file &amp;1 in &amp;2 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2411 E</td>
<td align="left" valign="top">Not authorized to message file &amp;1 in
&amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2419 E</td>
<td align="left" valign="top">Message identifier &amp;1 not found in message
file &amp;2 in &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2465 E</td>
<td align="left" valign="top">Replacement text of message &amp;1 in &amp;2 in
&amp;3 not valid for format specified.</td>
</tr>
<tr>
<td align="left" valign="top">CPF247E E</td>
<td align="left" valign="top">CCSID &amp;1 is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF247F E</td>
<td align="left" valign="top">Retrieve option &amp;1 not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2499 E</td>
<td align="left" valign="top">Message identifier &amp;1 not allowed.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2531 E</td>
<td align="left" valign="top">Message file &amp;1 in &amp;2 damaged for
&amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2548 E</td>
<td align="left" valign="top">Damage to message file &amp;1 in &amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CF1 E</td>
<td align="left" valign="top">Error code parameter not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C21 E</td>
<td align="left" valign="top">Format name &amp;1 is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C36 E</td>
<td align="left" valign="top">Number of parameters, &amp;1, entered for this
API was not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C90 E</td>
<td align="left" valign="top">Literal value cannot be changed.</td>
</tr>
<tr>
<td align="left" valign="top">CPF8100 E</td>
<td align="left" valign="top">All CPF81xx messages could be returned. xx is
from 01 to FF.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9830 E</td>
<td align="left" valign="top">Cannot assign library &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9872 E</td>
<td align="left" valign="top">Program or service program &amp;1 in library
&amp;2 ended. Reason code &amp;3.</td>
</tr>
</table>
<br>
<hr>
API introduced: V2R1.1
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
"mh1.htm">Message Handling APIs</a> | <a href="aplist.htm">APIs by
category</a></td>
</tr>
</table>
</center>
</body>
</html>