A Simple Cobol Example ISPF vs RDz Enterprise
A Simple Cobol Example – ISPF vs RDz Enterprise Systems
Traditional ISPF document Job stream would include Cobol Program wrapped with JCL Likely in PDS named accountid. work. compiles as extension was not critical Job would be submitted Would look for output in JES TSO SDSF ST Owner account. ID to reduce list to your jobs Put ? by appropriate entry Put s by file(s) to review for errors If error, then back to file, correct and repeat process–(see ISPF Document) Enterprise Systems
Cobol Example Program reads a record from a file, selects specific fields from the record and writes the line. JCL matches system setup at the University of Arkansas Good example to illustrate application JCL references to system resources like the Cobol compiler and to data files Enterprise Systems
Cobol Example Enterprise Systems (single job stream)
Cobol Example Enterprise Systems (single job stream)
Cobol Example (single job stream) ALL JCL statements must be in Upper Case Three JCL statements JOB – information related to the job to be run EXEC – executes a program or a procedure DD – data definition points to data and files Example //COBJOB (COBOLPROG), 'ACCTID', NOTIFY=ACCTID, // CLASS=A, MSGLEVEL=(1, 1), TIME=1, MSGCLASS=A //STEP 1 EXEC PROC=IGYWCLG //COBOL. SYSIN DD * … Cobol Program with references to input (READER) and output (DISKFL 1) … //GO. DISKFL 1 DD DSN=ACCTID. WORK. OUT(COBOUT), DISP=SHR //GO. READER DD * …. Data // Enterprise Systems
Cobol Example (single job stream) EXEC statement //STEP 1 EXEC PROC=IGYWCLG Executes a procedure name IGYWCLG This procedure has all the programs needed to compile, link needed files to create an object module and go—run the program. The CLG ending is Compile. Link. Go Enterprise Systems
Cobol Example (single job stream) DD statements //STEP 1 EXEC PROC=IGYWCLG //COBOL. SYSIN DD * IDENTIFICATION DIVISION. …. . Rest of Cobol program Enterprise Systems
Cobol Example (single job stream) DD statements The DD statement below allows the Cobol program to abstract the name used in the program. The READER points to a DD statement to be used for input SELECT CARD-IN ASSIGN TO UT-S-READER. //* //GO. READER DD * ANDERSON ESSABIA ANNIECE XXXXX ISYS 4283 002 …. . . . /* // Enterprise Systems
Cobol Example (single job stream) DD statements The DD statement below allows the Cobol program to abstract the name used in the program. The DISKFL 1 points to a DD statement to be used for output SELECT DISK-FILE 1 ASSIGN TO UT-S-DISKFL 1. . . //GO. DISKFL 1 DD DSN=ACCTID. WORK. OUT(COBOUT), DISP=SHR, // VOL=SER=DB 1469, SPACE=(CYL, (1, 1, 1)), UNIT=SYSDA, // DCB=(RECFM=FB, LRECL=80, BLKSIZE=6400, DSORG=PO) Enterprise Systems
Cobol Example (single job stream) DD statements The DD statement below allows the Cobol program to abstract the name used in the program. The DISKFL 1 points to a DD statement to be used for output SELECT DISK-FILE 1 ASSIGN TO UT-S-DISKFL 1. . . //GO. DISKFL 1 DD DSN=ACCTID. WORK. OUT(COBOUT), DISP=SHR, // VOL=SER=DB 1469, SPACE=(CYL, (1, 1, 1)), UNIT=SYSDA, // DCB=(RECFM=FB, LRECL=80, BLKSIZE=6400, DSORG=PO) Enterprise Systems
Cobol Example (single job stream) The DD Parameter Meaning DISP(MOD, KEEP) DISP Disposition. Relates what is to be done with the PDS. In this case, it is modify and keep. There are many possibilities but can you guess what NEW, CATLG and OLD, DELETE do? VOL=SER=DB 1469 VOL Volume, SERIAL. This is analogous to a letter for a disk drive on your PC. TEMP 91 is The name of the disk. SPACE=(CYL, (1, 1, 1)) Defines space for the file in terms of cylinders—you could also use tracks UNIT=SYSDA Systems Direct Access and means a disk DCB=(RECFM=FB. . DCB Data Control Block, LRECL Logical Record Length BLKSIZE Block Size and should be multiple of the record length DSORG Dataset Organization – Partitioned Organization Enterprise Systems
Cobol Example Submit Job TSO SDSF ST OWNER acctid Enterprise Systems (single job stream)
Cobol Example (single job stream) Review JESYSMS Place letter “s” to left of JESYSMS Enterprise Systems
Cobol Example (single job stream) Find COND CODEs—hopefully, all zero Enterprise Systems
Cobol Example (single job stream) Locate error If error is in compile, then review Cobol Correction requires moving around to the correct file to make the corrections and then resubmittig Enterprise Systems
RDz This same job stream can be submitted within RDz in tack if placed in a PDS with x. x. JCL However, take advantage of RDz color coded syntax checking by putting Cobol, JCL, etc. into appropriate PDS, s recognized by the RDz editors Suggested PDSs ACCTID. WORK. COBOL ACCTID. WORK. JCL ACCTID. WORK. Data Submitted job and JES output in same area If error, can correct with RDz editor—rerun No navigation to other interfaces required Enterprise Systems
Rational Developer for System z (covered later) Programmer can simultaneously: Debug a COBOL Program Create a data table in DB 2 Browse local files and PDS Run SQL against DB 2 Check their JES output Rational Developer uses Views and Perspectives to Organize Development Work
Cobol Example (JES) Enterprise Systems
Cobol Example (JES) (Error) MOE instead of MOVE— open SYSPRINT file Find error in editor 000055 MOE CRD-PWD TO CRD-OUT-PWD. ==000055==> IGYPS 2072 -S "MOE" was invalid. verb Enterprise Systems Skipped to the next
Cobol Example (Using PDSs to Advantage) JCL goes into ACCTID. WORK. JCL COBOL goes into ACCTID. WORK. COBOL Input data goes into ACCTID. WORK. DATA RDz editors sense type of file and provides color-coded syntax checking • Right-click, select submit on the JCL to execute job • Job will be in JES for viewing • • Enterprise Systems
Cobol Example (JCL) //COBJOB (COBOLPROG), 'DOUGLAS', NOTIFY=DOUGLAS, // CLASS=A, MSGLEVEL=(1, 1), TIME=1, MSGCLASS=A //STEP 1 EXEC PROC=IGYWCLG //COBOL. SYSIN DD DSN=DOUGLAS. WORK. COBOL(SIMPLEC), DISP=SHR //GO. DISKFL 1 DD DSN=DOUGLAS. WORK. OUT(COBOUT), DISP=SHR //GO. READER DD DSN=DOUGLAS. WORK. DATA(SMPLDATA), DISP=(OLD, KEEP) Enterprise Systems
Cobol Example (Data) Enterprise Systems
Cobol Example (Output) Enterprise Systems
Rational Developer for z Integrated Development Environment (IDE) GUI based Multiple views and perspectives for multitasking Immediate feedback on syntax Helps students understand interrelationships in the z environment
Cobol Example (single job stream) ALL JCL statements must be in Upper Case Three JCL statements JOB – information related to the job to be run EXEC – executes a program or a procedure DD – data definition points to data and files Example //COBJOB (COBOLPROG), 'ACCTID', NOTIFY=ACCTID, // CLASS=A, MSGLEVEL=(1, 1), TIME=1, MSGCLASS=A //STEP 1 EXEC PROC=IGYWCLG //COBOL. SYSIN DD * … Cobol Program with references to input (READER) and output (DISKFL 1) … //GO. DISKFL 1 DD DSN=ACCTID. WORK. OUT(COBOUT), DISP=SHR //GO. READER DD * …. Data // Enterprise Systems
- Slides: 27