How it works: the CICS-MQ bridge
The CICS®-MQ bridge enables an application that is not running in a CICS environment to use IBM® MQ messages to run a program or transaction on CICS and get a response.
A non-CICS application can use the CICS-MQ bridge from any environment that has access to a IBM MQ network that encompasses IBM MQ for z/OS®. The non-CICS application may wait for a response to come back before it runs the next CICS program (synchronous processing), or it may request one or more CICS programs to run, but not wait for a response (asynchronous processing).
When you use the CICS-MQ bridge to run a program or transaction on CICS, the CICS program contains no IBM MQ calls, because the bridge enables implicit Message Queue Interface (MQI) support. You can therefore re-engineer legacy CICS applications to be controlled from other platforms by IBM MQ messages, without having to rewrite, recompile, or relink them. The IBM MQ messages include the IBM MQ CICS information header (the MQCIH structure) to supply control options for the CICS applications.
- CICS programs that are called using the EXEC CICS LINK command, known as DPL programs. The programs must conform to the DPL subset of the CICS API; that is, they must not use CICS terminal or sync point facilities. You can use the CICS-MQ bridge to run a single CICS program, or a set of CICS programs that form a unit of work.
- CICS transactions that were designed to be run from a 3270 terminal, known as 3270 transactions. The transactions can use Basic Mapping Support (BMS) or terminal control commands. They can be conversational or part of a pseudoconversation. They are permitted to issue sync points.
The CICS-MQ bridge uses standard CICS and IBM MQ security features. You can configure it to authenticate, trust, or ignore the user ID of the requestor. The MQCIH structure in the IBM MQ messages provides data for security checking.
The CICS-MQ bridge uses a bridge monitor, which is a transaction with the default name CKBR, to browse a IBM MQ request queue for new requests to run CICS applications. The request queue must reside on the local z/OS queue manager that is connected to the CICS-MQ adapter. The CICS-MQ bridge tasks typically run in the same CICS region as the bridge monitor. The user programs can be in the same or a different CICS region, using CICS transaction routing as necessary. If you need a request to be processed by a specific CICS region, you can name the CICS region in the MQCIH header.