Re: Re: DL/I on MVS 3.8J
yvette hirth <yvette-RPrnXxQTqyxWk0Htik3J/[email protected]> Thu, 28 Oct 2010 22:26:20 +0000
| Newsgroups | gmane.comp.emulators.turnkey-mvs |
|---|---|
| Organization | The DBT Group, Inc. |
| Message-ID | <[email protected]> |
Mike Schwab wrote: >> DBDs define the databases. >> PSBs defines how a programs accesses various databases. >> Then you have your compile decks to run the program through a pre-processor. Enrico Sorichetti wrote: > for good old dl/i no preprocessor is needed , the dl/i interface was > thru CALL ASMTDLI,PLITDLI,CBLTDLI passing the appropriate parameter you're both right. PSBgen's and DBDgen's are only assembled and linked. There's also ACBgen's, but iirc ACBgen's didn't start happening until XA and above. there is no preprocessor needed for gen's nor for DL/I access. when the program runs, it invokes IMS services using the CALL interface. IMS services are not needed for PSB / DBD / ACB gen's. this JCL is one of our PROCs that will do a DBDgen, will also work for PSBgen's. (ACBgen's are a bit different, but you probably won't need them anyway...) substitute your DSN's and ensure SYSLIB points to the two IMS MACLIB's, and you're ready to go. //CDBDGEN PROC REL=,DBD=,LOAD= //ASM EXEC PGM=ASMA90,PARM='NODECK' //SYSIN DD DSN=DBT.&REL..DBSOURCE(&DBD),DISP=SHR //SYSLIB DD DISP=SHR,DSN=IMSxxx.ADFSMAC // DD DISP=SHR,DSN=IMSxxx.SDFSMAC // DD DISP=SHR,DSN=SYS1.MACLIB // DD DISP=SHR,DSN=SYS1.AMODGEN //SYSUT1 DD UNIT=VIO,SPACE=(CYL,(1,1)) //SYSUT2 DD UNIT=VIO,SPACE=(CYL,(1,1)) //SYSUT3 DD UNIT=VIO,SPACE=(CYL,(1,1)) //SYSPRINT DD SYSOUT=* //SYSLIN DD DSN=&&OBJ,DISP=(,PASS), // UNIT=SYSDA,SPACE=(3120,(20,20)),DCB=BLKSIZE=3120 //LKED EXEC PGM=IEWL,PARM='XREF,LET,LIST,NCAL',COND=(8,LE) //SYSUT1 DD UNIT=VIO,SPACE=(1024,(20,20)) //SYSPRINT DD SYSOUT=* //SYSLIN DD DSN=&&OBJ,DISP=(OLD,DELETE) // DD DDNAME=INPUT //SYSLMOD DD DSN=DBT.&REL..DBDLIB(&LOAD),DISP=SHR yvette hirth