CA Gen: .NET Proxy Over MQ and commcfg.txt syntax for MQS and MQSC

book

Article ID: 75523

calendar_today

Updated On:

Products

CA Gen CA Gen - Workstation Toolset CA Gen - Host Encyclopedia CA Gen - Run Time Distributed

Issue/Introduction

The commcfg.txt file has comments in the '# TRANCODES #' section showing the syntax for running on a device with MQ: 
... 
# For MQSeries (MQS) the format is: 
# <TRANCODE>=MQS {Queue Manager} {Queue Name} {Reply Queue Name} 
# For MQSeries (MQI-client) the format is: 
# <TRANCODE>=MQSC {Queue Manager} {Queue Name} {Reply Queue Name} 
... 

When executing a test harness on a laptop that has MQ Client v8.x installed, the Gen test harness successfully executes when using this syntax: 
*=MQS... 
(*=MQS TC11 AxxxxxA.GEN.SANDBOX.TC01.REQUEST AxxxxxA.GEN.SANDBOX.TC01.REPLY) 
and it also executes successfully when using this syntax: 
*=MQSC... 
(*=MQSC TQ11 AxxxxxA.GEN.SANDBOX.TC01.REQUEST AxxxxxA.GEN.SANDBOX.TC01.REPLY) 

Question: 
Does it matter which syntax is used on a device with only MQ client installed?  If yes, which syntax should be used?

Resolution

Technically the MQSC is for connections where the QUEUE manager is remote and the MQS is for connections to a local QUEUE manager. 

A change was made in 8.5 to fix a problem where .NET clients could not connect to a remote queue (MQSC).  That change may make the MQS vs MQSC unnecessary.  In JAVA, Gen doesn't use or pay attention to the MQS vs MQSC, but in GUI clients it does.  The behavior of .NET was changed to be like JAVA.