Progress0 of 0 lessons

CICS CONVERSE (2260) - 2260 Terminal Communication

CICS CONVERSE (2260) provides 2260 terminal communication capabilities for programs and transactions. It enables programs to conduct conversations with 2260 terminals, manage terminal communication, and handle 2260 terminal conversations in CICS environments.

What is CICS CONVERSE (2260)?

CICS CONVERSE (2260) is a command that allows programs to conduct conversations with 2260 terminals. It provides 2260 terminal communication capabilities, terminal conversation management, and terminal communication for CICS applications.

Command Syntax

cobol
1
2
3
4
5
6
7
8
9
EXEC 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

Parameters

Required Parameters

  • CONVID(conversation-id) - 2260 conversation identifier

Optional Parameters

  • FROM(data-area) - Data to send to terminal
  • FROMLENGTH(data-length) - Length of data to send
  • INTO(data-area) - Data area to receive
  • SET(pointer-variable) - Pointer to data
  • LENGTH(data-length) - Length of data received
  • RESP(response-code) - Response code variable

2260 Terminal Types

Display Terminals

2260 display terminals

  • 2260 MODEL 1 - Basic display terminal
  • 2260 MODEL 2 - Enhanced display terminal
  • 2260 MODEL 3 - Advanced display terminal
  • 2260 MODEL 4 - High-end display terminal

Interactive Terminals

2260 interactive terminals

  • 2260 INTERACTIVE - Interactive terminal
  • 2260 BATCH - Batch terminal
  • 2260 REMOTE - Remote terminal
  • 2260 LOCAL - Local terminal

Specialized Terminals

2260 specialized terminals

  • 2260 GRAPHICS - Graphics terminal
  • 2260 COLOR - Color terminal
  • 2260 MULTI-SCREEN - Multi-screen terminal
  • 2260 HIGH-RESOLUTION - High-resolution terminal

Network Terminals

2260 network terminals

  • 2260 NETWORK - Network terminal
  • 2260 CLUSTER - Cluster terminal
  • 2260 DISTRIBUTED - Distributed terminal
  • 2260 CENTRALIZED - Centralized terminal

Programming Examples

Basic 2260 Terminal Conversation

cobol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
IDENTIFICATION DIVISION. PROGRAM-ID. CONVERSE226001. DATA DIVISION. WORKING-STORAGE SECTION. 01 CONVERSATION-ID PIC X(8) VALUE '2260CONV'. 01 SEND-DATA PIC X(80) VALUE 'Hello from 2260 terminal'. 01 SEND-LENGTH PIC S9(4) COMP VALUE 25. 01 RECEIVE-DATA PIC X(80). 01 RECEIVE-LENGTH PIC S9(4) COMP. 01 RESPONSE-CODE PIC S9(8) COMP. PROCEDURE DIVISION. DISPLAY 'Starting 2260 terminal 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 '2260 conversation successful' DISPLAY 'Received: ' RECEIVE-DATA(1:RECEIVE-LENGTH) ELSE DISPLAY '2260 conversation failed' END-IF EXEC CICS RETURN END-EXEC.

Advanced 2260 Terminal Communication

cobol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
IDENTIFICATION DIVISION. PROGRAM-ID. CONVERSE226002. 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 TERMINAL-LIST. 05 TERMINAL-ITEM OCCURS 3 TIMES. 10 TERMINAL-ID PIC X(8). 10 TERMINAL-MESSAGE PIC X(80). 10 TERMINAL-LENGTH PIC S9(4) COMP. PROCEDURE DIVISION. PERFORM INITIALIZE-TERMINALS PERFORM CONDUCT-2260-CONVERSATIONS EXEC CICS RETURN END-EXEC. INITIALIZE-TERMINALS. MOVE 'TERM001' TO TERMINAL-ID(1) MOVE 'Request data from terminal 1' TO TERMINAL-MESSAGE(1) MOVE 28 TO TERMINAL-LENGTH(1) MOVE 'TERM002' TO TERMINAL-ID(2) MOVE 'Request data from terminal 2' TO TERMINAL-MESSAGE(2) MOVE 28 TO TERMINAL-LENGTH(2) MOVE 'TERM003' TO TERMINAL-ID(3) MOVE 'Request data from terminal 3' TO TERMINAL-MESSAGE(3) MOVE 28 TO TERMINAL-LENGTH(3). CONDUCT-2260-CONVERSATIONS. PERFORM VARYING CONVERSATION-COUNT FROM 1 BY 1 UNTIL CONVERSATION-COUNT > MAX-CONVERSATIONS MOVE TERMINAL-ID(CONVERSATION-COUNT) TO CONVERSATION-ID MOVE TERMINAL-MESSAGE(CONVERSATION-COUNT) TO SEND-DATA MOVE TERMINAL-LENGTH(CONVERSATION-COUNT) TO SEND-LENGTH PERFORM CONDUCT-2260-CONVERSATION IF RESPONSE-CODE = DFHRESP(NORMAL) DISPLAY '2260 conversation ' CONVERSATION-COUNT ' successful' DISPLAY 'Response: ' RECEIVE-DATA(1:RECEIVE-LENGTH) ELSE DISPLAY '2260 conversation ' CONVERSATION-COUNT ' failed' END-IF END-PERFORM. CONDUCT-2260-CONVERSATION. EXEC CICS CONVERSE CONVID(CONVERSATION-ID) FROM(SEND-DATA) FROMLENGTH(SEND-LENGTH) INTO(RECEIVE-DATA) LENGTH(RECEIVE-LENGTH) RESP(RESPONSE-CODE) END-EXEC.

Error Handling with 2260 Conversations

cobol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
IDENTIFICATION DIVISION. PROGRAM-ID. CONVERSE226003. DATA DIVISION. WORKING-STORAGE SECTION. 01 CONVERSATION-ID PIC X(8) VALUE '2260CONV'. 01 SEND-DATA PIC X(80) VALUE 'Test 2260 message'. 01 SEND-LENGTH PIC S9(4) COMP VALUE 18. 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 2260-CONVERSATION-SUCCESSFUL PIC X(1) VALUE 'N'. PROCEDURE DIVISION. PERFORM CONDUCT-2260-CONVERSATION-WITH-RETRY EXEC CICS RETURN END-EXEC. CONDUCT-2260-CONVERSATION-WITH-RETRY. PERFORM CONDUCT-2260-CONVERSATION IF RESPONSE-CODE NOT = DFHRESP(NORMAL) AND RETRY-COUNT < MAX-RETRIES ADD 1 TO RETRY-COUNT DISPLAY 'Retry ' RETRY-COUNT ' 2260 conversation' PERFORM CONDUCT-2260-CONVERSATION-WITH-RETRY END-IF. CONDUCT-2260-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 2260-CONVERSATION-SUCCESSFUL DISPLAY '2260 conversation successful' WHEN DFHRESP(NOTAUTH) DISPLAY 'Not authorized for 2260 conversation' WHEN DFHRESP(INVREQ) DISPLAY 'Invalid 2260 conversation request' WHEN DFHRESP(CONVIDERR) DISPLAY 'Invalid 2260 conversation ID' WHEN DFHRESP(CONVFAILED) DISPLAY '2260 conversation failed' WHEN DFHRESP(CONVTIMEOUT) DISPLAY '2260 conversation timeout' WHEN DFHRESP(TERMIDERR) DISPLAY '2260 terminal ID error' WHEN DFHRESP(TERMNOTFOUND) DISPLAY '2260 terminal not found' WHEN OTHER DISPLAY 'Unexpected 2260 conversation error' END-EVALUATE.

2260 Terminal Management

Terminal Control

  • Terminal Discovery - Discover 2260 terminals
  • Terminal Selection - Select target terminals
  • Terminal Monitoring - Monitor terminal status
  • Terminal Management - Manage terminal operations

Communication Control

  • Communication Initiation - Start 2260 communication
  • Communication Management - Manage 2260 communication
  • Communication Termination - End 2260 communication
  • Communication Monitoring - Monitor 2260 communication

Error Recovery

  • Error Detection - Detect 2260 errors
  • Error Recovery - Recover from 2260 errors
  • Retry Mechanisms - Implement retry logic
  • Fallback Procedures - Use fallback procedures

Performance Optimization

  • Load Balancing - Balance 2260 load
  • Connection Pooling - Use connection pooling
  • Timeout Management - Manage 2260 timeouts
  • Resource Management - Manage 2260 resources

Error Handling

Common Response Codes

  • DFHRESP(NORMAL) - 2260 conversation successful
  • DFHRESP(NOTAUTH) - Not authorized for 2260 conversation
  • DFHRESP(INVREQ) - Invalid 2260 conversation request
  • DFHRESP(CONVIDERR) - Invalid 2260 conversation ID
  • DFHRESP(CONVFAILED) - 2260 conversation failed
  • DFHRESP(CONVTIMEOUT) - 2260 conversation timeout
  • DFHRESP(TERMIDERR) - 2260 terminal ID error
  • DFHRESP(TERMNOTFOUND) - 2260 terminal not found

Performance Considerations

2260 Efficiency

  • Optimize 2260 operations - Use efficient 2260 handling
  • Minimize 2260 overhead - Reduce 2260 processing overhead
  • Use 2260 pooling - Implement 2260 pooling
  • Monitor 2260 frequency - Track 2260 conversation patterns

System Impact

  • Monitor system impact - Track how 2260 affects the system
  • Optimize 2260 handling - Ensure efficient 2260 processing
  • Manage 2260 usage - Monitor 2260 consumption
  • Track performance metrics - Monitor 2260 handling performance

Best Practices

2260 Terminal Communication Best Practices

  • • Use appropriate 2260 communication patterns
  • • Implement proper error handling for 2260 operations
  • • Validate 2260 conversation data before processing
  • • Use appropriate 2260 management techniques
  • • Monitor 2260 activities and performance
  • • Maintain 2260 audit trails
  • • Handle 2260 errors gracefully

Explain It Like I'm 5 Years Old

Think of CICS CONVERSE (2260) like talking to a computer screen:

  • Computer Screen: "You have a computer screen" - 2260 terminal
  • Type Messages: "Type messages on the screen" - Send to terminal
  • See Answers: "See answers on the screen" - Receive from terminal
  • Talk Back: "Talk back and forth" - Continue conversation
  • Finish Talking: "Finish when done" - End conversation

Exercises

Exercise 1: Basic 2260 Terminal Conversation

Create a program that conducts a simple 2260 terminal conversation.

Exercise 2: Advanced 2260 Communication

Write a program that manages multiple 2260 terminal conversation operations.

Exercise 3: Error Handling

Implement comprehensive error handling for 2260 terminal conversation failures.