Master Mainframe Technologies - COBOL, JCL, DB2, VSAM, CICS & More
ABEND Codes SQLCODEs File Status Interview Prep Contact
🖥 JCL

JCL Procedures (PROC)

Intermediate 🕑 15 min read 👁 1 views

15

Code Example


## JCL Procedures (PROC)

Procedures are reusable JCL templates stored in libraries or defined inline, reducing redundancy and standardizing job streams.

### Types of Procedures
1. **Cataloged Procedure**: Stored in PROCLIB
2. **Inline Procedure**: Defined within JCL

### Cataloged Procedure Usage
\`\`\`jcl
//STEP1 EXEC PROC=procname
//STEP1 EXEC procname
\`\`\`

### Inline Procedure Definition
\`\`\`jcl
//procname PROC [symbolic-params]
//...procedure JCL...
//         PEND
\`\`\`

### Symbolic Parameters
Define variables for flexibility:
\`\`\`jcl
//MYPROC PROC HLQ=PROD,ENV=PROD
//STEP1  EXEC PGM=MYPGM
//INPUT  DD DSN=&HLQ..DATA.&ENV,DISP=SHR
//       PEND
\`\`\`

### Overriding Procedure Steps
\`\`\`jcl
//STEP1 EXEC MYPROC,HLQ=TEST,ENV=DEV
//STEP1.INPUT DD DSN=OVERRIDE.FILE,DISP=SHR
\`\`\`

### Override Syntax
- stepname.ddname: Override DD
- stepname.parameter: Override EXEC parm
- Add DD: After step override

### Procedure Libraries
Searched in order: JCLLIB, //JOBLIB, default PROCLIB