Hi,
just got the information from our MQ guys, that I'm not allowed to use the MsgID, but I can use the CorrelId (MQBYTE24). Can anybody of you tell me, how to retrieve the CorrelID again? I tried to do it that way:
$queue = MQSeries::Queue->new (Queue => $queue_name,
Mode => 'input');
$message = MQSeries::Message->new (MsgDesc => {format => MQFMT_STRING},
CorrelId => "$correlid",
Data => "@rows");
$queue->Get(Message => $message);
#print "Message:". $message->Data()."\n";
$correlid = pack("B24", $message->MsgDesc("CorrelId"));
print "CorrelId: $correlid\n";
but the output is emty :-(
I've set (hope so) the CorrelID using these commands:
$correlid = "CIM";
$correlid = unpack ("B24", $correlid);
#print "unpack'd: $correlid\n";
$queue = MQSeries::Queue->new (Queue => $queue_name,
Mode => 'output');
$message = MQSeries::Message->new (MsgDesc =>
{format => MQFMT_STRING},
CorrelID => "$correlid",
Data => "@rows");
$queue->Put(Message => $message);
The value in $correlid ("CIM") at least was translated to "010000110100100101001101"
Our MQ guys couldn't help me, because they only have Java skills.
Thanks a lot,
Chris