CICS CONVERSE non-z/OS Communications Server options provide cross-platform communication capabilities for programs and transactions. It enables programs to conduct conversations with non-z/OS systems, manage cross-platform communication, and handle cross-platform conversations in CICS environments.
CICS CONVERSE non-z/OS Communications Server options is a command that allows programs to conduct conversations with non-z/OS systems. It provides cross-platform communication capabilities, non-z/OS conversation management, and cross-platform communication for CICS applications.
123456789EXEC CICS CONVERSE CONVID(conversation-id) [FROM(data-area)] [FROMLENGTH(data-length)] [INTO(data-area)] [SET(pointer-variable)] [LENGTH(data-length)] [RESP(response-code)] END-EXEC
Communication with non-z/OS platforms
Communication protocols
Data format support
Security features
12345678910111213141516171819202122232425262728293031IDENTIFICATION DIVISION. PROGRAM-ID. CONVERSENONZOS01. DATA DIVISION. WORKING-STORAGE SECTION. 01 CONVERSATION-ID PIC X(8) VALUE 'CROSSPLAT'. 01 SEND-DATA PIC X(80) VALUE 'Hello from z/OS CICS'. 01 SEND-LENGTH PIC S9(4) COMP VALUE 20. 01 RECEIVE-DATA PIC X(80). 01 RECEIVE-LENGTH PIC S9(4) COMP. 01 RESPONSE-CODE PIC S9(8) COMP. PROCEDURE DIVISION. DISPLAY 'Starting cross-platform conversation' EXEC CICS CONVERSE CONVID(CONVERSATION-ID) FROM(SEND-DATA) FROMLENGTH(SEND-LENGTH) INTO(RECEIVE-DATA) LENGTH(RECEIVE-LENGTH) RESP(RESPONSE-CODE) END-EXEC IF RESPONSE-CODE = DFHRESP(NORMAL) DISPLAY 'Cross-platform conversation successful' DISPLAY 'Received: ' RECEIVE-DATA(1:RECEIVE-LENGTH) ELSE DISPLAY 'Cross-platform conversation failed' END-IF EXEC CICS RETURN END-EXEC.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364IDENTIFICATION DIVISION. PROGRAM-ID. CONVERSENONZOS02. DATA DIVISION. WORKING-STORAGE SECTION. 01 CONVERSATION-ID PIC X(8). 01 SEND-DATA PIC X(80). 01 SEND-LENGTH PIC S9(4) COMP. 01 RECEIVE-DATA PIC X(80). 01 RECEIVE-LENGTH PIC S9(4) COMP. 01 RESPONSE-CODE PIC S9(8) COMP. 01 CONVERSATION-COUNT PIC S9(2) COMP VALUE 0. 01 MAX-CONVERSATIONS PIC S9(2) COMP VALUE 3. 01 PLATFORM-LIST. 05 PLATFORM-ITEM OCCURS 3 TIMES. 10 PLATFORM-ID PIC X(8). 10 PLATFORM-MESSAGE PIC X(80). 10 PLATFORM-LENGTH PIC S9(4) COMP. PROCEDURE DIVISION. PERFORM INITIALIZE-PLATFORMS PERFORM CONDUCT-CROSS-PLATFORM-CONVERSATIONS EXEC CICS RETURN END-EXEC. INITIALIZE-PLATFORMS. MOVE 'WINDOWS' TO PLATFORM-ID(1) MOVE 'Request data from Windows system' TO PLATFORM-MESSAGE(1) MOVE 33 TO PLATFORM-LENGTH(1) MOVE 'UNIX' TO PLATFORM-ID(2) MOVE 'Request data from Unix system' TO PLATFORM-MESSAGE(2) MOVE 30 TO PLATFORM-LENGTH(2) MOVE 'LINUX' TO PLATFORM-ID(3) MOVE 'Request data from Linux system' TO PLATFORM-MESSAGE(3) MOVE 31 TO PLATFORM-LENGTH(3). CONDUCT-CROSS-PLATFORM-CONVERSATIONS. PERFORM VARYING CONVERSATION-COUNT FROM 1 BY 1 UNTIL CONVERSATION-COUNT > MAX-CONVERSATIONS MOVE PLATFORM-ID(CONVERSATION-COUNT) TO CONVERSATION-ID MOVE PLATFORM-MESSAGE(CONVERSATION-COUNT) TO SEND-DATA MOVE PLATFORM-LENGTH(CONVERSATION-COUNT) TO SEND-LENGTH PERFORM CONDUCT-CROSS-PLATFORM-CONVERSATION IF RESPONSE-CODE = DFHRESP(NORMAL) DISPLAY 'Cross-platform conversation ' CONVERSATION-COUNT ' successful' DISPLAY 'Response: ' RECEIVE-DATA(1:RECEIVE-LENGTH) ELSE DISPLAY 'Cross-platform conversation ' CONVERSATION-COUNT ' failed' END-IF END-PERFORM. CONDUCT-CROSS-PLATFORM-CONVERSATION. EXEC CICS CONVERSE CONVID(CONVERSATION-ID) FROM(SEND-DATA) FROMLENGTH(SEND-LENGTH) INTO(RECEIVE-DATA) LENGTH(RECEIVE-LENGTH) RESP(RESPONSE-CODE) END-EXEC.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960IDENTIFICATION DIVISION. PROGRAM-ID. CONVERSENONZOS03. DATA DIVISION. WORKING-STORAGE SECTION. 01 CONVERSATION-ID PIC X(8) VALUE 'CROSSPLAT'. 01 SEND-DATA PIC X(80) VALUE 'Test cross-platform message'. 01 SEND-LENGTH PIC S9(4) COMP VALUE 28. 01 RECEIVE-DATA PIC X(80). 01 RECEIVE-LENGTH PIC S9(4) COMP. 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 CROSS-PLATFORM-SUCCESSFUL PIC X(1) VALUE 'N'. PROCEDURE DIVISION. PERFORM CONDUCT-CROSS-PLATFORM-CONVERSATION-WITH-RETRY EXEC CICS RETURN END-EXEC. CONDUCT-CROSS-PLATFORM-CONVERSATION-WITH-RETRY. PERFORM CONDUCT-CROSS-PLATFORM-CONVERSATION IF RESPONSE-CODE NOT = DFHRESP(NORMAL) AND RETRY-COUNT < MAX-RETRIES ADD 1 TO RETRY-COUNT DISPLAY 'Retry ' RETRY-COUNT ' cross-platform conversation' PERFORM CONDUCT-CROSS-PLATFORM-CONVERSATION-WITH-RETRY END-IF. CONDUCT-CROSS-PLATFORM-CONVERSATION. EXEC CICS CONVERSE CONVID(CONVERSATION-ID) FROM(SEND-DATA) FROMLENGTH(SEND-LENGTH) INTO(RECEIVE-DATA) LENGTH(RECEIVE-LENGTH) RESP(RESPONSE-CODE) END-EXEC EVALUATE RESPONSE-CODE WHEN DFHRESP(NORMAL) MOVE 'Y' TO CROSS-PLATFORM-SUCCESSFUL DISPLAY 'Cross-platform conversation successful' WHEN DFHRESP(NOTAUTH) DISPLAY 'Not authorized for cross-platform conversation' WHEN DFHRESP(INVREQ) DISPLAY 'Invalid cross-platform conversation request' WHEN DFHRESP(CONVIDERR) DISPLAY 'Invalid cross-platform conversation ID' WHEN DFHRESP(CONVFAILED) DISPLAY 'Cross-platform conversation failed' WHEN DFHRESP(CONVTIMEOUT) DISPLAY 'Cross-platform conversation timeout' WHEN DFHRESP(PLATFORMERR) DISPLAY 'Cross-platform communication error' WHEN DFHRESP(NETWORKERR) DISPLAY 'Network communication error' WHEN OTHER DISPLAY 'Unexpected cross-platform conversation error' END-EVALUATE.
Think of CICS CONVERSE non-z/OS like talking to friends who speak different languages:
Create a program that conducts a simple cross-platform conversation.
Write a program that manages multiple cross-platform conversation operations.
Implement comprehensive error handling for cross-platform conversation failures.