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

832 lines
22 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 XML Service Information (QSCRXMLI) API</title>
<!-- Begin Header records -->
<!-- Created for V5R4 by Sergio Toscano (stlomeli@mx1.ibm.com) D99977 -->
<!--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_Of_Page"></a>
<h2><img src="delta.gif" alt="Start of change">Retrieve XML Service Information (QSCRXMLI) 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">1</td>
<td align="left" valign="top">Destination information</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">Destination 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" width="10%">3</td>
<td align="left" valign="top" width="50%">Receiver variable</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">4</td>
<td align="left" valign="top">Receiver 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">Service selection information</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">6</td>
<td align="left" valign="top">Service selection information format</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">Error Code</td>
<td align="left" valign="top">I/O</td>
<td align="left" valign="top">Char(*)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: No<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The <strong>Retrieve XML Service Information (QSCRXMLI) API</strong> lists service information
like messages from a nonprogram message queue or messages sent to the program message queue of a job,
in XML format, and optionally stores the output in a stream file.</p>
<p>The Retrieve XML Service Information API cannot be used to list messages sent to the QHST message queue.</p>
<p>New messages are prevented from being added to or removed from the message
queue listed during the use of the QSCRXMLI API.</p>
<p>See Open List of Messages (QGYOLMSG) API or Open List of Job Log Messages (QGYOLJBL) API
for the description of the message fields returned. </p>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>Output File Authority (if output stored in a stream file)</em></dt>
<dd>Authority to the path and file are determined by the open() API. For
details, see the Authorities section of the <a href="open.htm">open()</a>--Open
File API for files opened with an access mode of O_WRONLY and O_TRUNC.</dd>
<dt><em>Output File Lock</em></dt>
<dd>*SHRNUP</dd>
<dt><em>Message Queue</em></dt>
<dd>*USE</dd>
<dt><em>Message Queue Library</em></dt>
<dd>*EXECUTE</dd>
<dt><em>User Space Lock</em></dt>
<dd>*EXCLRD</dd>
<dt><em>Job Authority</em></dt>
<dd>
<ul>
<li>*JOBCTL special authority if the job for which messages are being listed has a different user
profile from that of the job that calls the QSCRXMLI API.</li>
<li>*ALLOBJ and *JOBCTL
special authorities if the job for which messages are being retrieved has *ALLOBJ
and *JOBCTL special authority. As an alternative to having *ALLOBJ authority,
the user calling the API can be authorized to the All Object Job Log function
of Operating System through iSeries Navigator's Application Administration
support. The Change Function Usage (CHGFCNUSG) command, with a function
ID of QIBM_ACCESS_ALLOBJ_JOBLOG, can also be used to change the list of users
that are allowed to access a job log that has *ALLOBJ special authority.
</li>
</ul>
<p>For additional information on job authorities, see <a href="../rzamv/rzamvplansec.htm">Plan and set up system security</a>.</p>
</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Destination information</strong></dt>
<dd>INPUT; CHAR(*)
<p>Provides information about the destination for the generated XML output. </p>
<ul>
<li>If DEST0100 is specified for the destination format name, this parameter contains
a 4-byte integer which is the size of the receiver variable (parameter 3).</li>
<li>If DEST0200 is specified for the destination format name, this parameter contains
a structure which gives the path name of the stream file where the generated XML
output is to be stored.</li>
</ul>
<br>
</dd>
<dt><strong>Destination format name</strong></dt>
<dd>INPUT; CHAR(8)
<p>The destination format to determine where the generated XML output will be stored.
Possible values are:</p>
<table cellpadding="5">
<!-- cols="25 75" -->
<tr>
<td align="left" valign="top"><em><a href="#dest0100">DEST0100</a></em></td>
<td align="left" valign="top">Return the XML output in the receiver
variable.</td>
</tr>
<tr>
<td align="left" valign="top"><em><a href="#dest0200">DEST0200</a></em></td>
<td align="left" valign="top">Return the XML output in a stream file using the path name
coded in the destination information parameter.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Receiver variable</strong></dt>
<dd>OUTPUT; CHAR(*)
<p>The variable that is to receive the generated XML output. The variable is
used only when the destination format name is DEST0100. If the receiver variable is
not large enough to hold all of the generated XML output,
no XML output is returned. </p>
</dd>
<dt><strong>Receiver format name</strong></dt>
<dd>INPUT; CHAR(8)
<p>The format of the generated XML output to be returned. You must use one of the following format names:</p>
<table cellpadding="5">
<!-- cols="25 75" -->
<tr>
<td align="left" valign="top"><em><a href="#sirv0100">SIRV0100</a></em></td>
<td align="left" valign="top">The information returned to the caller of this API.
For more information, see <a href="#sirv0100">SIRV0100 Format</a>.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Service selection information</strong></dt>
<dd>INPUT; CHAR(*)
<p>The information that identifies the source of the service information to be returned.
The format of this information depends on the specified Service selection format name.</p>
<br>
</dd>
<dt><strong>Service selection format name</strong></dt>
<dd>INPUT; CHAR(8)
<p>Indicates where the service information will be retrieved from. The possible values are:</p>
<table cellpadding="5">
<!-- cols="25 75" -->
<tr>
<td align="left" valign="top"><em><a href="#ssif0100">SSIF0100</a></em></td>
<td align="left" valign="top">The list of messages will be retrieved from a nonprogram message queue as specified in
<a href="#ssif0100">SSIF0100 Service Selection Information from a Nonprogram Message Queue Format</a>.</td>
</tr>
<tr>
<td align="left" valign="top"><em><a href="#ssif0200">SSIF0200</a></em></td>
<td align="left" valign="top">The list of messages will be retrieved from a program message queue of a job as specified
in <a href="#ssif0200">SSIF0200 Service Selection Information from a Porgram Message of a Job Format</a>.</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><a name="dest0100">DEST0100 Format</a></h3>
The following information needs to be supplied in the destination information
parameter (parameter 1) for the DEST0100 format.
<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="left" valign="bottom">Dec</th>
<th align="left" 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 receiver variable</td>
</tr>
</table>
<br>
<h3>Field Descriptions</h3>
<p><strong>Length of receiver variable.</strong> 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>
<br>
<h3><a name="dest0200">DEST0200 Format</a></h3>
<p>The destination information parameter (parameter 1) specifies the
file path name where the generated XML output is to be returned for the DEST0200 format.
See <a href="../apiref/pns.htm">
Path name format</a> for information on specifying the
output stream file path name.</p>
<br>
<h3><a name="sirv0100">SIRV0100 Format</a></h3>
<p>The following information is returned in the receiver variable for the DEST0100 format.</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="left" valign="bottom">Dec</th>
<th align="left" 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">XML data length</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">XML data</td>
</tr>
</table>
<br>
<h3>Field Descriptions</h3>
<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><strong>Bytes returned.</strong> The number of bytes of data returned.</p>
<p><strong>XML data.</strong> The XML output of the service information returned. If the
receiver variable is not large enough to hold the entire XML output or if an
unexpected error occurs while writing to the receiver variable, no data will be
returned.</p>
<p><strong>XML data length.</strong> The length of the XML data being returned.</p>
<br>
<h3><a name="SSIF0100">SSIF0100 Service Selection Information from a Nonprogram Message Queue Format</a></h3>
<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%">Message queue name</td>
</tr>
<tr>
<td align="center" valign="top">10</td>
<td align="center" valign="top">0A</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Message queue library</td>
</tr>
</table>
<br>
<h3>Field Descriptions</h3>
<p><strong>Message queue library.</strong> The name of the library where the message
queue is located.</p>
<p><strong>Message queue name.</strong> The name of the message queue whose messages are
to be listed.</p>
<br>
<h3><a name="ssif0200">SSIF0200 Service Selection Information from a Program Message Queue of a Job Format</a></h3>
<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(26)</td>
<td align="left" valign="top" width="60%">Qualified job name</td>
</tr>
</table>
<br>
<h3>Field Descriptions</h3>
<p><strong>Qualified job name.</strong> The name of the job whose messages are
to be listed. The qualified job name has three parts:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>Job name</em></td>
<td align="left" valign="top">CHAR(10)A specific job name or one of the
following special value:
<table cellpadding="5">
<tr>
<td align="left" valign="top"><em>*</em></td>
<td align="left" valign="top">The job that this program is running in. The rest
of the qualified job name parameter must be blank.</td>
</tr>
</table>
</td>
</tr>
<tr>
<td align="left" valign="top"><em>User name</em></td>
<td align="left" valign="top">CHAR(10) A specific user profile name, or blanks
when the job name is the special value of *.</td>
</tr>
<tr>
<td align="left" valign="top"><em>Job number</em></td>
<td align="left" valign="top">CHAR(6) A specific job number, or blanks when the
job name is the special value of *.</td>
</tr>
</table>
<br>
<h3>Usage Notes</h3>
<p>The output file path name is represented by the 'Path name' field in the
'Path Name Format' structure when using the DEST0200 destination format. The
output file path name is used to store the generated XML output.
The output stream file is opened for
writing only, in text-only mode, in CCSID 1208, and allows sharing with readers
only. If the output stream file exists, the file is truncated to zero length before
writing any data. If the output stream file already exists,
it should have been created with a
CCSID of 1208; otherwise, the resulting XML output may not be usable. If the
output file does not exist, it will be created with a CCSID of 1208 before
attempting to write the XML output to it. The output file is created so that
the file owner has read and write permission to it. The output file can be
replaced if the user has the authority to do so. For more information on
authority requirements for stream files, see the <a href="open.htm">open()</a>--Open
File API in the Integrated File System section of the APIs in the
Information Center.</p>
<br>
<h3><a name="header_9">Error Messages</a></h3>
<p>The following messages may be sent from this function:</p>
<table width="100%" cellpadding="3">
<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">CPE3006 E</td>
<td width="85%" valign="top">Input/output error.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3014 E</td>
<td align="left" valign="top">The object name is not correct.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3021 E</td>
<td align="left" valign="top">The value specified for the argument is not
correct.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3025 E</td>
<td align="left" valign="top">No such path or directory.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3027 E</td>
<td align="left" valign="top">Operation not permitted.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3029 E</td>
<td align="left" valign="top">Resource busy.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3401 E</td>
<td align="left" valign="top">Permission denied.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3403 E</td>
<td align="left" valign="top">Not a directory.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3404 E</td>
<td align="left" valign="top">No space available.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3406 E</td>
<td align="left" valign="top">Operation would have caused the process to be
suspended.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3407 E</td>
<td align="left" valign="top">Interrupted function call.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3408 E</td>
<td align="left" valign="top">The address used for an argument was not
correct.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3436 E</td>
<td align="left" valign="top">There is not enough buffer space for the
requested operation.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3440 E</td>
<td align="left" valign="top">Operation not supported.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3450 E</td>
<td align="left" valign="top">Descriptor not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3452 E</td>
<td align="left" valign="top">Too many open files for this process.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3453 E</td>
<td align="left" valign="top">Too many open files in the system.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3460 E</td>
<td align="left" valign="top">Storage allocation request failed.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3470 E</td>
<td align="left" valign="top">Function not implemented.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3471 E</td>
<td align="left" valign="top">Specified target is a directory.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3474 E</td>
<td align="left" valign="top">Unknown system state.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3484 E</td>
<td align="left" valign="top">A damaged object was encountered.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3485 E</td>
<td align="left" valign="top">A loop exists in the symbolic links.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3486 E</td>
<td align="left" valign="top">A path name is too long.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3489 E</td>
<td align="left" valign="top">System resources not available to complete
request.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3490 E</td>
<td align="left" valign="top">Conversion error.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3499 E</td>
<td align="left" valign="top">Object is suspended.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3500 E</td>
<td align="left" valign="top">Object is a read only object.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3507 E</td>
<td align="left" valign="top">Object too large.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3511 E</td>
<td align="left" valign="top">File ID conversion of a directory failed.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3512 E</td>
<td align="left" valign="top">A File ID could not be assigned when linking an
object to directory.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3513 E</td>
<td align="left" valign="top">File handle rejected by server.</td>
</tr>
<tr>
<td align="left" valign="top">CPE3524 E</td>
<td align="left" valign="top">Function not allowed.</td>
</tr>
<tr>
<td align="left" valign="top">CPFA09E E</td>
<td align="left" valign="top">Object in use. Object is &amp;1.</td>
</tr>
<tr>
<td valign="top">CPF2207 E</td>
<td valign="top">Not authorized to use object &amp;1 in library &amp;3 type
*&amp;2.</td>
</tr>
<tr>
<td valign="top">CPF24B4 E</td>
<td valign="top">Severe error while addressing parameter list.</td>
</tr>
<tr>
<td valign="top">CPF2401 E</td>
<td valign="top">Not authorized to library &amp;1.</td>
</tr>
<tr>
<td valign="top">CPF2441 E</td>
<td valign="top">Not authorized to display job log.</td>
</tr>
<tr>
<td valign="top">CPF2443 E</td>
<td valign="top">Job log not displayed or listed because job has ended.</td>
</tr>
<tr>
<td valign="top">CPF3CF1 E</td>
<td valign="top">Error code parameter not valid.</td>
</tr>
<tr>
<td valign="top">CPF3C19 E</td>
<td valign="top">Error occurred with receiver variable specified.</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">CPF3C53 E</td>
<td valign="top">Job &amp;3/&amp;2/&amp;1 not found.</td>
</tr>
<tr>
<td valign="top">CPF3C55 E</td>
<td valign="top">Job &amp;3/&amp;2/&amp;1 does not exist.</td>
</tr>
<tr>
<td valign="top">CPF3C58 E</td>
<td valign="top">Job name specified is 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">CPF6565 E</td>
<td valign="top">User profile storage limit exceeded.</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">CPF9801 E</td>
<td valign="top">Object &amp;2 in library &amp;3 not found.</td>
</tr>
<tr>
<td valign="top">CPF9803 E</td>
<td valign="top">Cannot allocate object &amp;2 in library &amp;3.</td>
</tr>
<tr>
<td valign="top">CPF9821 E</td>
<td valign="top">Not authorized to program &amp;1 in library &amp;2.</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>
<tr>
<td valign="top">CPF2403 E</td>
<td valign="top">Message queue &amp;1 in &amp;2 not found.</td>
</tr>
<tr>
<td valign="top">CPF2408 E</td>
<td valign="top">Not authorized to message queue &amp;1.</td>
</tr>
<tr>
<td valign="top">CPF2433 E</td>
<td valign="top">Function not allowed for system log message queue &amp;1.</td>
</tr>
</table>
<br>
<p><img src="deltaend.gif" alt="End of change"> </p>
<hr>
API introduced: V5R4
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
"pm1.htm">Problem Management APIs</a> | <a href="aplist.htm">APIs by
category</a></td>
</tr>
</table>
</center>
</body>
</html>