DD statements for the Unload function

DD statements of the FPA Unload function determine the input and output data sets and specify how to run the Unload function.

List of DD statements

The following table summarizes the DD statements for the Unload function.

Table 1. DD statements for the Unload function
DDNAME Use Format Can be dynamically allocated? Required or optional
JOBLIB or STEPLIB Input PDS No Required
IMSACB, IMSACBA, or IMSACBB Input PDS No Required when IMSCATHLQ=*NO
IMSDALIB Input PDS No Optional
MODSTAT Input PS Yes Optional
MODSTAT2 Input PS Yes Optional
OLCSTAT Input PS Yes Optional
EXITLIB Input PDS No Optional
IMSRESLB Input PDS No Optional
NEWACB Input PDS Yes Optional
NEWRESLB Input PDS No Optional
addnname or areaname Input VSAM ESDS cluster or PS (Note) Yes Required under certain conditions (for details, see addnname/areaname DD)
OAREAnnn or OARnnnnn Output PS Yes Required when neither the ODSNMASK keyword nor the FILECTL subcommand is specified
HFPSYSIN Input LRECL=80 No Required
HFPCSITE Input PDS Yes Optional
HFPPRINT Output SYSOUT Yes Optional
HFPRPTS Output LRECL=133 Yes Optional
HFPASNAP Output LRECL=133 No Required when CISNAP=YES
HFPSEQER Output PS No Required when KEYSEQCHK=BYPASS or KEYSEQCHK=WARNING
HFPTOTAL Output PS No Optional
HFPABEND Output LRECL=125 Yes Optional
HFPCHKPT Input and output PS No Required when RESTART=YES
RECONn Input and output KSDS Yes Required when both of the following conditions are met:
  • DBRC=YES
  • DFSMDA members for RECONn data sets are not used
ctttWKnn Input and output Yes Optional
itttWKnn Input and output Yes Optional
ctttSMSG Output LRECL=133 Yes Optional
itttSMSG Output LRECL=133 Yes Optional
DFSPRINT Output LRECL=122 Yes Optional
ICEIN Input LRECL=80 No Optional
ICEPRINT Output LRECL=133 Yes Optional
ICERPRT Output LRECL=133 No Optional
dataout1 Output PS Yes Optional
dataout2 Output PS Yes Optional
Note: If image copy is used as an input data set.

Input DD statements

The following input DD statements are used for the Unload function.

JOBLIB/STEPLIB DD
This DD statement is a required DD statement. This DD statement defines the input data sets as follows:
  • The FPA load module library (required).
  • The library that contains DFSMDA dynamic allocation members for the RECON data set. When DBRC=YES is specified and the RECONn DD statement is omitted, this DD statement is required.
  • The library that contains randomizer/edit compression members that were specified in the NEWACB data set if NEWRESLB DD statement is not specified.
  • The library that contains a user exit routine member that was specified in the EXITRTN= keyword if EXITLIB DD statement is not specified.
  • The library that contains a default site default member (HFPCSITE) to determine the data set name and the member of the site default table.
  • The IMS load module library (required).
  • The IMS Tools Base library (SHKTLOAD), if you specify the ITKBSRVR keyword.
  • The IMS Tools Base library (SGLXLOAD), if you specify the IMSCATHLQ keyword.
  • The IMS HP Image Copy library, if you specify the ICOUT=YES option.
  • The IMS Library Integrity Utilities library, if you want to activate Integrity Checker.

FPA must be run as an APF-authorized program. All of the data sets that are listed within the JOBLIB or the STEPLIB concatenation must also be APF-authorized. If you use DFSMDA members and the DFSMDA members are in a non-APF authorized library, you can specify the DFSMDA library on the IMSDALIB DD statement.

IMSACB DD
This DD statement is an optional DD statement that defines the library that contains the DMB for the database. The IMSACB DD statements (IMSACB, IMSACBA, IMSACBB, MODSTAT, MODSTAT2, and OLCSTAT) can be used to identify the active ACB library. When both OLCSTAT or MODSTAT and MODSTAT2 are found, FPA checks the time stamp and determines the latest one.
The active IMSACB library is determined according to the following rules:
  1. Check IMSACB DD statement in the JCL statement.
  2. Check OLCSTAT DD statement in the JCL statement.
  3. Check MODSTAT and MODSTAT2 DD statement in the JCL statement.
  4. Allocate OLCSTAT dynamically and check the OLCSTAT member.
  5. Allocate MODSTAT and MODSTAT2 dynamically and check the MODSTAT and MODSTAT2 members.

If you specify the IMSCATHLQ keyword, IMSACB DD statements are not used. The IMS directory is used instead of the ACB library.

IMSACBA DD
This DD statement is an optional DD statement that defines the library that contains the DMB for the database. This statement must be provided if MODSTAT and MODSTAT2, or the OLCSTAT DD statement is specified.
IMSACBB DD
This DD statement is an optional DD statement that defines the library that contains the DMB for the database. This statement must be provided if MODSTAT and MODSTAT2, or the OLCSTAT DD statement is specified.
IMSDALIB DD
This DD statement is an optional DD statement that defines the IMSDALIB data set. This DD statement is useful when the data set for dynamic allocation members is not APF-authorized.
MODSTAT DD
This DD statement is an optional DD statement that defines the MODSTAT data set. When this statement is specified, the IMSACBA and IMSACBB DD statements must be specified instead of the ACBLIB DD statement.
Note on dynamic allocation:
If this statement is not specified in the JCL statements when the data set is required, the data set is allocated dynamically by using a DFSMDA member. You can build the DFSMDA member for the MODSTAT library by using a TYPE=DATABASE statement of the DFSMDA macro.
MODSTAT2 DD
This DD statement is an optional DD statement that defines the MODSTAT2 data set. When this statement is specified, the IMSACBA and IMSACBB DD statements must be specified instead of the ACBLIB DD statement.
Note on dynamic allocation:
If this statement is not specified in the JCL statements when the data set is required, the data set is allocated dynamically by using a DFSMDA member. You can build the DFSMDA member for the MODSTAT2 library by using a TYPE=DATABASE statement of the DFSMDA macro.
OLCSTAT DD
This DD statement is an optional DD statement that defines the OLCSTAT data set. When this statement is specified, the IMSACBA and IMSACBB DD statements must be specified instead of the ACBLIB DD statement.
Note on dynamic allocation:
If this statement is not specified in the JCL statements when the data set is required, the data set is allocated dynamically by using a DFSMDA member. You can build the DFSMDA member for the OLCSTAT library by using a TYPE=DATABASE statement of the DFSMDA macro.
EXITLIB DD
This DD statement is an optional DD statement. This statement defines the user exit routine library. This DD statement is used when the EXITRTN keyword is specified for the UNLOAD command. When the EXITLIB DD statement is specified in the JCL statement, user exit routines are loaded directly only from the EXITLIB DD statement. When the EXITLIB DD statement is not specified in the JCL statement, the routines are loaded from the JOBLIB or the STEPLIB DD statement.

All of the data sets that are listed within the EXITLIB concatenation must be APF-authorized.

IMSRESLB DD
This DD statement is an optional DD statement that defines the libraries that contain the randomizer routines and compression routines that are specified in the ACB member in the IMSACB DD statements. If the IMSRESLB DD statement is specified in the JCL statement, only the randomizer and compression routines are loaded directly from the IMSRESLB DD statement. If the IMSRESLB DD statement is not specified in the JCL statement, they are loaded from the JOBLIB or the STEPLIB DD statement.
The IMS version of IMSRESLB DD statement must be the same as those of IMSACB DD.
All the data sets that are listed within the IMSRESLB concatenation must be APF-authorized.
NEWACB DD
This DD statement is an optional DD statement. This statement defines the library that contains the new ACB library for the database.
If this statement is specified, Unload is processed in non-REORG mode. However, if the ACB member in the NEWACB DD library and the ACB member in the IMSACB DD library are the same, and NEWRESLB DD statement is not specified in the JCL statement, UNLOAD is processed in REORG mode. Do not specify this DD statement and do not allocate the data set dynamically if you want to do Unload in REORG mode.
If you specify the IMSCATHLQ keyword, NEWACB DD statement is not used. The IMS directory is used instead of the ACB library.
Note on dynamic allocation:
When this statement is not specified in the JCL statement, the data set is allocated dynamically by using a DFSMDA member. This DD library is allocated dynamically even if you do not specify in the JCL statement or a DFSMDA member. You can build the DFSMDA member for the NEWACB library by using a TYPE=DATABASE statement of the DFSMDA macro.
NEWRESLB DD
This DD statement is an optional DD statement. This statement is effective when the NEWACB DD statement is specified in JCL statement or the IMSCATACB_OUTPUT keyword is specified. This statement defines the libraries in which randomizer routines and compression routines for NEWACB DD statements or the IMSCATACB_OUTPUT keyword are contained.
If the NEWACB DD statement or the IMSCATACB_OUTPUT keyword is specified, the randomizer and compression routines are loaded from the NEWRESLB DD statement. If the NEWRESLB DD statement is not specified when the NEWACB DD statement or the IMSCATACB_OUTPUT keyword is specified, the randomizer and compression routines are loaded from the JOBLIB or the STEPLIB DD statement.
All of the data sets that are listed within the NEWRESLB concatenation must be APF-authorized.
addnname/areaname DD
This DD statement is a required DD statement. This statement defines an input data set, which is the VSAM ESDS or image copy for an area to be unloaded. The ddname used must be the ddname for the area that is defined in the input ACB library (IMSACB DD). There can be multiple addnname DD statements for each area included in the unload request.
The input data set that is used by FPA is determined by the following elements:
  • The IDSNMASK keyword parameter of the UNLOAD command
  • When the GLOBAL DBRC=YES option is specified, the ADS information in the DBRC RECON data sets (only for VSAM ESDS data sets)
  • The area name member in the IMS DFSMDA library (only for VSAM ESDS data sets)
Or it can be specified in one of the following DD statements explicitly:
  • //addnname DD JCL statement
  • //areaname DD JCL statement
If an area data set is used for the Unload command input, it must be error free (that is, it has no EQEs). And if the area is registered with DBRC, the data set must have no EEQEs.
The following figure shows how FPA determines area data set names.
Figure 1. Input data set names for the UNLOAD command
This figure depicts how the input data set names are determined for the UNLOAD command. The elements for determining the input data set names are discussed in this topic.
HFPSYSIN DD
This DD statement is a required DD statement that defines the input control statement that specifies the FPA functions.
The HFPSYSIN DD statement can be coded as a standard SYSIN file, a sequential data set, or a PDS member. LRECL=80 is required for the DCB of this data set. Only one command, besides the GLOBAL command, can be specified in HFPSYSIN. FPA analyzes the command syntax in columns 1 - 72. Columns 73 - 80 are regarded as comment.
For details about coding the HFPSYSIN DD statement, see Utility control statements for the Unload function.
HFPCSITE DD
This DD statement is an optional DD statement. The HFPCSITE DD statement can be used to define the data set name of the site default table. When the SITE_DSNAME keyword is specified in the HFPSYSIN DD statement, the HFPCSITE DD statement is allocated dynamically. HFPCSITE DD in the JCL is mutually exclusive with the SITE_DSNAME keyword in the HFPSYSIN DD statement. The data set attribute of HFPCSITE DD is PDS.
ICEIN DD
This DD statement is an optional DD statement. This statement specifies the input data set that contains the control statements for IMS HP Image Copy. The data set can reside on a tape, a direct-access volume, or it can be routed through the input stream (DD * or DD DATA).

This data set is used only when you specify ICOUT=YES. If the DD statement is not coded and if ICOUT=YES is specified, the default control statements are used. For details about the ICEIN control statements, see IMS High Performance Image Copy User's Guide.

Output DD statements

The following output DD statements are used for the Unload function.

OAREAnnn/OARnnnnn DD
This DD statement is a required DD statement when neither the ODSNMASK keyword nor the FILECTL subcommand is specified.
This statement defines the output data set that contains the unloaded segment data records, each of which is composed of a prefix and segment data, for one or more areas. This statement defines an output data set for all of the database segment records that are produced for one or more of the areas defined in the "output" ACB library (NEWACB DD statement or IMSACB DD statement in Reorg mode). This data set will be used for an input of the RELOAD command to reload areas.
This data set can be allocated dynamically by one of following methods:
  • The ODSNMASK keyword parameter of the UNLOAD command
  • The DSNAME keyword parameter of the FILECTL subcommand
Or it can be specified with one of the following DD statements explicitly:
  • //OAREAnnn DD JCL statement
  • //OARnnnnn DD JCL statement
  • //ddname DD (The ddname is specified by the DDNAME keyword parameter of the FILECTL subcommand.)

This data set can be also defined by the FILECTL subcommand with the UNLOAD command.

An OAREAnnn DD statement is for areas in the range of 1 - 999, and an OARnnnnn DD statement is for areas in the range of 1 - 9999. If the area number of the unloaded area is greater than 999, you must use the OARnnnnn DD statement. The value of nnn or nnnnn must be right-aligned, with leading zeros if necessary. Do not specify DISP=MOD for these DD statements.
If the unloaded data set, which was unloaded in a user-specified format with the FORMAT=USER keyword, satisfies all of the following conditions, the data set can be used as an input for the Reload function.
  • The USER_RECORD subcommand is not specified.
  • SEGMENT_NAME or SEGMENT_CODE is specified on the SEGREC_PREFIX keyword.
  • When COMPRTN is specified in the DBD definition, SEGMENT_ATTR is specified on the SEGREC_PREFIX keyword.
  • When SEGMENT_CKEY is specified on the SEGREC_PREFIX keyword, SEGMENT_CKEY_LENGTH is specified before SEGMENT_CKEY.
  • When KEY or SEGMENT_KEY is specified on the SEGREC_PREFIX keyword, SEGMENT_KEY_LENGTH is specified before KEY or SEGMENT_KEY.
If you generate the unloaded data set with the AREA_INFORMATION_RECORD=NO keyword, the unloaded data set cannot be used as an input for the Reload function. If you generate the unloaded data set with the AREA_INFORMATION_RECORD=NO_RELOADABLE keyword, the unloaded data set can be used as an input for the Reload function, but you must specify the AREA_INFORMATION_RECORD=NO_RELOADABLE keyword for the RELOAD command.
For the format of an unloaded segment record, see Unloaded segment records layout. For the format of the unloaded segment record when FORMAT=USER is specified, see Extracted records layout.
Note on dynamic allocation:
When this statement is not specified in the JCL statement, the data set is allocated dynamically by using the ODSNMASK keyword.
HFPPRINT DD
This DD statement is an optional DD statement that defines the processing log output data set. The data set contains the processing messages that are issued by FPA.
The following DCB attributes of the file are set by the FPA main task:
  • RECFM=FBA
  • LRECL=133
  • BLKSIZE=1330
Do not code the DCB information in your JCL statement. The output data set must be a standard SYSOUT or a sequential data set. You cannot specify DUMMY.
The HFPPRINT data set contains 133-byte, fixed-length records. It is recommended that you code your DD statement as follows:
//HFPPRINT DD SYSOUT=A
Note on dynamic allocation:
When this statement is not specified in the JCL statements, FPA dynamically allocates the data set by using SYSOUT=*.
The following figure shows an example of the processing messages that are issued for the UNLOAD command.
Figure 2. Processing messages issued for the UNLOAD command
IMS HPFP UTILITIES                                        "Processing messages"                                        PAGE:       1
5698-FPP V2R1                                                                                                    2021-11-22 13:03:37
HFPC0001I COMMAND ANALYZE PROCESSING STARTED.
HFPC0005I DBRC=NO IS SPECIFIED.
          - EEQE DETECTION IS NOT PERFORMED.
HFPD0001I NEWACB DYNAMICALLY ALLOCATED TO
          - DSNAME: IMSVS.ACBLIB
HFPC0002I COMMAND ANALYZE PROCESSING COMPLETED.
HFPF0001I UNLOAD PROCESSING STARTED FOR DATABASE: DEDBJN21
HFPJ0011I UNLOAD PROCESSING STARTED FOR UNLOADED SEGMENT RECORD FILE.
          - DDNAME: OAREA001, DSNAME: HPFP.HFPUSR.DB21AR0
HFPJ0002I UNLOAD PROCESSING COMPLETED FOR AREA NO: 1, AREANAME: DB21AR0
HFPJ0012I UNLOAD PROCESSING COMPLETED FOR UNLOADED SEGMENT RECORD FILE.
          - DDNAME: OAREA001, DSNAME: HPFP.HFPUSR.DB21AR0
HFPF0002I UNLOAD PROCESSING COMPLETED FOR DATABASE: DEDBJN21
HFPL0001I REPORT STARTED FOR COMMAND: UNLOAD, DATABASE: DEDBJN21
HFPL0002I REPORT COMPLETED FOR COMMAND: UNLOAD, DATABASE: DEDBJN21
HFPRPTS DD
This DD statement is an optional DD statement that defines the report output data set. The data set contains the reports that can be used to verify the process of the command. The following DCB attributes of the file are set by the FPA main task:
  • RECFM=FBA
  • LRECL=133
  • BLKSIZE=1330
Do not code the DCB information in your JCL statement. The output data set must be a standard SYSOUT or a sequential data set.
The following reports are generated in this data set:
  • Audit report
  • Processing report
  • DBD Definition report
  • Unloaded report
  • Reloaded report
  • Output File report
The HFPRPTS data set contains 133-byte, fixed-length records. It is recommended that you code your DD statement as follows:
//HFPRPTS DD SYSOUT=A
Note on dynamic allocation:
When this statement is not specified in the JCL statements, FPA dynamically allocates the data set by using SYSOUT=*.
HFPASNAP DD
This DD statement is a required DD statement when CISNAP=YES. This statement defines the output data set for the CI Map/CI Dump report and the Pointer Chain Reconstruction report. This DD statement is effective when PTRCHK=DETAIL and CISNAP=YES are specified.
The following DCB attributes of the file are set by the Analyze process:
  • RECFM=FBA
  • LRECL=133
  • BLKSIZE=1330
Do not code the DCB information in your JCL statement.
The HFPASNAP data set contains 133-byte, fixed-length records. It is recommended that you code your DD statement as follows:
//HFPASNAP DD SYSOUT=A
HFPSEQER DD
This DD statement is a required DD statement when KEYSEQCHK=BYPASS or KEYSEQCHK=WARNING. This statement defines the output data set that contains the sequence error segment data records for one or more areas.
This statement defines an output data set for the sequence error segment data records that are produced for one or more of the areas defined in the "output" ACB library (NEWACB DD statement or IMSACB DD statement in Reorg mode).
The format of this record is specified in the HFPZSER macro, which is provided as a product-sensitive user interface. For details of the record format, see Sequence error segment records layout.
HFPTOTAL DD
This DD statement is an optional DD statement. This statement defines an output data set that contains the total number of unloaded segments in an area. When this DD statement is present, the Unload process writes the total number of unloaded segments of each segment type in an area.
The following DCB attributes of the file are set by the FPA main task:
  • DSORG=PS
  • LRECL=60
  • BLKSIZE=6000
Do not code the DCB information in your JCL statement.
The format of this record is specified in the HFPZTOT macro, which is provided as a product-sensitive user interface. For details of the record format, see Total segments records layout.
HFPABEND DD
This DD statement is an optional DD statement. It defines a snap dump output data set that is used for diagnostic purposes. This data set might be used when the FPA job ends abnormally. Do not code the DCB information in your JCL statement. The output data set must be a standard SYSOUT or a sequential data set.
Note on dynamic allocation:
When this statement is not specified in the JCL statements, FPA dynamically allocates the data set by using SYSOUT=*.
ctttSMSG DD
This DD statement is an optional DD statement. However, this DD statement is required when DFSORT is used. This statement defines an output data set for storing DFSORT messages. For the condition for running DFSORT and the naming rules for the DD names, see the description of ctttWKnn DD.
Note on dynamic allocation:
When this statement is not specified in the JCL statements, FPA dynamically allocates the data set by using SYSOUT=*.
itttSMSG DD
This DD statement is an optional DD statement. However, this DD statement is required when DFSORT is used. This statement defines an output data set for storing DFSORT messages. For the condition for running DFSORT and the naming rules for the DD names, see the description of itttWKnn DD.
Note on dynamic allocation:
When this statement is not specified in the JCL statements, FPA dynamically allocates the data set by using SYSOUT=*.
DFSPRINT DD
This DD statement is an optional DD statement. This statement specifies the output data set that contains the messages that are produced by IMS HP Image Copy. The data set can reside on a tape, a direct-access volume, or a printer, or it can be routed through the output stream (SYSOUT).

This data set is used only when you specify ICOUT=YES. If the DD statement is not coded and ICOUT=YES is specified, a SYSOUT stream is dynamically allocated for the DD.

ICEPRINT DD
This DD statement is an optional DD statement. This statement specifies the output data set that contains the reports that are produced by IMS HP Image Copy. The data set can reside on a tape, a direct-access volume, or a printer, or it can be routed through the output stream (SYSOUT).

This data set is used only when you specify ICOUT=YES. If the DD statement is not coded and ICOUT=YES is specified, a SYSOUT stream is dynamically allocated for the DD.

ICERPRT DD
This DD statement is an optional DD statement. This statement specifies the output data set that contains the Image Copy Dump Process report, which is produced by IMS HP Image Copy. It can reside on a tape, a direct-access volume, or a printer, or it can be routed through the output stream (SYSOUT).

This data set is used only when you specify ICOUT=YES.

dataout1 DD
This DD statement is an optional DD statement. This statement defines the primary image copy data set. One DD statement is required for each data set that is to be dumped. The DD name can be any 1- to 8-character string. The data set specified by the DD statement must be on either a direct-access device or a tape device.

This data set is used only when you specify ICOUT=YES. For details of the format and the characteristics of the image copy data set, see IMS High Performance Image Copy User's Guide. You can request IMS HP Image Copy to allocate the image copy data set dynamically by omitting this DD statement and specifying the allocation parameters that are associated with the data set in the ICEIN data set.

dataout2 DD
This DD statement is an optional DD statement. This statement defines the secondary image copy data set. This statement is required only if the associated ICEIN control statement requests the secondary image copy. The data set specified by the DD statement must be on either a direct-access device or a tape device.

This data set is used only when you specify ICOUT=YES. For details of the format and the characteristics of the image copy data set, see IMS High Performance Image Copy User's Guide.

Input/Output DD statements

The following input/output DD statements are used for the Unload function.

HFPCHKPT DD
This DD statement is a function-unique DD statement for the checkpoint restart option. The DD statement is required when RESTART=YES is specified. This statement defines the checkpoint file. It must be the same file used both for a particular checkpoint and for the associated attempted subsequent restarts.
If RESTART=YES is specified, the checkpoint file (HFPCHKPT) must be specified in the job step. It must not be specified as DUMMY or NULLFILE, otherwise, the checkpoint restart capability is disabled. The checkpoint file must be allocated with the following attributes, otherwise, the job ends with error.
  • DISP=MOD is not specified
  • RECFM=VB is specified
  • LRECL is larger than or equal to 22000
For more information, see RESTART keyword.
RECON1/RECON2/RECON3 DD
These statements define the DBRC RECON data sets. These DD statements are required DD statements when both of the following conditions are met:
  • DBRC=YES is specified for the GLOBAL command
  • DFSMDA members for RECONn data sets are not used
The RECONn data set must be the same data set that is used in the IMS control region. Because FPA issues a signon, a signoff, an authorization call, and an unauthorization call to DBRC, it updates RECONn data sets.
Note on dynamic allocation:
If this statement is not specified in the JCL statements when the data set is necessary, the data set is allocated dynamically by using a DFSMDA member.
ctttWKnn DD
These DD statements are optional DD statements. These data sets are intermediate storage data sets that are used by DFSORT. For more information about coding the SORTWKnn DD statements, see DFSORT Application Programming Guide.

The adequate size of storage data sets is 1.5 to 2.5 times the input file size. In the Unload function, the input file is the unloaded segment record file. The size of the file is computed by multiplying the average length of the unloaded segment record by the number of segments. Allocating twice the space used by the SORTIN data set is usually adequate for each work data set. This data set is allocated dynamically by OS. When the SORTIN is too large for sort, a B37 abend occurs. In this case, this DD is a required DD.

Do not specify DISP=MOD for these DD statements.

The naming rules of the ddnames are as follows:
c:
The thousands digit of n for creating n-th output USR file.
U:
If n is 999 or less, U must be specified.
V:
If n is 1000 - 1999, V must be specified.
W:
If n is 2000 - 2048, W must be specified.
ttt:
The hundredths, tenths, and units digits of the area number of the area to be processed, or the thread task number of the thread task that processes the area. If the area number is greater than 2048, only the thread task number is valid.
nn:
Specifies the number of the SORT work data sets. This value must be 01 - 03.
Note on dynamic allocation:
If this statement is not specified in the JCL statement when these data sets are necessary, FPA allocates them dynamically.

It is recommended that you specify the SORTOPT_FILSZ=AUTO keyword and not specify ctttWKnn DD statements to prevent DFSORT intermediate data sets causing insufficient storage.

itttWKnn DD
These DD statements are optional DD statements. These are intermediate storage data sets that are used by DFSORT. For more information about coding the SORTWKnn DD statements, see the DFSORT Application Programming Guide.

Do not specify DISP=MOD for these DD statements.

The adequate size of storage data sets is 1.5 to 2.5 times the input file size. In the unload step, the size of each input file is as follows:

PTRCHK=DETAIL
30 × the number of pointers in the area
CISNAP=YES
112 × the number of pointers in which pointer errors are detected
Allocating twice the space used by the SORTIN data set is usually adequate for each work data set.
The naming rules of the ddnames are as follows:
i:
A, B, and C:
If PTRCHK=DETAIL is specified.
G, H, and I:
If CISNAP=YES is specified.
The thousands digit of the area number of the area to be analyzed, or the thousands digit of n for n-th input thread subtask.
A, G:
If the number of areas to be analyzed or n is 999 or less.
B, H:
If the number of areas to be analyzed or n is 1000 - 1999.
C, I:
If the number of areas to be analyzed or n is 2000 - 2048.
Note: When a subtask ends processing an area, it starts processing the next area. For this reason, the n-th input thread subtask does not always process the n-th input data set.
ttt:
The hundredths, tenths, and units digits of the area number of the area to be processed, or the thread task number of the thread task that processes process the area. If the area number is greater than 2048, only the thread task number is valid.
nn:
The number of the SORT work data sets. This value must be 01 - 03.
Note on dynamic allocation:
If this statement is not specified in the JCL statement when these data sets are necessary, FPA allocates them dynamically.

It is recommended that you specify the SORTOPT_FILSZ=AUTO keyword and not specify itttWKnn DD statements to prevent DFSORT intermediate data sets causing insufficient storage.