FABHURG1 JCL requirements

FABHURG1 runs as an HSSR application program and, therefore, must meet the requirements for the basic JCL (FABHX034 JCL). In addition, FABHURG1 JCL requires other DD statements.

Prerequisite: See Basic JCL requirements for the basic (FABHX034) JCL requirements.

The following table summarizes the additional JCL requirements for FABHURG1.

Table 1. FABHURG1 DD statements
DDNAME Use Format Need
SYSIN Input LRECL=80 Optional
SYSPRINT Output LRECL=133 Required
SYSUT1 Input HD Unload Optional
SYSUT2 Output - Required
SYSUT3 Output - Optional
Note: You can also use JCL that is written for IMS HD Reorganization Unload (DFSURGU0) to run FABHURG1. For details, see IMS HD Reorganization Unload JCL for running FABHURG1. In this compatibility mode, Media Manager will not become effective for VSAM ESDS and OSAM LDS, regardless of whether JOBLIB or STEPLIB libraries are APF-authorized.
EXEC
This statement invokes procedures FABHULU, FABHDLI, or FABHDBB (see Preparing the basic JCL). The EXEC statement must be in one of the following formats:
//   EXEC FABHULU,MBR=FABHURG1,DBD=dbdname
//   EXEC FABHDLI,MBR=FABHURG1,PSB=psbname
//   EXEC FABHDBB,MBR=FABHURG1,PSB=psbname
SYSIN DD
This optional DD statement defines the input data set that contains control statements for FABHURG1.

For the description of the control statements, see FABHURG1 SYSIN input data set.

SYSPRINT DD
This required statement defines the output data set to which FABHURG1 writes error messages and segment statistics. The data set can be defined as:
 //SYSPRINT DD SYSOUT=A 
SYSUT1 DD
This optional statement defines an input data set created (in a previous step) by the IMS HD Reorganization Unload utility. Use it only for problem determination. It activates a comparison of *HD output records with the output records that were created by the IMS HD Reorganization Unload utility. FABHURG1 does not compare the lengths of the header or trailer records.

If a mismatch is detected, FABHURG1 ends abnormally with an error message.

The record that is created by FABHURG1 is compared with the record in SYSUT1 before any optional user exit routine is invoked. For records that contain a logical child with a logical parent's concatenated key that is specified as VIRTUAL on the SEGM statement of the DBD, the comparison is done as follows:

  • If a BLDLPCK control statement is specified, the entire record is compared.
  • If no BLDLPCK control statement is specified, the entire record except the LPCK field is compared.

If the utility detects that a segment is not sensitive, or if a user exit routine requests that one or more segments be skipped, the comparison is halted.

SYSUT2 DD
This required statement defines the primary output data set on which the database is unloaded. The data set can reside on a tape or a direct-access device. It can also be defined as DUMMY.

You can specify the number of buffers in the URG1BUFNO= option in the default option table (FABHOPT). For details, see Site default options. The buffers are obtained above the 16-MB line.

If neither the BUFNO subparameter of the DCB parameter on the DD statement nor the URG1BUFNO= option is given, the number of buffers is determined automatically. The buffers are approximately 1 MB in total size and are above the 16-MB line.

If a block size is not specified on the SYSUT2 DD statement, FABHURG1 uses the following block size:

  • For device type 3380, the default block size is 23 K. If the database contains segments larger than 23 K, the maximum block size of 32 K is used.
  • For device type 3390, the default block size is 28 K. If the database contains segments larger than 28 K, the maximum block size of 32 K is used.
  • For device type 9345, the default block size is 22 K. If the database contains segments larger than 22 K, the maximum block size of 32 K is used.
  • For device types other than the preceding, the default is the maximum capacity for the device types.
SYSUT3 DD
This optional statement defines a secondary output data set that contains a second copy of the SYSUT2 data set. If SYSUT2 is defined as DUMMY, IMS High Performance Unload ignores this statement. The same rules for BUFNO and BLKSIZE apply as for SYSUT2.
Notes:
The LRECL values for SYSUT2 and SYSUT3 data sets are determined as follows:
  • For the unload formats *F1, *F2, and *F3:
    • If the LRECL value prepared in the JCL DD statement is used when the value is specified in either of the following ways:
      • Explicitly by the LRECL subparameter of DCB parameter
      • Implicitly, for example, by using a model data set or by using the DFSMS/MVS DATACLAS parameter.
    • If the LRECL value is not specified either explicitly or implicitly, the default record size (block size minus 4) is used.
  • For *HD unload format, the LRECL value prepared in the JCL DD statement is always ignored, and the default record size (block size minus 4) is used.

The large format data set can be specified for SYSUT2 and SYSUT3.