CICS GETNEXT CONTAINER (BTS) provides Business Transaction Services container browse navigation capabilities in CICS environments. It enables programs to navigate BTS container browse operations, retrieve next containers, and manage container browsing sessions in CICS applications.
CICS GETNEXT CONTAINER (BTS) is a command that allows programs to navigate Business Transaction Services container browse operations, retrieve next containers, and manage container browsing sessions in CICS environments. It provides BTS container browse navigation capabilities, sequential access, and browse management for CICS applications.
12345678EXEC CICS GETNEXT CONTAINER [CHANNEL(channel-name)] [REQID(request-id)] [CONTAINER(container-name)] [INTO(data-area)] [LENGTH(data-length)] [RESP(response-code)] END-EXEC
Navigate through containers in sequence
Navigate through containers in specific channels
Navigate based on specific conditions
Navigate through multiple containers
12345678910111213141516171819202122232425262728293031IDENTIFICATION DIVISION. PROGRAM-ID. GETNEXT01. DATA DIVISION. WORKING-STORAGE SECTION. 01 CHANNEL-NAME PIC X(20) VALUE 'MAIN_CHANNEL'. 01 REQUEST-ID PIC X(8) VALUE 'REQ001'. 01 CONTAINER-NAME PIC X(20). 01 DATA-AREA PIC X(1000). 01 DATA-LENGTH PIC S9(8) COMP. 01 RESPONSE-CODE PIC S9(8) COMP. PROCEDURE DIVISION. EXEC CICS GETNEXT CONTAINER CHANNEL(CHANNEL-NAME) REQID(REQUEST-ID) CONTAINER(CONTAINER-NAME) INTO(DATA-AREA) LENGTH(DATA-LENGTH) RESP(RESPONSE-CODE) END-EXEC IF RESPONSE-CODE = DFHRESP(NORMAL) DISPLAY 'Next container retrieved successfully' DISPLAY 'Container: ' CONTAINER-NAME DISPLAY 'Channel: ' CHANNEL-NAME DISPLAY 'Data length: ' DATA-LENGTH ELSE DISPLAY 'Failed to retrieve next container' END-IF EXEC CICS RETURN END-EXEC.
1234567891011121314151617181920212223242526272829303132IDENTIFICATION DIVISION. PROGRAM-ID. GETNEXT02. DATA DIVISION. WORKING-STORAGE SECTION. 01 CHANNEL-NAME PIC X(20) VALUE 'PROCESS_CHANNEL'. 01 REQUEST-ID PIC X(8) VALUE 'REQ002'. 01 CONTAINER-NAME PIC X(20). 01 DATA-AREA PIC X(1000). 01 DATA-LENGTH PIC S9(8) COMP. 01 RESPONSE-CODE PIC S9(8) COMP. 01 CONTAINER-COUNT PIC 9(3) VALUE 0. PROCEDURE DIVISION. PERFORM UNTIL RESPONSE-CODE NOT = DFHRESP(NORMAL) EXEC CICS GETNEXT CONTAINER CHANNEL(CHANNEL-NAME) REQID(REQUEST-ID) CONTAINER(CONTAINER-NAME) INTO(DATA-AREA) LENGTH(DATA-LENGTH) RESP(RESPONSE-CODE) END-EXEC IF RESPONSE-CODE = DFHRESP(NORMAL) ADD 1 TO CONTAINER-COUNT DISPLAY 'Container ' CONTAINER-COUNT ': ' CONTAINER-NAME END-IF END-PERFORM DISPLAY 'Total containers processed: ' CONTAINER-COUNT EXEC CICS RETURN END-EXEC.
123456789101112131415161718192021222324252627282930313233343536373839IDENTIFICATION DIVISION. PROGRAM-ID. GETNEXT03. DATA DIVISION. WORKING-STORAGE SECTION. 01 CHANNEL-NAME PIC X(20) VALUE 'MESSAGE_CHANNEL'. 01 REQUEST-ID PIC X(8) VALUE 'REQ003'. 01 CONTAINER-NAME PIC X(20). 01 DATA-AREA PIC X(1000). 01 DATA-LENGTH PIC S9(8) COMP. 01 RESPONSE-CODE PIC S9(8) COMP. PROCEDURE DIVISION. EXEC CICS GETNEXT CONTAINER CHANNEL(CHANNEL-NAME) REQID(REQUEST-ID) CONTAINER(CONTAINER-NAME) INTO(DATA-AREA) LENGTH(DATA-LENGTH) RESP(RESPONSE-CODE) END-EXEC EVALUATE RESPONSE-CODE WHEN DFHRESP(NORMAL) DISPLAY 'Next container retrieved successfully' DISPLAY 'Container: ' CONTAINER-NAME DISPLAY 'Channel: ' CHANNEL-NAME WHEN DFHRESP(ENDFILE) DISPLAY 'End of container list reached' WHEN DFHRESP(NOTFND) DISPLAY 'Browse operation not found' WHEN DFHRESP(INVREQ) DISPLAY 'Invalid navigation request' WHEN DFHRESP(CONTAINERERR) DISPLAY 'Container-specific error occurred' WHEN OTHER DISPLAY 'Unexpected error occurred' END-EVALUATE EXEC CICS RETURN END-EXEC.
Think of CICS GETNEXT CONTAINER (BTS) like looking through boxes in a room:
Create a program that navigates through BTS containers using GETNEXT CONTAINER.
Write a program that loops through all containers in a channel using GETNEXT CONTAINER.
Implement comprehensive error handling for container navigation failures and end-of-list conditions.