ibm-information-center/dist/eclipse/plugins/i5OS.ic.cl_5.4.0.1/addrmtjrn.htm

461 lines
21 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">
<title>Add Remote Journal (ADDRMTJRN)</title>
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body bgcolor="white">
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<a name="ADDRMTJRN.Top_Of_Page"></a>
<h2>Add Remote Journal (ADDRMTJRN)</h2>
<table width="100%">
<tr>
<td valign="top" align="left"><b>Where allowed to run: </b>All environments (*ALL)<br>
<b>Threadsafe: </b>No
</td>
<td valign="top" align="right">
<a href="#ADDRMTJRN.PARAMETERS.TABLE">Parameters</a><br>
<a href="#ADDRMTJRN.COMMAND.EXAMPLES">Examples</a><br>
<a href="#ADDRMTJRN.ERROR.MESSAGES">Error messages</a></td>
</tr>
</table>
<div> <a name="ADDRMTJRN"></a>
<p>The Add Remote Journal (ADDRMTJRN) command associates a remote journal on the target system, as identified by the relational database directory entry, with the specified journal on the source system. The journal on the source system may be either a local journal or another remote journal. A maximum of 255 remote journals may be associated with a single journal on a source system.
</p>
<p>When adding a remote journal to a source journal, the remote journal is created on the target system using a combination of the attributes from the source journal and the input parameters provided on this command. The library that the remote journal will be created in must already exist on the target system prior to this command being used on the source system. When created by this command, the remote journal will be created with a journal type of *REMOTE and the remote journal will not have an attached journal receiver.
</p>
<p>
<b>Note: </b>A receiver will be attached when the remote journal is activated using either the Change Remote Journal (CHGRMTJRN) command, or Change Journal State (QjoChangeJournalState) API.
</p>
<p>When adding the remote journal, the remote journal can either be created into the same named library as that of the source journal or into a redirected library on the target system. A redirected library provides a means for remote journals and any of their associated journal receivers to reside in different named libraries on the target system from the corresponding local journal and journal receivers on the local system. When specified, all validation for the journal library on the target system will be performed using the redirected library name. Similarly, the journal receivers that will later be created and associated with this remote journal can either reside in the same library as the source journal receivers on the source system, or into a distinct redirected library name on the target system. The journal receiver library redirection, if desired, must be specified when the remote journal is added using this command.
</p>
<p>When adding a remote journal on a target system, two remote journal types can be specified, *TYPE1 and *TYPE2. The remote journal type influences the redirection capabilities, journal receiver restore operations, and remote journal association characteristics.
</p>
<ul>
<li>Every *TYPE1 remote journal that is associated with the local journal must use the same redirection for both the remote journal and remote journal receiver. This allows a journal receiver to be saved from any system in the remote journal network and be restored to any system in the network and associated with either a local or remote journal.
</li>
<li>Every *TYPE2 remote journal that is associated with the local journal can use different redirection for the remote journal or remote journal receiver. This restricts the save and restore options. The journal receiver can only be assoicated with the remote journal if it was saved from the system on which the remote journal resides. If the journal receiver was saved from the system with the local journal, then it cannot be associated with the remote journal on any system.
</li>
</ul>
<p>If the specified journal already exists on the target system, the journal can be associated with the source journal if all of the following are true:
</p>
<ul>
<li>the journal is of type *REMOTE
</li>
<li>the remote journal type matches the specified remote journal type
</li>
<li>the remote journal was previously associated with this same source journal
</li>
</ul>
<p>Also, the journal may or may not have an attached journal receiver.
</p>
<p>After the remote journal has been successfully added on the target system, the remote journal will have a journal state of *INACTIVE. A journal state of *INACTIVE for a remote journal means that the remote journal is currently not ready to receive journal entries from its source journal on the source system. The Change Remote Journal (CHGRMTJRN) command or Change Journal State (QjoChangeJournalState) API is used to activate a remote journal and start the replication of journal entries from the source journal to the remote journal.
</p>
<p>Once a remote journal has been added to a journal, the receiver that was attached to the source journal at the time of running this command or any subsequently attached receivers, will be protected from deletion if all journal entries for a given journal receiver have not yet been replicated to the remote journal. This protection ends when the remote journal is removed using the Remove Remote Journal (RMVRMTJRN) command or Remove Remote Journal (QjoRemoveRemoteJournal) API.
</p>
<p><b>Restrictions:</b>
</p>
<ul>
<li>The Add Remote Journal (ADDRMTJRN) command may only be called from the source system.
</li>
<li>A user profile must exist on the target system by the same name as the user profile that is running the Add Remote Journal (ADDRMTJRN) command on the source system. This restriction is irrespective of the selected communications protocol.
</li>
<li>When adding a *TYPE1 remote journal to a source journal, the same journal and journal receiver library redirection must be specified that exists for any *TYPE1 remote journals which have already been added to the source journal. A remote journal will always use the redirected library, if any, that is specified for the local journal. The only way to change the value specified in the remote journal library field and the remote journal receiver library field is to do all of the following:
<ol>
<li>Remove all of the associated *TYPE1 remote journals from the local journal.
</li>
<li>Delete the remote journal.
</li>
<li>Change the local journal to attach a new receiver.
</li>
<li>Add the remote journal specifying the new redirection.
</li>
</ol>
</li>
<li>QTEMP cannot be specified for the remote journal library, remote journal receiver library, or remote message queue library.
</li>
<li>A remote journal whose name starts with a Q cannot specify a remote journal library that starts with a Q, unless the remote journal library is QGPL. This is required to prevent collisions between local and remote journals that are used for system functions.
</li>
<li>A *TYPE1 remote journal cannot be added to a *TYPE2 remote journal.
</li>
<li>The specified relational database directory entry (RDB) must meet the following rules:
<ul>
<li>The communications protocol must be one of the remote journal function supported protocols.
</li>
<li>The remote location name in the RDB cannot refer to the *LOCAL database.
</li>
<li>The RDB cannot use an application requester driver program (*ARDPGM) to locate the target system.
</li>
</ul>
</li>
<li>The remote journal message queue on the remote system must be either in the same ASP group as the remote journal, or in the system ASP, or a basic user ASP.
</li>
<li>The remote receiver library and remote journal library on the remote system must both exist in either the system and basic user ASP's or in the same ASP group. They cannot be in two different ASP groups.
</li>
</ul>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div>
<h3><a name="ADDRMTJRN.PARAMETERS.TABLE">Parameters</a></h3>
<table border="1" cellpadding="4" cellspacing="0">
<!-- col1="10" col2="15" col3="30" col4="10" -->
<tr>
<th bgcolor="aqua" valign="bottom" align="left">Keyword</th>
<th bgcolor="aqua" valign="bottom" align="left">Description</th>
<th bgcolor="aqua" valign="bottom" align="left">Choices</th>
<th bgcolor="aqua" valign="bottom" align="left">Notes</th>
</tr>
<tr>
<td valign="top"><a href="#ADDRMTJRN.RDB"><b>RDB</b></a></td>
<td valign="top">Relational database</td>
<td valign="top"><i>Name</i></td>
<td valign="top">Required, Positional 1</td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#ADDRMTJRN.SRCJRN"><b>SRCJRN</b></a></td>
<td valign="top">Source journal</td>
<td valign="top"><i>Qualified object name</i></td>
<td valign="top" rowspan="3">Required, Positional 2</td>
</tr>
<tr>
<td valign="top">Qualifier 1: Source journal</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i>, <b><u>*LIBL</u></b>, *CURLIB</td>
</tr><tr>
<td valign="top" rowspan="3"><a href="#ADDRMTJRN.TGTJRN"><b>TGTJRN</b></a></td>
<td valign="top">Target journal</td>
<td valign="top">Single values: <b><u>*SRCJRN</u></b><br>Other values: <i>Qualified object name</i></td>
<td valign="top" rowspan="3">Optional</td>
</tr>
<tr>
<td valign="top">Qualifier 1: Target journal</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i></td>
</tr><tr>
<td valign="top"><a href="#ADDRMTJRN.RMTRCVLIB"><b>RMTRCVLIB</b></a></td>
<td valign="top">Remote receiver library</td>
<td valign="top"><i>Name</i>, <b><u>*SRCRCVLIB</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#ADDRMTJRN.RMTJRNTYPE"><b>RMTJRNTYPE</b></a></td>
<td valign="top">Remote journal type</td>
<td valign="top"><b><u>*TYPE1</u></b>, *TYPE2</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top" rowspan="3"><a href="#ADDRMTJRN.MSGQ"><b>MSGQ</b></a></td>
<td valign="top">Journal message queue</td>
<td valign="top"><i>Qualified object name</i></td>
<td valign="top" rowspan="3">Optional</td>
</tr>
<tr>
<td valign="top">Qualifier 1: Journal message queue</td>
<td valign="top"><i>Name</i>, <b><u>QSYSOPR</u></b></td>
</tr><tr>
<td valign="top">Qualifier 2: Library</td>
<td valign="top"><i>Name</i>, <b><u>QSYS</u></b></td>
</tr><tr>
<td valign="top"><a href="#ADDRMTJRN.DLTRCV"><b>DLTRCV</b></a></td>
<td valign="top">Delete receivers</td>
<td valign="top"><b><u>*NO</u></b>, *YES</td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#ADDRMTJRN.DLTRCVDLY"><b>DLTRCVDLY</b></a></td>
<td valign="top">Delete receiver delay time</td>
<td valign="top">1-1440, <b><u>10</u></b></td>
<td valign="top">Optional</td>
</tr>
<tr>
<td valign="top"><a href="#ADDRMTJRN.TEXT"><b>TEXT</b></a></td>
<td valign="top">Text 'description'</td>
<td valign="top"><i>Character value</i>, <b><u>*BLANK</u></b></td>
<td valign="top">Optional</td>
</tr>
</table>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
</div>
<div> <a name="ADDRMTJRN.RDB"></a>
<h3>Relational database (RDB)</h3>
<p>Specifies the name of the relational database directory entry that contains the remote location name of the target system. This name should match the name of the *LOCAL relational database directory entry on the target system.
</p>
<p>This is a required parameter.
</p>
<dl>
<dt><b><i>relational-database-entry</i></b></dt>
<dd>Specify a maximum of 18 characters for the name of the relational database directory entry.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="ADDRMTJRN.SRCJRN"></a>
<h3>Source journal (SRCJRN)</h3>
<p>Specifies the name of the journal on the source system to which the remote journal is being added, and the library where it resides. The journal on the source system may be either a local journal or another remote journal.
</p>
<p>This is a required parameter.
</p>
<dl>
<dt><b><i>source-journal-name</i></b></dt>
<dd>Specify the source journal to which the target journal is being added.
</dd>
</dl>
<p>The name of the source journal can be qualified by one of the following library values:
</p>
<dl>
<dt><b><u>*LIBL</u></b></dt>
<dd>All libraries in the library list for the current thread are searched until the first match is found.
</dd>
</dl>
<dl>
<dt><b>*CURLIB</b></dt>
<dd>The current library for the thread is searched. If no library is specified as the current library for the thread, the QGPL library is searched.
</dd>
</dl>
<dl>
<dt><b><i>library-name</i></b></dt>
<dd>Specify the name of the library to be searched.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="ADDRMTJRN.TGTJRN"></a>
<h3>Target journal (TGTJRN)</h3>
<p>Specifies the name of the remote journal on the target system.
</p>
<dl>
<dt><b><u>*SRCJRN</u></b></dt>
<dd>The target journal name is exactly the same as the source journal name.
</dd>
<dt><b><i>library-name/target-journal-name</i></b></dt>
<dd>Specify the target journal that is being added as a remote journal to the source journal.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="ADDRMTJRN.RMTRCVLIB"></a>
<h3>Remote receiver library (RMTRCVLIB)</h3>
<p>Specifies the name of the library for the remote journal receivers on the target system that will be associated with this remote journal.
</p>
<dl>
<dt><b><u>*SRCRCVLIB</u></b></dt>
<dd>The journal receivers are created on the target system in the same library as they exist on the source system.
</dd>
<dt><b><i>remote-journal-receiver-library-name</i></b></dt>
<dd>Specify the name of the library for the remote journal receivers on the target system that will be associated with this remote journal.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="ADDRMTJRN.RMTJRNTYPE"></a>
<h3>Remote journal type (RMTJRNTYPE)</h3>
<p>Specifies the type of remote journal on the target system. The remote journal type influences the redirection capabilities, journal receiver restore operations, and remote journal association characteristics. See the Journal Management information in the iSeries Information Center at http://www.ibm.com/eserver/iseries/infocenter for detailed descriptions of the differences.
</p>
<dl>
<dt><b><u>*TYPE1</u></b></dt>
<dd>A *TYPE1 remote journal is added. Every *TYPE1 remote journal that is associated with the local journal must use the same redirection for both the remote journal and remote journal receiver. This allows a journal receiver to be saved from any system in the remote journal network and be restored to any system in the network and associated with either a local or remote journal.
</dd>
<dt><b>*TYPE2</b></dt>
<dd>A *TYPE2 remote journal is added. Every *TYPE2 remote journal that is associated with the local journal can use different redirection for the remote journal or remote journal receiver. This restricts the save and restore options. The journal receiver can only be assoicated with the remote journal if it was saved from the system on which the remote journal resides. If the journal receiver was saved from the system with the local journal, then it cannot be associated with the remote journal on any system.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="ADDRMTJRN.MSGQ"></a>
<h3>Journal message queue (MSGQ)</h3>
<p>Specifies the name of the message queue associated with the remote journal. This value is only set for a journal that is created on the target system.
</p>
<dl>
<dt><b><u>QSYS/QSYSOPR</u></b></dt>
<dd>The message is sent to the QSYSOPR message queue.
</dd>
<dt><b><i>library-name/journal-message-queue</i></b></dt>
<dd>Specify the name of the journal message queue to which the journal messages are sent. If this message queue is not available when a message is to be sent, the message is sent to the QSYSOPR message queue.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="ADDRMTJRN.DLTRCV"></a>
<h3>Delete receivers (DLTRCV)</h3>
<p>Specifies whether the system deletes the target journal receivers when they are no longer needed or keeps them on the target system for the user to delete after they have been detached by the target system. This value is only set for a journal that is created on the target system.
</p>
<dl>
<dt><b><u>*NO</u></b></dt>
<dd>The journal receivers are not deleted by the system.
</dd>
<dt><b>*YES</b></dt>
<dd>The journal receivers are deleted by the system.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="ADDRMTJRN.DLTRCVDLY"></a>
<h3>Delete receiver delay time (DLTRCVDLY)</h3>
<p>If the system cannot allocate an object needed to delete a journal receiver associated with the remote journal on the target system, this parameter specifies the time (in minutes) to be used to delay the next attempt to delete the target journal receiver. This value is only set for a journal that is created on the target system.
</p>
<dl>
<dt><b><u>10</u></b></dt>
<dd>System waits 10 minutes before trying again.
</dd>
<dt><b><i>delete-receiver-delay-time </i></b></dt>
<dd>System waits the specified number of minutes before trying again. Valid values range from 1 to 1440.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<div> <a name="ADDRMTJRN.TEXT"></a>
<h3>Text 'description' (TEXT)</h3>
<p>Specifies the text that briefly describes the remote journal on the target system. This value is only set for a journal that is created on the target system.
</p>
<dl>
<dt><b><u>*BLANK</u></b></dt>
<dd>Text is not specified.
</dd>
<dt><b><i>'description'</i></b></dt>
<dd>Specify no more than 50 characters of text, enclosed in apostrophes.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="ADDRMTJRN.COMMAND.EXAMPLES">Examples</a> </h3>
<p><b>Example 1: Adding a *TYPE1 remote journal, specifying values for the DLTRCV and TEXT parameters.</b>
</p>
<p>
<pre>
ADDRMTJRN SRCJRN(LOCLIB/J) RDB(DETROIT) TGTJRN(RMTLIB/J)
DLTRCV(*NO)
TEXT('Remote Journal Created for Application Z')
</pre>
</p>
<p>This command adds remote journal J in library RMTLIB to journal J in library LOCAL, and the DLTRCV parameter on the remote journal will be *NO, irrespective of the attribute of journal J in library LOCLIB. If journal J in RMTLIB does not already exist, then it is created, otherwise, it is reassociated with journal J in LOCLIB, if it meets the appropriate criteria.
</p>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
<hr size="2" width="100%">
<div><h3><a name="ADDRMTJRN.ERROR.MESSAGES">Error messages</a> </h3>
<p><b><u>*ESCAPE Messages</u></b>
</p>
<dl>
<dt><b>CPF69A4</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF695A</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF695B</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF695C</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF695D</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF695E</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF695F</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF6973</b></dt>
<dd>Systems or journal environments not compatible.
</dd>
<dt><b>CPF6982</b></dt>
<dd>Relational database directory entry &amp;1 not valid.
</dd>
<dt><b>CPF6983</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF6984</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF6985</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF6988</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF6989</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF699B</b></dt>
<dd>User profile &amp;8 not found.
</dd>
<dt><b>CPF6991</b></dt>
<dd>Remote journal &amp;1 in &amp;2 not added.
</dd>
<dt><b>CPF70DB</b></dt>
<dd>Remote journal function failed.
</dd>
<dt><b>CPF70D6</b></dt>
<dd>Remote journal ended, reason code &amp;6.
</dd>
<dt><b>CPF701B</b></dt>
<dd>Journal recovery of an interrupted operation failed.
</dd>
<dt><b>CPF7010</b></dt>
<dd>Object &amp;1 in &amp;2 type *&amp;3 already exists.
</dd>
<dt><b>CPF7011</b></dt>
<dd>Not enough storage or resources.
</dd>
<dt><b>CPF9801</b></dt>
<dd>Object &amp;2 in library &amp;3 not found.
</dd>
<dt><b>CPF9802</b></dt>
<dd>Not authorized to object &amp;2 in &amp;3.
</dd>
<dt><b>CPF9803</b></dt>
<dd>Cannot allocate object &amp;2 in library &amp;3.
</dd>
<dt><b>CPF9810</b></dt>
<dd>Library &amp;1 not found.
</dd>
<dt><b>CPF9820</b></dt>
<dd>Not authorized to use library &amp;1.
</dd>
<dt><b>CPF9830</b></dt>
<dd>Cannot assign library &amp;1.
</dd>
</dl>
</div>
<table width="100%">
<tr><td align="right"><a href="#ADDRMTJRN.Top_Of_Page">Top</a></td></tr>
</table>
</body>
</html>