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
//*