i know how you feel, chiqid. it can be confusing even with help. note that what you've received so far in terms of responses to your query all say the same thing. look at it this way (and let us use your terms):
first thing to remember: you decide on a message format
then,
side A has a module that formats the message, then puts it in the queue (MQPUT);
the message gets sent,
side B has a module that retrieves the message from the queue (MQGET), then parses the message according to the known format;
side B may then decide to respond;
using the same module or calling (invoking, starting, initiating, whatever way is known to side B) an entirely different module that formats the message and puts it in the queue (MQPUT);
the response gets sent,
side A retrievs the message and parses it according to the known format... and so on and so forth
NOTE that the key is the message format that each side understands, knows how to format and therefore also knows how to parse
whatever type of module you use, COBOL, VisualBasic, Java, etc. is rendered immaterial
THAT IS precisely the kind of advantage that MQ Series is supposed to give you - platform independence and language independence as well
regards...