DMAC Print utility (DMAC_PRINT command)
Specifying the database and areas
The DBD keyword identifies the name of the DEDB (DBD name) for which a DMAC block or blocks will be printed.
The DBD keyword is required when executing the DMAC Print utility in offline mode.
For online execution, the DBD name is supplied as an execution parameter, and the DBD keyword can be omitted. If the DBD keyword is coded for an online execution of the DMAC Print utility, it must specify the same DBD name as supplied in the execution parameter.
The IAREA keyword can be used to select specific areas for which DMAC blocks will be printed. If you omit the IAREA keyword, DMAC blocks will be printed for all areas defined in the DEDB.
Areas can be specified on the IAREA keyword by using any combination of area names, area numbers, or area ranges. The following parameters are available for the IAREA keyword:
- IAREA=ALL (default) or IAREA=* – Specify all areas of the DEDB.
- IAREA=areaName – Specify one or more areas by using the one-character to eight-character area name for each area specified. Multiple area names must be enclosed in parentheses and separated by commas.
- IAREA=areaNumber – Specify one or more areas by using the one-character to five-character area number for each area specified. Multiple area numbers must be enclosed in parentheses and separated by commas.
- IAREA=(RANGE=(startArea,endArea)) – Use this syntax to specify a consecutive range of areas using either areaName or areaNumber parameters. The area number associated with startArea must be less than the area number associated with endArea.
An asterisk (*) can be used to specify all areas of the DEDB. When the * character is used with the RANGE keyword, it can be used to specify the beginning or ending range for specific areas of the DEDB.
Offline and online examples
In the example in the following figure, the area data sets and ACB library are dynamically allocated.
DMAC blocks will be printed for all areas in the DEDB.
Using the offline DMAC_PRINT command to print DMAC blocks for all areas
//STEPLIB DD DISP=SHR,DSN=BMC.PFP.LOAD
// DD DISP=SHR,DSN=IMS.RESLIB
//PFPSYSIN DD *
DMAC_PRINT DBD=<dbdname>
/*
When DMAC_PRINT executes in online mode, the input to the function is the online area data set. The utility prints the contents of the DMAC in use by the IMS control region. This DMAC is often referred to as 'the in-core DMAC.'
An example of an online DMAC_PRINT is shown in the following figure. This control statement uses a combination of area names and area numbers to request that DMAC blocks are to be printed for each of the specified areas. The DBD keyword is not specified (not required) because the DBD name is specified as an execution parameter. DMAC blocks will be printed for the areas named AREANAM1 and AREANAM3, and for all consecutive areas from area number 5 to area number 8 (area5, area6, area7 and area8).
Using the online DMAC_PRINT command to print DMAC blocks for specified areas
// PARM=(IFP,<dbdName>,DBF#FPU0)
//STEPLIB DD DISP=SHR,DSN=BMC.PFP.LOAD
// DD DISP=SHR,DSH=IMS.RESLIB
//PFPSYSIN DD *
DMAC_PRINT IAREA=(AREANAM1,AREANAM3,RANGE=(5,8))
/*