Example: Obtaining control statement source and Mapper input
The following figure shows example JCL for a procedure in which IMS™ DBDGEN and PSBGEN utility control statements are obtained and the DBD/PSB/ACB Mapper program is run.
The first step runs the reversal function with the MAPOUT data set specified, and the second step runs DBD/PSB/ACB Mapper. You must supply the DECODE statement with the target member name specified as the SYSIN control statement to the first step.
DBD/PSB/ACB Reversal outputs a list of member names to the MAPOUT data set. The names are used as SYSIN control statements to DBD/PSB/ACB Mapper.
By using DBD/PSB/ACB Reversal and DBD/PSB/ACB Mapper together, you can obtain the DBDGEN/PSBGEN source statements as well as a visual representation of the control blocks.
Figure 1. Example of input generation
functions of Reversal and Mapper
//REVERS PROC MBR=TEMPNAME,RGN=2048K
//R EXEC PGM=FABNRVRS,REGION=&RGN
//STEPLIB DD DSN=HPS.SHPSLMD0,DISP=SHR
//DBDLIB DD DSN=IMSVS.DBDLIB,DISP=SHR
//PSBLIB DD DSN=IMSVS.PSBLIB,DISP=SHR
//SYSOUT DD SYSOUT=A
//SYSPRINT DD SYSOUT=A
//SYSPUNCH DD SYSOUT=B
//MAPOUT DD UNIT=SYSDA,DISP=(,PASS),
// SPACE=(80,(100,100),RLSE),
// DCB=(BLKSIZE=80,RECFM=F,LRECL=80)
//SYSIN DD DUMMY
//*
//M EXEC PGM=FABMMAIN,REGION=&RGN
//STEPLIB DD DSN=HPS.SHPSLMD0,DISP=SHR
//DBDLIB DD DSN=IMSVS.DBDLIB,DISP=SHR
//PSBLIB DD DSN=IMSVS.PSBLIB,DISP=SHR
//SYSOUT DD SYSOUT=A
//SYSPRINT DD SYSOUT=A
//SYSIN DD DSN=*.R.MAPOUT,DISP=(OLD,DELETE)
//*
// PEND
//*