270 likes | 286 Views
A Simple Cobol Example – ISPF vs RDz. Traditional ISPF 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
E N D
A Simple Cobol Example – ISPF vs RDz Enterprise Systems
Traditional ISPF 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 accountID 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 (single job stream) Enterprise Systems
Cobol Example (single job stream) Enterprise Systems
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 JOB (COBOLPROG),'ACCTID',NOTIFY=ACCTID, • // CLASS=A,MSGLEVEL=(1,1),TIME=1,MSGCLASS=A • //STEP1 EXEC PROC=IGYWCLG • //COBOL.SYSIN DD * • … • Cobol Program with references to input (READER) and output (DISKFL1) • … • //GO.DISKFL1 DD DSN=ACCTID.WORK.OUT(COBOUT),DISP=SHR • //GO.READER DD * • …. Data • // Enterprise Systems
Cobol Example (single job stream) • EXEC statement • //STEP1 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 CompileLinkGo Enterprise Systems
Cobol Example (single job stream) • DD statements • //STEP1 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 XXXXXXXXX ISYS4283 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 DISKFL1 points to a DD statement to be used for output • SELECT DISK-FILE1 ASSIGN TO UT-S-DISKFL1 • ... • ... • //GO.DISKFL1 DD DSN=ACCTID.WORK.OUT(COBOUT),DISP=SHR, • // VOL=SER=DB1469,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 DISKFL1 points to a DD statement to be used for output • SELECT DISK-FILE1 ASSIGN TO UT-S-DISKFL1 • ... • ... • //GO.DISKFL1 DD DSN=ACCTID.WORK.OUT(COBOUT),DISP=SHR, • // VOL=SER=DB1469,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 Enterprise Systems
Cobol Example (single job stream) • Submit Job • TSO SDSF ST • OWNER acctid Enterprise Systems
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 DB2 • Browse local files and PDS • Run SQL against DB2 • 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==> IGYPS2072-S "MOE" was invalid. Skipped to the next verb Enterprise Systems
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 JOB (COBOLPROG),'DOUGLAS',NOTIFY=DOUGLAS, // CLASS=A,MSGLEVEL=(1,1),TIME=1,MSGCLASS=A //STEP1 EXEC PROC=IGYWCLG //COBOL.SYSIN DD DSN=DOUGLAS.WORK.COBOL(SIMPLEC),DISP=SHR //GO.DISKFL1 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 inter-relationships 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 JOB (COBOLPROG),'ACCTID',NOTIFY=ACCTID, • // CLASS=A,MSGLEVEL=(1,1),TIME=1,MSGCLASS=A • //STEP1 EXEC PROC=IGYWCLG • //COBOL.SYSIN DD * • … • Cobol Program with references to input (READER) and output (DISKFL1) • … • //GO.DISKFL1 DD DSN=ACCTID.WORK.OUT(COBOUT),DISP=SHR • //GO.READER DD * • …. Data • // Enterprise Systems