Phase IV consists of executing CA-IDMS compilers against the source IDD to PUNCH or DECOMPILE entity definitions. All input for IDMSDDDL and IDMSUBSC is preceded by SIGNON USAGE IS RETRIEVAL and those steps may be executed in local mode.
Upon completion, review the compiler listings (or OS return codes). No errors or warnings should be issued for any of these steps.
If you have chosen to change versions, subschema names, or schema names/versions (by specifying the appropriate parameters as input to Phase I), LADAMU17 must be executed to update the extracted definitions. The Syntax Modification Report will indicate all changes which have been successfully completed, displaying the type of syntax, entity occurrence, and new value which has been assigned. It may also issue error messages if it does not find the expected syntax in any of the files.
LADAMU17 opens each of the four definitional files (PHASE5-DDDL2, PHASE5-DDDL6, PHASE5-UBSC2, and PHASE5-MAP1B) only as is necessary to perform any modifications, and updates the appropriate records in place. If a rerun is required due to system failure or any reason, Phase IV should be restarted at the beginning.
//jobname JOB site parameters
//step1 EXEC PGM=IDMSDDDL
include site standard IDMSDDDL JCL for the source IDD
//SYSIPT DD DSN=ph4dddl1,DISP=SHR
//SYSPCH DD DSN=ph5dddl2,DISP=(,CATLG,DELETE),UNIT=unit,
// SPACE=space1,DCB=(RECFM=FB,LRECL=80,BLKSIZE=blksz)
//step2 EXEC PGM=IDMSDDDL
include site standard IDMSDDDL JCL for the source IDD
//SYSIPT DD DSN=ph4dddl2,DISP=SHR
//SYSPCH DD DSN=ph5dddl6,DISP=(,CATLG,DELETE),UNIT=unit,
// SPACE=space1,DCB=(RECFM=FB,LRECL=80,BLKSIZE=blksz)
//step3 EXEC PGM=IDMSUBSC
include site standard IDMSUBSC JCL for the source IDD
//SYSIPT DD DSN=ph4ubsc1,DISP=SHR
//SYSPCH DD DSN=ph5ubsc2,DISP=(,CATLG,DELETE),UNIT=unit,
// SPACE=space1,DCB=(RECFM=FB,LRECL=80,BLKSIZE=blksz)
//step4 EXEC PGM=RHDCMPUT
include site standardRHDCMPUT JCL for the source IDD
SYSIDMS must be included if SRCDICT= was specified in Phase I
//SYSIPT DD DSN=ph4mput,DISP=SHR
//SYSPCH DD DSN=ph5map1b,DISP=(,CATLG,DELETE),UNIT=unit,
// SPACE=space1,DCB=(RECFM=FB,LRECL=80,BLKSIZE=blksz)
//step5 EXEC PGM=LADAMU17
//STEPLIB DD DSN=loadlib,DISP=SHR
//INFILE DD DSN=sorted10,DISP=SHR from Phase III
//P5DDDL2 DD DSN=ph5dddl2,DISP=OLD
//P5DDDL6 DD DSN=ph5dddl6,DISP=OLD
//P5UBSC2 DD DSN=ph5ubsc2,DISP=OLD
//P5MAP1B DD DSN=ph5map1b,DISP=OLD
//SYSLST DD SYSOUT=sysout class
/*
//
loadlib Load library containing LADAMU17
space1 Space you would standardly allocate for the compiler output.
The Phase III Compiler Input Report may be helpful in this determination.
blksz Specify an appropriate block size for unit
* $$ JOB JNM=jobname,site parameters
// JOB site parameters
// UPSI 0
* step 1 – IDMSDDDL
include site standard IDMSDDDL JCL for the source IDD
// DLBL IJSYSIN,'ph4dddl1',0
// EXTENT SYSIPT,volume
ASSGN SYSIPT,DISK,VOL=volume,SHR
// ASSGN SYSnnn,DISK,VOL=volume,SHR
// DLBL idmspch,'ph5dddl2',0
// EXTENT SYSnnn,volume,,,space1
// EXEC IDMSDDDL,SIZE=512K
/*
* step 2 - IDMSDDDL
include site standard IDMSDDDL JCL for the source IDD
// DLBL IJSYSIN,'ph4dddl2',0
// EXTENT SYSIPT,volume
ASSGN SYSIPT,DISK,VOL=volume,SHR
// ASSGN SYSnnn,DISK,VOL=volume,SHR
// DLBL idmspch,'ph5dddl6',0
// EXTENT SYSnnn,volume,,,space1
// EXEC IDMSDDDL,SIZE=512K
/*
* step 3 - IDMSUBSC
include site standard IDMSUBSC JCL for the source IDD
// DLBL IJSYSIN,'ph4ubsc',0
// EXTENT SYSIPT,volume
ASSGN SYSIPT,DISK,VOL=volume,SHR
// ASSGN SYSnnn,DISK,VOL=volume,SHR
// DLBL idmspch,'ph5ubsc2',0
// EXTENT SYSnnn,volume,,,space1
// EXEC IDMSUBSC,SIZE=512K
/*
step 4 – RHDCMPUT
// UPSI 0
include site standard RHDCMPUT JCL for the source IDD.
SYSIDMS must be included if SRCDICT= was specified in Phase I
// DLBL IJSYSIN,'ph4mput',0
// EXTENT SYSIPT,volume
ASSGN SYSIPT,DISK,VOL=volume,SHR
// ASSGN SYSnnn,DISK,VOL=volume,SHR
// DLBL idmspch,'ph5map1b',0
// EXTENT SYSnnn,volume,,,space1
// EXEC RHDCMPUT,SIZE=512K
/*
* step 5 - LADAMU17, Place LIBDEFS here
// ASSGN SYS005,SYSLST
// ASSGN SYS006,SYSRDR
// ASSGN SYS030,DISK,VOL=volume,SHR
// DLBL INFILE,'sorted10',0 from Phase III
// EXTENT SYS030,volume,,,space2
// ASSGN SYS031,DISK,VOL=volume,SHR
// DLBL P5DDDL2,'ph5dddl2',0
// EXTENT SYS031,volume,,,space2
// ASSGN SYS032,DISK,VOL=volume,SHR
// DLBL P5DDDL6,'ph5dddl6',0
// EXTENT SYS032,volume,,,space2
// ASSGN SYS034,DISK,VOL=volume,SHR
// DLBL P5UBSC2,'ph5ubsc2',0
// EXTENT SYS034,volume,,,space2
// ASSGN SYS035,DISK,VOL=volume,SHR
// DLBL P5MAP1B,'ph5map1b',0
// EXTENT SYS035,volume,,,space2
// EXEC LADAMU17
/*
/&
* $$ EOJ
space1 Space you would standardly allocate for the compiler output.
The Phase III Compiler Input Report may be helpful in this determination.
space2 Same extent specified when file was created.
SYSnnn The appropriate SYS # & DLBL as specified in IDMSFPCH.
idmspch