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

394 lines
10 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>Change User Space (QUSCHGUS) 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. -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<!-- QUSCHGUS SCRIPT A converted by B2H R4.1 (346) (CMS) by PMHALL at -->
<!-- RCHVMW2 on 7 Oct 1998 at 17:10:40 -->
<!-- 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>Change User Space (QUSCHGUS) 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%">Qualified user space name</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">Starting position</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">Length of data</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">Input data</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">Force changes to auxiliary storage</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(1)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Optional Parameter:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">6</td>
<td align="left" valign="top" width="50%">Error code</td>
<td align="left" valign="top" width="20%">I/O</td>
<td align="left" valign="top" width="20%">Char(*)</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 Change User Space (QUSCHGUS) API changes the contents of the user space
(*USRSPC) object by moving a specified amount of data to the object. This API
allows you to change the contents of a user space if you are using either:</p>
<ul>
<li>A language that does not support pointers</li>
<li>System-domain user spaces</li>
</ul>
<p><strong>Note:</strong> To determine the starting position for the QUSCHGUS
API, you must add 1 to the offset value. In contrast to the i5/OS list APIs,
which use an offset value based on 0 for the starting position, the QUSCHGUS
API uses a value based on 1. For the QUSCHGUS API, the first character in the
user space is at position 1.</p>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>Library Authority</em></dt>
<dd>*EXECUTE</dd>
<dt><em>User Space Authority</em></dt>
<dd>*CHANGE</dd>
<dt><em>User Space Lock</em></dt>
<dd>*EXCLRD</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Qualified user space name</strong></dt>
<dd>INPUT; CHAR(20)
<p>The first 10 characters contain the user space name, and the second 10
characters contain the name of the library where the user space is located. The
special values supported for the library name are *LIBL and *CURLIB.</p>
</dd>
<dt><strong>Starting position</strong></dt>
<dd>INPUT; BINARY(4)
<p>The first byte of the user space that is to be changed. It must have a value
greater than 0.</p>
</dd>
<dt><strong>Length of data</strong></dt>
<dd>INPUT; BINARY(4)
<p>The length of the new data in the input data parameter. The length must be
greater than 0.</p>
</dd>
<dt><strong>Input data</strong></dt>
<dd>INPUT; CHAR(*)
<p>The new data to be placed into the user space. The field must be at least as
long as the length of data parameter.</p>
</dd>
<dt><strong>Force changes to auxiliary storage</strong></dt>
<dd>INPUT; CHAR(1)
<p>The method of forcing changes made to the user space to auxiliary
storage.</p>
<p>The valid values are as follows:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">Does not force changes. Normal system management
writes the changes to auxiliary storage.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Forces changes asynchronously. This interrupts
the normal system management and ensures that the user space is written to
auxiliary storage.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">Forces changes synchronously. This interrupts the
normal system management and ensures that the user space is written immediately
to auxiliary storage.</td>
</tr>
</table>
</dd>
</dl>
<br>
<h3>Optional Parameter</h3>
<dl>
<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>. If this
parameter is omitted, diagnostic and escape messages are issued to the
application.</p>
</dd>
</dl>
<br>
<h3>Error Messages</h3>
<table cellpadding="5">
<tr>
<th align="left" valign="top">Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td width="15%" valign="top">CPF24B4 E</td>
<td width="85%" valign="top">Severe error while addressing parameter list.</td>
</tr>
<tr>
<td 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">CPF3C0F E</td>
<td align="left" valign="top">Value &amp;1 for starting position parameter is
not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C04 E</td>
<td align="left" valign="top">User space &amp;1 not changed.</td>
</tr>
<tr>
<td align="left" valign="top">CPD3C0F D</td>
<td align="left" valign="top">Value &amp;1 for starting position parameter is
not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPD3C12 D</td>
<td align="left" valign="top">Length of data is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPD3C13 D</td>
<td align="left" valign="top">Value &amp;1 for force option is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPD3C14 D</td>
<td align="left" valign="top">Starting position &amp;1 and length &amp;2 cause
space overflow.</td>
</tr>
<tr>
<td align="left" valign="top">CPD3C15 D</td>
<td align="left" valign="top">New value &amp;1 is shorter than the length
specified.</td>
</tr>
<tr>
<td align="left" valign="top">CPD3C17 D</td>
<td align="left" valign="top">Error occurred with input data parameter.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C12 E</td>
<td align="left" valign="top">Length of data is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C13 E</td>
<td align="left" valign="top">Value &amp;1 for force option is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C14 E</td>
<td align="left" valign="top">Starting position &amp;1 and length &amp;2 cause
space overflow.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C15 E</td>
<td align="left" valign="top">New value &amp;1 is shorter than the length
specified.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C17 E</td>
<td align="left" valign="top">Error occurred with input data parameter.</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">CPF9801 E</td>
<td align="left" valign="top">Object &amp;2 in library &amp;3 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9802 E</td>
<td align="left" valign="top">Not authorized to object &amp;2 in &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9803 E</td>
<td align="left" valign="top">Cannot allocate object &amp;2 in library
&amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9807 E</td>
<td align="left" valign="top">One or more libraries in library list
deleted.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9808 E</td>
<td align="left" valign="top">Cannot allocate one or more libraries on library
list.</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">CPF9820 E</td>
<td align="left" valign="top">Not authorized to use library &amp;1.</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: V1R3
<hr>
<table cellpadding="2" cellspacing="2" align="center">
<tr align="center">
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
"obj1.htm">Object API categories</a> | <a href="aplist.htm">API by
category</a></td>
</tr>
</table>
</body>
</html>