Data Division Refresher
Elementary Data Items
The PIC Clause Unveiled
Numeric Data: DISPLAY
Numeric Data: COMP & COMP-3
Other USAGE Options
Records and Groups
REDEFINES Clause
RENAMES Clause
VALUE Clause
Condition Names (88 Level)
Single-Dim Tables (OCCURS)
Multi-Dim Tables (OCCURS)
Indexing Tables
SEARCH and SEARCH ALL
What are Sequential Files?
Defining Files: ENVIRONMENT
Defining Files: DATA
Opening & Closing Files
Writing Sequential Files
Reading Sequential Files
FILE STATUS Explained
Handling File Errors
Sequential File Updates
Indexed Files: The Basics
Defining Indexed Files
Opening Indexed Files
Writing to Indexed Files
Reading Indexed Files
Updating Indexed Records
Deleting Indexed Records
Closing Indexed Files
Alternate Keys
Indexed File Status
Relative Files: The Basics
Defining Relative Files
Relative File Operations
Relative File Status
Why Modular COBOL?
Program Structure Review
The CALL Statement
Subprogram Definition
Passing Data: LINKAGE
Passing Data: BY REFERENCE
Passing Data: BY CONTENT
Passing Data: BY VALUE
Returning Control
Initial State of Subprograms
Nested Programs
Shared Data: EXTERNAL
Designing for Reusability
Error Handling in Subprograms
Debugging Modular Programs
COBOL Error Types
Interpreting Compiler Msgs
Runtime Errors & Abends
DISPLAY for Debugging
READY TRACE & RESET
Debugging with Dumps
Interactive Debuggers
Conditional Breakpoints
Debugging Subprograms
Unit Testing COBOL
Integration Testing
Regression Testing
Test Data Management
Common Abend Resolution
Defensive Coding
VSAM Files Revisited
DB2 Basics for COBOL
Embedded SQL in COBOL
Data Retrieval with SQL
Updating Data with SQL
Cursors for Multi-Row Data
DB2 Error Handling
COBOL & C/C++
COBOL & Java
COBOL & Scripting
JSON Basics for COBOL
Parsing JSON in COBOL
Generating JSON in COBOL
XML Basics for COBOL
Parsing & Gen XML in COBOL