Q1
Explain the difference between COND and IF/THEN/ELSE.
COND tests return codes to SKIP steps (negative logic). IF/THEN/ELSE tests conditions to EXECUTE steps (positive logic). IF supports complex expressions. COND on JOB affects all steps, on EXEC affects that step.
Q2
How does DISP parameter work?
DISP=(status,normal,abnormal). Status: NEW/OLD/SHR/MOD. Normal disposition after success. Abnormal after abend. Example: DISP=(NEW,CATLG,DELETE) creates, catalogs if OK, deletes if abend.
Q3
What does TYPRUN=SCAN do?
TYPRUN=SCAN validates JCL syntax without execution. No resources allocated, no programs run. Checks for errors before production submission.
Q4
Explain SPACE parameter options.
SPACE=(unit,(primary,secondary,directory)). Units: TRK/CYL/blocksize. Directory for PDS. Options: RLSE (release unused), CONTIG (contiguous), ROUND (round to cylinder).
Q5
What is DD DUMMY?
DD DUMMY discards output, provides EOF for input. No I/O actually performed. Equivalent: DSN=NULLFILE. Used for testing or optional files.
Q6
Explain REGION parameter.
REGION specifies memory limit. REGION=0M means system default (no limit). REGION=4M limits to 4MB. On JOB affects all steps, on EXEC affects that step.
Q7
What is DD * vs DD DATA?
DD * starts instream data ending with /*. DD DATA allows DLM=xx for custom delimiter when data contains /*. DD DATA,DLM=@@ ends with @@.
Q8
What is NOTIFY parameter?
NOTIFY=userid sends completion message. NOTIFY=&SYSUID notifies submitter. Multiple: NOTIFY=(user1,user2). Essential for batch monitoring.
Q9
How does IEFBR14 work?
IEFBR14 is null program (Branch Register 14 = return). Used for dataset management: create, delete, catalog. Example: //DEL EXEC PGM=IEFBR14 //DD DD DSN=file,DISP=(MOD,DELETE).