DOCUMENT:Q214406 05-APR-2000 [sna] TITLE :CICS ABEND ATCV When Using Two Phase Commit and CICS Remote Envi PRODUCT :Microsoft SNA Server PROD/VER:WINDOWS:1.0,1.0 SP1 OPER/SYS: KEYWORDS:kbfaq ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft COM Transaction Integrator for CICS and IMS, versions 1.0, 1.0 SP1 ------------------------------------------------------------------------------- SYMPTOMS ======== A CICS ABEND error message is recorded in the CICS log on the mainframe computer when the COM Transaction Integrator (COMTI) method invoked is participating in a Microsoft Transaction Server transaction using two phase commit and SNA Server Sync Point Support (for IBM Sync Level 2). For example: "DFHAC2236 WNWCI51C Transaction TSQU abend ATCV in program LU62TSQU. Updates to local recoverable resources will be backed out." In this example, DFHAC2236 is the IBM message number or ID and WNWCI51C is the name of the CICS region. This error can occur when you use a "CICS" remote environment (SNA Server version 4.0 and SNA Server version 4.0 Service Pack 1) or a "CICS Using LU6.2" remote environment (SNA Server version 4.0 SP2). The COMTI component library installed in the Microsoft Transaction Server package would be marked as "Requires a transaction" or "Requires a new transaction". CAUSE ===== The CICS program may have been modeled after Synclevel2.txt, the two-phase commit sample program provided with COMTI in the samples directory. This code contains the following: ******************************************************** ** 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 RECEIVE RESP(CMD-RESP) STATE(CONV-STATE) END-EXEC ELSE IF EIBSYNRB = X'FF' EXEC CICS SYNCPOINT ROLLBACK END-EXEC ELSE EXEC CICS ABEND ABCODE('UNKN') END-EXEC END-IF END-IF. The EXEC CICS RECEIVE is inappropriate if the conversation is in a "free" state, but is appropriate if the conversation is in a "receive" state. WORKAROUND ========== NOTE: This workaround may not address all the possible conversational states that may occur, however, it does handle those encountered during testing at Microsoft. Customers may find this solution is not comprehensive. After the syncpoint command is issued (EXEC CICS SYNCPOINT), the conversation may either be in a receive state (code: 88) or in a free state (code: 85). If it is in a receive state , you should issue an EXEC CICS RECEIVE statement, as follows, otherwise just terminate the program as in the product sample. The following code would accomplish the task: *FIRST, DETERMINE THE CONVERSATION STATE. EXEC CICS EXTRACT ATTRIBUTES STATE (CONV-STATE) END-EXEC. *THEN, CONDITIONALLY, ISSUE THE RECEIVE. IF CONV-STATE = 88 EXEC CICS RECEIVE RESP(CMD-RESP) STATE(CONV-STATE) END-EXEC END-IF. Incidentally, similar logic would be appropriate after the EXEC CICS SYNCPOINT ROLLBACK END-EXEC statement presented above as excerpted from the COMTI sample. MORE INFORMATION ================ For more information, please see the IBM manual, "CICS Trasnaction Server for OS/390 CICS Messages and Codes Relase 2." The document ID number is GC33-1694-01. Additional query words: ====================================================================== Keywords : kbfaq Technology : kbAudDeveloper kbCOMTISearch kbCOMTI100 kbCOMTI100SP1 Version : WINDOWS:1.0,1.0 SP1 Issue type : kbprb ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 2000.