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.
The following table summarizes the additional JCL requirements for FABHURG1.
- 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
//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.
- 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.
- If the LRECL value prepared in the JCL DD statement is used when the value is specified in either of the following ways:
- 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.