Course Description
In Part 2 of Enterprise COBOL Programming online training course, you will continue to learn the basics of Enterprise COBOL application development. The course focuses on various types of sequential I/O, and report writing as well as intrinsic functions and table processing.
In Enterprise COBOL Programming Part 1 you learned the basics of Enterprise COBOL application development as well as coding the four divisions, basic logic, data definition, and sequential I/O processing.
In This Course You Will Learn:
- Code and run COBOL programs that process raw data or stored data
- Make appropriate use of copybooks
- Create new data sets using Transaction Master Logic
- Create complex reports such as multi-level control break reports
- Code tables, indices, subscripts, intrinsic functions, and appropriate compile options
- Search tables using SEARCH, SEARCH ALL and PERFORM
Prerequisites
You will need basic experience with z/OS JCL for JES2 or JES3, and TSO/ISPF and have completed Enterprise COBOL Programming Part 1.
Outline
Module 00: Course Introduction
Module 01: I/O for Raw Data, Stored Data, and Reports
- Reading Raw Data
- Writing Stored Data
- Reading Stored Data
- Writing Simple Reports
- Exercise: Basic I/O
Module 02: Conditional Processing with EVALUATE
- Object EVALUATE
- Logical EVALUATE
- Next Sentence vs. Continue
- Periods
- Exercise: EVALUATE
Module 03: Binary Numbers in COBOL
- USAGE IS COMP
- Data Type comparison
- Big Binary - COMP-5 and TRUNC(BIN)
- Efficient coding of COMP numberbers
- Exercise: Advanced Numbers
Module 04: Structured Programming Logic for Application Programs
- Functional Decomposition
- Structured COBOL Code
- Chaining, Coupling and Cohesion
- Exercise: Structured Programming Logic
Module 05: Structured Walkthrough
- What is a Structured Walkthrough
- How To Conduct One
- Benefits
Module 06: Logic for Simple Reports
- Headers, Column Headers and Footers
- Counting Detail Lines
- Creating Test Data
- Exercise: Simple Reports
Module 07: Logic for Validation and Error Reports
- Error Reports
- Validating Input Data
- Defensive Programming, I/O Counters
- Page # of # Reports
- Exercise: Error Reports
Module 08: Logic for One-Level Control-Break Reports
- One-Level Control Break Logic
- Cover Pages and Trailer/Summary Lines
- Creating Test Data
- Exercise: One-Level Control Breaks
Module 09: Advanced Reports and Dates
- Muliple-Level Control Break Logic
- Today's Date-Using ACCEPT
- Pseudo Registers for Dates
- Intrinsic Functions for Dates
- Creating Test Data
- Exercise: Advanced Reports
Module 10: Copybooks and Compiler Options for Debugging
- COPY and Other Compiler Directing Statements
- COPYLIB JCL - SYSLIB DD
- COPY xxx REPLACING xxx BY xxx
- EJECT and SKIP
- TEST and SSRANGE compiler options for debugging
- Exercise: Copybooks
Module 11: Logic for Transaction Master Updates
- Transaction Master Update Logic
- Creating Test Data
- Exercise: Transaction Master
Module 12: One-Dimensional Tables Part 1
- Table Processing
- Table Definition, Fixed Length
- Indexing
- Display the Value of an Index
- Initializing a Table
- Looping Through a Table
- Exercise: One-Dimension Tables Part 1
Module 13: One-Dimensional Tables Part 2
- Table Example
- Initialize a Table Using REDEFINES
- INITIALIZE verb
- Initialize a Table with VALUE
- Exercise: One-Dimension Tables Part 2
Module 14: Searching A Table
- Searching Using PERFORM
- Linear SEARCH and Example
- Binary SEARCH and Example
- Exercise: Search
Module 15: More Table Processing
- Subscripts
- Indexing Vs. Subscripting
- SSRANGE Debug Option
- Table Efficiencies
- Variable-length Tables
- Exercise: More Tables
Module 16: Course Summary