CICS ISSUE EODS provides end of data set signaling capabilities for programs and transactions. It enables programs to signal end of data set, manage data set completion, and handle data set processing in CICS environments.
CICS ISSUE EODS is a command that allows programs to signal the end of a data set in the system. It provides end of data set signaling capabilities, data set completion management, and data set processing for CICS applications.
1234EXEC CICS ISSUE EODS [DATASET(dataset-name)] [RESP(response-code)] END-EXEC
Sequential data set types
VSAM data set types
Temporary data set types
System data set types
1234567891011121314151617181920212223IDENTIFICATION DIVISION. PROGRAM-ID. ISSUEEODS01. DATA DIVISION. WORKING-STORAGE SECTION. 01 DATASET-NAME PIC X(8) VALUE 'MYFILE01'. 01 RESPONSE-CODE PIC S9(8) COMP. PROCEDURE DIVISION. DISPLAY 'Signaling end of data set' DISPLAY 'Data set: ' DATASET-NAME EXEC CICS ISSUE EODS DATASET(DATASET-NAME) RESP(RESPONSE-CODE) END-EXEC IF RESPONSE-CODE = DFHRESP(NORMAL) DISPLAY 'End of data set signaled successfully' ELSE DISPLAY 'End of data set signal failed' END-IF EXEC CICS RETURN END-EXEC.
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950IDENTIFICATION DIVISION. PROGRAM-ID. ISSUEEODS02. DATA DIVISION. WORKING-STORAGE SECTION. 01 DATASET-NAME PIC X(8). 01 RESPONSE-CODE PIC S9(8) COMP. 01 SIGNAL-COUNT PIC S9(2) COMP VALUE 0. 01 MAX-SIGNALS PIC S9(2) COMP VALUE 3. 01 DS-STATUS PIC X(1). 01 DATASET-LIST. 05 DS-ITEM OCCURS 3 TIMES. 10 DS-ID PIC X(8). 10 DS-TYPE PIC X(8). 10 DS-STATUS PIC X(1). PROCEDURE DIVISION. PERFORM INITIALIZE-DATASETS PERFORM SIGNAL-MULTIPLE-EODS EXEC CICS RETURN END-EXEC. INITIALIZE-DATASETS. MOVE 'FILE001' TO DS-ID(1) MOVE 'QSAM' TO DS-TYPE(1) MOVE 'FILE002' TO DS-ID(2) MOVE 'VSAM' TO DS-TYPE(2) MOVE 'FILE003' TO DS-ID(3) MOVE 'TEMP' TO DS-TYPE(3). SIGNAL-MULTIPLE-EODS. PERFORM VARYING SIGNAL-COUNT FROM 1 BY 1 UNTIL SIGNAL-COUNT > MAX-SIGNALS MOVE DS-ID(SIGNAL-COUNT) TO DATASET-NAME PERFORM SIGNAL-SINGLE-EODS IF RESPONSE-CODE = DFHRESP(NORMAL) MOVE 'E' TO DS-STATUS(SIGNAL-COUNT) DISPLAY 'Data set ' SIGNAL-COUNT ' EODS signaled successfully' ELSE MOVE 'F' TO DS-STATUS(SIGNAL-COUNT) DISPLAY 'Data set ' SIGNAL-COUNT ' EODS signal failed' END-IF END-PERFORM. SIGNAL-SINGLE-EODS. EXEC CICS ISSUE EODS DATASET(DATASET-NAME) RESP(RESPONSE-CODE) END-EXEC.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748IDENTIFICATION DIVISION. PROGRAM-ID. ISSUEEODS03. DATA DIVISION. WORKING-STORAGE SECTION. 01 DATASET-NAME PIC X(8) VALUE 'MYFILE01'. 01 RESPONSE-CODE PIC S9(8) COMP. 01 RETRY-COUNT PIC S9(2) COMP VALUE 0. 01 MAX-RETRIES PIC S9(2) COMP VALUE 3. 01 EODS-SIGNAL-SUCCESSFUL PIC X(1) VALUE 'N'. PROCEDURE DIVISION. PERFORM SIGNAL-EODS-WITH-RETRY EXEC CICS RETURN END-EXEC. SIGNAL-EODS-WITH-RETRY. PERFORM SIGNAL-EODS IF RESPONSE-CODE NOT = DFHRESP(NORMAL) AND RETRY-COUNT < MAX-RETRIES ADD 1 TO RETRY-COUNT DISPLAY 'Retry ' RETRY-COUNT ' EODS signal operation' PERFORM SIGNAL-EODS-WITH-RETRY END-IF. SIGNAL-EODS. EXEC CICS ISSUE EODS DATASET(DATASET-NAME) RESP(RESPONSE-CODE) END-EXEC EVALUATE RESPONSE-CODE WHEN DFHRESP(NORMAL) MOVE 'Y' TO EODS-SIGNAL-SUCCESSFUL DISPLAY 'EODS signal operation successful' WHEN DFHRESP(NOTAUTH) DISPLAY 'Not authorized to signal EODS' WHEN DFHRESP(INVREQ) DISPLAY 'Invalid EODS signal request' WHEN DFHRESP(DATASETERR) DISPLAY 'Data set EODS signal error' WHEN DFHRESP(DATASETNOTFOUND) DISPLAY 'Data set not found' WHEN DFHRESP(DATASETINUSE) DISPLAY 'Data set is in use' WHEN OTHER DISPLAY 'Unexpected EODS signal error' END-EVALUATE.
Think of CICS ISSUE EODS like finishing a book:
Create a program that signals end of a basic data set.
Write a program that manages multiple data set EODS signaling.
Implement comprehensive error handling for data set EODS signaling failures.