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

1162 lines
34 KiB
HTML
Raw Permalink 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 Journal State (QjoChangeJournalState) 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. -->
<!-- JC1 SCRIPT A converted by B2H R4.1 (346) (CMS) by V2KEA304 -->
<!-- at RCHVMW2 on 17 Feb 1999 at 11:05:09 -->
<!-- Change history -->
<!-- 030531 v5r3 mel clarified inactive and defined sndtskpty 0 -->
<!--File Edited by Kersten Oct 2001 -->
<!--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 Journal State (QjoChangeJournalState) 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 journal 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">Request variable</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">Length of request 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 of request variable</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(8)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Omissible Parameter Group:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">5</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">6</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">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;Service Program: QJOURNAL<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Header File: QSYSINC/H.QJOURNAL<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: No<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Change Journal State (QjoChangeJournalState) API is used to change the
journal state for local and remote journals.</p>
<p>When this API is called from the source system for a local journal, the
journal state may be changed from *STANDBY to
*ACTIVE. A journal state of *ACTIVE for a local journal indicates that journal
entries are allowed to be deposited into the attached journal receiver of the
journal. A request to change the journal state of a local journal from *ACTIVE
to *INACTIVE is ignored.</p>
<p>When this API is called from the source system for a remote journal that is
associated with a source system journal, the remote journal state may be
changed from *ACTIVE to *INACTIVE or from *INACTIVE to *ACTIVE. This API also
allows additional attributes that are associated with the journal state to be
set. For additional details on the other attributes that are associated with
the journal state, see <a href="#HDRCJSTFLD">Field Descriptions</a>.</p>
<p>When this API is called from the target system for a remote journal that is
associated with a source system journal, the journal state may be changed from
*ACTIVE to *INACTIVE.</p>
<p>A journal state of *ACTIVE for a remote journal indicates that journal
entries can be received from the associated journal on the source system. A
journal state of *INACTIVE for a remote journal indicates that journal entries
are currently not being received.</p>
<br>
<h3>Restrictions</h3>
<p>The following restrictions apply:</p>
<ul>
<li>A user profile must exist on the target system by the same name as the user
profile that is running this API on the source system.</li>
<li>Synchronous delivery mode is not supported when a remote journal is
specified for the qualified journal name parameter.</li>
<li>The journal state of the remote journal to be activated cannot already be
*ACTIVE.</li>
<li>The journal state of the remote journal to be inactivated cannot already be
*INACTIVE.</li>
<li>If the remote journal state is *CTLINACT, then the remote journal cannot be
inactivated by specifying a preferred inactivate type of controlled
inactivate.</li>
<li>The remote journal to be activated cannot already be replicating journal
entries to other remote journals.</li>
<li>A journal receiver that was never attached to a journal after Version 4
Release 2 Modification 0 has been installed cannot be replicated.</li>
<li>Format CJST0100 cannot be used with a journal whose names starts with a Q,
in a library that starts with Q, unless that library is QGPL.</li>
</ul>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>Source Journal Authority</em></dt>
<dd>*CHANGE, *OBJMGT</dd>
<dt><em>Source Journal Library Authority</em></dt>
<dd>*EXECUTE</dd>
<dt><em>Source Journal Receiver Authority</em></dt>
<dd>*USE, *OBJMGT</dd>
<dt><em>Source Journal Receiver Library Authority</em></dt>
<dd>*EXECUTE</dd>
<dt><em>Service Program Authority</em></dt>
<dd>*EXECUTE</dd>
<dt><em>Source Journal Lock</em></dt>
<dd>*SHRUPD</dd>
<dt><em>Source Journal Receiver Lock</em></dt>
<dd>*SHRRD</dd>
<dt><em>Target Journal Lock</em></dt>
<dd>*SHRUPD</dd>
<dt><em>Target Journal Receiver Lock</em></dt>
<dd>*SHRRD</dd>
<dt><em>Target Journal Receiver Library Lock</em></dt>
<dd>*SHRUPD</dd>
</dl>
<br>
<h3><a name="HDRCJSTREQ">Required Parameter Group</a></h3>
<dl>
<dt><strong>Qualified journal name</strong></dt>
<dd>INPUT; CHAR(20)
<p>For formats CJST0100 and CJST0200 the name of the journal for which the
journal state is being changed, and the library in which it resides. For
formats CJST0300, CJST0400, and CJST0500 the name of the source journal that is
associated with the remote journal for which the journal state is being
changed, and the library in which it resides. The first 10 characters contain
the journal name, and the second 10 characters contain the name of the library
where the journal is located.</p>
<p>The special values supported for the library name follow:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td width="15%" valign="top"><em>*LIBL</em></td>
<td width="85%" valign="top">Library list</td>
</tr>
<tr>
<td valign="top"><em>*CURLIB</em></td>
<td valign="top">Current library</td>
</tr>
</table>
<br>
</dd>
<dt><strong>Request variable</strong></dt>
<dd>INPUT; CHAR(*)
<p>The request variable structure that describes the input for the Change
Journal State (QjoChangeJournalState) API.</p>
</dd>
<dt><strong>Length of request variable</strong></dt>
<dd>INPUT; BINARY(4)
<p>The length of the request variable, in bytes. The length of the request
variable must be equal to the length of the input format specified. Zero must
be specified for this parameter when you use format CJST0200.</p>
</dd>
<dt><strong>Format name of request variable</strong></dt>
<dd>INPUT; CHAR(8)
<p>The format of the information that is provided as input for the Change
Journal State (QjoChangeJournalState) API.</p>
<p>The possible format names follow:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td width="15%" valign="top"><em>CJST0100</em></td>
<td width="85%" valign="top">Activate a local journal from the source system.
See <a href="#HDRCJST100">CJST0100 Format</a> for more
information on the CJST0100 format.</td>
</tr>
<tr>
<td valign="top"><em>CJST0200</em></td>
<td valign="top">Inactivate a remote journal from the target system. There is
no additional information required for format CJST0200.</td>
</tr>
<tr>
<td valign="top"><em>CJST0300</em></td>
<td valign="top">Inactivate a remote journal from the source system. See <a
href="#HDRCJST300">CJST0300 Format</a> for more information on the CJST0300
format.</td>
</tr>
<tr>
<td valign="top"><em>CJST0400</em></td>
<td valign="top">Activate a synchronously maintained remote journal from the
source system. See <a href="#HDRCJST400">CJST0400 Format</a> for more
information on the CJST0400 format.</td>
</tr>
<tr>
<td valign="top"><em>CJST0500</em></td>
<td valign="top">Activate an asynchronously maintained remote journal from the
source system. See <a href="#HDRCJST500">CJST0500 Format</a> for more
information on the CJST0500 format.</td>
</tr>
</table>
</dd>
</dl>
<br>
<h3><a name="HDRCJSTOMS">Omissible Parameter Group</a></h3>
<dl>
<dt><strong>Receiver variable</strong></dt>
<dd>OUTPUT; CHAR(*)
<p>The receiver variable that is to receive output from the API. The size of
the area to receive the output can be smaller than the output returned for the
format requested as long as the length of receiver variable parameter is
specified correctly. Only format CJST0300 returns output. If this parameter is
omitted, the length of receiver variable parameter must also be omitted. If
this parameter is specified, the length of receiver variable parameter must
also be specified.</p>
</dd>
<dt><strong>Length of receiver variable</strong></dt>
<dd>INPUT; BINARY(4)
<p>The length of the receiver variable, in bytes. The length of the receiver
variable parameter may be specified up to the size of the receiver variable
specified in the user program. If the length of the receiver variable parameter
specified is larger than the allocated size of the receiver variable specified
in the user program, the results are not predictable. For formats other than
CJST0300 this value must be 0 or the parameter must be omitted. For format
CJST0300 this value must be greater than or equal to 8 or the parameter must be
omitted. If this parameter is omitted, the receiver variable parameter must
also be omitted.</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>. If this
parameter is omitted, diagnostic and escape messages are issued to the
application.</p>
</dd>
</dl>
<br>
<h3><a name="HDRCJST100">CJST0100 Format</a></h3>
<p>The following table defines the information required for format CJST0100 to
activate a local journal from the source system.</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(1)</td>
<td align="left" valign="top" width="60%">New journal state</td>
</tr>
</table>
<br>
<h3><a name="HDRCJST300">CJST0300 Format</a></h3>
<p>The following table defines the information required for format CJST0300 to
inactivate a remote journal from the source system.</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(18)</td>
<td align="left" valign="top" width="60%">Relational database directory entry</td>
</tr>
<tr>
<td align="center" valign="top">18</td>
<td align="center" valign="top">12</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Remote journal</td>
</tr>
<tr>
<td align="center" valign="top">38</td>
<td align="center" valign="top">26</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Preferred inactivate type</td>
</tr>
</table>
<br>
<p>The following table defines the information returned in the receiver
variable for format CJST0300 after a remote journal has been inactivated:</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(18)</td>
<td align="left" valign="top">Relational database directory entry</td>
</tr>
<tr>
<td align="center" valign="top">26</td>
<td align="center" valign="top">1A</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Remote journal</td>
</tr>
<tr>
<td align="center" valign="top">46</td>
<td align="center" valign="top">2E</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Preferred inactivate type</td>
</tr>
<tr>
<td align="center" valign="top">47</td>
<td align="center" valign="top">2F</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Inactivate type</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">Inactivate journal receiver name</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">Inactivate journal receiver library</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">Inactivate sequence number</td>
</tr>
<tr>
<td align="center" valign="top">72</td>
<td align="center" valign="top">48</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Inactivate sequence number - long</td>
</tr>
</table>
<br>
<h3><a name="HDRCJST400">CJST0400 Format</a></h3>
<p>The following table defines the information required for format CJST0400 to
activate a synchronously maintained remote journal from the source system.</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(18)</td>
<td align="left" valign="top" width="60%">Relational database directory entry</td>
</tr>
<tr>
<td align="center" valign="top">18</td>
<td align="center" valign="top">12</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Remote journal</td>
</tr>
<tr>
<td align="center" valign="top">38</td>
<td align="center" valign="top">26</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Starting journal receiver</td>
</tr>
</table>
<br>
<h3><a name="HDRCJST500">CJST0500 Format</a></h3>
<p>The following table defines the information required for format CJST0500 to
activate an asynchronously maintained remote journal from the source
system.</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(18)</td>
<td align="left" valign="top" width="60%">Relational database directory entry</td>
</tr>
<tr>
<td align="center" valign="top">18</td>
<td align="center" valign="top">12</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Remote journal</td>
</tr>
<tr>
<td align="center" valign="top">38</td>
<td align="center" valign="top">26</td>
<td align="left" valign="top">CHAR(20)</td>
<td align="left" valign="top">Starting journal receiver</td>
</tr>
<tr>
<td align="center" valign="top">58</td>
<td align="center" valign="top">3A</td>
<td align="left" valign="top">CHAR(2)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">60</td>
<td align="center" valign="top">3C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Sending task priority</td>
</tr>
</table>
<br>
<h3><a name="HDRCJSTFLD">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><strong>Bytes returned.</strong> The number of bytes of data returned.</p>
<p><strong>Inactivate journal receiver library.</strong> The library of the
journal receiver that contains the inactivate sequence number. This field will
be blank if the system was unable to determine the library name.</p>
<p><strong>Inactivate journal receiver name.</strong> The name of the journal
receiver that contains the inactivate sequence number. This field will be blank
if the system was unable to determine the journal receiver name.</p>
<p><strong>Inactivate sequence number.</strong> If a controlled inactivate was
initiated, this is the sequence number of the last journal entry that was
queued for replication before the API was called. If an immediate inactivate
was performed, this is the sequence number of the last journal entry that was
replicated to the remote journal. This field will be 0 if the system was unable
to determine the last entry that would have been, or was, replicated.</p>
<p>This field will be -1 if the value could not fit in the specified Binary(4)
field. The complete value will be in the Inactivate sequence number - long
field.</p>
<p><strong>Inactivate sequence number - long.</strong> The same field as
Inactivate sequence number except the information is in a Char(20) field that
is treated as Zoned(20,0).</p>
<p><strong>Inactivate type.</strong> How the replication of journal entries was
actually ended.</p>
<p>The possible values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td valign="top"><em>0</em></td>
<td valign="top">A controlled inactivate of journal entry replication is being
performed. All journal entries already queued to be sent from the source system
to the target system will be replicated before the inactivate operation
completes.</td>
</tr>
<tr>
<td valign="top"><em>1</em></td>
<td valign="top">An immediate inactivate of journal entry replication was
performed. The system did not continue to replicate queued journal entries
before inactivating the remote journal.</td>
</tr>
</table>
<br>
<p><strong>New journal state.</strong> Whether the depositing of journal
entries into the local journal should be activated.</p>
<p>The possible values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td valign="top"><em>1</em></td>
<td valign="top">*ACTIVE</td>
</tr>
</table>
<br>
<p><strong>Preferred inactivate type.</strong> How the replication of journal
entries should be ended.</p>
<p>The possible values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td valign="top"><em>0</em></td>
<td valign="top">A controlled inactivate of journal entry replication should be
performed. A <strong>controlled inactivate</strong> means that the system
should replicate all journal entries already queued to be sent from the source
system to the target system before inactivating the remote journal. No
additional journal entries will be queued after a request to perform a
controlled inactivate. A controlled inactivate is not possible when a journal
is in catch-up, or when it is being synchronously maintained. In both of these
cases, the request to perform a controlled inactivate will be implicitly
changed by the system to an immediate inactivate request.</td>
</tr>
<tr>
<td valign="top"><em>1</em></td>
<td valign="top">An immediate inactivate of journal entry replication should be
performed. An immediate inactivate means that the system should not continue to
replicate any journal entries that are already queued before inactivating the
remote journal.</td>
</tr>
</table>
<br>
<p><strong>Relational database directory entry.</strong> The name of the
relational database directory entry that contains the remote location name of
the target system.</p>
<p><strong>Remote journal.</strong> The name of the remote journal on the
target system for which the journal state is being changed, and the library in
which it resides. The first 10 characters contain the remote journal name, and
the second 10 characters contain the name of the library where the remote
journal is located.</p>
<p><strong>Reserved.</strong> A reserved space for the purpose of alignment.
This field must be initialized to binary 0.</p>
<p><strong>Sending task priority.</strong> The priority of the sending task on
the source system for asynchronously maintained remote journals. The priority
is a value from 1 (highest priority) through 99 (lowest priority), which
represents the importance of the task when it competes with other tasks for
machine resources. This value represents the relative (not absolute) importance
of the task. A special value of 0 indicates that the system will choose a
system default for the priority.
When the system chooses a priority it is a priority higher than 1.
</p>
<p><strong>Starting journal receiver.</strong> The journal receiver where the
replication of journal entries from the source system to the target system will
start.</p>
<p>The possible values follow:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td valign="top"><em>*ATTACHED</em></td>
<td valign="top">The replication of journal entries starts with the journal
receiver that is currently attached to the remote journal on the target system.
The journal entries are replicated from the corresponding journal receiver that
is associated with the journal on the source system. The replication starts
with the journal entries that follow the last journal entry that currently
exists in the attached journal receiver on the target system.</td>
</tr>
<tr>
<td valign="top"></td>
<td valign="top">If the remote journal on the target system does not have an
attached journal receiver, the journal receiver that is currently attached to
the journal on the source system is created on the target system and attached
to the remote journal on the target system. Then journal entries are replicated
starting with the first journal entry in the journal receiver that is currently
attached to the journal on the source system.</td>
</tr>
<tr>
<td valign="top"></td>
<td valign="top">If the journal on the source system does not have an attached
journal receiver, which is only possible in the case of a remote journal that
is associated with another remote journal, no journal entries can be replicated
and an error is returned.</td>
</tr>
<tr>
<td valign="top"><em>*SRCSYS</em></td>
<td valign="top">The replication of journal entries starts with the journal
receiver that is currently attached to the journal on the source system.</td>
</tr>
<tr>
<td valign="top"></td>
<td valign="top">If the corresponding journal receiver exists and is attached
to the remote journal on the target system, journal entries are replicated
starting with the journal entries that follow the last journal entry that
currently exists in the attached journal receiver on the target system.
Otherwise, if the corresponding journal receiver exists but is not attached to
the remote journal on the target system, no journal entries can be replicated
and an error is returned.</td>
</tr>
<tr>
<td valign="top"></td>
<td valign="top">If the corresponding journal receiver does not exist on the
target system, the journal receiver is created on the target system and
attached to the remote journal on the target system. Then journal entries are
replicated starting with the first journal entry in the journal receiver that
is currently attached to the journal on the source system.</td>
</tr>
<tr>
<td valign="top"></td>
<td valign="top">If the journal on the source system does not have an attached
journal receiver, which is only possible in the case of a remote journal that
is associated with another remote journal, no journal entries can be replicated
and an error is returned.</td>
</tr>
<tr>
<td valign="top"><em>Qualified journal receiver name</em></td>
<td valign="top">The replication of journal entries starts with the specified
journal receiver name for the journal on the source system. The first 10
characters contain the journal receiver name, and the second 10 characters
contain the name of the library where the journal receiver is located on the
source system.<br>
The special values supported for the library name follow:
<table cellpadding="5">
<tr>
<td valign="top"><em>*LIBL</em></td>
<td valign="top">Library list</td>
</tr>
<tr>
<td valign="top"><em>*CURLIB</em></td>
<td valign="top">Current library</td>
</tr>
</table>
</td>
</tr>
<tr>
<td valign="top"></td>
<td valign="top">If the corresponding journal receiver exists and is attached
to the remote journal on the target system, journal entries are replicated
starting with the journal entries that follow the last journal entry that
currently exists in the attached journal receiver on the target system.
Otherwise, if the corresponding journal receiver exists but is not attached to
the remote journal on the target system, no journal entries can be replicated
and an error is returned.</td>
</tr>
<tr>
<td valign="top"></td>
<td valign="top">If the corresponding journal receiver does not exist on the
target system, then the journal receiver is created on the target system and
attached to the remote journal on the target system. Then journal entries are
replicated starting with the first journal entry in the specified journal
receiver on the source system.</td>
</tr>
<tr>
<td valign="top"></td>
<td valign="top">If the journal on the source system does not have an attached
journal receiver, which is only possible in the case of a remote journal that
is associated with another remote journal, no journal entries can be replicated
and an error is returned.</td>
</tr>
</table>
<br>
<h3>Error Messages</h3>
<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">CPF24B4 E</td>
<td width="85%" valign="top">Severe error while addressing parameter list.</td>
</tr>
<tr>
<td valign="top">CPF3CF1 E</td>
<td valign="top">Error code parameter not valid.</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">CPF3C24 E</td>
<td valign="top">Length of the receiver variable 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">CPF69A2 E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF69A3 E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF694D E</td>
<td valign="top">Unexpected journal receiver &amp;8 found.</td>
</tr>
<tr>
<td valign="top">CPF694F E</td>
<td valign="top">Communications failure.</td>
</tr>
<tr>
<td valign="top">CPF696A E</td>
<td valign="top">Request variable length &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF696B E</td>
<td valign="top">New journal state &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF696C E</td>
<td valign="top">Sending task priority &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF696D E</td>
<td valign="top">Length of receiver variable &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF696E E</td>
<td valign="top">Type of journal &amp;1 in &amp;2 not valid.</td>
</tr>
<tr>
<td valign="top">CPF696F E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF697A E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF697B E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF697C E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF697D E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF697E E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF697F E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF6973 E</td>
<td valign="top">Systems not compatible.</td>
</tr>
<tr>
<td valign="top">CPF6974 E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF698A E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF698B E</td>
<td valign="top">Unexpected journal receiver attached to &amp;1.</td>
</tr>
<tr>
<td valign="top">CPF698C E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF698D E</td>
<td valign="top">Journal &amp;1 not a remote journal.</td>
</tr>
<tr>
<td valign="top">CPF698E E</td>
<td valign="top">Journal &amp;1 not associated with source journal.</td>
</tr>
<tr>
<td valign="top">CPF698F E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF6982 E</td>
<td valign="top">Relational database directory entry &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF699A E</td>
<td valign="top">Unexpected journal receiver &amp;8 found.</td>
</tr>
<tr>
<td valign="top">CPF699C E</td>
<td valign="top">Receiver variable parameters not valid.</td>
</tr>
<tr>
<td valign="top">CPF699D E</td>
<td valign="top">Preferred inactivate type &amp;1 not valid.</td>
</tr>
<tr>
<td valign="top">CPF699E E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF6993 E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF6994 E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF6995 E</td>
<td valign="top">Unexpected journal receiver &amp;8 found.</td>
</tr>
<tr>
<td valign="top">CPF6996 E</td>
<td valign="top">Replication of journal entries ended.</td>
</tr>
<tr>
<td valign="top">CPF6997 E</td>
<td valign="top">Unexpected journal receiver &amp;8 found.</td>
</tr>
<tr>
<td valign="top">CPF6998 E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF6999 E</td>
<td valign="top">State of journal &amp;1 in &amp;2 not changed.</td>
</tr>
<tr>
<td valign="top">CPF70DB E</td>
<td valign="top">Remote journal function failed.</td>
</tr>
<tr>
<td valign="top">CPF70D9 E</td>
<td valign="top">Changing journal state not allowed.</td>
</tr>
<tr>
<td valign="top">CPF701B E</td>
<td valign="top">Journal recovery of interrupted operation failed.</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">CPF9802 E</td>
<td valign="top">Not authorized to object &amp;2 in &amp;3.</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">CPF9810 E</td>
<td valign="top">Library &amp;1 not found.</td>
</tr>
<tr>
<td valign="top">CPF9814 E</td>
<td valign="top">Device &amp;1 not found.</td>
</tr>
<tr>
<td valign="top">CPF9820 E</td>
<td valign="top">Not authorized to use library &amp;1.</td>
</tr>
<tr>
<td valign="top">CPF9830 E</td>
<td valign="top">Cannot assign library &amp;1.</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: V4R2
<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=
"jc1.htm">Journal and Commit APIs</a> | <a href="aplist.htm">APIs by
category</a></td>
</tr>
</table>
</body>
</html>