IBM OS/JCL: DD Statements - PowerPoint PPT Presentation

slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
IBM OS/JCL: DD Statements PowerPoint Presentation
Download Presentation
IBM OS/JCL: DD Statements

play fullscreen
1 / 63
IBM OS/JCL: DD Statements
68 Views
Download Presentation
vance-ball
Download Presentation

IBM OS/JCL: DD Statements

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. 12 IBM OS/JCL: DD Statements

  2. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP) • The DD Statement: • Defines a data set to the operating system. • Notifies the operating system that a data set is to be either accessed or created. • Identifies the device requirements of the data set: • Type of I/O unit required. • Specific volumes to be mounted on the unit.

  3. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP) • The DD Statement: • Further defines characteristics of the data set • The length of each record; • The format of the record; • Whether the data set already exists or is to be created during the job step. • Specifies what is to be done with the data set when the job completes.

  4. Tape DD Statement

  5. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP) • DDNAME - one to eight alphanumeric characters. The first character must be alphabetic. • The DDNAME comes from the External Reference name in the SELECT Clause of the ENVIRONMENT DIVISION of a COBOL program.

  6. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT CARD-FILE ASSIGN UR-2540R-S-CARDIN. SELECT PRINT-FILE ASSIGN UR-3203-S-PRTFLE. SELECT TAPE-IN ASSIGN UT-3420-S-TPEIN. SELECT TAPE-OUT ASSIGN UT-3420-S-TPEOUT. SELECT DISK-IN ASSIGN DA-3375-S-DSKIN. SELECT DISK-OUT ASSIGN DA-3375-S-DSKOUT. DATA DIVISION. 01 CARD-FILE. 05 EMP-NO PIC X(5) 05 EMP-NAME. 10 EMP-LAST PIC X(25). 10 EMP-FIRST PIC X(25). 10 EMP-MIDDLE PIC X.

  7. //TPEIN DDUNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP) • DD – Operation - Data Definition

  8. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP) • UNIT - Identifies the data set as a tape file

  9. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP) • DSN (DSNAME) – • Data Set Name • Identifies the name of the file as recorded in the header label when the file was created.

  10. Fig. 12.4: The UNIT parameter specifies a physical device.

  11. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP), // VOL=SER=2992 • DISP - Identifies the status of the data set: • Subparameter 1 - at the beginning of the job step; • Subparameter 2 - If the job step terminates normally; • Subparameter 3 - If the job step terminates abnormally.

  12. Fig. 12.6: The disposition (DISP) parameter specifies the file’s status.

  13. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP), // VOL=SER=2992 • DISP - Identifies the status of the data set: • Subparameter 1 - at the beginning of the job step;

  14. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP)NEW,DELETE,DELETESHR ,PASS,CATLG,CATLG,UNCATLG ,UNCATLG, • OLD - The data set was created in an earlier job or job step. • NEW - The data set is being created in the current job step.

  15. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP), // VOL=SER=2992 • DISP - Identifies the status of the data set: • Subparameter 2 - If the job step terminates normally;

  16. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP)NEW,DELETE,DELETESHR ,PASS,CATLG,CATLG,UNCATLG ,UNCATLG, • KEEP - The data set is to be saved for future use. • DELETE - The data set is scratched. • PASS - The data set will remain mounted. • CATLG - The data set cataloged to the Tape Library. • UNCATLG - The data set is uncataloged from the Tape Library.

  17. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP), // VOL=SER=2992 • DISP - Identifies the status of the data set: • Subparameter 3 - If the job step terminates abnormally.

  18. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP)NEW,DELETE,DELETESHR ,PASS,CATLG,CATLG,UNCATLG ,UNCATLG, • KEEP - The data set is to be saved for future use. • DELETE - The data set is scratched. • CATLG - The data set cataloged to the Tape Library. • UNCATLG - The data set is uncataloged from the Tape Library.

  19. Common sense dictates://TPEIN DD UNIT=TAPE,DSN=PR.FLE,// DISP=(OLD,KEEP,KEEP)

  20. Common sense dictates: //TPEIN DD UNIT=TAPE,DSN=PR.FLE,// DISP=(NEW,CATLG,DELETE)

  21. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP), // VOL=SER=299221

  22. //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP), // DCB=(RECFM=FB,LRECL=300,BLKSIZE=600) • DCB Parameter - supplies data set characteristics to be included in the data control block. • RECFM – Record Format • LRECL – Logical Record Length • BLKSIZE – Block Size22

  23. Fig. 12.5: The DCB parameter. TheDSORG, MACRF, and DDNAME must be coded in the program DCB.

  24. Disk DD Statement

  25. //DISKIN DD UNIT=DISK,DSN=PR.FLE, SYSDA

  26. //DISKIN DD UNIT=DISK,DSN=PR.FLE,SYSDA • UNIT - Identifies the data set as a disk file

  27. //DISKIN DD UNIT=DISK,DSN=PR.FLE, SYSDA &&PR.FLE • DSN (DSNAME) – • Data Set Name • Identifies the name of the file as recorded in the header label when the file was created. • && used to indicate a temporary data set

  28. Fig. 12.7: The SPACE parameter.

  29. //DISKOUT DD UNIT=DISK,DSN=PR.FLE, SYSDA // SPACE=(TRK,(10,10),RLSE,CONTIG),CYL,BLKSIZE, // DISP=(NEW,CATLG,DELETE) • Type of space allocation • Primary Allocation • Secondary Allocation • Release Any Unused Space • All Space Must Be Contiguous

  30. //DISKIN DD UNIT=DISK,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP)NEW,DELETE,DELETESHR ,PASS,CATLG,CATLG,UNCATLG ,UNCATLG, • OLD - The data set was created in an earlier job or job step. • NEW - The data set is being created in the current job step. • SHR - The input data set will be shared by another job.

  31. //SYSIN DD * • Allows a file to be inputted via the system’s default input device. • The asterisk indicates that the data follows this DD statement.31

  32. //SYSOUT DD SYSOUT=A • Allows a file to be outputted to the system’s default output device. • Normally implies printer output. • The value of SYSOUT is dependent upon your installation.32

  33. //DISKIN DD DUMMY • Allows a file to be ignored, or dummyed out. This process will be allowed as long as the logic of the program will allow the file to be dummyed out.33

  34. //DISKIN DD UNIT=DISK,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP),34

  35. CONCATENATING DATA SETS // INDATA DD DSN=CURORDR,UNIT=TAPE, // VOL=SER=K90221, // DISP=(OLD,KEEP,KEEP) // DD DSN=PREVORDR,UNIT=AFF=INDATA, // VOL=SER=14552,DISP=(OLD,KEEP,KEEP) // DD DSN=INV,UNIT=AFF=INDATA, // VOL=SER=866221,DISP=(OLD,KEEP,KEEP)

  36. Data Control Block Table • As the Job Stream JCL is checked, the information in the DD statements is used to create an entry for the data sets in the DCB Table. • Once the DCB Table is completed, the JCL is then checked for accuracy and validity. • If any errors are discovered, they are documented on the JCL Listing (MSGLEVEL parameter) and the job is not run.

  37. Backward References • Using the DCB Table entries, Backward References (Refer Backs) can take place.

  38. Backward References //OSJCL JOB (OSJCL,’04/03/98’),’M. R. IZZO’, // CLASS =T,MSGLEVEL=(1,1), // MSGCLASS =A //STEP1 EXEC PGM=CALC //DD1 DD UNIT=TAPE,DSN=FILE1, // DISP=(OLD,KEEP,KEEP) //DD2 DD UNIT=TAPE,DSN=FILE2, // DISP=(OLD,KEEP,KEEP) //DD3 DD UNIT=TAPE,DSN=FILE3, // DISP=(NEW,PASS,DELETE)38

  39. //REPORT DD SYSOUT=A //SYSUDUMP DD SYSOUT=J //CRDIN DD * * Card Input * /* //STEP2 EXEC PGM=CALC2 //DD4 DD UNIT=TAPE,DSN=*.STEP1.DD3, // DISP=(OLD,KEEP,KEEP) //REPORT2 DD SYSOUT=A //SYSUDUMP DD SYSOUT=J //

  40. DCB Table

  41. DCB Table

  42. DCB Table

  43. DCB Table

  44. DCB Table

  45. Compiler Return Codes • Level W - Warning - Return Code 4 • Level C - Condition - Return Code 8 • Level E - Errors - Return Code 12 • Level F - Fatal - Return Code 1645

  46. Compile, Link, & Execute //OSJCL JOB (OSJCL,’04/03/98’),’M.R.IZZO’,// CLASS=T,MSGLEVEL=(1,1),// MSGCLASS=A//COB EXEC PGM=IKFCBL00,PARM=‘LOAD’//SYSPRINT DD SYSOUT=A//SYSUT1 DD UNIT=SYSDA,// SPACE=(460,(700,100))//SYSUT2 DD UNIT=SYSDA,// SPACE=(460,(700,100))46

  47. //SYSUT3 DD UNIT=SYSDA,// SPACE=(460,(700,100))//SYSUT4 DD UNIT=SYSDA,// SPACE=(460,(700,100))//SYSLIN DD DSNAME=&&LOADSET,// DISP=(MOD,PASS,DELETE),// UNIT=SYSDA,SPACE=(80,(500,100))//SYSIN DD * * * Source Input/* 47

  48. //LKED EXEC PGM=IEWL, // PARM=(‘LIST,XREF,LET’), // COND=(5,LT,COB) //SYSLIN DD DSN=&&LOADSET, // DISP=(OLD,DELETE,KEEP) //SYSLMOD DD DSN=&&GOSET(GO), // DISP=(NEW,PASS,DELETE), // UNIT=SYSDA, // SPACE=(1024,(50,20,1)) //SYSUT1 DD UNIT=SYSDA, // SPACE=(1028,(50,20)) //SYSPRINT DD SYSOUT=A48

  49. //GO EXEC PGM=*.LKED.SYSLMOD, // COND=((5,LT,COB),(5,LT,LKED)) //TPEIN DD UNIT=TAPE,DSN=PR.FLE, // DISP=(OLD,KEEP,KEEP), // DCB=(RECFM=FB,LRECL=150), // DCB=(BLKSIZE=300), // VOL=SER=00978 //TPEOUT DD UNIT=TAPE,DSN=PR.FLE, // DISP=(NEW,CATLG,DELETE), // DCB=(RECFM=FB,LRECL=150), // DCB=(BLKSIZE=300)49

  50. //DSKIN DD UNIT=DISK,DSN=PR.TRANS, // DISP=(OLD,KEEP,KEEP), // DCB=(RECFM=FB,LRECL=200), // DCB=(BLKSIZE=400) //DSKOUT DD UNIT=DISK,DSN=ED.PR.TRANS, // DISP=(NEW,CATLG,DELETE), // SPACE=(TRK,(10,5),RLSE) //PRT DD SYSOUT=A //SYSUDUMP DD SYSOUT=A //CRDIN DD * * * Card Input /* // 50