Как брокер узнает, что существует заголовок MQRFH2

У нас есть вычислительный узел, который копирует OutputRoot из InputRoot с заголовком MQRFH2, а затем устанавливает формат MQMD как "MQSTR" перед отправкой его на узел MQOutput.

В моей локальной системе (MQ и WMB 7.0), когда я пытаюсь протестировать поток и просмотреть очередь вывода из RFHUTILC, сообщение все еще имеет формат MQMD как MQHRF2 с надлежащими подробностями заголовка MQRFH2.

Хотя этот же поток при тестировании в других тестовых регионах выдает выходное сообщение с пустым форматом MQMD, а подробности RFH2 поступают в полезную нагрузку сообщения.

В чем может быть причина этой разницы?

1 ответ

Входное сообщение будет иметь заголовок RFH2 в InputRoot.MQRFH2 или в InputRoot.MQRFH2C, если вы используете компактный анализатор для RFH2, который будет скопирован в OutputRoot, и Broker устанавливает формат MQMD в MQHRF2, когда он видит этот заголовок в OutputRoot.

Чтобы удалить заголовок RFH2, вы должны сделать что-то вроде этого:

SET OutputRoot.MQMD.Format = OutputRoot.MQRFH2.Format;
SET OutputRoot.MQRFH2 = NULL;

Я не могу придумать объяснения различного поведения, которое вы видите, и у меня нет брокера V7 для тестирования. Между прочим, у вас не должно быть ни одного, поскольку это вне поддержки.

Другие вопросы по тегам