823 lines
32 KiB
HTML
823 lines
32 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">
|
|
<title>Compare Journal Images (CMPJRNIMG)</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="CMPJRNIMG.Top_Of_Page"></a>
|
|
<h2>Compare Journal Images (CMPJRNIMG)</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="#CMPJRNIMG.PARAMETERS.TABLE">Parameters</a><br>
|
|
<a href="#CMPJRNIMG.COMMAND.EXAMPLES">Examples</a><br>
|
|
<a href="#CMPJRNIMG.ERROR.MESSAGES">Error messages</a></td>
|
|
</tr>
|
|
</table>
|
|
|
|
<div> <a name="CMPJRNIMG"></a>
|
|
<p>The Compare Journal Images (CMPJRNIMG) command gives you the capability to compare and note the differences between (1) the <i>before</i> and <i>after</i> images of record-level changes (updates, deletes, rollback-updates, and rollback-deletes) for a specific file member (IMAGES(*BOTH) must be specified for the Start Journal Physical File (STRJRNPF) command), or (2) the <i>after</i> and <i>previous after</i> images of a particular relative record (IMAGES(*AFTER) is specified for the STRJRNPF command). The output of the command is directed to a printer.
|
|
</p>
|
|
<p>If before and after images are compared, the journaled changes can be compared for only one or all of the records in the specific file or member. The comparison can also be limited by a specific journal receiver range, or by a range of journal entries in a specific journal receiver range.
|
|
</p>
|
|
<p>The printed output shows the record image before the change was made, followed by the record image after the change, followed by a line that indicates (with asterisks) the specific change in the record on a character-by-character basis, instead of on a field-by-field basis. If the journaled file has null-capable fields, the null value indicators that correspond to the before-image of the record are compared with the null value indicators that correspond to the after-image of the record. This is done on a field-by-field basis.
|
|
</p>
|
|
<p>If there is no journal entry satisfying the search value specified, the command ends.
|
|
</p>
|
|
<p><b>Restrictions:</b>
|
|
</p>
|
|
<ul>
|
|
<li>The result of the comparison is sent only to the system printer.
|
|
</li>
|
|
<li>The file and member specified must currently exist on the system and must have been journaled.
|
|
</li>
|
|
<li>Only one member can be processed per command.
|
|
</li>
|
|
<li>The comparison of journal images ends if one of the following conditions occurs:
|
|
<ul>
|
|
<li>The member was saved with storage freed.
|
|
</li>
|
|
<li>The member was restored.
|
|
</li>
|
|
<li>The member was cleared.
|
|
</li>
|
|
<li>The member was initialized.
|
|
</li>
|
|
<li>The member was reorganized.
|
|
</li>
|
|
<li>The member was deleted.
|
|
</li>
|
|
<li>The member was in use when the system ended abnormally.
|
|
</li>
|
|
<li>Journaling the member was stopped.
|
|
</li>
|
|
<li>The member had the journaled changes applied or removed (by the Apply Journaled Changes (APYJRNCHG) command or the Remove Journaled Changes (RMVJRNCHG) command).
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li>If the sequence number is reset in the range of receivers specified, the first occurrence of the FROMENT, FROMENTLRG, TOENT, or TOENTLRG value is used if the prompt is specified.
|
|
</li>
|
|
<li>The FROMENT, FROMENTLRG, and FROMTIME parameters are mutually exclusive, as are the TOENT, TOENTLRG, and TOTIME parameters.
|
|
</li>
|
|
<li>The JOB, PGM, and USRPRF parameters cannot be used to specify selection criteria if one or more journal receivers in the specified receiver range was attached to a journal with a receiver size option (RCVSIZOPT) or a fixed length data option (FIXLENDTA) that would have omitted this data was in effect.
|
|
</li>
|
|
<li>This command cannot be used on or with a remote journal.
|
|
</li>
|
|
<li>If this command is used to compare journal images for a file that contains any fields of data type BLOB (binary large object), CLOB (character large object), or DBCLOB (double-byte character large object), these fields are not included in the comparison. All other fields in the file are compared.
|
|
</li>
|
|
<li>This command cannot be used if one or more journal receivers in the specified range was attached to a journal that had MINENTDTA (minimize entry specific data) specified for *FILE objects.
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<hr size="2" width="100%">
|
|
|
|
<div>
|
|
<h3><a name="CMPJRNIMG.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" rowspan="3"><a href="#CMPJRNIMG.FILE"><b>FILE</b></a></td>
|
|
<td valign="top">File</td>
|
|
<td valign="top"><i>Qualified object name</i></td>
|
|
<td valign="top" rowspan="3">Required, Positional 1</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">Qualifier 1: File</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"><a href="#CMPJRNIMG.MBR"><b>MBR</b></a></td>
|
|
<td valign="top">Member</td>
|
|
<td valign="top"><i>Name</i>, <b><u>*FIRST</u></b></td>
|
|
<td valign="top">Optional, Positional 2</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top" rowspan="7"><a href="#CMPJRNIMG.RCVRNG"><b>RCVRNG</b></a></td>
|
|
<td valign="top">Range of journal receivers</td>
|
|
<td valign="top">Single values: <b><u>*CURRENT</u></b><br>Other values: <i>Element list</i></td>
|
|
<td valign="top" rowspan="7">Optional, Positional 3</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">Element 1: Starting journal receiver</td>
|
|
<td valign="top">
|
|
<i>Qualified object name</i></td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top" style="padding-left:10pt">Qualifier 1: Starting journal receiver</td>
|
|
<td valign="top"><i>Name</i></td>
|
|
</tr><tr>
|
|
<td valign="top" style="padding-left:10pt">Qualifier 2: Library</td>
|
|
<td valign="top"><i>Name</i>, <b><u>*LIBL</u></b>, *CURLIB</td>
|
|
</tr><tr>
|
|
<td valign="top">Element 2: Ending journal receiver</td>
|
|
<td valign="top">
|
|
Single values: <b><u>*CURRENT</u></b><br>Other values: <i>Qualified object name</i></td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top" style="padding-left:10pt">Qualifier 1: Ending journal receiver</td>
|
|
<td valign="top"><i>Name</i></td>
|
|
</tr><tr>
|
|
<td valign="top" style="padding-left:10pt">Qualifier 2: Library</td>
|
|
<td valign="top"><i>Name</i>, <b><u>*LIBL</u></b>, *CURLIB</td>
|
|
</tr><tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.FROMENTLRG"><b>FROMENTLRG</b></a></td>
|
|
<td valign="top">Starting large sequence number</td>
|
|
<td valign="top"><i>Character value</i>, <b><u>*FIRST</u></b></td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top" rowspan="3"><a href="#CMPJRNIMG.FROMTIME"><b>FROMTIME</b></a></td>
|
|
<td valign="top">Starting date and time</td>
|
|
<td valign="top"><i>Element list</i></td>
|
|
<td valign="top" rowspan="3">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">Element 1: Starting date</td>
|
|
<td valign="top">
|
|
<i>Date</i></td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">Element 2: Starting time</td>
|
|
<td valign="top">
|
|
<i>Time</i></td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.TOENTLRG"><b>TOENTLRG</b></a></td>
|
|
<td valign="top">Ending large sequence number</td>
|
|
<td valign="top"><i>Character value</i>, <b><u>*LAST</u></b></td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top" rowspan="3"><a href="#CMPJRNIMG.TOTIME"><b>TOTIME</b></a></td>
|
|
<td valign="top">Ending date and time</td>
|
|
<td valign="top"><i>Element list</i></td>
|
|
<td valign="top" rowspan="3">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">Element 1: Ending date</td>
|
|
<td valign="top">
|
|
<i>Date</i></td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">Element 2: Ending time</td>
|
|
<td valign="top">
|
|
<i>Time</i></td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.CMPOPT"><b>CMPOPT</b></a></td>
|
|
<td valign="top">Compare option</td>
|
|
<td valign="top"><b><u>*BOTH</u></b>, *AFTER</td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.RCDNBR"><b>RCDNBR</b></a></td>
|
|
<td valign="top">Record number</td>
|
|
<td valign="top"><i>Unsigned integer</i>, <b><u>*ALL</u></b></td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top" rowspan="4"><a href="#CMPJRNIMG.JOB"><b>JOB</b></a></td>
|
|
<td valign="top">Job name</td>
|
|
<td valign="top">Single values: <b><u>*ALL</u></b><br>Other values: <i>Qualified job name</i></td>
|
|
<td valign="top" rowspan="4">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">Qualifier 1: Job name</td>
|
|
<td valign="top"><i>Name</i></td>
|
|
</tr><tr>
|
|
<td valign="top">Qualifier 2: User</td>
|
|
<td valign="top"><i>Name</i></td>
|
|
</tr><tr>
|
|
<td valign="top">Qualifier 3: Number</td>
|
|
<td valign="top">000000-999999</td>
|
|
</tr><tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.PGM"><b>PGM</b></a></td>
|
|
<td valign="top">Program</td>
|
|
<td valign="top"><i>Name</i>, <b><u>*ALL</u></b></td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.USRPRF"><b>USRPRF</b></a></td>
|
|
<td valign="top">User profile</td>
|
|
<td valign="top"><i>Name</i>, <b><u>*ALL</u></b></td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.CCIDLRG"><b>CCIDLRG</b></a></td>
|
|
<td valign="top">Commit cycle large identifier</td>
|
|
<td valign="top"><i>Character value</i>, <b><u>*ALL</u></b></td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.OUTFMT"><b>OUTFMT</b></a></td>
|
|
<td valign="top">Output format</td>
|
|
<td valign="top"><b><u>*CHAR</u></b>, *HEX</td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.FROMENT"><b>FROMENT</b></a></td>
|
|
<td valign="top">Starting sequence number</td>
|
|
<td valign="top">1-9999999999, <b><u>*FIRST</u></b></td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.TOENT"><b>TOENT</b></a></td>
|
|
<td valign="top">Ending sequence number</td>
|
|
<td valign="top">1-9999999999, <b><u>*LAST</u></b></td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#CMPJRNIMG.CMTCYCID"><b>CMTCYCID</b></a></td>
|
|
<td valign="top">Commit cycle identifier</td>
|
|
<td valign="top">1-9999999999, <b><u>*ALL</u></b></td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
</div>
|
|
<div> <a name="CMPJRNIMG.FILE"></a>
|
|
<h3>File (FILE)</h3>
|
|
<p>Specifies the name and library of the physical database file for which the journal record-level changes are being compared.
|
|
</p>
|
|
<p>This is a required parameter.
|
|
</p>
|
|
<dl>
|
|
<dt><b><i>physical-file-name</i></b></dt>
|
|
<dd>Specify the name of the physical file.
|
|
</dd>
|
|
</dl>
|
|
<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 job is searched. If no library is specified as the current library for the job, QGPL is used.
|
|
</dd>
|
|
<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="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.MBR"></a>
|
|
<h3>Member (MBR)</h3>
|
|
<p>Specifies the name of the file member whose journal entries are being compared.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*FIRST</u></b></dt>
|
|
<dd>Entries for the first member in the file are being compared.
|
|
</dd>
|
|
<dt><b><i>member-name</i></b></dt>
|
|
<dd>Specify the name of the file member for which record-level changes are being compared.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.RCVRNG"></a>
|
|
<h3>Range of journal receivers (RCVRNG)</h3>
|
|
<p>Specifies the starting and ending journal receivers used in the comparison of <i>before</i> and <i>after</i> journal entry images. The system starts the comparison with the starting journal receiver (specified on the first value) and proceeds through receivers until the ending journal receiver (specified on the last value) is processed. If dual receivers are used at any time, the first of the dual receivers is always used when chaining through the receivers.
|
|
</p>
|
|
<p>If any problem (such as damaged receivers or receiver not found) occurs in the receiver chain before the comparison starts, the system tries to use the second of the dual receivers. If the second of the receivers is damaged or not found, or if a problem occurs during the operation, the comparison ends.
|
|
</p>
|
|
<p>
|
|
<b>Note: </b>The second element (ending-journal-receiver) can only be specified if a value is specified for the first element (starting-journal-reveiver).
|
|
</p>
|
|
<p>
|
|
<b>Note: </b>If the maximum number of receivers in the range is exceeded (1024), an exception is sent and no entries are compared.
|
|
</p>
|
|
<p><b>Single values</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*CURRENT</u></b></dt>
|
|
<dd>The journal receiver that is currently attached when starting to compare journal entries is used.
|
|
</dd>
|
|
</dl>
|
|
<p><b>Element 1: Starting journal receiver</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b></b></dt>
|
|
<dd>
|
|
<p><b>Qualifier 1: Starting journal receiver</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><i>name</i></b></dt>
|
|
<dd>Specify the name of the first journal receiver that contains the journal entries being compared.
|
|
</dd>
|
|
</dl>
|
|
</dd>
|
|
<dt><b></b></dt>
|
|
<dd>
|
|
<p><b>Qualifier 2: Library</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*LIBL</u></b></dt>
|
|
<dd>All libraries in the job's library list are searched until the first match is found.
|
|
</dd>
|
|
<dt><b>*CURLIB</b></dt>
|
|
<dd>The current library for the job is used to locate the journal receiver. If no library is specified as the current library for the job, QGPL is used.
|
|
</dd>
|
|
<dt><b><i>name</i></b></dt>
|
|
<dd>Specify the library where the journal receiver is located.
|
|
</dd>
|
|
</dl>
|
|
</dd>
|
|
</dl>
|
|
<p><b>Element 2: Ending journal receiver</b>
|
|
</p>
|
|
<p><b>Single values</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*CURRENT</u></b></dt>
|
|
<dd>The journal receiver that is currently attached when starting to compare journal entries is used.
|
|
</dd>
|
|
</dl>
|
|
<dl>
|
|
<dt><b></b></dt>
|
|
<dd>
|
|
<p><b>Qualifier 1: Ending journal receiver</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><i>name</i></b></dt>
|
|
<dd>Specify the name of the last journal receiver that contains the journal entries being compared.
|
|
</dd>
|
|
</dl>
|
|
</dd>
|
|
<dt><b></b></dt>
|
|
<dd>
|
|
<p><b>Qualifier 2: Library</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*LIBL</u></b></dt>
|
|
<dd>All libraries in the job's library list are searched until the first match is found.
|
|
</dd>
|
|
<dt><b>*CURLIB</b></dt>
|
|
<dd>The current library for the job is used to locate the journal receiver. If no library is specified as the current library for the job, QGPL is used.
|
|
</dd>
|
|
<dt><b><i>name</i></b></dt>
|
|
<dd>Specify the library where the journal receiver is located.
|
|
</dd>
|
|
</dl>
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.FROMENTLRG"></a>
|
|
<h3>Starting large sequence number (FROMENTLRG)</h3>
|
|
<p>Specifies the first journal entry (the <i>from</i> entry) being compared.
|
|
</p>
|
|
<p>
|
|
<b>Note: </b>You can input a value for either the <b>Starting sequence number</b> field (FROMENT) or the <b>Starting large sequence number</b> field (FROMENTLRG) but not for both.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*FIRST</u></b></dt>
|
|
<dd>The first journal entry in the specified journal receiver range is the first entry considered for the comparison operation.
|
|
</dd>
|
|
<dt><b><i>starting-sequence-number</i></b></dt>
|
|
<dd>Specify the journal entry sequence number at which the journal entry comparison operation begins. The acceptable range is 1 to 18,446,744,073,709,551,600.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.FROMTIME"></a>
|
|
<h3>Starting date and time (FROMTIME)</h3>
|
|
<p>Specifies the date and time of the first journal entry being compared.
|
|
</p>
|
|
<p><b>Element 1: Starting date</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><i>starting-date</i></b></dt>
|
|
<dd>Specify the starting date. The starting date and time of the first journal entry occurring at or after the specified starting date and time becomes the starting point for the range of journal entries to be compared.
|
|
</dd>
|
|
</dl>
|
|
<p><b>Element 2: Starting time</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><i>starting-time</i></b></dt>
|
|
<dd>Specify the starting time. The starting date and time of the first journal entry occurring at or after the specified starting date and time becomes the starting point for the range of journal entries to be compared.
|
|
<p>The time can be specified in 24-hour format with or without a time separator:
|
|
</p>
|
|
<ul>
|
|
<li>Without a time separator, specify a string of 4 or 6 digits (hhmm or hhmmss) where <b>hh</b> = hours, <b>mm</b> = minutes, and <b>ss</b> = seconds.
|
|
</li>
|
|
<li>With a time separator, specify a string of 5 or 8 digits where the time separator specified for your job is used to separate the hours, minutes, and seconds. If you enter this command from the command line, the string must be enclosed in apostrophes. If a time separator other than the separator specified for your job is used, this command will fail.
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.TOENTLRG"></a>
|
|
<h3>Ending large sequence number (TOENTLRG)</h3>
|
|
<p>Specifies the last journal entry considered in the comparison.
|
|
</p>
|
|
<p>
|
|
<b>Note: </b>You can input a value for either the <b>Ending sequence number</b> field (TOENT) or the <b>Ending large sequence number</b> field (TOENTLRG) but not for both.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*LAST</u></b></dt>
|
|
<dd>The last journal entry in the last journal receiver specified is the final entry being compared.
|
|
</dd>
|
|
<dt><b><i>ending-sequence number</i></b></dt>
|
|
<dd>Specify the sequence number of the last journal entry being compared. The acceptable range is 1 to 18,446,744,073,709,551,600.
|
|
<p>
|
|
<b>Note: </b>The values specified for the FROM and TO parameters can be the same (for example, FROMENTLRG(234) and TOENTLRG(234) can be specified).
|
|
</p>
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.TOTIME"></a>
|
|
<h3>Ending date and time (TOTIME)</h3>
|
|
<p>Specifies the date and time of the last journal entry being compared.
|
|
</p>
|
|
<p><b>Element 1: Ending date</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><i>ending-date</i></b></dt>
|
|
<dd>Specify the ending date. The ending date and time of the first journal entry occurring at or before the specified ending date and time becomes the ending point for the range of journal entries to be compared.
|
|
</dd>
|
|
</dl>
|
|
<p><b>Element 2: Ending time</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><i>ending-time</i></b></dt>
|
|
<dd>Specify the ending time. The ending date and time of the first journal entry occurring at or before the specified ending date and time becomes the ending point for the range of journal entries to be compared.
|
|
<p>The time can be specified in 24-hour format with or without a time separator:
|
|
</p>
|
|
<ul>
|
|
<li>Without a time separator, specify a string of 4 or 6 digits (hhmm or hhmmss) where hh = hours, mm = minutes, and ss = seconds.
|
|
</li>
|
|
<li>With a time separator, specify a string of 5 or 8 digits where the time separator specified for your job is used to separate the hours, minutes, and seconds. If you enter this command from the command line, the string must be enclosed in apostrophes. If a time separator other than the separator specified for your job is used, this command will fail.
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.CMPOPT"></a>
|
|
<h3>Compare option (CMPOPT)</h3>
|
|
<p>Specifies the types of record images (before or after images) being compared for record-level changes in the specified file.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*BOTH</u></b></dt>
|
|
<dd>The <i>before</i> images of the journal entries are compared with the <i>after</i> images of the journal entries.
|
|
</dd>
|
|
<dt><b>*AFTER</b></dt>
|
|
<dd>The <i>after</i> images of the journal entries in the file record are compared with previous <i>after</i> images.
|
|
<p>If this value is specified, the default value *ALL must be specified on the following parameters:
|
|
</p>
|
|
<ul>
|
|
<li><b>Job name (JOB)</b> parameter
|
|
</li>
|
|
<li><b>Program (PGM)</b> parameter
|
|
</li>
|
|
<li><b>User profile (USRPRF)</b> parameter
|
|
</li>
|
|
<li><b>Commit cycle identifier (CMTCYCID)</b> parameter
|
|
</li>
|
|
<li><b>Commit cycle large identifier (CCIDLRG)</b> parameter
|
|
</li>
|
|
</ul>
|
|
<p>Also, a relative record number must be specified on the <b>Record number (RCDNBR)</b> parameter.
|
|
</p>
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.RCDNBR"></a>
|
|
<h3>Record number (RCDNBR)</h3>
|
|
<p>Specifies the relative record number in the file for which the journal entry images are being compared.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*ALL</u></b></dt>
|
|
<dd>The recorded changes for all journal entry records in the physical file member are compared.
|
|
</dd>
|
|
<dt><b><i>relative-record-number</i></b></dt>
|
|
<dd>Specify the relative record number in the physical file member for which <i>before/after</i> or <i>after/after</i> images are being compared. If a value is specified, only changes for the specified journal entry record are compared.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.JOB"></a>
|
|
<h3>Job name (JOB)</h3>
|
|
<p>Specifies that the comparison is of journal entries for a particular job.
|
|
</p>
|
|
<p><b>Single values</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*ALL</u></b></dt>
|
|
<dd>The comparison is not limited to entries for a particular job.
|
|
</dd>
|
|
</dl>
|
|
<p><b>Other values</b>
|
|
</p>
|
|
<dl>
|
|
<dt><b><i>job-identifier</i></b></dt>
|
|
<dd>Specify the job name, the user name, and the job number of the job to use. You can also specify that the job name only, or that the job name and the user name be used.
|
|
<dl>
|
|
<dt><b><i>job-name</i></b></dt>
|
|
<dd>Specify the job name of the job.
|
|
</dd>
|
|
<dt><b><i>user-name</i></b></dt>
|
|
<dd>Specify the user name of the job.
|
|
</dd>
|
|
<dt><b><i>job-number</i></b></dt>
|
|
<dd>Specify the system-assigned job number.
|
|
</dd>
|
|
</dl>
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.PGM"></a>
|
|
<h3>Program (PGM)</h3>
|
|
<p>Specifies that the comparison is of journal entries for a particular program.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*ALL</u></b></dt>
|
|
<dd>The comparison is not limited to entries for a particular program.
|
|
</dd>
|
|
<dt><b><i>program-name</i></b></dt>
|
|
<dd>Specify the name of the program whose record-level journal entry changes are considered for comparison. Only journal changes for this program are considered for comparison.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.USRPRF"></a>
|
|
<h3>User profile (USRPRF)</h3>
|
|
<p>Specifies that the comparison is of journal entries for a particular user profile name. The user profile name is the user profile under which the job that causes the entries to be journaled is run.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*ALL</u></b></dt>
|
|
<dd>The comparison is not limited to entries for a particular user profile.
|
|
</dd>
|
|
<dt><b><i>user-profile-name</i></b></dt>
|
|
<dd>Specify the name of the user profile whose record-level changes are compared. Only journal changes for this user profile are considered for comparison.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.CCIDLRG"></a>
|
|
<h3>Commit cycle large identifier (CCIDLRG)</h3>
|
|
<p>Specifies the commit cycle identifier of the specific journal that participated in a logical unit of work for which a comparison of journal entries is made.
|
|
</p>
|
|
<p>
|
|
<b>Note: </b>You can input a value for either the <b>Commit cycle identifier</b> field (CMTCYCID) or the <b>Commit cycle large identifier</b> field (CCIDLRG) but not for both.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*ALL</u></b></dt>
|
|
<dd>The journal entries for all commit cycle identifiers are included in the comparison.
|
|
</dd>
|
|
<dt><b><i>commit-cycle-identifier</i></b></dt>
|
|
<dd>Specify the commit cycle identifier of the journal entries to be considered for comparison. A journal entry's commit cycle identifier can be found by using the Display Journal (DSPJRN) command and selecting option five. The acceptable range is 1 to 18,446,744,073,709,551,600.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.OUTFMT"></a>
|
|
<h3>Output format (OUTFMT)</h3>
|
|
<p>Specifies the format in which the record images being compared are shown.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*CHAR</u></b></dt>
|
|
<dd>The record images are shown in character format.
|
|
</dd>
|
|
<dt><b>*HEX</b></dt>
|
|
<dd>The record images are shown in hexadecimal format.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.FROMENT"></a>
|
|
<h3>Starting sequence number (FROMENT)</h3>
|
|
<p>Specifies the first journal entry (the <i>from</i> entry) being compared.
|
|
</p>
|
|
<p>
|
|
<b>Note: </b>You can input a value for either the <b>Starting sequence number</b> field (FROMENT) or the <b>Starting large sequence number</b> field (FROMENTLRG) but not for both.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*FIRST</u></b></dt>
|
|
<dd>The first journal entry in the specified journal receiver range is the first entry considered for the comparison operation.
|
|
</dd>
|
|
<dt><b><i>starting-sequence-number</i></b></dt>
|
|
<dd>Specify the journal entry sequence number at which the journal entry comparison operation begins. The acceptable range is 1 to 9,999,999,999.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.TOENT"></a>
|
|
<h3>Ending sequence number (TOENT)</h3>
|
|
<p>Specifies the last journal entry considered in the comparison.
|
|
</p>
|
|
<p>
|
|
<b>Note: </b>You can input a value for either the <b>Ending sequence number</b> field (TOENT) or the <b>Ending large sequence number</b> field (TOENTLRG) but not for both.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*LAST</u></b></dt>
|
|
<dd>The last journal entry in the last journal receiver specified is the final entry being compared.
|
|
</dd>
|
|
<dt><b><i>ending-sequence number</i></b></dt>
|
|
<dd>Specify the sequence number of the last journal entry being compared. The acceptable range is 1 to 9,999,999,999.
|
|
<p>
|
|
<b>Note: </b>The values specified for the FROM and TO parameters can be the same (for example, FROMENT(234) and TOENT(234) can be specified).
|
|
</p>
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="CMPJRNIMG.CMTCYCID"></a>
|
|
<h3>Commit cycle identifier (CMTCYCID)</h3>
|
|
<p>Specifies the commit cycle identifier of the specific journal that participated in a logical unit of work for which a comparison of journal entries is made.
|
|
</p>
|
|
<p>
|
|
<b>Note: </b>You can input a value for either the <b>Commit cycle identifier</b> field (CMTCYCID) or the <b>Commit cycle large identifier</b> field (CCIDLRG) but not for both.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*ALL</u></b></dt>
|
|
<dd>The journal entries for all commit cycle identifiers are included in the comparison.
|
|
</dd>
|
|
<dt><b><i>commit-cycle-identifier</i></b></dt>
|
|
<dd>Specify the commit cycle identifier of the journal entries to be considered for comparison. A journal entry's commit cycle identifier can be found by using the Display Journal (DSPJRN) command and selecting option five. The acceptable range is 1 to 9,999,999,999.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<hr size="2" width="100%">
|
|
<div><h3><a name="CMPJRNIMG.COMMAND.EXAMPLES">Examples</a> </h3>
|
|
<p><b>Example 1: Comparing Before-Images with After-Images</b>
|
|
</p>
|
|
<p>
|
|
<pre>
|
|
CMPJRNIMG FILE(QGPL/PF)
|
|
</pre>
|
|
</p>
|
|
<p>This command compares the journaled record-level changes for the first member of file PF in the QGPL library. The entries compared are in the journal receiver that is currently attached when the comparison begins, starting with the first entry and ending with the last entry. All entries with both before-images and after-images that satisfy the selection values are eligible to be compared. The before-images of the entries are compared with the after-images of the entries.
|
|
</p>
|
|
<p><b>Example 2: Comparing After-Images with Previous After-Images</b>
|
|
</p>
|
|
<p>
|
|
<pre>
|
|
CMPJRNIMG FILE(MYLIB/PAYROLL) MBR(APRIL)
|
|
RCVRNG((RCVLIB/RCV3) (*CURRENT))
|
|
FROMENT(200) TOENT(500)
|
|
CMPOPT(*AFTER) RCDNBR(999) OUTFMT(*HEX)
|
|
</pre>
|
|
</p>
|
|
<p>This command compares the journaled record-level changes for the member named APRIL in file PAYROLL in MYLIB, beginning with receiver RCV3 in RCVLIB and ending with the journal receiver that is currently attached at the start of the comparison. The range of entries compared starts with entry 200 and ends with entry 500. Only the after-images and previous after-images are compared. The comparison is limited to record number 999. The output is printed in hexadecimal format.
|
|
</p>
|
|
<p><b>Example 3: Specifying Journal Entry Date and Time</b>
|
|
</p>
|
|
<p>
|
|
<pre>
|
|
CMPJRNIMG FILE(USERLIB/MYFILE) MBR(*FIRST)
|
|
RCVRNG((RCV2) (USERLIB/RCV5))
|
|
FROMTIME('7/04/87' 120000) TOENT(1000)
|
|
</pre>
|
|
</p>
|
|
<p>This command compares the journaled record-level changes for the first member of file MYFILE in USERLIB, beginning with receiver RCV2 in *LIBL and ending with receiver RCV5 in USERLIB. The date and time of the first journal entry to be compared is 7/4/87 12:00:00, and the ending record sequence number considered for the comparison is 1000.
|
|
</p>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<hr size="2" width="100%">
|
|
<div><h3><a name="CMPJRNIMG.ERROR.MESSAGES">Error messages</a> </h3>
|
|
<p><b><u>*ESCAPE Messages</u></b>
|
|
</p>
|
|
<dl>
|
|
<dt><b>CPF7002</b></dt>
|
|
<dd>File &1 in library &2 not a physical file.
|
|
</dd>
|
|
<dt><b>CPF7006</b></dt>
|
|
<dd>Member &3 not found in file &1 in &2.
|
|
</dd>
|
|
<dt><b>CPF701B</b></dt>
|
|
<dd>Journal recovery of an interrupted operation failed.
|
|
</dd>
|
|
<dt><b>CPF7027</b></dt>
|
|
<dd>Operation cannot be performed beyond entry &4.
|
|
</dd>
|
|
<dt><b>CPF7028</b></dt>
|
|
<dd>Member &3 file &1 in &2 never journaled.
|
|
</dd>
|
|
<dt><b>CPF7029</b></dt>
|
|
<dd>Image comparison failed. Ending sequence number &4.
|
|
</dd>
|
|
<dt><b>CPF7036</b></dt>
|
|
<dd>File &1 in &2 not journaled with before images.
|
|
</dd>
|
|
<dt><b>CPF7038</b></dt>
|
|
<dd>No entries compared for member &3.
|
|
</dd>
|
|
<dt><b>CPF705A</b></dt>
|
|
<dd>Operation failed due to remote journal.
|
|
</dd>
|
|
<dt><b>CPF7053</b></dt>
|
|
<dd>Values for RCVRNG parameter not correct; reason code &1.
|
|
</dd>
|
|
<dt><b>CPF7054</b></dt>
|
|
<dd>FROM and TO values not valid.
|
|
</dd>
|
|
<dt><b>CPF709C</b></dt>
|
|
<dd>JOB, PGM, and USRPRF not valid for receiver range.
|
|
</dd>
|
|
<dt><b>CPF9801</b></dt>
|
|
<dd>Object &2 in library &3 not found.
|
|
</dd>
|
|
<dt><b>CPF9802</b></dt>
|
|
<dd>Not authorized to object &2 in &3.
|
|
</dd>
|
|
<dt><b>CPF9803</b></dt>
|
|
<dd>Cannot allocate object &2 in library &3.
|
|
</dd>
|
|
<dt><b>CPF9810</b></dt>
|
|
<dd>Library &1 not found.
|
|
</dd>
|
|
<dt><b>CPF9812</b></dt>
|
|
<dd>File &1 in library &2 not found.
|
|
</dd>
|
|
<dt><b>CPF9815</b></dt>
|
|
<dd>Member &5 file &2 in library &3 not found.
|
|
</dd>
|
|
<dt><b>CPF9820</b></dt>
|
|
<dd>Not authorized to use library &1.
|
|
</dd>
|
|
<dt><b>CPF9822</b></dt>
|
|
<dd>Not authorized to file &1 in library &2.
|
|
</dd>
|
|
<dt><b>CPF9825</b></dt>
|
|
<dd>Not authorized to device &1.
|
|
</dd>
|
|
<dt><b>CPF9845</b></dt>
|
|
<dd>Error occurred while opening file &1.
|
|
</dd>
|
|
<dt><b>CPF9846</b></dt>
|
|
<dd>Error while processing file &1 in library &2.
|
|
</dd>
|
|
<dt><b>CPF9850</b></dt>
|
|
<dd>Override of printer file &1 not allowed.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#CMPJRNIMG.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
</body>
|
|
</html>
|