👁 0
Q: What is the difference between COND and IF/THEN/ELSE in JCL?
Answer:
COND Parameter:
- Tests return codes from previous steps
- Bypasses step if condition is TRUE
- Works opposite to programming logic!
- COND=(4,LT) means: Skip if 4 < any previous RC
IF/THEN/ELSE:
- More intuitive programming-like syntax
- Executes steps when condition is TRUE
- Supports AND, OR operators
- Can check ABEND conditions
Example:
// Using COND (skip if RC < 4) //STEP2 EXEC PGM=PROG2,COND=(4,LT) // Using IF/THEN/ELSE // IF STEP1.RC = 0 THEN //STEP2 EXEC PGM=PROG2 // ELSE //ERROR EXEC PGM=ERRPROC // ENDIF
👁 0
Q: What is the difference between PARM and SYSIN for passing parameters?
Answer:
PARM (EXEC statement):
- Limited to 100 characters
- Passed in memory to program
- Accessed via LINKAGE SECTION
- Good for small, simple parameters
SYSIN (DD statement):
- No practical size limit
- Read as a file by program
- Can contain multiple records
- Good for control cards, complex input
// PARM example //STEP1 EXEC PGM=MYPROG,PARM='PARAM1,PARAM2' // SYSIN example //SYSIN DD * CONTROL OPTION1 DATE=20231215 LIMIT=1000 /*
👁 0
Q: Explain PARM parameter
Answer:
PARM passes data to program. EXEC PGM=PROG,PARM='value'. Max 100 characters. Program receives length prefix. PARM='abc,xyz' passes as one string. Program parses. Special chars need quotes. Alternative: SYSIN for larger data.
👁 0
Q: What is EXEC PGM vs PROC?
Answer:
EXEC PGM=name executes program directly. EXEC procname or EXEC PROC=procname invokes cataloged procedure. EXEC name where 'name' exists as PROC takes precedence. Procedures can be overridden with PROC.STEP.DD syntax.
👁 0
Q: What is IEFBR14?
Answer:
IEFBR14 is null program (Branch to Register 14 = return). Returns immediately. Used for dataset management: create, delete, catalog datasets. //DELETE EXEC PGM=IEFBR14 //DD DD DSN=name,DISP=(MOD,DELETE). Common for housekeeping.
👁 0
Q: How does IEFBR14 delete work?
Answer:
//DEL EXEC PGM=IEFBR14 //DD DD DSN=file,DISP=(MOD,DELETE). If file exists, DISP=(MOD,DELETE) deletes. If not exists, MOD creates then deletes (empty). Or DISP=(OLD,DELETE) fails if not exists. Common pattern for cleanup.
👁 0
Q: What is CEDA?
Answer:
CEDA defines CICS resources online. CEDA DEFINE PROGRAM(pgm) GROUP(grp). Resources: TRANSACTION, PROGRAM, FILE, etc. CEDA INSTALL activates. CEDA VIEW displays. RDO (Resource Definition Online).
👁 0
Q: What is PGMIDERR?
Answer:
PGMIDERR is program not found. LINK/XCTL to undefined program. Check RDO PROGRAM definition. Or spelling. Must be defined and installed.