INF: Determine the Conversation State in CICS Program After SYNCPOINT Command Is Issued

ID: Q234062


The information in this article applies to:


SUMMARY

This article deals with sample application code for a host Customer Information Control System (CICS) TP monitor.

The sample program, SyncLev2.txt, is installed with the COM Transaction Integrator for CICS and IMS feature of SNA Server. It is found in the following directory:

SNA\COMTI\SampleCode\SyncLev2


MORE INFORMATION

The following code snippet from it is not correct.


********************************************************
      ** CHECK THE EIB FIELDS TO DETERMINE WHAT ACTION COMTI
      ** HAS REQUESTED, THEN ISSUE EITHER A SYNCPOINT OR     
      ** ROLLBACK.
      ********************************************************
       NORMAL-TX-SYNCPOINT.
           IF EIBSYNC = X'FF'
              EXEC CICS SYNCPOINT END-EXEC
              EXEC CICS RECEIV
                        RESP(CMD-RESP)
                        STATE(CONV-STATE)
                        END-EXEC 
After the CICS syncpoint command is issued (EXEC CICS SYNCPOINT), the LU6.2 conversation may be in either a receive state (code: 88) or in a free state (code: 85). If it is in a receive state, you need to issue an EXEC CICS RECEIVE command in the program, as follows, otherwise, just quit the program.

*FIRST, DETERMINE THE CONVERSATION STATE.
 EXEC CICS EXTRACT ATTRIBUTES
   STATE (CONV-STATE)
   END-EXEC

*THEN, ACT ACCORDINGLY.
 IF CONV-STATE = 88
   EXEC CICS RECEIVE
     RESP(CMD-RESP)
     STATE(CONV-STATE)
     END-EXEC
   END-IF 
Similar logic should also be executed if the EXEC CICS SYNCPOINT ROLLBACK command is issued.

Additional query words:


Keywords          : sna4sp2 
Version           : WINDOWS:4.0 SP2,4.0SP2
Platform          : WINDOWS 
Issue type        : kbhowto 

Last Reviewed: June 11, 1999