CICS PUT CONTAINER (BTS) provides Business Transaction Services container data storage capabilities in CICS environments. It enables programs to store data in BTS containers, manage container data, and handle BTS container operations in CICS applications.
CICS PUT CONTAINER (BTS) is a command that allows programs to store data in Business Transaction Services containers, manage container data, and handle BTS container operations in CICS environments. It provides BTS container data storage capabilities, data management, and container operations for CICS applications.
1234567EXEC CICS PUT CONTAINER [CHANNEL(channel-name)] [CONTAINER(container-name)] [FROM(data-area)] [LENGTH(data-length)] [RESP(response-code)] END-EXEC
Store various types of data in containers
Manage container data operations
Manage container lifecycle and operations
Manage channel operations and data flow
1234567891011121314151617181920212223242526272829IDENTIFICATION DIVISION. PROGRAM-ID. PUTCONTAINER01. DATA DIVISION. WORKING-STORAGE SECTION. 01 CHANNEL-NAME PIC X(20) VALUE 'MAIN_CHANNEL'. 01 CONTAINER-NAME PIC X(20) VALUE 'DATA_CONTAINER'. 01 DATA-AREA PIC X(1000) VALUE 'Sample data for storage'. 01 DATA-LENGTH PIC S9(8) COMP VALUE 20. 01 RESPONSE-CODE PIC S9(8) COMP. PROCEDURE DIVISION. EXEC CICS PUT CONTAINER CHANNEL(CHANNEL-NAME) CONTAINER(CONTAINER-NAME) FROM(DATA-AREA) LENGTH(DATA-LENGTH) RESP(RESPONSE-CODE) END-EXEC IF RESPONSE-CODE = DFHRESP(NORMAL) DISPLAY 'Data stored successfully' DISPLAY 'Channel: ' CHANNEL-NAME DISPLAY 'Container: ' CONTAINER-NAME DISPLAY 'Data length: ' DATA-LENGTH ELSE DISPLAY 'Failed to store data' END-IF EXEC CICS RETURN END-EXEC.
1234567891011121314151617181920212223242526272829303132333435363738394041IDENTIFICATION DIVISION. PROGRAM-ID. PUTCONTAINER02. DATA DIVISION. WORKING-STORAGE SECTION. 01 CHANNEL-NAME PIC X(20) VALUE 'PROCESS_CHANNEL'. 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 VARYING CONTAINER-COUNT FROM 1 BY 1 UNTIL CONTAINER-COUNT > 3 STRING 'CONTAINER_' CONTAINER-COUNT DELIMITED BY SIZE INTO CONTAINER-NAME STRING 'Data for container ' CONTAINER-COUNT DELIMITED BY SIZE INTO DATA-AREA COMPUTE DATA-LENGTH = 20 + CONTAINER-COUNT EXEC CICS PUT CONTAINER CHANNEL(CHANNEL-NAME) CONTAINER(CONTAINER-NAME) FROM(DATA-AREA) LENGTH(DATA-LENGTH) RESP(RESPONSE-CODE) END-EXEC IF RESPONSE-CODE = DFHRESP(NORMAL) DISPLAY 'Container ' CONTAINER-COUNT ' stored successfully' ELSE DISPLAY 'Failed to store container ' CONTAINER-COUNT END-IF END-PERFORM EXEC CICS RETURN END-EXEC.
12345678910111213141516171819202122232425262728293031323334353637IDENTIFICATION DIVISION. PROGRAM-ID. PUTCONTAINER03. DATA DIVISION. WORKING-STORAGE SECTION. 01 CHANNEL-NAME PIC X(20) VALUE 'MESSAGE_CHANNEL'. 01 CONTAINER-NAME PIC X(20) VALUE 'MESSAGE_CONTAINER'. 01 DATA-AREA PIC X(1000) VALUE 'Error handling test data'. 01 DATA-LENGTH PIC S9(8) COMP VALUE 25. 01 RESPONSE-CODE PIC S9(8) COMP. PROCEDURE DIVISION. EXEC CICS PUT CONTAINER CHANNEL(CHANNEL-NAME) CONTAINER(CONTAINER-NAME) FROM(DATA-AREA) LENGTH(DATA-LENGTH) RESP(RESPONSE-CODE) END-EXEC EVALUATE RESPONSE-CODE WHEN DFHRESP(NORMAL) DISPLAY 'Data stored successfully' DISPLAY 'Channel: ' CHANNEL-NAME DISPLAY 'Container: ' CONTAINER-NAME WHEN DFHRESP(INVREQ) DISPLAY 'Invalid storage request' WHEN DFHRESP(CONTAINERERR) DISPLAY 'Container-specific error occurred' WHEN DFHRESP(CHANNELERR) DISPLAY 'Channel-specific error occurred' WHEN DFHRESP(AUTHORITYERR) DISPLAY 'Authorization error occurred' WHEN OTHER DISPLAY 'Unexpected error occurred' END-EVALUATE EXEC CICS RETURN END-EXEC.
Think of CICS PUT CONTAINER (BTS) like putting toys in a toy box:
Create a program that stores data in BTS containers using PUT CONTAINER.
Write a program that stores data in multiple containers using PUT CONTAINER.
Implement comprehensive error handling for container storage failures and invalid operations.