Connect to and disconnecting from a queue manager

To use IBM MQ programming services, a program must have a connection to a queue manager. Use this information to learn how to connect to and disconnect from a queue manager.

The way that this connection is made depends on the platform and the environment in which the program is operating:

    IBM MQ for Multiplatforms
    Programs that run in these environments can use the MQCONN MQI call to connect to, and the MQDISC call to disconnect from, a queue manager. Alternatively, programs can use the MQCONNX call.

    IBM MQ for z/OS batch
    Programs that run in this environment can use the MQCONN MQI call to connect to, and the MQDISC call to disconnect from, a queue manager. Alternatively, programs can use the MQCONNX call.
    z/OS batch programs can connect, consecutively or concurrently, to multiple queue managers on the same TCB.

    IMS
    The IMS control region is connected to one or more queue managers when it starts. This connection is controlled by IMS commands. For information about how to control the IMS adapter on z/OS, see Administer IBM MQ for z/OS. However, writers of message queuing IMS programs must use the MQCONN MQI call to specify the queue manager to which they want to connect. They can use the MQDISC call to disconnect from that queue manager.
    Following an IMS call that establishes a syncpoint, and before processing a message for another user, the IMS adapter ensures that the application closes handles and disconnects from the queue manager. See Syncpoints in IMS applications.
    IMS programs can connect, consecutively or concurrently, to multiple queue managers on the same TCB.

    CICS Transaction Server for z/OS
    CICS programs do not need to do any work to connect to a queue manager because the CICS system itself is connected. This connection is typically made automatically at initialization, but we can also use the CKQC transaction that is supplied with IBM MQ for z/OS. For more information about CKQC, see Administer IBM MQ for z/OS.
    CICS tasks can connect only to the queue manager that the CICS region is connected to.
    CICS programs can also use the MQI connect and disconnect calls (MQCONN and MQDISC). We might want to do this so that we can port these applications to non-CICS environments with a minimum of recoding. However, these calls always complete successfully in a CICS environment. This means that the return code might not reflect the true state of the connection to the queue manager.

    TXSeries for Windows and Open Systems
    These programs do not need to do any work to connect to a queue manager because the CICS system itself is connected. Therefore, only one connection at a time is supported. CICS applications must issue an MQCONN call to obtain a connection handle, and an MQDISC call before they exit.

Use the following links to find out more about connecting and disconnecting from a queue manager:

Parent topic: Writing a procedural application for queuing


Related concepts