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

385 lines
11 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>Change Library List (QLICHGLL) 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. -->
<!-- QLICHGLL SCRIPT A converted by B2H R4.1 (346) (CMS) by PMHALL at -->
<!-- RCHVMW2 on 6 Oct 1998 at 17:39:06 -->
<!-- Change History: -->
<!-- YYMMDD USERID Change description -->
<!-- Edited by Kersten Jan 02 -->
<!-- Updates from System API Programming book phase-out, July 2002 by JET -->
<!--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 Library List (QLICHGLL) API</h2>
<div class="box" style="width: 80%;">
<br>
&nbsp;&nbsp;Required Parameter Group:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">1</td>
<td align="left" valign="top" width="45%">Current library name</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="25%">Char(11)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">First product library name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(11)</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">Second product library name</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(11)</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="left" valign="top">User library list names</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Array(*) of Char(11)</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">Number of user library names</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">6</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>
<p>The Change Library List (QLICHGLL) API changes the current library, the two
product libraries, and the user part of the current thread's library list.
This API provides the only way to change the two product libraries in the library list.
The only other way to change the product libraries is using the Create Command (CRTCMD)
or the Create Menu (CRTMNU) command.</p>
<p>When the initial thread's library list is changed, each library added to the
list may be locked with a shared-read lock. The value of the QLIBLCKLVL system
value determines whether libraries in the library list are locked. If a library
is being removed from the initial thread's library list, and it was locked when
it was added to the library list, the shared-read lock is released. When a
secondary thread's library list is changed, libraries added to the library list
are not locked.</p>
<p>Authority to the library is checked whenever a library name is specified on
one of the required parameters.</p>
<p>You may want to save the current thread's library list before changing it.
The QWCRTVCA API can be used to retrieve the current thread's library list. The
Retrieve Job Information (QUSRJOBI) API can be used to retrieve the initial
thread's library list, when the current thread is not the initial thread. You
can then change the library list back to its original value by using the
QLICHGLL API with the libraries saved from the QUSRJOBI or QWCRTVCA API.</p>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>Library Authority</em></dt>
<dd>*USE</dd>
<dt><em>Library Lock</em></dt>
<dd>*SHRRD (initial thread only)</dd>
<dd>The QLIBLCKLVL system value determines whether libraries in the library
list are locked.</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Current library name</strong></dt>
<dd>INPUT;CHAR(11)
<p>The library that replaces the current library in the library list. (The data
is left-justified with a blank at the end.)</p>
<p>The current library can be, but does not have to be, a duplicate of any
library in the library list. QTEMP cannot be specified for the library
name.</p>
<p>The following special values can be used:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*CRTDFT</em></td>
<td align="left" valign="top">No library should be in the current library entry
in the library list. If objects are created into the current library, then
library QGPL is used as the current default library.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*SAME</em></td>
<td align="left" valign="top">The current library in the library list is not
changed.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>First product library name</strong></dt>
<dd>INPUT;CHAR(11)
<p>The library that replaces the first product library entry in the library
list. (The data is left-justified with a blank at the end.)</p>
<p>A product library may be a duplicate of the current library or of a library
in the user part of the library list. QTEMP cannot be specified for the library
name.</p>
<p>The following special values can be used:</p>
<table cellpadding="5">
<!-- cols="10 90" -->
<tr>
<td align="left" valign="top"><em>*NONE</em></td>
<td align="left" valign="top">The first product library entry in the library
list is removed.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*SAME</em></td>
<td align="left" valign="top">The first product library entry in the library
list is not changed.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Second product library name</strong></dt>
<dd>INPUT;CHAR(11)
<p>The library that replaces the second product library entry in the library
list. (The data is left-justified with a blank at the end.) QTEMP cannot be
specified for the library name.</p>
<p>The following special values can be used:</p>
<table cellpadding="5">
<!-- cols="10 90" -->
<tr>
<td align="left" valign="top"><em>*NONE</em></td>
<td align="left" valign="top">The second product library entry in the library
list is removed.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*SAME</em></td>
<td align="left" valign="top">The second product library entry in the library
list is not changed.</td>
</tr>
</table>
<br>
</dd>
<dt><strong>User library list names</strong></dt>
<dd>INPUT; ARRAY(*) of CHAR(11)
<p>The libraries that replace the libraries in the user part of the library
list. Specify the names of the libraries in the order in which they are to be
searched. (The data is left-justified with a blank at the end.)</p>
<p>The same library name cannot be specified more than once. A library cannot
exist in the system part and the user part of the library list.</p>
</dd>
<dt><strong>Number of user library names</strong></dt>
<dd>INPUT;BINARY(4)
<p>The total number of library names that will be changed in the user part of
the library list.</p>
<p>This must be a value from -1 through 250. There is a limit of 250 libraries
in the user part of the library list. When either of the following values is
specified, the user library list names parameter is ignored:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>-1</em></td>
<td align="left" valign="top">The user part of the library list remains the
same.</td>
</tr>
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">All libraries in the user part of the library
list are removed.</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>Error Messages</h3>
<table width="100%" cellpadding="5">
<!-- cols="15 85" -->
<tr>
<th align="left" valign="top">Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td width="15%" valign="top">CPF2106 E</td>
<td width="85%" valign="top">Library list not changed.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2110 E</td>
<td align="left" valign="top">Library &amp;1 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2113 E</td>
<td align="left" valign="top">Cannot allocate library &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2133 E</td>
<td align="left" valign="top">First product library on library list
destroyed.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2134 E</td>
<td align="left" valign="top">Second product library on library list
destroyed.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2137 E</td>
<td align="left" valign="top">Current library on library list destroyed.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2176 E</td>
<td align="left" valign="top">Library &amp;1 damaged.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2182 E</td>
<td align="left" valign="top">Not authorized to library &amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPF2184 E</td>
<td align="left" valign="top">Library list not replaced.</td>
</tr>
<tr>
<td align="left" valign="top">CPF219A E</td>
<td align="left" valign="top">Library QTEMP cannot be specified.</td>
</tr>
<tr>
<td align="left" valign="top">CPF219F E</td>
<td align="left" valign="top">Number of libraries for library list 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">CPF3C90 E</td>
<td align="left" valign="top">Literal value cannot be changed.</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">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: V2R3
<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>