Retrieve Journal Receiver Information (QjoRtvJrnReceiverInformation) API


  Required Parameter Group:

1 Receiver variable Output Char(*)
2 Length of receiver variable Input Binary(4)
3 Qualified journal receiver name Input Char(20)
4 Format name Input Char(8)

  Omissible Parameter:

5 Error code I/O Char(*)

  Service Program Name: QJOURNAL

  Header File: QSYSINC/H.QJOURNAL

  Default Public Authority: *USE

  Threadsafe: Yes

The Retrieve Journal Receiver Information (QjoRtvJrnReceiverInformation) API provides access to journal-receiver-related information to help manage a journal environment, including a remote journal environment.

Various types of journal receiver information are provided by the API, similar to information reported using the Display Journal Receiver Attributes (DSPJRNRCVA) CL command.


Authorities and Locks

Journal Receiver Authority
*OBJOPR and some data authority other than *EXECUTE
Journal Receiver Library Authority
*EXECUTE
Journal Authority
*OBJOPR
Journal Library Authority
*EXECUTE
Service Program Authority
*EXECUTE
Journal Receiver Lock
*SHRRD
Journal Lock
*SHRRD

For the following authorities and locks:

These are required only if the journal receiver has ever been associated with a journal, and that journal is on the system.


Required Parameter Group

Receiver variable
OUTPUT; CHAR(*)

The receiver variable that is to receive the information requested. You can specify the size of the area smaller than the format requested as long as you specify the length of receiver variable parameter correctly. As a result, the API returns only the data the area can hold.

Length of receiver variable
INPUT; BINARY(4)

The length of the receiver variable provided. The length of receiver variable parameter may be specified up to the size of the receiver variable specified in the user program. If the length of receiver variable parameter specified is larger than the allocated size of the receiver variable specified in the user program, the results are not predictable. The minimum length is 8 bytes.

Qualified journal receiver name
INPUT; CHAR(20)

The name of the journal receiver and its library from which the journal receiver attributes and information is to be retrieved. The first 10 characters contain the journal receiver name, and the second 10 characters contain the library name. The special values supported for the library name follow:

*LIBL Library list
*CURLIB Current library
Format name
INPUT; CHAR(8)

The format RRCV0100 is the only supported format that is used by this API. For more information, see RRCV0100 Format.


Omissible Parameter

Error code
I/O; CHAR(*)

The structure in which to return error information. For the format of the structure, see Error code parameter. If this parameter is omitted, diagnostic and escape messages are issued to the application.


RRCV0100 Format

The structure of the information returned is determined by the specified format name. For detailed descriptions of the fields, see Field Descriptions.

Offset Type Field
Dec Hex
0 0 BINARY(4) Bytes returned
4 4 BINARY(4) Bytes available
8 8 CHAR(10) Journal receiver name
18 12 CHAR(10) Journal receiver library name
28 1C CHAR(10) Journal name
38 26 CHAR(10) Journal library name
48 30 BINARY(4) Threshold
52 34 BINARY(4) Size
56 38 BINARY(4) Auxiliary storage pool (ASP)
60 3C BINARY(4) Number of journal entries
64 40 BINARY(4) Maximum entry-specific data length
68 44 BINARY(4) Maximum null value indicators
72 48 BINARY(4) First sequence number
76 4C CHAR(1) Minimize entry specific data for data areas
77 4D CHAR(1) Minimize entry specific data for files
78 4E CHAR(2) Reserved
80 50 BINARY(4) Last sequence number
84 54 BINARY(4) Reserved
88 58 CHAR(1) Status
89 59 CHAR(1) Receiver size option *MINFIXLEN
90 5A CHAR(1) Receiver maximums option
91 5B CHAR(4) Reserved
95 5F CHAR(13) Attached date and time
108 6C CHAR(13) Detached date and time
121 79 CHAR(13) Saved date and time
134 86 CHAR(50) Text
184 B8 CHAR(1) Pending transactions
185 B9 CHAR(1) Remote journal type
186 BA CHAR(10) Local journal name
196 C4 CHAR(10) Local journal library name
206 CE CHAR(8) Local journal system
214 D6 CHAR(10) Local journal receiver library name
224 E0 CHAR(10) Source journal name
234 EA CHAR(10) Source journal library name
244 F4 CHAR(8) Source journal system
252 FC CHAR(10) Source journal receiver library name
262 106 CHAR(10) Redirected journal receiver library
272 110 CHAR(10) Dual journal receiver name
282 11A CHAR(10) Dual journal receiver library name
292 124 CHAR(10) Previous journal receiver name
302 12E CHAR(10) Previous journal receiver library name
312 138 CHAR(10) Previous dual journal receiver name
322 142 CHAR(10) Previous dual journal receiver library name
332 14C CHAR(10) Next journal receiver name
342 156 CHAR(10) Next journal receiver library name
352 160 CHAR(10) Next dual journal receiver name
362 16A CHAR(10) Next dual journal receiver library name
372 174 CHAR(20) Number of journal entries - long
392 188 CHAR(20) Maximum entry-specific data length - long
412 19C CHAR(20) First sequence number - long
432 1B8 CHAR(20) Last sequence number - long
452 1C4 CHAR(10) ASP device name
462 1CE CHAR(10) Local journal ASP group name
472 1D8 CHAR(10) Source journal ASP group name
482 1E2 CHAR(1) Fixed length data *JOB
483 1E3 CHAR(1) Fixed length data *USR
484 1E4 CHAR(1) Fixed length data *PGM
485 1E5 CHAR(1) Fixed length data *PGMLIB
486 1E6 CHAR(1) Fixed length data *SYSSEQ
487 1E7 CHAR(1) Fixed length data *RMTADR
488 1E8 CHAR(1) Fixed length data *THD
489 1E9 CHAR(1) Fixed length data *LUW
490 1EA CHAR(1) Fixed length data *XID
Start of change491 1EB CHAR(1) Journal entries filtered
492 1EC BINARY(4) Offset to filter by program array
496 1F0 BINARY(4) Number of programs to filter
500 1F4 CHAR(1) Filter by object
501 1F5 CHAR(1) Filter images
492 1EC CHAR(10) Reserved
    Array(*) of CHAR(20) Filter by program End of change

Field Descriptions

Attached date and time. The date and time that this journal receiver was attached to the journal. For a journal receiver attached to a *REMOTE journal, this is the date and time that the journal receiver was attached on the local system. This field is in the CYYMMDDHHMMSS format as follows:

C Century, where 0 indicates years 19xx and 1 indicates years 20xx.
YY Year
MM Month
DD Day
HH Hour
MM Minute
SS Second

Auxiliary storage pool (ASP). The number of the auxiliary storage pool to which storage for the object is allocated.

ASP device name. The name of the independent auxiliary storage pool (ASP) device to which storage for the object is allocated. *SYSBAS is used to indicate the system ASP and all basic user ASPs.

Bytes available. The number of bytes of data available to be returned. All available data is returned if enough space is provided.

Bytes returned. The number of bytes of data returned.

Detached date and time. The date and time that this journal receiver was detached from the journal. For a journal receiver attached to a *REMOTE journal, this is the date and time that the journal receiver was detached on the local system. This field is in the CYYMMDDHHMMSS format, which is described in the attached date and time field description.

Dual journal receiver library name. The name of the library that contains the dual journal receiver.

This field is blank if there is no dual receiver.

Dual journal receiver name. The journal receiver that was attached at the same time as the journal receiver.

This field is blank if there is no dual receiver.

Start of change Filter by object. Specifies whether or not journal entries sent to this remote journal receiver from a local journal were filtered by object.

The possible values follow:

blank Blank is returned when the journal receiver is not a remote receiver.
0 Journal entries were not filtered by object.
1 Journal entries were filtered by object.

Filter by program. Specifies qualified program names. The number of qualified program names in the array is controlled by the Number of programs to filter field. Journal entries sent on behalf of these programs were filtered for this remote journal receiver.

The first 10 characters contain the program name, and the second 10 characters contain the name of the program's library.

Note: The offset to the filter by program array for each environment is determined by the Offset to filter by program array field.

The possible values for program library name are:

*ALL Journal entries for all programs that match the specified program name in all libraries were filtered.
name The name of the program's library for which journal entries were filtered.

Filter images. Specifies whether or not before images sent to this remote journal receiver were filtered.

The possible values follow:

blank Blank is returned when the journal receiver is not a remote receiver.
0 No before images were filtered, unless they were filtered by the Filter by object or Filter by program specifications.
1 Before images were filtered. End of change

First sequence number. The journal sequence number of the first journal entry in this journal receiver.

This field will be -1 if the value could not fit in the specified Binary(4) field. The complete value will be in the First sequence number - long field.

First sequence number - long. This is the same field as First sequence number except the information is in a Char(20) field which is treated as Zoned(20,0).

Fixed length data *JOB. Indicates whether the job name will be stored when journal entries are deposited.

blank Blank is returned when the journal is a remote journal.
0 Journal entries deposited to the journal will not include the job name.
1 Journal entries deposited to the journal will include the job name.

Fixed length data *LUW. Indicates whether the logical unit of work identifier will be stored when journal entries are deposited.

blank Blank is returned when the journal is a remote journal
0 Journal entries deposited to the journal will not include the logical unit of work identifier.
1 Journal entries deposited to the journal may include the logical unit of work identifier.

Fixed length data *PGM. Indicates whether the program name will be stored when journal entries are deposited.

blank Blank is returned when the journal is a remote journal.
0 Journal entries deposited to the journal will not include the program name.
1 Journal entries deposited to the journal will include the program name.

Fixed length data *PGMLIB. Indicates whether the program library name will be stored when journal entries are deposited.

blank Blank is returned when the journal is a remote journal.
0 Journal entries deposited to the journal will not include the program library name and the library ASP information.
1 Journal entries deposited to the journal will include the program library name and the library ASP information.

Fixed length data *RMTADR. Indicates whether the remote address will be stored when journal entries are deposited.

blank Blank is returned when the journal is a remote journal.
0 Journal entries deposited to the journal will not include the remote address.
1 Journal entries deposited to the journal may include the remote address.

Fixed length data *SYSSEQ. Indicates whether the system sequence number will be stored when journal entries are deposited.

blank Blank is returned when the journal is a remote journal.
0 Journal entries deposited to the journal will not include the system sequence number.
1 Journal entries deposited to the journal will include the system sequence number.

Fixed length data *THD. Indicates whether the thread identifier will be stored when journal entries are deposited.

blank Blank is returned when the journal is a remote journal.
0 Journal entries deposited to the journal will not include the thread identifier.
1 Journal entries deposited to the journal will include the thread identifier.

Fixed length data *USR. Indicates whether the user name will be stored when journal entries are deposited.

blank Blank is returned when the journal is a remote journal.
0 Journal entries deposited to the journal will not include the user name.
1 Journal entries deposited to the journal will include the user name.

Fixed length data *XID. Indicates whether the transaction identifier will be stored when journal entries are deposited.

blank Blank is returned when the journal is a remote journal.
0 Journal entries deposited to the journal will not include the transaction identifier.
1 Journal entries deposited to the journal may include the transaction identifier.


Start of change Journal entries filtered. Indicates whether or not some journal entries present on a local journal receiver may have been filtered out and are not present in this journal receiver.

blank Blank is returned when the journal is not a remote journal.
0 No journal entries were filtered out for this journal receiver.
1 Some journal entries may have been filtered out for this journal receiver. End of change

Journal library name. The name of the library in which the journal is stored.

This field is blank if this journal receiver is not yet associated with any journal.

Journal name. The name of the journal.

This field is *NONE if this journal receiver is not yet associated with any journal.

Journal receiver library name. The name of the library that contains the journal receiver.

Journal receiver name. The name of the journal receiver.

Last sequence number. The journal sequence number of the last journal entry in this journal receiver.

This field will be -1 if the value could not fit in the specified Binary(4) field. The complete value will be in the Last sequence number - long field.

Last sequence number - long. This is the same field as Last sequence number except the information is in a Char(20) field which is treated as Zoned(20,0).

Local journal ASP group name. The name of the independent auxiliary storage pool (ASP) group of the local journal. *SYSBAS is used to indicate the system ASP and all basic user ASPs. The local journal is the journal that is the initiator of the original journal deposit that has been replicated downstream to this journal.

This field is blank if there is no local journal.

Local journal library name. The library name of the local journal. The local journal is the journal that is the initiator of the original journal deposit that has been replicated downstream to this journal.

This field is blank if there is no local journal.

Local journal name. The journal name of the local journal. The local journal is the journal that is the initiator of the original journal deposit that has been replicated downstream to this journal.

This field is blank if there is no local journal.

This field is *NONE if this journal receiver is not yet associated with any journal.

Local journal receiver library name. The library name of the local journal receiver that is associated with the local journal. The local journal is the journal that is the initiator of the original journal deposit that has been replicated downstream to this journal.

This field is blank if there is no local journal.

This field is *NONE if this journal receiver is not yet associated with any journal.

Local journal system. The system name of the local journal. The local journal is the journal that is the initiator of the original journal deposit that has been replicated downstream to this journal.

This field is blank if there is no local journal.

Maximum entry-specific data length. The length in bytes of the longest entry-specific data among all journal entries in this journal receiver.

This field will be -1 if the value could not fit in the specified Binary(4) field. The complete value will be in the Maximum entry-specific data length - long field.

Maximum entry-specific data length - long. This is the same field as Maximum entry-specific data length except the information is in a Char(20) field which is treated as Zoned(20,0).

Maximum null value indicators. The maximum number of null value indicators among all journal entries in this journal receiver.

Minimize entry specific data for data areas. Whether the receiver was attached when MINENTDTA(*DTAARA) was in effect for the journal. Possible values follow:

0 Journal entries for data areas will have complete entry specific data.
1 Journal entries for data areas may have minimized entry specific data.

If this journal receiver is associated with a remote journal, then the value for this field was determined by the local journal.

Minimize entry specific data for files. Whether the receiver was attached when MINENTDTA(*FILE) was in effect for the journal. Possible values follow:

0 Journal entries for files will have complete entry specific data.
1 Journal entries for files may have minimized entry specific data. The minimizing does not occur on field boundaries. Therefore, the entry specific data may not be viewable and may not be used for auditing purposes.
2 Journal entries for files may have minimized entry specific data. The minimizing occurs on field boundaries. Therefore, the entry specific data will be viewable and may be used for auditing purposes.

If this journal receiver is associated with a remote journal, then the value for this field was determined by the local journal.

Next dual journal receiver library name. The library name of the next dual journal receiver that is associated with this journal receiver.

This field is blank if there is no next dual journal receiver, or if the specified journal receiver is currently associated with a remote journal.

Next dual journal receiver name. The name of the next dual journal receiver that is associated with this journal receiver.

This field is blank if there is no next dual journal receiver, or if the specified journal receiver is currently associated with a remote journal.

Next journal receiver library name. The library name of the next journal receiver that is associated with this journal receiver.

This field is blank if there is no next journal receiver, or if the specified journal receiver is currently associated with a remote journal.

Next journal receiver name. The name of the next journal receiver that is associated with this journal receiver.

This field is blank if there is no next journal receiver, or if the specified journal receiver is currently associated with a remote journal.

Number of journal entries. The number of journal entries that are contained in this journal receiver.

This field will be -1 if the value could not fit in the specified Binary(4) field. The complete value will be in the Number of journal entries - long field.

Number of journal entries - long. This is the same field as Number of journal entries except the information is in a Char(20) field which is treated as Zoned(20,0).

Start of change Number of programs to filter. The number of programs specified in the filter by program array.

If the receiver is not a remote receiver, this field will be -1.

Offset to filter by program array. The byte offset from the beginning of the receiver variable to the first program that had its journal entries filtered from this remote receiver. End of change

Pending transactions. Whether the journal receiver contains journal entries for commitment control transactions that have not yet been committed or rolled back. The possible values are:

0 The journal receiver does not contain entries for pending commitment control transactions.
1 The journal receiver contains entries for pending commitment control transactions.

Previous dual journal receiver library name. The library name of the previous dual journal receiver that is associated with this journal receiver.

This field is blank if there is no previous dual journal receiver, or if the specified journal receiver is currently associated with a remote journal.

Previous dual journal receiver name. The name of the previous dual journal receiver that is associated with this journal receiver.

This field is blank if there is no previous dual journal receiver, or if the specified journal receiver is currently associated with a remote journal.

Previous journal receiver library name. The library name of the previous journal receiver that is associated with this journal receiver.

This field is blank if there is no previous journal receiver, or if the specified journal receiver is currently associated with a remote journal.

Previous journal receiver name. The name of the previous journal receiver that is associated with this journal receiver.

This field is blank if there is no previous journal receiver, or if the specified journal receiver is currently associated with a remote journal.

Receiver maximums option. Indicates the journal receiver sequence number and size option for this journal receiver. Possible values follow:

blank The journal receiver has not yet been attached to any journal.
0 The journal receiver has a maximum journal receiver size of approximately 1.9 gigabytes and a maximum sequence number of 2,147,483,136.
1 The journal receiver has a maximum journal receiver size of approximately one terabyte (1,099,511,627,776 bytes) and a maximum sequence number of 9,999,999,999. Additionally, the maximum size of the journal entry that can be deposited is 15,761,440 bytes. This occurs if this receiver was attached when RCVSIZOPT(*MAXOPT1) was in effect for the journal. These journal receivers cannot be saved and restored to any releases prior to V4R5M0, nor can they be replicated to any remote journals on any systems at releases prior to V4R5M0.
2 The journal receiver has a maximum journal receiver size of approximately one terabyte (1,099,511,627,776 bytes) and a maximum sequence number of 9,999,999,999. This occurs if this receiver was attached when RCVSIZOPT(*MAXOPT2) was in effect for the journal. Additionally, the maximum size of the journal entry which can be deposited is 4,000,000,000 bytes. These journal receivers cannot be saved and restored to any releases prior to V5R1M0, nor can they be replicated to any remote journals on any systems at releases prior to V5R1M0.
3 The journal receiver has a maximum journal receiver size of approximately one terabyte (1,099,511,627,776 bytes) and a maximum sequence number of 18,446,744,073,709,551,600. This occurs if this receiver was attached when RCVSIZOPT(*MAXOPT3) was in effect for the journal. Additionally, the maximum size of the journal entry which can be deposited is 4,000,000,000 bytes. These journal receivers cannot be saved and restored to any releases prior to V5R3M0, nor can they be replicated to any remote journals on any systems at releases prior to V5R3M0.

If this journal receiver is associated with a remote journal, then the value for this field was determined by the local journal.

Receiver size option *MINFIXLEN. The size of the journal entries that are deposited into the attached journal receivers is reduced by the automatic removal of all fixed length data such as job name, system sequence number, and so on. This option is applicable only for local journals and is blank for remote journals.

blank Blank is returned when the journal is a remote journal.
0 The journal entries in the receiver include all of the fixed length data such as job name, system sequence number, and so on.
1 The journal entries in the receiver do not include any fixed length data such as job name, system sequence number, and so on.


Redirected journal receiver library. If this journal receiver was attached to a remote journal, this field is the *TYPE1 receiver library redirection that was in effect when this journal receiver was attached.

This field is blank if this journal receiver was attached to a local journal, or if the journal receiver was attached to a remote journal with no *TYPE1 receiver library redirection.

This field is *NONE if this journal receiver is not yet associated with any journal.

Remote journal type. If this journal receiver was attached to a remote journal, this field is the remote journal type for that journal, when this journal receiver was attached. The possible values are:

blank The journal receiver has not yet been attached to any journal.
0 The journal receiver was attached to a local journal.
1 The journal receiver was attached to a *TYPE1 remote journal.
2 The journal receiver was attached to a *TYPE2 remote journal.

Reserved. The bytes reserved to align binary fields or for future use.

Saved date and time. The date and time that the journal receiver was last saved. This value reflects when the receiver was saved from the system it exists on (either the source or target system time). This field is in the CYYMMDDHHMMSS format, which is described in the attached date and time field description.

Size. The number of kilobytes of auxiliary disk storage used by this journal receiver.

Source journal ASP group name. The name of the independent auxiliary storage pool (ASP) group of the source journal. *SYSBAS is used to indicate the system ASP and all basic user ASPs. The source journal is the journal that is directly upstream of this journal.

This field is blank if there is no source journal.

Source journal library name. The library name of the source journal. The source journal is the journal that is directly upstream of this remote journal.

This field is blank if there is no source journal.

Source journal name. The journal name of the source journal. The source journal is the journal that is directly upstream of this remote journal.

This field is blank if there is no source journal.

This field is *NONE if this journal receiver is not yet associated with any journal.

Source journal receiver library name. The library name of the source journal receiver that is associated with the source journal. The source journal is the journal that is directly upstream of this remote journal.

This field is blank if there is no source journal.

This field is *NONE if this journal receiver is not yet associated with any journal.

Source journal system. The system name of the source journal. The source journal is the journal that is directly upstream of this remote journal.

This system name is determined when the remote journal is activated by using the Change Remote Journal (CHGRMTJRN) command or by calling the Change Journal State (QjoChangeJournalState) API, and is based on the current system name at that time as seen by using the Display Network Attributes (DSPNETA) command.

This field is blank if there is no source journal.

Status. The status of the journal receiver. The status can be one of the following:

1 The journal receiver is currently attached to the journal.
2 The journal receiver is online. The journal receiver has not been saved, and it has been detached from the journal.
3 The journal receiver was saved after it was detached. The journal receiver storage was not freed when it was saved.
4 The journal receiver was saved after it was detached. The journal receiver storage was freed when it was saved.
5 The journal receiver status is partial for one of the following reasons:
  • It was restored from a version that was saved while it was attached to the journal. Additional journal entries may have been written that were not restored.
  • It was one of a pair of dual journal receivers, and it was found damaged while attached to the journal. The journal receiver has since been detached. This journal receiver is considered partial because additional journal entries may have been written to the dual journal receiver.
  • It is associated with a remote journal and it does not contain all the journal entries that are in the associated journal receiver attached to the source journal.
6 The journal receiver status is empty, since the receiver has never been attached to a journal.

Text. The text description of the journal receiver.

Threshold. An auxiliary disk storage space threshold value (in kilobytes) for the journal receiver. If the threshold value is exceeded during journaling and the journal has the MNGRCV(*USER) attribute, a message (CPF7099) is sent to the message queue that is specified on the Create Journal (CRTJRN) or the Change Journal (CHGJRN) command. If the journal has the MNGRCV(*SYSTEM) attribute, the system creates and attaches a new journal receiver, detaches the old journal receiver when the threshold is reached, and sends message CPF7020 to the journal message queue. This option is applicable only for local journals and is zero for remote journals.

Error Messages

Message ID Error Message Text
CPF24B4 E Severe error while addressing parameter list.
CPF3CF1 E Error code parameter not valid.
CPF3C21 E Format name &1 is not valid.
CPF3C24 E Length of the receiver variable is not valid.
CPF3C90 E Literal value cannot be changed.
CPF6948 E Length of the receiver variable &1 is not valid.
CPF701A E Journal receiver not eligible for operation.
CPF701B E Journal recovery of interrupted operation failed.
CPF8100 E All CPF81xx messages could be returned. xx is from 01 to FF.
CPF9801 E Object &2 in library &3 not found.
CPF9802 E Not authorized to object &2 in &3.
CPF9803 E Cannot allocate object &2 in library &3.
CPF9804 E Object &2 in library &3 damaged.
CPF9810 E Library &1 not found.
CPF9820 E Not authorized to use library &1.
CPF9872 E Program or service program &1 in library &2 ended. Reason code &3.


API introduced: V4R2

[ Back to top | Journal and Commit APIs | APIs by category ]