🖮 CICS
Introduction to CICS
Beginner 🕑 20 min read
👁 5 views
What is CICS?
CICS (Customer Information Control System) is IBM's transaction processing system for mainframes. It enables online, real-time transaction processing for business applications.
CICS Components
- Transaction - Unit of work (4-char ID)
- Program - Application code
- Terminal - User interface device
- File - Data storage
- Queue - Temporary/transient data
CICS Services
- Program Control - LINK, XCTL, RETURN
- Terminal Control - SEND, RECEIVE
- File Control - READ, WRITE, REWRITE
- Queue Control - WRITEQ, READQ
- Interval Control - DELAY, POST, WAIT
CICS-COBOL Interface
CICS commands are embedded in COBOL using:
EXEC CICS command options END-EXEC.
CICS Areas
- EIB - Execute Interface Block (system info)
- COMMAREA - Communication area between programs
- TWA - Transaction Work Area
- CWA - Common Work Area
Common EIB Fields
| Field | Description |
|---|---|
| EIBCALEN | COMMAREA length |
| EIBTRNID | Transaction ID |
| EIBTRMID | Terminal ID |
| EIBDATE | Date (0CYYDDD) |
| EIBTIME | Time (0HHMMSS) |
| EIBRESP | Response code |
Code Example
IDENTIFICATION DIVISION.
PROGRAM-ID. CICSPROG.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-MESSAGE PIC X(50).
01 WS-RESPONSE PIC S9(8) COMP.
01 WS-LENGTH PIC S9(4) COMP.
01 WS-COMMAREA.
05 CA-FUNCTION PIC X(1).
05 CA-EMP-ID PIC 9(6).
05 CA-EMP-NAME PIC X(30).
05 CA-RETURN-CD PIC 9(2).
LINKAGE SECTION.
01 DFHCOMMAREA PIC X(39).
PROCEDURE DIVISION.
IF EIBCALEN = 0
* FIRST TIME - NO COMMAREA
MOVE "WELCOME TO CICS" TO WS-MESSAGE
PERFORM SEND-MESSAGE
ELSE
* RETURNING WITH DATA
MOVE DFHCOMMAREA TO WS-COMMAREA
PERFORM PROCESS-REQUEST
END-IF.
EXEC CICS RETURN
TRANSID('MENU')
COMMAREA(WS-COMMAREA)
LENGTH(39)
END-EXEC.
SEND-MESSAGE.
MOVE 50 TO WS-LENGTH.
EXEC CICS SEND
FROM(WS-MESSAGE)
LENGTH(WS-LENGTH)
ERASE
END-EXEC.
PROCESS-REQUEST.
EVALUATE CA-FUNCTION
WHEN 'I'
PERFORM INQUIRY-LOGIC
WHEN 'A'
PERFORM ADD-LOGIC
WHEN 'U'
PERFORM UPDATE-LOGIC
WHEN OTHER
MOVE '99' TO CA-RETURN-CD
END-EVALUATE.