I'm getting SQLCODE -805 in Program B, when trying to do an XCTL from program A after executing a DB2 query. When I'm intertesting the same in Program B, I can see in the SQLERRMC , the plan of Program A still instead of Program B. Can anyone help me out please in resolving this?
Your problem can be rectified in two ways.
1). Add a statement in the program B after the PROCEDURE DIVISION.
MOVE 'TXID' TO EIBTRNID -- TXID is the transaction id of the pgm B.
2). Issue a CICS statement in the begining of the program.
RETURN TRANSID(TXID) COMMARE(COMM-AREA)
Here TXID is the transaction id of the prog B.
Before that make sure that the program B is having a TXID and its corresponding PLAN name.