Adabas Audit Data Retrieval reader program (B97RDR00)

Overview

The Adabas system writes audit data into so-called ALOG datasets based on subscriptions. The generated datasets are then read into Adabas Audit Data Retrieval via reader batch jobs.

The reader job prepares the generated ALOG dataset via the IBM sort utilty and then calls the program B97RDR00 to read in and index the data contained in the dataset.

Important: DFSORT required

B97RDR00 requires DFSORT (64 bit) or Syncsort (64 bit).

If you are using a different default sort utility at your site, define an alias for SORT64 that points to DFSORT.

JCL

You can find JCL for this batch utility in the BETA97.CNTL in member B97RDR00.

+---------------------------------------------------------------------+
|jobcard |
|//B97RDR00 EXEC PGM=BST01RFF,REGION=0M, |
|// PARM=('S=97,B97LST=xx', |
|// 'B01LST=xx', |
|// 'PGM=B97RDR00', |
|// 'SIGNON=YES') |
|//* |
|//STEPLIB DD DISP=SHR,DSN=BETA97.LOAD |
|// DD DISP=SHR,DSN=BSA.LOAD |
|//SFFPARM DD DISP=SHR,DSN=BETA.PARMLIB |
|//B97DEF DD DISP=SHR,DSN=BETA97.DB.DEF |
|//* |
|//SYSPRINT DD SYSOUT=* |
|//SFFFDUMP DD SYSOUT=* |
|//SYSABEND DD SYSOUT=* |
|//IRMPRINT DD SYSOUT=* |
|//IRMLOG DD SYSOUT=* |
|//****************************************************************** |
|//* GLOBAL SORT OPTIONS * |
|//****************************************************************** |
|//SORTDIAG DD SYSOUT=* |
|//****************************************************************** |
|//* E35 DD-NAME AND CONTROL * |
|//****************************************************************** |
|//IRM1MSG DD SYSOUT=* |
|//IRM1IN DD DISP=SHR,DSN=adabas.audit.dataset |
|//IRM1CNTL DD * |
| sort control statements |
| otherwise dummy |
|/* |
|//****************************************************************** |
|//* E15 DD-NAME AND CONTROL * |
|//****************************************************************** |
|//IRM2MSG DD SYSOUT=* |
|//IRM2CNTL DD * |
| sort control statements |
| otherwise dummy |
|/* |
|//****************************************************************** |
|//* B97RDR00 SYSIN * |
|//****************************************************************** |
|//SYSIN DD * |
| general parameters |
| alog-specific parameters |
|/* |
+---------------------------------------------------------------------+

IRMIN parameters

The following parameters can be specified in DD IRMIN:

Parameter

Description

DDPREFIX

Defines the DD name prefix used by the reader job for the sort utility exits E15 and E35

For example, for the sample JCL, which uses IRM1IN/ IRM2IN, IRM1CNTL/ IRM2CNTL, etc., specify the following:

DDPREFIX = (E15,IRM2)
DDPREFIX = (E35,IRM1)

MESSAGEDDN

Defines the sort message DD names, for example:

MESSAGEDDN = (E15,IRM2MSG)
MESSAGEDDN = (E35,IRM1MSG)

The default of DFSORT is DD SYSOUT.

MEMORYSIZE

Defines the number of buffers for the individual queues

Allowed: 2..16 (Default: 4)

MEMORYSIZE(E15) affects the following queue:

  • B97_SDS_QUEUE

MEMORYSIZE(E35) affects the following queues:

  • B97_READY_QUEUE
  • B97_S2E35_QUEUE,
  • B97_S2E35_QUEUE

The buffer size is fixed (32,768 bytes). The specified number is used for all queues.

DEFAULTFORM

DEFAULTEXTENSION

DEFAULTREPORT

Use these parameters to define default values for the components (form, extension, report) of the list name

Default names are used in addition to the names retrieved from the ALOG record when trying to find a matching list definition for the data that is being read in. The first match encountered in this sequence is used:

  1. form(alog) / extension(alog) / report(alog)
  2. form(alog) / extension(alog)
  3. defaultform / defaultextension / defaultreport

The reader job will end with an error if no matching list definition can be found.

A matching list definition for defaultform / defaultextension / defaultreport must exist. DEFAULTFORM is required. The other two parameters are optional. Blank will be used as default name for extension and report if not specified.

SUBSCRIPT_EXT

Defines a max. 8-byte text to be added to the subscription name as prefix or suffix during import

This parameter enables you to make use of the max. 16-byte extension name in Adabas Audit Data Retrieval, to which the max. 8-byte subscription name from the ALOG dataset is mapped.

Use the following syntax:

SUBSCRIPT_EXT = string,position

where:

string is the max. 8-byte text

position is either PREFIX or SUFFIX

Example

+---------------------------------------------------------------------+
|//jobcard |
|//B97RDR00 EXEC PGM=BST01RFF,REGION=0M, |
|// PARM=('S=97,B97LST=xx', |
|// 'B01LST=xx', |
|// 'PGM=B97RDR00', |
|// 'SIGNON=YES') |
|//* |
|//STEPLIB DD DISP=SHR,DSN=BETA97.LOAD |
|// DD DISP=SHR,DSN=BSA.LOAD |
|//* |
|//SFFPARM DD DISP=SHR,DSN=BETA.PARMLIB |
|//B97DEF DD DISP=SHR,DSN=BETA97.DB.DEF |
|//* |
|//SYSPRINT DD SYSOUT=* |
|//SFFFDUMP DD SYSOUT=* |
|//SYSABEND DD SYSOUT=* |
|//IRMPRINT DD SYSOUT=* |
|//IRMLOG DD SYSOUT=* |
|//* |
|//****************************************************************** |
|//* GLOBAL SORT OPTIONS * |
|//****************************************************************** |
|//SORTDIAG DD SYSOUT=* |
|//****************************************************************** |
|//* E35 DD-NAME AND CONTROL * |
|//****************************************************************** |
|//IRM1MSG DD SYSOUT=* |
|//IRM1IN DD DISP=SHR,DSN=ADABAS.FS1.$TMP.CLOG003.C1.FF01FT50 |
|//IRM1CNTL DD * |
| DEBUG NOABEND,NOESTAE |
| OPTION MOSIZE=MAX, |
| DYNALLOC=10, |
| SDB=LARGE, |
| MSGPRT=ALL |
|/* |

|//****************************************************************** |
|//* E15 DD-NAME AND CONTROL * |
|//****************************************************************** |
|//IRM2MSG DD SYSOUT=* |
|//IRM2CNTL DD * |
| DEBUG NOABEND,NOESTAE |
| OPTION MOSIZE=MAX, |
| ARESALL=32M, |
| ARESINV=4M, |
| MAINSIZE=1M, |
| DYNALLOC=10, |
| MSGPRT=ALL, |
| SDB=LARGE, |
| AVGRLEN=50, |
| FILSZ=E200000 |
|/* |
|//****************************************************************** |
|//* B97RDR00 SYSIN * |
|//****************************************************************** |
|//SYSIN DD * |
| |
|******************************************************************** |
|* GENERAL PARAMETERS * |
|******************************************************************** |
| MEMORYSIZE = (E15,16) |
| MEMORYSIZE = (E35,16) |
| DDPREFIX = (E35,IRM1) |
| DDPREFIX = (E15,IRM2) |
| MESSAGEDDN = (E35,IRM1MSG) |
| MESSAGEDDN = (E15,IRM2MSG) |
| |
|******************************************************************** |
|* BLOG SPECIFIC PARAMETER * |
|******************************************************************** |
| |
| DEFAULTFORM = STDFORM |
| DEFAULTEXTENSION = STDEXTENSION |
| DEFAULTREPORT = STDREPORTNAME |
|/* |
+---------------------------------------------------------------------+