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

1419 lines
40 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 User Function Information (QSYRTUFI,
QsyRetrieveUserFunctionInfo) 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. -->
<!-- Sec SCRIPT A converted by B2H R4.1 (346) (CMS) by V2KEA304 -->
<!-- at RCHVMW2 on 17 Feb 1999 at 11:05:09 -->
<!-- Change History: -->
<!-- YYMMDD USERID Change description -->
<!-- Edited by Kersten Jan 02 -->
<!--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 language="Javascript" src="../rzahg/synch.js" type="text/javascript">
</script>
<h2>Retrieve User Function Information (QSYRTUFI, QsyRetrieveUserFunctionInfo)
API</h2>
<div class="box" style="width: 70%;">
<br>
&nbsp;&nbsp;<img src="delta.gif" alt="Start of change">Required Parameter Group for QSYRTUFI:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">1</td>
<td align="left" valign="top" width="50%">Continuation handle</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="20%">Char(20)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">Receiver variable</td>
<td align="left" valign="top">Output</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">Length of receiver variable</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="left" valign="top">Format name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(8)</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">User profile name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(10)</td>
</tr>
<tr>
<td align="center" valign="top">6</td>
<td align="left" valign="top">Function selection criteria</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">Desired CCSID</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">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: Yes<br>
<!-- iddvc RMBR -->
<br>
</div>
<br>
<div class="box" style="width: 70%;">
<br>
&nbsp;&nbsp;Syntax for QsyRetrieveUserFunctionInfo:<br>
<pre>
#include &lt;qsyfnusg.h&gt;
void QsyRetrieveUserFunctionInfo
(char <em>Continuation_handle</em>[20],
void *<em>Receiver_variable</em>,
int *<em>Length_of_receiver_variable</em>,
char <em>Format_name</em>[8],
char <em>User_profile_name</em>[10],
Qsy_Selcrtr_T *<em>Function_selection_criteria</em>,
int *<em>Desired_CCSID</em>,
void *<em>Error_code</em>);
</pre>
&nbsp;&nbsp;Service Program: QSYFNUSG<br>
<!-- iddvc RMBR -->
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<img src="deltaend.gif" alt="End of change"><br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Retrieve User Function Information (OPM, QSYRTUFI; ILE,
QsyRetrieveUserFunctionInfo) API retrieves usage settings for a specified user
profile for one or more functions.</p>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>API Public Authority</em></dt>
<dd>*USE</dd>
<dt><em>Authority Required (if user profile name is not *CURRENT)</em></dt>
<dd>*SECADM special authority or</dd>
<dd>*READ to the user profile</dd>
<dt><em>Function Registration and Usage Information Lock</em></dt>
<dd>*SHRNUP</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Continuation handle</strong></dt>
<dd>INPUT; CHAR(20)
<p>The value returned to the user in the receiver variable when only partial
exit information is returned. This parameter must be set to blanks on the first
call to this API. This parameter is used when more information is available to
return than what could fit in the receiver variable. When you specify a
continuation handle for this parameter, all other parameters must have the same
values as the call to the API that generated the continuation handle. Failure
to do so may result in incomplete or inaccurate information.</p>
<p>Entries are only returned in their entirety; the API never returns anything
less. If there is not enough space for the entire entry, the continuation
handle is set to something other than blanks.</p>
</dd>
<dt><strong>Receiver variable</strong></dt>
<dd>OUTPUT; CHAR(*)
<p>The variable that is to receive the usage information requested.</p>
</dd>
<dt><strong>Length of receiver variable</strong></dt>
<dd>INPUT; BINARY(4)
<p>The length of the receiver variable. If the length is larger than the size
of the receiver variable, the results may not be predictable. The minimum
length is 8 bytes.</p>
</dd>
<dt><strong>Format name</strong></dt>
<dd>INPUT; CHAR(8)
<p>The format of the usage information to be returned.</p>
<p>You must use one of the following format names:</p>
<table cellpadding="5">
<!-- cols="30 70" -->
<tr>
<td align="left" valign="top"><em><a href="#HDRUFINF1">UFNI0100</a></em></td>
<td align="left" valign="top">User function usage information</td>
</tr>
<tr>
<td align="left" valign="top"><em><a href="#HDRUFINF2">UFNI0200</a></em></td>
<td align="left" valign="top">The same information as UFNI0100, plus an
indicator of where the user's usage setting comes from, the function name
information, the function group ID, and the function product ID.</td>
</tr>
<tr>
<td align="left" valign="top"><em><a href="#HDRUFINF3">UFNI0300</a></em></td>
<td align="left" valign="top">The same information as UFNI0200, plus additional
indicators of where the user's usage setting and source come from if the
*ALLOBJ authority is ignored, and where the user's usage setting and source
come from if the *ALLOBJ and specific usage setting are ignored.</td>
</tr>
</table>
<br>
<br>
</dd>
<dt><strong>User profile name</strong></dt>
<dd>INPUT; CHAR(10)
<p>The name of the user profile to retrieve function usage information for.</p>
<p>You may specify the following special value.</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*CURRENT</em></td>
<td align="left" valign="top">The usage information for the user currently
running is returned.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Function selection criteria</strong></dt>
<dd>INPUT; CHAR(*)
<p>The selection criteria to be used when selecting which functions to return
usage information for. No CCSID normalization is performed. It is recommended
that you use characters from the invariant character set for the comparison
data.</p>
<p>The information must be in the following format:</p>
<table cellpadding="5">
<!-- cols="25 75" -->
<tr>
<td align="left" valign="top" nowrap><em>Number of selection criteria</em></td>
<td align="left" valign="top">BINARY(4)<br>
The total number of selection criteria. Specify 0 if no selection criteria are
specified. If 0 is specified, usage information for all registered functions
will be returned. The maximum value for this field is 1.</td>
</tr>
<tr>
<td align="left" valign="top"><em>Selection criteria array</em></td>
<td align="left" valign="top">CHAR(*)<br>
The selection criteria. Refer to <a href="#HDRSELCR2">Format for Function
Selection Criteria</a> for more information.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Desired CCSID</strong></dt>
<dd>INPUT; BINARY(4)
<p>The CCSID that the returned text fields should be converted to. The text
fields will be returned in this CCSID even if data loss occurs. If you want to
ensure that data loss does not occur, you may specify 65535 or 13488
(UCS-2).</p>
<p>The following can be specified for the desired CCSID:</p>
<table cellpadding="5">
<!-- cols="10 90" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The text fields are converted to the default CCSID for the
job.</td>
</tr>
<tr>
<td align="left" valign="top"><em>CCSID</em></td>
<td align="left" valign="top">The text fields are converted to the specified
CCSID. The CCSID value must be from 1 to 65535. If 65535 is specified, then no
CCSID conversion is done on the text.</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="HDRUFINF1">UFNI0100 Format</a></h3>
<p>The following information is returned for the UFNI0100 format. This format
provides function usage information for a user profile. For a detailed
description of each field, see <a href="#HDRFLDUFU">Field Descriptions</a>.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Bytes returned</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Bytes available</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Continuation handle</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">Offset to first function entry</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">Number of function entries returned</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 function entry</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4">Function entry information. These
fields are repeated for each function entry returned.</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(30)</td>
<td align="left" valign="top">Function ID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Usage indicator</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRUFINF2">UFNI0200 Format</a></h3>
<p>The following information is returned for the UFNI0200 format. This format
provides function usage information for a user profile, plus the usage source
indicator, function name information, function group ID, and function product
ID. For a detailed description of each field, see <a href="#HDRFLDUFU">Field
Descriptions</a>.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Bytes returned</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Bytes available</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Continuation handle</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">Offset to first function entry</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">Number of function entries returned</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 function entry</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4">Function entry information. These
fields are repeated for each function entry returned.</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(30)</td>
<td align="left" valign="top">Function ID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Usage indicator</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Usage source</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Function-name message-file name</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Function-name message-file library name</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(7)</td>
<td align="left" valign="top">Function-name message ID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(330)</td>
<td align="left" valign="top">Function-name message text</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(3)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Function-name message-text CCSID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(330)</td>
<td align="left" valign="top">Function name</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Function name CCSID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(30)</td>
<td align="left" valign="top">Function product ID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(30)</td>
<td align="left" valign="top">Function group ID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRUFINF3">UFNI0300 Format</a></h3>
<p>The following information is returned for the UFNI0300 format. This format
returns the same information as format UFNI0200, plus where the user's usage
setting and usage source come from if the *ALLOBJ authority is ignored, and
where the user's usage setting and usage source come from if the *ALLOBJ
authority and specific usage setting are ignored. For a detailed description of
each field, see <a href="#HDRFLDUFU">Field Descriptions</a>.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Bytes returned</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Bytes available</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Continuation handle</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">Offset to first function entry</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">Number of function entries returned</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 function entry</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4">Function entry information. These
fields are repeated for each function entry returned.</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(30)</td>
<td align="left" valign="top">Function ID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Usage indicator</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Usage source</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Function-name message-file name</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Function-name message-file library name</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(7)</td>
<td align="left" valign="top">Function-name message ID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(330)</td>
<td align="left" valign="top">Function-name message text</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(3)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Function-name message-text CCSID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(330)</td>
<td align="left" valign="top">Function name</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Function name CCSID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(30)</td>
<td align="left" valign="top">Function product ID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(30)</td>
<td align="left" valign="top">Function group ID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Usage indicator ignoring *ALLOBJ</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Usage source ignoring *ALLOBJ</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Usage indicator ignoring *ALLOBJ and ignoring
specific usage setting</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Usage source ignoring *ALLOBJ and ignoring
specific usage setting</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Reserved</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRFLDUFU">Field Descriptions</a></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>If the continuation handle is set to a value other than blanks, this field
contains an approximation of the total bytes available. At a minimum, this
field contains the actual number of bytes available.</p>
<p><strong>Bytes returned.</strong> The number of bytes of data returned.</p>
<p><strong>Continuation handle.</strong> The handle that is returned when more
data is available to return, but the receiver variable is not large enough. The
handle indicates the point in the repository that the retrieval stopped. If the
handle is used on the next call to the API, the API returns more data starting
at the point that the handle indicates. This field is set to blanks when all
information is returned.</p>
<p><strong>Function group ID.</strong> The ID of the function group that the
function is grouped with. If the function is not grouped with a function group,
this field is set to *NONE.</p>
<p><strong>Function ID.</strong> The ID of the function.</p>
<p><strong>Function name.</strong> The text for the function name. This value
is converted to the CCSID value specified in the desired CCSID parameter.</p>
<p><strong>Function name CCSID.</strong> The CCSID value that is associated
with the function name in the function registration facility.</p>
<p><strong>Function-name message-file name.</strong> The name of the message
file that contains the function name. If no message file name is specified,
this field contains blanks.</p>
<p><strong>Function-name message-file library name.</strong> The name of the
library in which the function name message file resides. If no message file
name is specified, this field contains blanks.</p>
<p><strong>Function-name message ID.</strong> The message identifier for the
function name. If no message file name is specified, this field contains
blanks.</p>
<p><strong>Function-name message text.</strong> The first-level text for the
function-name message ID. This value is converted to the CCSID value specified
in the desired CCSID parameter.</p>
<p>When the message text is retrieved from the message file, the message file
library is added to the product portion of the library list, and *LIBL is
specified for the library name. If the library cannot be added to the product
portion of the library list, then *LIBL is still used to search for the
message. If the message is not found, then the message file library is searched
for the message.</p>
<p>If no message file name is specified, this field contains blanks.</p>
<p><strong>Function-name message-text CCSID.</strong> The CCSID value that the
function-name message text is stored in.</p>
<p><strong>Function product ID.</strong> The ID of the product that the
function is registered for.</p>
<p><strong>Length of function entry.</strong> The length of a function entry
that is returned. This value should be used in determining the displacement to
the next function entry.</p>
<p><strong>Number of function entries returned.</strong> The number of function
entries returned. If the receiver variable is not large enough to hold all of
the information, this number contains only the number of function entries
actually returned.</p>
<p><strong>Offset to first function entry.</strong> The offset to the first
function entry returned. The offset is from the beginning of the structure. If
no entries are returned, the offset is set to zero.</p>
<p><strong>Reserved.</strong> An ignored field.</p>
<p><strong>Usage indicator.</strong> Whether the user is allowed to use the
function.</p>
<p>This parameter contains one of the following values:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The user is not allowed to use the function.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">The user is allowed to use the function.</td>
</tr>
</table>
<p><strong>Usage indicator ignoring *ALLOBJ.</strong> Whether the user is
allowed to use the function if this API ignores the *ALLOBJ authority.</p>
<p>This parameter contains one of the following values:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The user is not allowed to use the function.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">The user is allowed to use the function.</td>
</tr>
</table>
<br>
<p><strong>Usage indicator ignoring *ALLOBJ and ignoring specific usage
setting.</strong> Whether the user is allowed to use the function if this API
ignores the *ALLOBJ authority and his specific usage setting.</p>
<p>This parameter contains one of the following values:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The user is not allowed to use the function.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">The user is allowed to use the function.</td>
</tr>
</table>
<p><strong>Usage source.</strong> An indicator as to why the user is allowed or
is not allowed to use the function.</p>
<p>This parameter contains one of the following values:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The user has *ALLOBJ special authority.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">The user has a specific usage setting for the
function.</td>
</tr>
<tr>
<td align="left" valign="top"><em>3</em></td>
<td align="left" valign="top">One of the user's groups has *ALLOBJ special
authority.</td>
</tr>
<tr>
<td align="left" valign="top"><em>4</em></td>
<td align="left" valign="top">One of the user's groups has a specific usage
setting for the function.</td>
</tr>
<tr>
<td align="left" valign="top"><em>5</em></td>
<td align="left" valign="top">The default usage setting for the function was
used.</td>
</tr>
<tr>
<td align="left" valign="top"><em>9</em></td>
<td align="left" valign="top">The usage source could not be determined.</td>
</tr>
</table>
<p><strong>Usage source ignoring *ALLOBJ.</strong> An indicator as to why the
user is allowed or is not allowed to use the function if this API ignores the
*ALLOBJ authority.</p>
<p>This parameter contains one of the following values:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">The user has a specific usage setting for the
function.</td>
</tr>
<tr>
<td align="left" valign="top"><em>3</em></td>
<td align="left" valign="top">One of the user's groups has *ALLOBJ special
authority.</td>
</tr>
<tr>
<td align="left" valign="top"><em>4</em></td>
<td align="left" valign="top">One of the user's groups has a specific usage
setting for the function.</td>
</tr>
<tr>
<td align="left" valign="top"><em>5</em></td>
<td align="left" valign="top">The default usage setting for the function was
used.</td>
</tr>
<tr>
<td align="left" valign="top"><em>9</em></td>
<td align="left" valign="top">The usage source could not be determined.</td>
</tr>
</table>
<p><strong>Usage source ignoring *ALLOBJ and ignoring specific usage
setting.</strong> An indicator as to why the user is allowed or is not allowed
to use the function if this API ignores the *ALLOBJ authority and specific
usage setting.</p>
<p>This parameter contains one of the following values:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>3</em></td>
<td align="left" valign="top">One of the user's groups has *ALLOBJ special
authority.</td>
</tr>
<tr>
<td align="left" valign="top"><em>4</em></td>
<td align="left" valign="top">One of the user's groups has a specific usage
setting for the function.</td>
</tr>
<tr>
<td align="left" valign="top"><em>5</em></td>
<td align="left" valign="top">The default usage setting for the function was
used.</td>
</tr>
<tr>
<td align="left" valign="top"><em>9</em></td>
<td align="left" valign="top">The usage source could not be determined.</td>
</tr>
</table>
<br>
<h3><a name="HDRSELCR2">Format for Function Selection Criteria</a></h3>
<p>This table shows the format for the function selection criteria parameter.
For a detailed description of each field, see <a href="#HDRFLDDCS5">Field
Descriptions</a>.</p>
<br>
<table border width="80%">
<tr>
<th align="left" valign="top">Type</th>
<th align="left" valign="top">Field</th>
</tr>
<tr>
<td align="left" valign="top" width="15%">BINARY(4)</td>
<td align="left" valign="top" width="85%">Size of criteria entry</td>
</tr>
<tr>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Comparison operator</td>
</tr>
<tr>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Function control key</td>
</tr>
<tr>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of comparison data</td>
</tr>
<tr>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Comparison data</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRFLDDCS5">Field Descriptions</a></h3>
<p><strong>Comparison data.</strong> The data to compare to the function
information.</p>
<p><strong>Comparison operator.</strong> The comparison value to be used when
comparing the function information with the comparison data.</p>
<p>The following value can be specified:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The comparison data equals the function information</td>
</tr>
</table>
<p><strong>Function control key.</strong> The function control to be compared.
Refer to <a href="#HDRFUNCC5">Function Control Keys</a> for more
informaiton.</p>
<p><strong>Length of comparison data.</strong> The length of the data to
compare to the function information. The length of the comparison data must be
valid for the function control key that is specified.</p>
<p><strong>Size of criteria entry.</strong> The size of the selection criteria
entry, including this field.</p>
<br>
<h3><a name="HDRFUNCC5">Function Control Keys</a></h3>
<p>The following table shows the valid function control keys for the key field
area of the selection control record. For a detailed description of each field,
see <a href="#HDRDESCRG5">Field Descriptions</a>.</p>
<table border width="80%">
<tr>
<th align="center" valign="top">Key</th>
<th align="left" valign="top">Type</th>
<th align="left" valign="top">Field</th>
</tr>
<tr>
<th align="center" valign="top">1</th>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Function category</td>
</tr>
<tr>
<th align="center" valign="top">3</th>
<td align="left" valign="top">CHAR(30)</td>
<td align="left" valign="top">Function product ID</td>
</tr>
<tr>
<th align="center" valign="top">4</th>
<td align="left" valign="top">CHAR(30)</td>
<td align="left" valign="top">Function group ID</td>
</tr>
<tr>
<th align="center" valign="top">5</th>
<td align="left" valign="top">CHAR(30)</td>
<td align="left" valign="top">Function ID</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRDESCRG5">Field Descriptions</a></h3>
<p><strong>Function category.</strong> The category of the function.</p>
<p>The possible values are:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Locally managed client functions within iSeries Navigator are
selected.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">Locally managed client functions not within
iSeries Navigator are selected.</td>
</tr>
<tr>
<td align="left" valign="top"><em>3</em></td>
<td align="left" valign="top">Host functions are selected.</td>
</tr>
<tr>
<td align="left" valign="top"><em>4</em></td>
<td align="left" valign="top">Centrally managed client functions within iSeries Navigator
are selected.</td>
</tr>
<tr>
<td align="left" valign="top"><em>5</em></td>
<td align="left" valign="top">Centrally managed client functions not within
iSeries Navigator are selected.</td>
</tr>
<tr>
<td width="15%" valign="top"><em>7</em></td>
<td width="85%" valign="top">All locally managed client functions are selected.
This includes all functions in categories 1 and 2.</td>
</tr>
<tr>
<td width="15%" valign="top"><em>8</em></td>
<td width="85%" valign="top">All centrally managed client functions are
selected. This includes all functions in categories 4 and 5.</td>
</tr>
<tr>
<td width="15%" valign="top"><em>9</em></td>
<td width="85%" valign="top">All client functions are selected. This includes
all functions in categories 1, 2, 4, and 5.</td>
</tr>
</table>
<p><strong>Function group ID.</strong> All functions that have this function
group are selected. The special value of *NONE can be specified to select
functions that do not have a function group specified.</p>
<p><strong>Function ID.</strong> The ID of the functions to be selected.</p>
<p>The following can be specified for the function ID:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>generic*</em></td>
<td align="left" valign="top">All function IDs that begin with the generic string are
selected.</td>
</tr>
<tr>
<td align="left" valign="top"><em>function ID</em></td>
<td align="left" valign="top">The specific function ID are selected.</td>
</tr>
</table>
<p><strong>Function product ID.</strong> All functions that have this function
product are selected.</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">CPF2204 E</td>
<td align="left" valign="top">User profile &amp;1 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPF229D E</td>
<td align="left" valign="top">Operation not allowed on user profile
&amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C19 E</td>
<td align="left" valign="top">Error occurred with receiver variable
specified.</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">CPF3C24 E</td>
<td align="left" valign="top">Length of the receiver variable 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">CPF3C3C E</td>
<td align="left" valign="top">Value for parameter &amp;1 not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C81 E</td>
<td align="left" valign="top">Value for key &amp;1 not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C82 E</td>
<td align="left" valign="top">Key &amp;1 not valid for API &amp;2.</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">CPF3CD9 E</td>
<td align="left" valign="top">Requested function cannot be performed at this
time.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CDA E</td>
<td align="left" valign="top">Registration facility repository not available
for use.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CE2 E</td>
<td align="left" valign="top">Continuation handle not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CE3 E</td>
<td align="left" valign="top">Continuation handle no longer valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CE4 E</td>
<td align="left" valign="top">Comparison operator &amp;1 not valid for exit
program selection criteria.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CE7 E</td>
<td align="left" valign="top">Number of selection criteria entries not
valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CE9 E</td>
<td align="left" valign="top">Length of comparison data not valid.</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">CPF3CF2 E</td>
<td align="left" valign="top">Error(s) occurred during running of &amp;1
API.</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">CPF9810 E</td>
<td align="left" valign="top">Library &amp;1 not found.</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: V4R3
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
"sec.htm">Security APIs</a> | <a href="aplist.htm">APIs by category</a></td>
</tr>
</table>
</center>
</body>
</html>