Portal | IBM Manuals | Downloads | Products | Refer | Info | Programs | JCLs | Forum Rules*| Site Map | Mainframe CD 
IBMMAINFRAMES.com - IBM Mainframe Support Forums Index
 
Register
 
IBMMAINFRAMES.com - IBM Mainframe Support Forums Index FAQ Search Memberlist Usergroups Profile Log in to check your private messages Log in
 
Explanation of the JCL for DBDGEN and PSBGEN

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> IMS DB/DC
Author Message
Bitneuker

IMS Moderator


Joined: 07 Nov 2005
Posts: 1130
Location: The Netherlands at Hole 19

PostPosted: Thu Mar 01, 2007 4:48 pm    Post subject: Explanation of the JCL for DBDGEN and PSBGEN
Reply with quote

From time to time people want to know about the DBDGEN and PSBGEN Here's the explanation of a job for generating a DBD and PSB.

The assembler compiler IEV90.
Code:

//C      EXEC  PGM=IEV90,PARM='OBJECT,NODECK'     


The library containing the macro's delivered by IBM for generating the object. The name of the library depends on your site.
Code:
                       
//SYSLIB   DD DSN=SYS.IMS.MACLIB,DISP=SHR


In our shop the following macro's are used. Just a small piece is shown.
Code:

********************************* Top of Data **************************
         MACRO                                                 @BIAA4   
         DBD   &NAME=,&ACCESS=,&RMNAME=,&PASSWD=NO,                    X
               &EXIT=,&VERSION=,&PSNAME=,&DATXEXIT=NO          @PQ13662
.*                                                                     
.*************************************************************@SCPYRT**
.*                                                                    *
.*    Licensed Materials - Property of IBM                            *
.*                                                                    *
.*    Restricted Materials of IBM                                     *
.*                                                                    *
.*    5655-C56                                                        *
.*                                                                    *
.*    (C) Copyright IBM Corp. 1974,1998                               *
.*                                                                    *
.*************************************************************@ECPYRT**

**********************************************************************
*                                                                    *
*                                                                    *
*  FUNCTION  -  THE DBD MACRO IS AN EXTERNAL DBDGEN USER MACRO WHICH *
*     DESCRIBES THE OVERALL CHARACTERISTICS OF THE DATA BASE TO BE   *
*     DEFINED.  IT NAMES THE DATA BASE AND ALSO PROVIDES INFORMATION *
*     CONCERNING ITS ORGANIZATION.                                   *
*     THE PROCESSING IS DIVIDED INTO THE FOLLOWING SECTIONS:         *
*         INITIALIZATION                                             *
*         NAME=   OPERAND PROCESSING                                 *
*         ACCESS= OPERAND PROCESSING                                 *
*         RMNAME= OPERAND PROCESSING                                 *
*         PASSWD= OPERAND PROCESSING                                 *
*     THIS PROCESSING CONSISTS PRIMARILY OF VALIDITY CHECKING AND    *
*     THE SAVING OF SYMBOLIC PARAMETER USER INFORMATION IN THE       *
*     ASSOCIATED GLOBAL VARIABLES.                                   *
*     THIS DBD MACRO ALSO PROVIDES UPWARD COMPATIBILITY SUPPORT FOR  *
*     THE DBD STMT IN OS/360 VERSION 1 AND VERSION 2 DBDGEN.         *
*     SEE MANUALS SH20-0634 (VER. 1) AND SH20-0915 (VER. 2) FOR      *
*     FURTHER INFORMATION ABOUT OS/360 DBDGEN.                       *
*                                                                    *
*                                                                    *
*  SYMBOLS  -  SEE GLOBAL AND LOCAL SET SYMBOLS DEFINED ABOVE; ALSO: *
*                                                                    *
*     SEE IMS/VS UTILITIES REFERENCE MANUAL FOR A COMPLETE           *
*     DESCRIPTION OF THE OPERANDS OF THIS MACRO.                     *
*                                                                    *



Invoked by the inputmember
Code:

********************************* Top of Data **********************************
*                                                                               
*   DATABASE TBV PVS REPLICATOR          CREATED 25-09-2002  ROB JACOBS         
*                                                                               
*                                          PRODUKT DATA BASE                   
         DBD                                                           X       +
               ACCESS=HIDAM,                                           X       +
               NAME=DBNLREP                                                    +
         DATASET                                                       X       +
               DD1=DBNLREP,                                            X       +
               SIZE=4096,                                              X       
               DEVICE=3390                                                     +
*                                            ROOT                               
         SEGM                                                          X       +
               PARENT=0,                                               X       +
               POINTER=TB,                                             X       +
               BYTES=50,                                               X       +


Code:

********************************* Top of Data *************************
         MACRO                                                 @BIAA4 
         DBDGEN                                                       
.*                                                                     
.*************************************************************@SCPYRT**
.*                                                                    *
.*    Licensed Materials - Property of IBM                            *
.*                                                                    *
.*    Restricted Materials of IBM                                     *
.*                                                                    *
.*    5655-C56                                                        *
.*                                                                    *
.*    (C) Copyright IBM Corp. 1974,1998                               *
.*                                                                    *
.*************************************************************@ECPYRT**
.*                                                                     
**********************************************************************
*                                                                    *
*                                                                    *
*  FUNCTION  -  THE DBDGEN MACRO IS AN INTERNAL DBDGEN MACRO         *
*     WHICH PERFORMS THE FINAL CHECKS FOR THIS DBD GENERATION AND    *
*     ALSO GENERATES THE CSECTS WHICH MAKE UP THE LOAD MODULE WHICH  *
*     DESCRIBES THIS DATA BASE.  MACRO SOURSEG IS INVOKED TO         *
*     GENERATE THE SOURCE SEGMENT TABLE, THE SECONDARY INDEX TABLE,  *
*     AND THE SECONDARY INDEX MAINTENANCE ROUTINE CSECTS.            *
*     THE DBDGEN MACRO ALSO PROVIDES UPWARD COMPATIBILITY SUPPORT    *
*     FOR THE DBDGEN STMT IN OS/360 VERSION 1 AND VERSION 2 DBDGEN.  *
*     SEE MANUALS SH20-0634 (VER. 1) AND SH20-0915 (VER. 2) FOR      *
*     FURTHER INFORMATION ABOUT OS/360 DBDGEN.                       *
*                                                                    *
*                                                                    *
*  SYMBOLS  -  SEE GLOBAL AND LOCAL SET SYMBOLS DEFINED ABOVE.       *
*                                                                    *
*                                                                    *
**********************************************************************

Invoked by
Code:

*                                                                               
         DBDGEN                                                                +
         FINISH                                                                +
         END                                                                   +


For PSB's
Code:

********************************* Top of Data **************************
         MACRO                                                         
         PSBGEN &LANG=,&PSBNAME=,&SSASIZE=,&IOASIZE=,&IOEROPN=,        *
               &MAXQ=,&CMPAT=,&OLIC=,&LOCKMAX=,&GSROLBOK=      @KW40303
.*                                                                     
.*************************************************************@SCPYRT**
.*                                                                    *
.*    Licensed Materials - Property of IBM                            *
.*                                                                    *
.*    Restricted Materials of IBM                                     *
.*                                                                    *
.*    5655-C56                                                        *
.*                                                                    *
.*    (C) Copyright IBM Corp. 1974,1998                               *
.*                                                                    *
.*************************************************************@ECPYRT**


Invoked by
Code:

         PSBGEN LANG=PL/I,PSBNAME=TPNSVER                               
         END                                       


The next one is the dataset containing the compiled object input to the next step: the linker.

Code:
                                     
//SYSLIN   DD DISP=(,PASS),                                                     
//            SPACE=(80,(100,100),RLSE),                                       
//            DCB=(BLKSIZE=400,RECFM=FB,LRECL=80),                             
//            UNIT=SYSDA 


Used by IEV90
Code:
                                                     
//SYSPRINT DD SYSOUT=X,                                                         
//            SPACE=(121,(300,300),RLSE,,ROUND),                               
//            DCB=BLKSIZE=1089                                                 
//SYSUT1   DD DISP=(,DELETE),                                                   
//            SPACE=(1700,(100,50)),                                           
//            UNIT=SYSDA                                                       
//SYSUT2   DD DISP=(,DELETE),                                                   
//            SPACE=(1700,(100,50)),                                           
//            UNIT=SYSDA                                                       
//SYSUT3   DD SPACE=(1700,(100,50)),                                           
//            UNIT=(SYSDA,SEP=(SYSLIB,SYSUT1,SYSUT2))                           
//*       


the input to the compiler containing the source of DBD or PSB

Code:
                                                                     
//SYSIN    DD DSN=NTSYS.IMSVS.DBDSRC(DBNLREP),DISP=SHR


The linkstep to produce the actual DBD or PSB

Code:

//L    EXEC  PGM=DFSILNK0,PARM='XREF,LIST',COND=(0,LT,C)                       
//SYSLIN   DD DSN=*.C.SYSLIN,DISP=(OLD,DELETE)                                 
//SYSPRINT DD SYSOUT=X,                                                         
//            SPACE=(121,(90,90),RLSE),                                         
//            DCB=BLKSIZE=1089


The library where the final DBD or PSB is stored.

Code:
                                                 
//SYSLMOD  DD DSN=NTSYS.IMSVS.DBDLIB(DBNLREP),DISP=SHR


Needed by the linker
Code:

//SYSUT1   DD DISP=(,DELETE),                                                   
//            SPACE=(1024,(100,10),RLSE),                                       
//            UNIT=(SYSDA,SEP=(SYSLMOD,SYSLIN))                                 
//*                                                                             
Back to top
View user's profile Send private message
References
PostPosted: Thu Mar 01, 2007 4:48 pm    Post subject: Re: Explanation of the JCL for DBDGEN and PSBGEN Reply with quote

Display posts from previous:   
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> IMS DB/DC All times are GMT + 6 Hours
Page 1 of 1