CONVERT example: Preparing a staging data set before converting a database when the IMS management of ACBs is enabled

This example shows JCL statements to prepare a staging data set before converting a database in an IMS managed ACBs environment.

Figure 1. Sample JCL stream to prepare a staging data set before converting a database in an IMS managed ACBs environment
//*************************************************************
//*        Generate HALDB DBD source                             
//*************************************************************
//STEP1    EXEC PGM=IHCHALDB,DYNAMNBR=999,REGION=80M                     
//STEPLIB  DD DISP=SHR,DSN=IMSTOOLS.SIHCLOAD <=== hcma loadlib
//         DD DISP=SHR,DSN=IMSTOOLS.SHPSLMD0 <=== ims tools loadlib
//         DD DISP=SHR,DSN=IMSTOOLS.SGLXLOAD <=== ims tools base loadlib  
//         DD DISP=SHR,DSN=IMS.SDFSRESL      <=== ims reslib                            
//         DD DISP=SHR,DSN=IMS.MDALIB        <=== ims mdalib                            
//DFSRESLB DD DISP=SHR,DSN=IMS.SDFSRESL      <=== ims reslib                            
//PROCLIB  DD DISP=SHR,DSN=IMS.PROCLIB       <=== ims proclib                           
//MSGPRINT DD SYSOUT=*                                                
//IHCLIST  DD SYSOUT=*                                                
//IHCSYSIN DD *                                                       
  ANALYZEPART DBD(xxxx) -                                            
              DBDSRCONLY(Y) -                                         
              DBDSOURCE(dbdsource) -
              DFSDF(CAT)                                      
//dbdsource   DD DISP=(,CATLG),DSN=your.DBDSRC.NEW,           
//               UNIT=SYSDA,SPACE=(TRK,(3,1,5)),
//               DCB=(RECFM=FB,LRECL=80,BLKSIZE=8000)          
/*
//*************************************************************
//*        DBDGEN
//*************************************************************  
//STEP2    EXEC DBDGEN,M=xxxx                       
//C.SYSIN  DD DISP=SHR,DSN=your.DBDSRC.NEW(xxxx)           
/*                                                                    
//*************************************************************       
//*        ACBGEN                                                  
//*************************************************************       
//STEP3    EXEC PGM=DFSRRC00,PARM='UPB,'                           
//STEPLIB  DD DISP=SHR,DSN=IMS.SDFSRESL                              
//DFSRESLB DD DISP=SHR,DSN=IMS.SDFSRESL                              
//IMS      DD DISP=SHR,DSN=IMS.PSBLIB                              
//         DD DISP=SHR,DSN=IMS.DBDLIB.NEW
//IMSACB   DD DISP=SHR,DSN=IMS.ACBLIB                              
//SYSPRINT DD SYSOUT=*                                              
//SYSIN DD *                                                      
 BUILD DBD=(xxxx)                                                
/*   
//*************************************************************       
//*        IMS Catalog Populate utility
//*        Create staging data set                                                  
//*************************************************************                
//STEP4    EXEC  PGM=DFS3PU00,                                     
//             PARM=(DLI,DFS3PU00,DFSCP001,,,,,,,,,,,Y,N,,,,,,,,,,
//             ,,'DFSDF=001')                                     
//STEPLIB  DD  DISP=SHR,DSN=IMS.SDFSRESL                              
//DFSRESLB DD  DISP=SHR,DSN=IMS.SDFSRESL                              
//IMS      DD  DISP=SHR,DSN=IMS.PSBLIB
//         DD  DISP=SHR,DSN=IMS.DBDLIB
//PROCLIB  DD  DISP=SHR,DSN=IMS.PROCLIB                          
//SYSABEND DD  SYSOUT=*                                           
//SYSPRINT DD  SYSOUT=*                                       
//IEFRDER  DD  DSN=&&IMSLOG1,DISP=(NEW,DELETE),               
//             DCB=(RECFM=VB,LRECL=4092,BLKSIZE=4096,BUFNO=5),
//             SPACE=(CYL,(1,5)),UNIT=SYSDA                   
//IEFRDER2 DD  DSN=&&IMSLOG2,DISP=(NEW,DELETE),               
//             DCB=(RECFM=VB,LRECL=4092,BLKSIZE=4096,BUFNO=5),
//             SPACE=(CYL,(1,5)),UNIT=SYSDA                   
//DFSVSAMP DD  *                                              
VSRBF=32768,4                                                 
IOBF=(32K,4)                                                  
/*  
//IMSACB01 DD  DISP=SHR,DSN=IMS.ACBLIB                       
//SYSINP   DD *                                               
   MANAGEDACBS=STAGE
/*                                                                 
Step 1: Generate HALDB DBD source
  • To generate DBD source for the converted HALDB, specify the DBDSOURCE parameter to the ANALYZEPART command.
  • The DFSDF(CAT) parameter in IHCSYSIN and the PROCLIB DD statement specify the DFSDFCAT PROCLIB member that contains the IMS catalog definition.
  • If you include the IMS Catalog Definition exit routine (DFS3CDX0) in the STEPLIB concatenation, you do not need to specify the DFSDF parameter and the PROCLIB DD statement.
  • The SGLXLOAD library of IBM® IMS Tools Base must be in the STEPLIB concatenation.
  • The library containing the DFSMDA member with TYPE=CATDSHLQ statement must be in the STEPLIB concatenation if the DFSMDA member is used to specify the high-level qualifier of the IMS catalog system data sets.
  • The IMS DD statement is not needed.
Step 2: Run the DBDGEN utility
  • Run the DBDGEN utility by using the DBD source generated in step 1 as input.
  • You can use a temporary DBDLIB.
Step 3: Run the ACBGEN utility
  • Run the ACBGEN utility to generate ACB members, which will be used as input for the IMS Catalog Populate utility.
Step 4: Create a staging data set
  • To create a staging data set, run the IMS Catalog Populate utility. For details, see the topic "IMS Catalog Populate utility (DFS3PU00)" in IMS System Utilities.