137 lines
9.3 KiB
HTML
137 lines
9.3 KiB
HTML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE html
|
|
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html lang="en-us" xml:lang="en-us">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<meta name="security" content="public" />
|
|
<meta name="Robots" content="index,follow" />
|
|
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
|
|
<meta name="DC.Type" content="concept" />
|
|
<meta name="DC.Title" content="Work with pointers in journal entries" />
|
|
<meta name="abstract" content="Under certain conditions, not all of the journal entry data will be immediately retrievable from a journal entry. Instead, part of the journal entry information will include pointers to additional journal entry-specific data." />
|
|
<meta name="description" content="Under certain conditions, not all of the journal entry data will be immediately retrievable from a journal entry. Instead, part of the journal entry information will include pointers to additional journal entry-specific data." />
|
|
<meta name="DC.Relation" scheme="URI" content="rzakiwrkjrninfo.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="rzakirqstblckmode.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="rzakirtvjrnentry.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../apis/QJORJRNE.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../cl/rcvjrne.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="rzakifinder.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../cl/dltjrnrcv.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="rzakideletercv.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../apis/QJODLTPH.htm" />
|
|
<meta name="copyright" content="(C) Copyright IBM Corporation 2004, 2006" />
|
|
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 2004, 2006" />
|
|
<meta name="DC.Format" content="XHTML" />
|
|
<meta name="DC.Identifier" content="rzakipointer" />
|
|
<meta name="DC.Language" content="en-us" />
|
|
<!-- 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. -->
|
|
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
|
|
<link rel="stylesheet" type="text/css" href="./ic.css" />
|
|
<title>Work with pointers in journal entries</title>
|
|
</head>
|
|
<body id="rzakipointer"><a name="rzakipointer"><!-- --></a>
|
|
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
|
<h1 class="topictitle1">Work with pointers in journal entries</h1>
|
|
<div><p>Under certain conditions, not all of the journal entry data will
|
|
be immediately retrievable from a journal entry. Instead, part of the journal
|
|
entry information will include pointers to additional journal entry-specific
|
|
data.</p>
|
|
<p>These pointers will only be retrieved if you use following:</p>
|
|
<ul><li><span class="apiname">Retrieve Journal Entries (QjoRetrieveJournalEntries)</span> API</li>
|
|
<li>The *TYPEPTR format on the <span class="cmdname">Receive Journal Entry (RCVJRNE)</span> command</li>
|
|
<li>The *JRNENTFMT format on the <span class="cmdname">RCVJRNE</span> command (you must
|
|
also specify the RTNPTR parameter for the RCVJRNE command)</li>
|
|
</ul>
|
|
<p>In all other retrievals of journal entry data, *POINTER would be in the
|
|
field where a pointer could exist. An incomplete data indicator has been added
|
|
to indicate if the journal entry-specific data has data missing which can
|
|
only be retrieved through a pointer</p>
|
|
<p>If the <span class="apiname">QjoRetrieveJournalEntries</span> API or the *TYPEPTR
|
|
or *JRNENTFMT format on <span class="cmdname">RCVJRNE</span> command is used and the
|
|
incomplete data indicator field is 1, the journal entry-specific data will
|
|
contain pointers. For all other interfaces, if the incomplete data indicator
|
|
is 1, the journal entry-specific data will have the character string *POINTER
|
|
in the field where an actual pointer would be placed if the API or *TYPEPTR
|
|
or *JRNENTFMT interfaces were used. The incomplete data indicator field could
|
|
be set to 1 if the journal entry-specific data exceeds 32766 bytes, or if
|
|
the journal entry is associated with a database file which has one or more
|
|
fields of data type BLOB (binary large object), CLOB (character large object),
|
|
or DBCLOB (double-byte character large object). Use the Journal entry information
|
|
finder to find which journal entry types can set the incomplete data indicator
|
|
on.</p>
|
|
<p>These pointers can only be used with the V4R4M0 and later versions of the
|
|
following languages:</p>
|
|
<ul><li>ILE/COBOL</li>
|
|
<li>ILE/RPG</li>
|
|
<li>ILE/C if the TERASPACE parameter is used when compiling the program. See <a href="../books/sc092712.pdf" target="_blank">WebSphere<sup>®</sup> Development
|
|
Studio ILE C/C++ Programmer's Guide</a> for information about using the
|
|
TERASPACE parameter.</li>
|
|
</ul>
|
|
<p>There are some considerations you need to be aware of when using the pointer
|
|
data:</p>
|
|
<ul><li>The pointer can only be used by the process or job which retrieved or
|
|
received the journal entry which contained the pointer. The pointer cannot
|
|
be passed on to another job, nor can it be stored to use at a later date by
|
|
a different job or process.</li>
|
|
<li>The pointer will only give you read access to the additional data. Write
|
|
operations to that pointer are not allowed.</li>
|
|
<li>The data that is being pointed to actually resides in the journal receiver.
|
|
Therefore, ensure that you protect the journal receiver from deletion until
|
|
you use the data. To prevent a journal receiver from being deleted before
|
|
the data is used, you can register an exit point for the <span class="cmdname">Delete Journal
|
|
Receiver (DLTJRNRCV)</span> command.</li>
|
|
<li>For files with fields of data type BLOB (binary large object), CLOB (character),
|
|
or DBCLOB (double-byte character large object), use SQL to update the files.
|
|
</li>
|
|
</ul>
|
|
<p>If any journal entries are returned with pointers, the journal entry will
|
|
also contain a pointer handle. This pointer handle must be used to free up
|
|
any allocations associated with the pointer data once the pointer data has
|
|
been used. The considerations for this pointer handle are as follows:</p>
|
|
<ul><li>Using the pointer data means any of the following: <ul><li>Addressing the information and copying the addressed data to another object</li>
|
|
<li>Using the journal entry-specific data directly to modify another object.
|
|
For example, using the data to update a database file with the journal entry
|
|
which represents a database record update for a file which included LOBs.</li>
|
|
<li>Ignoring the additional data that is pointed to</li>
|
|
</ul>
|
|
</li>
|
|
<li>If you used the <span class="apiname">QjoRetrieveJournalEntries</span> API, use
|
|
the <span class="apiname">Delete Pointer Handle (QjoDeletePointerHandle)</span> API
|
|
to delete the pointer handle when you are done using it.</li>
|
|
<li>If you use the <span class="cmdname">RCVJRNE</span> command with the RTNPTR(*SYSMNG)
|
|
parameter, you must use the associated pointer prior to returning control
|
|
from the exit program. The system will delete all pointer handles after the
|
|
return from the exit program call.</li>
|
|
<li>If you use the <span class="cmdname">RCVJRNE</span> command with the RTNPTR(*USRMNG)
|
|
parameter, then it is your responsibility to use the <span class="apiname">Delete Pointer
|
|
Handle (QjoDeletePointerHandle)</span> API to delete the pointer handle
|
|
when you are done using it.</li>
|
|
</ul>
|
|
</div>
|
|
<div>
|
|
<div class="familylinks">
|
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzakiwrkjrninfo.htm" title="Provides ways that you can display, retrieve, and receive journal entries.">Work with journal entry information</a></div>
|
|
</div>
|
|
<div class="relconcepts"><strong>Related concepts</strong><br />
|
|
<div><a href="rzakirqstblckmode.htm" title="Use block mode to specify whether the system will be sending one or more journal entries to the exit program and specifies the block length of the buffer passed to the exit program.">Request block mode</a></div>
|
|
<div><a href="rzakirtvjrnentry.htm" title="Use the Retrieve Journal Entry (RTVJRNE) command or the Retrieve Journal Entries (QjoRetrieveJournalEntries) API in a program to retrieve a journal entry and place it in a variable in the program.">Retrieve journal entries in a program</a></div>
|
|
</div>
|
|
<div class="reltasks"><strong>Related tasks</strong><br />
|
|
<div><a href="rzakideletercv.htm" title="Journal receivers can quickly use a lot of auxiliary storage space. Therefore an important journal management task is to delete journal receivers after you no longer need them.">Delete journal receivers</a></div>
|
|
</div>
|
|
<div class="relref"><strong>Related reference</strong><br />
|
|
<div><a href="../apis/QJORJRNE.htm">Retrieve Journal Entries (QjoRetrieveJournalEntries) API</a></div>
|
|
<div><a href="../cl/rcvjrne.htm">Receive Journal Entry (RCVJRNE) command</a></div>
|
|
<div><a href="../cl/dltjrnrcv.htm">Delete Journal Receiver (DLTJRNRCV) command</a></div>
|
|
<div><a href="../apis/QJODLTPH.htm">Delete Pointer Handle (QjoDeletePointerHandle) API</a></div>
|
|
</div>
|
|
<div class="relinfo"><strong>Related information</strong><br />
|
|
<div><a href="rzakifinder.htm">Journal entry information finder</a></div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html> |