🖥 JCL
JCL Error Handling
Intermediate 🕑 12 min read
👁 0 views
12
Code Example
## JCL Error Handling
Handle errors gracefully with proper return code checking and recovery procedures.
### Return Code Conventions
| RC | Meaning |
|----|---------|
| 0 | Success |
| 4 | Warning |
| 8 | Error |
| 12 | Severe error |
| 16 | Terminating error |
### COND Parameter Logic
Skip step if condition TRUE:
\`\`\`jcl
COND=(0,NE) Skip if any RC != 0
COND=(4,LT) Skip if any RC > 4
COND=(8,LE,STEP1) Skip if STEP1 RC >= 8
\`\`\`
### IF/THEN/ELSE
\`\`\`jcl
//IF1 IF (STEP1.RC > 4) THEN
//ERROR EXEC PGM=ERRORPGM
// ENDIF
\`\`\`
### ABEND Handling
\`\`\`jcl
COND=EVEN Run even if previous abended
COND=ONLY Run only if previous abended
\`\`\`
### Restart/Recovery
- RESTART parameter on JOB
- Checkpoint/restart in programs
- Use passed datasets for recovery
### Best Practices
1. Always check return codes
2. Include cleanup steps with COND=EVEN
3. Use IF/THEN for complex logic
4. Document expected return codes