Интеграция приложений на основе WebSphere MQ


4 - часть 2


Параметры Hconn, Hobj, MsgDesc, BufferLength, Buffer, CompCode, Reason – такие же, как и в функции MQGET. Исключение составляет PutMsgOpts – опция MQPMO (Put-message options), служащая для того, чтобы положить сообщение в очередь. Поля структуры MQPMO приведены в таблице 8.5.

Таблица 8.5. Поля структуры MQPMO

Имя поля MQPMOТип поляОписание поляИмя константыЗначение по умолчанию
StrucIdMQCHAR4Идентификатор структурыMQPMO_STRUC_ID'PMOb'
VersionMQLONGНомер версии структурыMQPMO_VERSION_11
OptionsMQLONGОпции для управления MQPUT и MQPUT1MQPMO_NONE0
TimeoutMQLONGЗарезервированоНет-1
ContextMQHOBJИдентификатор объекта входной очередиНет0
KnownDestCountMQLONGЧисло сообщений, посланное успешно в локальную очередьНет0
UnknownDestCountMQLONGЧисло сообщений, посланное успешно в удаленную очередьНет0
InvalidDestCountMQLONGЧисло сообщений, которые возможно не посланыНет0
ResolvedQNameMQCHAR48Разрешенное имя очереди назначенияНетСтрока Null или пробел
ResolvedQMgrNameMQCHAR48Разрешенное имя менеджера назначенияНетСтрока Null или пробел
RecsPresentMQLONGЧисло записей помещенных сообщений или ответных записей в настоящее времяНет0
PutMsgRecFieldsMQLONGФлаг, индицирующий, что MQPMR поле присутствуетMQPMRF_NONE0
PutMsgRecOffsetMQLONGПогашение записи первого помещенного сообщения с момента старта MQPMOНет0
ResponseRecOffsetMQLONGПогашение записи первого ответа с момента старта MQPMOНет0
PutMsgRecPtrMQPTRАдрес записи первого помещенного в очередь сообщенияНетУказатель Null
ResponseRecPtrMQPTRАдрес записи первого ответаНетУказатель Null

Среди опций для управления MQPUT следует назвать:

  • MQPMO_NEW_MSG_ID - генерирует новый идентификатор сообщения
  • MQPMO_NEW_CORREL_ID - генерирует новый корреляционный идентификатор и заменяет поле CorrelId в опции MQMD этим идентификатором.
  • MQPMO_LOGICAL_ORDER - определяет, что сообщения в группах и сегментах пишутся в логическом порядке.
  • MQPMO_FAIL_IF_QUIESCING - выдает ошибку, если менеджер не доступен.
  • MQPMO_SYNCPOINT (MQPMO_NO_SYNCPOINT) - означает установку (отмену установки) контрольной точки (syncpoint control) на данном сообщении.
  • MQ_MSG_HEADER_LENGTH - определяется для очереди передачи (transmission queue)




Начало  Назад  Вперед



Книжный магазин