Writing WebSphere MQ applications to invoke IMS conversational transactions
When you write an application that invokes an IMS™ conversation, consider the following:
- Include an MQIIH structure with your application message.
- Set the CommitMode in MQIIH to MQICM_SEND_THEN_COMMIT.
- To invoke a new conversation, set TranState in MQIIH to MQITS_NOT_IN_CONVERSATION.
- To invoke second and subsequent steps of a conversation, set TranState to MQITS_IN_CONVERSATION, and set TranInstanceId to the value of that field returned in the previous step of the conversation.
- There is no easy way in IMS to find the value of a TranInstanceId, should you lose the original message sent from IMS.
- The application must check the TranState of messages from IMS to check whether the IMS transaction has terminated the conversation.
- We can use /EXIT to end a conversation. You must also quote the TranInstanceId, set TranState to MQITS_IN_CONVERSATION, and use the WebSphere MQ queue on which the conversation is being carried out.
- We cannot use /HOLD or /REL to hold or release a conversation.
- Conversations invoked through the WebSphere MQ-IMS bridge are terminated if IMS is restarted.
Parent topic:
Writing your program
fg16010_