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

893 lines
25 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>List Database Relations (QDBLDBR) 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. -->
<!-- File 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 -->
<!--File Edited March 2001 -->
<!-- This file has undergone html cleanup on 9/24/01 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>List Database Relations (QDBLDBR) 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="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">Format</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(8)</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">Qualified 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">4</td>
<td align="left" valign="top">Member</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(10)</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">Record format</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">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 List Database Relations (QDBLDBR) API gives relational information about
database files. The information identifies the physical and logical files that
are dependent on a specific file, files that use a specific record format, or
file members that are dependent on a specific file member. The information is
placed in a user space specified by you.</p>
<p>Similar in function to the Display Database Relations (DSPDBR) command, this
API allows more input parameter values than does the command. Also, your
program can have more direct access to the information put in the user space by
this API than when the command places similar information in an output
file.</p>
<p>The information generated by this API replaces any existing information in
the user space. It does not append information to any information already in
the user space. If the space is bigger than needed, the contents of the
remainder of the space are not changed. If the space is not big enough, it is
extended.</p>
<br>
<h3>Authorities and Locks</h3>
<dl compact>
<dt><em>User Space Authority</em></dt>
<dd>*CHANGE</dd>
<dt><em>User Space Library Authority</em></dt>
<dd>*EXECUTE</dd>
<dt><em>User Space Lock</em></dt>
<dd>*EXCLRD</dd>
<dt><em>File Authority</em></dt>
<dd>*USE</dd>
<dt><em>File Library Authority</em></dt>
<dd>*USE</dd>
<dt><em>File Lock</em></dt>
<dd>*SHRNUPD</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Qualified user space name</strong></dt>
<dd>INPUT; CHAR(20)
<p>The user space that is to receive the database relations information. 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. You can use
these special values for the library name:</p>
<table>
<tr>
<td width="15%" valign="top"><em>*CURLIB</em></td>
<td width="85%" valign="top">The job's current library</td>
</tr>
<tr>
<td valign="top"><em>*LIBL</em></td>
<td valign="top">The library list</td>
</tr>
</table>
<br>
<br>
</dd>
<dt><strong>Format</strong></dt>
<dd>INPUT; CHAR(8)
<p>The content and format of the information to be returned about the specified
file, member, or record format. One of the following format names must be
used:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td width="15%" valign="top"><em>DBRL0100</em></td>
<td width="85%" valign="top">File information</td>
</tr>
<tr>
<td valign="top"><em>DBRL0200</em></td>
<td valign="top">Member information</td>
</tr>
<tr>
<td valign="top"><em>DBRL0300</em></td>
<td valign="top">Record format information</td>
</tr>
</table>
<br>
<p>For more information, see <a href="#HDRDBRF1">DBRL0100 Format (File)</a>, <a
href="#HDRDBRF2">DBRL0200 Format (Member)</a>, or <a href="#HDRDBRF3">DBRL0300
Format (Record Format)</a>.</p>
</dd>
<dt><strong>Qualified file name</strong></dt>
<dd>INPUT; CHAR(20)
<p>The name of the file for which database relations information is to be
extracted. The first 10 characters contain the file name, and the second 10
characters contain the name of the library where the file is located. The file
name cannot be a DDM file. The file name can be a specific file name, a generic
name, or the following special value:</p>
<table cellpadding="5">
<tr>
<td width="10%" valign="top"><em>*ALL</em></td>
<td width="90%" valign="top">All files</td>
</tr>
</table>
<br>
<p>You can use these special values for the library name:</p>
<table cellpadding="5">
<tr>
<td width="10%" valign="top"><em>*ALL</em></td>
<td width="90%" valign="top">All libraries in the system</td>
</tr>
<tr>
<td valign="top"><em>*ALLUSR</em></td>
<td valign="top">All nonsystem libraries. For information on the
libraries included, see <a href="../apiref/genericlibname.htm#allusr">*ALLUSR</a> in Generic library names.</td>
</tr>
<tr>
<td valign="top"><em>*CURLIB</em></td>
<td valign="top">The job's current library</td>
</tr>
<tr>
<td valign="top"><em>*LIBL</em></td>
<td valign="top">The library list</td>
</tr>
<tr>
<td valign="top"><em>*USRLIBL</em></td>
<td valign="top">Libraries listed in the user portion of the library list</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Member</strong></dt>
<dd>INPUT; CHAR(10)
<p>The name of the member to be used for retrieving database relations for
format DBRL0200. This value can be a specific member name, a generic member
name, or one of the following special values:</p>
<table cellpadding="5">
<tr>
<td width="10%" valign="top"><em>*FIRST</em></td>
<td width="90%" valign="top">Information about the first member (in the order
created) in the specified file or files is to be provided.</td>
</tr>
<tr>
<td valign="top"><em>*LAST</em></td>
<td valign="top">Information about the last member (in the order created) in
the specified file or files is to be provided.</td>
</tr>
<tr>
<td valign="top"><em>*ALL</em></td>
<td valign="top">Information about all members in the specified files is to be
provided.</td>
</tr>
</table>
<br>
<p>This parameter is ignored for formats DBRL0100 and DBRL0300.</p>
</dd>
<dt><strong>Record format</strong></dt>
<dd>INPUT; CHAR(10)
<p>The name of the record format to be used for retrieving database relations
for format DBRL0300. This value can be a specific record format, a generic
record format, or the following special value:</p>
<table cellpadding="5">
<tr>
<td width="10%" valign="top"><em>*ALL</em></td>
<td width="90%" valign="top">All record formats in the specified file</td>
</tr>
</table>
<br>
<p>This input is ignored for formats DBRL0100 and DBRL0200.</p>
</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="HDRFLDLSTD">Format of the Generated List</a></h3>
<p>The database relations list consists of an input parameter section and one
of three possible formats for the list data section. The three formats are
determined by the kind of information you are looking for. The format names
are:</p>
<br>
<table width="100%">
<tr>
<td width="15%" valign="top"><em>DBRL0100</em></td>
<td width="85%" valign="top">Database relations (file)</td>
</tr>
<tr>
<td valign="top"><em>DBRL0200</em></td>
<td valign="top">Database relations (member)</td>
</tr>
<tr>
<td valign="top"><em>DBRL0300</em></td>
<td valign="top">Database relations (record format)</td>
</tr>
</table>
<br>
<p>The layout of the contents of the user space is determined by the format
used. The following tables show how the contents of the input parameter section
and the data format sections are organized. For descriptions of each field, see
<a href="#HDRDBRFD">Field Descriptions</a>.</p>
<br>
<h3><a name="HDRDBLP1">Input Parameter Section</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%">User space name</td>
</tr>
<tr>
<td align="center" valign="top">10</td>
<td align="center" valign="top">A</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">User space library name</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Format name</td>
</tr>
<tr>
<td align="center" valign="top">28</td>
<td align="center" valign="top">1C</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">File name specified</td>
</tr>
<tr>
<td align="center" valign="top">38</td>
<td align="center" valign="top">26</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">File library name specified</td>
</tr>
<tr>
<td align="center" valign="top">48</td>
<td align="center" valign="top">30</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Member name specified</td>
</tr>
<tr>
<td align="center" valign="top">58</td>
<td align="center" valign="top">3A</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Record format name specified</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRDBRF1">DBRL0100 Format (File)</a></h3>
<p>The structure of the information returned is determined by the value
specified for the format name. The DBRL0100 format includes information on
files dependent on the file specified. The following table shows how this
information is organized. For detailed descriptions of the fields in the list,
see <a href="#HDRDBRFD">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%">File name used</td>
</tr>
<tr>
<td align="center" valign="top">10</td>
<td align="center" valign="top">A</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">File library name used</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Dependent file name</td>
</tr>
<tr>
<td align="center" valign="top">30</td>
<td align="center" valign="top">1E</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Dependent library name</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Dependency type</td>
</tr>
<tr>
<td align="center" valign="top">41</td>
<td align="center" valign="top">29</td>
<td align="left" valign="top">CHAR(3)</td>
<td align="left" valign="top">Reserved</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">Join reference number</td>
</tr>
<tr>
<td align="center" valign="top">48</td>
<td align="center" valign="top">30</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Constraint library name</td>
</tr>
<tr>
<td align="center" valign="top">58</td>
<td align="center" valign="top">3A</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Constraint name length</td>
</tr>
<tr>
<td align="center" valign="top">62</td>
<td align="center" valign="top">3E</td>
<td align="left" valign="top">CHAR(258)</td>
<td align="left" valign="top">Constraint name</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRDBRF2">DBRL0200 Format (Member)</a></h3>
<p>The structure of the information returned is determined by the value
specified for the format name. The DBRL0200 format includes information on
files and members dependent on the file member specified. The following table
shows how this information is organized. For detailed descriptions of the
fields in the list, see <a href="#HDRDBRFD">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%">File name used</td>
</tr>
<tr>
<td align="center" valign="top">10</td>
<td align="center" valign="top">A</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">File library name used</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Member name used</td>
</tr>
<tr>
<td align="center" valign="top">30</td>
<td align="center" valign="top">1E</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Dependent file name</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Dependent library name</td>
</tr>
<tr>
<td align="center" valign="top">50</td>
<td align="center" valign="top">32</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Dependent member name</td>
</tr>
<tr>
<td align="center" valign="top">60</td>
<td align="center" valign="top">3C</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Dependency type</td>
</tr>
<tr>
<td align="center" valign="top">61</td>
<td align="center" valign="top">3D</td>
<td align="left" valign="top">CHAR(3)</td>
<td align="left" valign="top">Reserved</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">Join reference number</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">Join file number</td>
</tr>
<tr>
<td align="center" valign="top">72</td>
<td align="center" valign="top">48</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Constraint library name</td>
</tr>
<tr>
<td align="center" valign="top">82</td>
<td align="center" valign="top">52</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Constraint name length</td>
</tr>
<tr>
<td align="center" valign="top">86</td>
<td align="center" valign="top">56</td>
<td align="left" valign="top">CHAR(258)</td>
<td align="left" valign="top">Constraint name</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRDBRF3">DBRL0300 Format (Record Format)</a></h3>
<p>The structure of the information returned is determined by the value
specified for the format name. The DBRL0300 format includes information on
files dependent on the record format specified. The following table shows how
this information is organized. For detailed descriptions of the fields in the
list, see <a href="#HDRDBRFD">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%">File name used</td>
</tr>
<tr>
<td align="center" valign="top">10</td>
<td align="center" valign="top">A</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">File library name used</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Record format name used</td>
</tr>
<tr>
<td align="center" valign="top">30</td>
<td align="center" valign="top">1E</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Dependent file name</td>
</tr>
<tr>
<td align="center" valign="top">40</td>
<td align="center" valign="top">28</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Dependent library name</td>
</tr>
</table>
<br>
<br>
<h3><a name="HDRDBRFD">Field Descriptions</a></h3>
<p><strong>Constraint library name.</strong> The name of the library containing
the file to which the constraint applies.</p>
<p><strong>Constraint name.</strong> The name of the constraint. This only
applies when the dependency type is <em>C</em>.</p>
<p><strong>Constraint name length.</strong> The length of the constraint name.
Delimited names can be a maximum of 258 characters and non-delimited names a
maximum of 128 characters.</p>
<p><strong>Dependency type.</strong> How a file or member is related to the
file or member specified with the QDBLDBR API. Possible values are:</p>
<table width="100%" cellpadding="5">
<tr>
<td width="10%" valign="top"><em>blank</em></td>
<td width="90%" valign="top">No dependent files or members were found for the
specified file.</td>
</tr>
<tr>
<td valign="top"><em>C</em></td>
<td valign="top">Constraint.</td>
</tr>
<tr>
<td valign="top"><em>D</em></td>
<td valign="top">The dependent file or member is dependent on the data in the
specified file or member that was extracted.</td>
</tr>
<tr>
<td valign="top"><em>I</em></td>
<td valign="top">The dependent file member is sharing the access path of the
file that the information was extracted from.</td>
</tr>
<tr>
<td valign="top"><em>O</em></td>
<td valign="top">If an access path is shared, one of the file members is
considered the owner. The owner of the access path is charged with the storage
used for the access path. If the member displayed is designated the owner, one
or more file members are designated with an I for access path sharing.</td>
</tr>
<tr>
<td valign="top"><em>V</em></td>
<td valign="top">The SQL view or member is dependent on the specified SQL
view.</td>
</tr>
</table>
<br>
<p><strong>Dependent file name.</strong> The name of the file that is dependent
on the file specified using the QDBLDBR API. If no dependent files are found
for the file specified, the dependent file name is *NONE.</p>
<p><strong>Dependent library name.</strong> The name of the library that the
dependent file is in. If there are no dependent files found for the file
specified, the dependent library name is blank.</p>
<p><strong>Dependent member name.</strong> The name of the file member that is
dependent on the file member specified using the QDBLDBR API. If no dependent
members are found for the member specified, the dependent member name is
*NONE.</p>
<p><strong>File library name specified.</strong> The name of the library
containing the file for which the database relations information is
requested.</p>
<p><strong>File library name used.</strong> The name of the library containing
the file used to extract the database relations information in this list
entry.</p>
<p><strong>File name specified.</strong> The name of the file for which the
database relations information is to be extracted.</p>
<p><strong>File name used.</strong> The name of the file used to extract the
database relations information in this list entry.</p>
<p><strong>Format name.</strong> The name of the format in which the database
relations information is returned to the user space.</p>
<p><strong>Join file number.</strong> If the file for which database relations
information is being extracted is a join logical file, this is the ordinal
number of the file in the JFILE to which the dependency relates. The join file
number is zero if either of the following are correct:</p>
<ul>
<li>No dependent files are found for the file specified.</li>
<li>The file for which the information is being extracted is not a join
file.</li>
</ul>
<p><strong>Join reference number.</strong> If the dependent file listed is a
join logical file, this is the ordinal number of the file in the JFILE to which
this dependency relates. The join reference number is zero if either of the
following are correct:</p>
<ul>
<li>No dependent files are found for the file specified.</li>
<li>The dependent file is not a join file.</li>
</ul>
<p><strong>Member name specified.</strong> The name of the member for which the
information is extracted.</p>
<p><strong>Member name used.</strong> The name of the member used to extract
the database relations information in this list entry.</p>
<p><strong>Record format name specified.</strong> The name of the record format
for which the information is displayed.</p>
<p><strong>Record format name used.</strong> The name of the record format used
to extract the database relations information in this list entry.</p>
<p><strong>Reserved.</strong> An ignored field.</p>
<p><strong>User space library name.</strong> The name of the library that
contains the user space that receives the database relations information
requested.</p>
<p><strong>User space name.</strong> The name of the user space that receives
the database relations information requested.</p>
<br>
<h3>Error Messages</h3>
<br>
<table width="100%">
<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">CPF3CF2 E</td>
<td width="85%" valign="top">Error(s) occurred during running of &amp;1
API.</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">CPF3C23 E</td>
<td valign="top">Object &amp;1 is not a database file.</td>
</tr>
<tr>
<td valign="top">CPF3C90 E</td>
<td valign="top">Literal value cannot be changed.</td>
</tr>
<tr>
<td valign="top">CPF326C E</td>
<td valign="top">File name &amp;1 not valid special value.</td>
</tr>
<tr>
<td valign="top">CPF326D E</td>
<td valign="top">Member name &amp;1 not valid special value.</td>
</tr>
<tr>
<td valign="top">CPF326E E</td>
<td valign="top">Record format name &amp;1 not valid special value.</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>
</table>
<br>
<hr>
API introduced: V2R2
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#top_Of_Page">Top</a> | <a href=
"file1.htm">Database and File APIs</a> | <a href="aplist.htm">APIs by
category</a></td>
</tr>
</table>
</center>
<br>
</body>
</html>