Allocating the pointer error corrections data set
The pointer error corrections output data set can be allocated by using JCL DD statements or by using dynamic allocation.
When the CORRECTIONS_FILECTL subcommand is specified, along with POINTER_VALIDATION=FULL or SDEP_VALIDATION=FULL on the ANAYZE command, a pointer error corrections output data set is always written. However, if no pointer errors are encountered, the pointer error corrections output data set will be empty. By default, only one output pointer error corrections data set is produced for each input area; you cannot combine multiple areas into a single data set.
Using CORRECTIONS_FILECTL with standard JCL
Use the DDNAME keyword (not the DSNAME keyword) to indicate that the pointer error corrections data set is to be allocated by using JCL DD statements.
The example in the following figure uses JCL to allocate a single pointer error corrections data set for an area.
// PARM=(IFP,
dbdname,DBF#FPU0)
//STEPLIB DD DISP=SHR,DSN=BMC.PFP.LOAD
// DD DISP=SHR,DSN=IMS.RESLIB
//ddname DD UNIT=TAPE,DISP=(NEW,CATLG),
// DSN=
your.dataset.name
//PFPSYSIN DD *
ANALYZE DBD=
dbdname,AREA=
areaname,
POINTER_VALIDATION=FULL,
CORRECTIONS_FILECTL DDNAME=
ddname
/*
Using CORRECTIONS_FILECTL with dynamic allocation
Use the DSNAME keyword (not the DDNAME keyword) to indicate that the pointer error corrections data is to be dynamically allocated and to specify the name of the data set where the error corrections control cards are to be written. Use the DSNAME keyword to supply a mask to construct the data set name. Substitution variables within the mask can be used to generate unique names for each output data set.
Additional related keywords, such as UNIT, DISP, and DATACLAS, can be used to control the allocation and disposition of the data set, similar to the corresponding JCL keywords.
The example in the following figure shows how to generate a pointer error corrections data set by using dynamic allocation.
dbdname
POINTER_VALIDATION=FULL,
CORRECTIONS_FILECTL,
DSNAME='
dataset-name-mask',
UNIT=TAPE,DISP=(NEW,CATLG)
Related topic