MQCMD_INQUIRE_TOPIC (查询主题) 响应

对 "查询主题" (MQCMD_INQUIRE_TOPIC) PCF 命令的响应由后跟 TopicName 结构 (仅在 z/OS® 上为 QSG Disposition 结构) 的响应头以及请求的属性参数结构组合 (如果适用) 组成。

始终返回:
TopicName, TopicType, [z/OS] QSGDisposition
如果请求,返回:
AlterationDate, AlterationTime, CapExpiry, ClusterName, ClusterObjectState, ClusterPubRoute, CommInfo, Custom, DefPersistence, DefPriority, DefPutResponse, DurableModelQName, DurableSubscriptions, InhibitPublications, InhibitSubscriptions, Multicast, NonDurableModelQName, NonPersistentMsgDelivery, [MQ 9.4.5 Feb 2026]OTELPropagationControl,[MQ 9.4.5 Feb 2026]OTELTrace, PersistentMsgDelivery, ProxySubscriptions, PublicationScope, QMgrName, SubscriptionScope, TopicDesc, TopicString, UseDLQ, WildcardOperation

响应数据

AlterationDate (MQCFST)
更改日期 (参数标识 :MQCA_ALTERATION_DATE)。

上次变更信息的日期,格式为 yyyy-mm-dd

AlterationTime (MQCFST)
更改时间 (参数标识 :MQCA_ALTERATION_TIME)。

上次变更信息的时间,格式为 hh.mm.ss

[MQ 9.4.0 2024 年 6 月][UNIX、Linux、Windows、IBM i]CapExpiry (MQCFIN)
受限消息到期处理 (参数标识 MQIA_CAP_EXPIRY)。

指定使用对象放入的消息的生存期限制,以秒的 10ths 表示。

ClusterName (MQCFST)
此主题所属的集群的名称。 (参数标识: MQCA_CLUSTER_NAME)。

字符串的最大长度为 MQ_CLUSTER_NAME_LENGTH将此参数设置为此队列管理器所属的集群将使得集群中的所有队列管理器都知晓此主题。 对于此主题或其下方的主题字符串的任何发布,放入集群中任何队列管理器之后,都会将其传播到集群中任何其他队列管理器上的预订。 有关更多详细信息,请参阅 分布式发布/预订网络

值可以是以下任意值:
Blank
如果主题树中此主题上方没有任何主题对象将将此参数设置为集群名称,那么此主题不属于集群。 此主题的发布和预订不会传播至发布/预订集群连接的队列管理器。 如果主题树中更高位置的某个主题节点设置了集群名称,那么也会在整个集群中传播此主题的发布和预订。
如果未指定任何值,那么此值是此参数的缺省值。
字符串
该主题属于此集群。 建议不要将此设置为与主题树中此主题对象上方的主题对象不同的集群。 集群中的其他队列管理器将支持此对象的定义,除非这些队列管理器上存在相同名称的本地定义。
此外,如果 PublicationScopeSubscriptionScope 设置为 MQSCOPE_ALL,此值是用于传播发布和预订(对于本主题,用于发布/预订集群连接的队列管理器)的集群。
ClusterObjectState (MQCFIN)
集群主题定义的当前状态 (参数标识 :MQIA_CLUSTER_OBJECT_STATE)。
值可以是以下任意值:
MQCLST_ACTIVE
集群主题已正确配置,并由此队列管理器遵循。
MQCLST_PENDING
仅供托管队列管理器查看,创建此主题但尚未将完整存储库传播至集群时报告此状态。 原因可能是主机队列管理器未连接至完整存储库,或者完整存储库已将该主题视为无效主题。
MQCLST_INVALID
此集群主题定义与集群中先前的定义相冲突,因此当前未处于活动状态。
MQCLST_ERROR
该主题对象发生了错误。
该参数通常用于当在不同的队列管理器上定义了同一集群主题的多个定义且这些定义彼此不同时帮助进行诊断。 请参阅 发布/预订集群的路由: 行为说明
ClusterPubRoute (MQCFIN)
集群中队列管理器之间发布的路由行为 (参数标识 :MQIA_CLUSTER_PUB_ROUTE)。
值可以是以下任意值:
MQCLROUTE_DIRECT
在您配置有关队列管理器的直接路由集群主题时,集群中的所有队列管理器都会知晓集群中的所有其他队列管理器。 在执行发布和预订操作时,每个队列管理器都可以直接连接到集群中的任何其他队列管理器。
MQCLROUTE_TOPIC_HOST
在您使用主题主机路由时,集群中的所有队列管理器都会知晓托管了路由主题定义的集群队列管理器(即您在其上定义了主题对象的队列管理器)。 在执行发布和预订操作时,集群中的队列管理器只会连接到这些主题主机队列管理器,而不会彼此直接连接。 主题主机队列管理器负责将发布从执行发布的队列管理器路由至具有匹配预订的队列管理器。
CommInfo (MQCFST)
通信信息对象的名称 (参数标识 :MQCA_COMM_INFO_NAME)。

显示要用于此主题节点的通信信息对象的名称的解析值。

字符串的最大长度为 MQ_COMM_INFO_NAME_LENGTH。

定制 (MQCFST)
新功能部件的定制属性 (参数标识 :MQCA_CUSTOM)。

该属性包含名称-值对,其形式为 NAME(VALUE)。 值是一个由零个或多个属性-值对组成的列表,采用 MQSC 风格的语法,至少用一个空格隔开。 以 IBM, AMQ, CSQMQ 开头的属性名称仅供 IBM® 使用。 附加保留属性为 CAPEXPRYSQGETTMRPAGEVAL

引入使用此属性的功能时,将更新此描述。
[不推荐][MQ 9.4.0 2024 年 6 月][MQ 9.4.0 2024 年 6 月]注:IBM MQ 9.4.0开始,主题 CapExpiry 属性将取代在 字段 MQCA_CUSTOM 中使用 (整数) CAPEXPRY 选项的功能。 如果属性 MQCA_CUSTOM 中已定义了整数选项 CAPEXPRY ,则无法设置主题 CapExpiry 属性。 您应修改现有主题以设置主题 CapExpiry 属性,并从属性 MQCA_CUSTOM 中取消设置 CAPEXPRY (整数)选项。 有关允许值的更多信息,请参阅 CapExpiry
DefPersistence (MQCFIN)
缺省持久性 (参数标识 :MQIA_TOPIC_DEF_PERSISTENCE)。
值可以是:
MQPER_PERSISTENCE_AS_PARENT
缺省持久性基于主题树中最接近的父管理主题对象的设置。
MQPER_PERSISTENT
消息是持久消息。
MQPER_NOT_PERSISTENT
消息不是持久消息。
DefPriority (MQCFIN)
缺省优先级 (参数标识 :MQIA_DEF_PRIORITY)。
DefPutResponse (MQCFIN)
缺省 put 响应 (参数标识 :MQIA_DEF_PUT_RESPONSE_TYPE)。
值可以是:
MQPRT_ASYNC_RESPONSE
异步发出 put 操作,返回 MQMD 字段的子集。
MQPRT_RESPONSE_AS_PARENT
缺省 put 响应基于主题树中最接近的父管理主题对象的设置。
MQPRT_SYNC_RESPONSE
同步发出 put 操作,返回响应。
DurableModelQName (MQCFST)
要用于持久受管预订的模型队列的名称 (参数标识 :MQCA_MODEL_DURABLE_Q)。

字符串的最大长度为 MQ_Q_NAME_LENGTH。

DurableSubscriptions (MQCFIN)
是否允许应用程序进行持久预订 (参数标识 :MQIA_DURABLE_SUB)。
值可以是:
MQSUB_DURABLE_AS_PARENT
是否允许持久预订取决于主题树中最接近的父管理主题对象的设置。
MQSUB_DURABLE_ALLOWED
允许持久预订。
MQSUB_DURABLE_INHIBITED
不允许持久预订。
InhibitPublications (MQCFIN)
此主题是否允许发布 (参数标识:MQIA_抑制 _pub)。
值可以是:
MQTA_PUB_AS_PARENT
是否可以将消息发布到此主题基于主题树中最接近的父管理主题对象的设置。
MQTA_PUB_INHIBITED
本主题禁止发布。
MQTA_PUB_ALLOWED
此主题允许发布。
InhibitSubscriptions (MQCFIN)
此主题是否允许预订 (参数标识:MQIA_禁止子)。
值可以是:
MQTA_SUB_AS_PARENT
应用程序是否可以预订此主题取决于主题树中最接近的父管理主题对象的设置。
MQTA_SUB_INHIBITED
此主题禁止预订。
MQTA_SUB_ALLOWED
此主题允许预订。
多点广播 (MQCFIN)
是否将多点广播用于此主题 (参数标识:MQIA_多点广播)。

返回值:

MQMC_ENABLED
可以使用多点广播。
MQMC_DISABLED
不使用多点广播。
MQMC_ONLY
只能在此主题上使用多点广播发布/预订。
NonDurableModelQName (MQCFST)
要用于非持久受管预订的模型队列的名称 (参数标识 :MQCA_MODEL_NON_DURABLE_Q)。

字符串的最大长度为 MQ_Q_NAME_LENGTH。

NonPersistentMsgDelivery (MQCFIN)
发布到此主题的非持久消息的传递机制 (参数标识 :MQIA_NPM_DELIVERY)。
值可以是:
MQDLV_AS_PARENT
所使用的交付机制基于在与此主题相关的主题树中找到的第一个父管理节点的设置。
MQDLV_ALL
必须将非持久消息传递到所有订户,而不考虑 MQPUT 调用报告成功的持久性。 如果发生对任何订户的传递失败,那么没有其他订户接收到消息,并且 MQPUT 失败。
MQDLV_ALL_DUR
必须将非持久消息传递到所有持久订户。 将非持久消息传递至任何一个非持久订户的失败不会将错误返回至 MQPUT 调用。 如果发生传递到持久订户的故障,那么不会有其他订户接收到消息,并且 MQPUT 将失败。
MQDLV_ALL_AVAIL
非持久消息将传递到可以接受该消息的所有订户。 将消息传递至任何一个订户的失败不会阻止其他订户接收到该消息。
[ MQ 9.4.5 2026年2月][z/OS]OTELPropagationControl (MQCFIN)
队列管理器是否会自动将应用程序环境中的跟踪上下文传播到MQPUT上的消息。 参数标识符:MQIA_OTEL_PROPAGATION_CONTROL。

有关自动传播的更多信息,请参阅跟踪传播

可以是下列其中一个值:
MQOTEL_PCTL_AS_PARENT
队列管理器是否自动从应用程序环境传播跟踪上下文,取决于在与该主题相关的主题树中找到的第一个父管理节点的设置。 这是默认设置,但 SYSTEM.BASE.TOPIC 除外。
MQOTEL_PCTL_QMGR
使用队列管理器上的 OTELPCTL 值。 这是 SYSTEM.BASE.TOPIC 的默认设置。
MQOTEL_PCTL_手册
自动传播不会发生。 如有需要,应用程序可手动传播跟踪上下文属性。
MQOTEL_PCTL_AUTO
如果应用程序处于支持自动传播的环境中,则会发生自动传播。 如果队列管理器位于队列共享组中,则仅当所有队列管理器均在 IBM MQ 9.4.5 或之后启动时,才能设置此值。 否则,该命令将失败,并在队列管理器作业日志 CSQM533I 中输出消息 CSQM532I 和 ,以标识不支持 的队列 OTELPCTL管理器。
[ MQ 9.4.5 2026年2月][z/OS]OTELTrace(MQCFIN)
队列管理器是否会在消息发布到该主题时发出跨度。 参数标识符:MQIA_OTEL_TRACE。

有关跨度发射的更多信息,请参阅跨度发射

可以是下列其中一个值:
MQOTEL_TRACE_AS_PARENT
队列管理器是否会在消息发布到该主题时发出跨度。 基于在与该主题相关的主题树中找到的第一个父管理节点设置。 这是默认设置,但 SYSTEM.BASE.TOPIC 除外。
MQOTEL_TRACE_QMGR
使用队列管理器上的 OTELTRAC 值。 这是 SYSTEM.BASE.TOPIC 的默认设置。
MQOTEL_TRACE_OFF
即使消息具有跟踪上下文,也不会输出跨度。
MQOTEL_TRACE_ON
如果消息具有跟踪上下文,则会生成跨度。
PersistentMsgDelivery (MQCFIN)
发布到此主题的持久消息的传递机制 (参数标识 :MQIA_PM_DELIVERY)。
值可以是:
MQDLV_AS_PARENT
所使用的交付机制基于在与此主题相关的主题树中找到的第一个父管理节点的设置。
MQDLV_ALL
必须将持久消息传递到所有订户,而不考虑 MQPUT 调用报告成功的持久性。 如果发生对任何订户的传递失败,那么没有其他订户接收到消息,并且 MQPUT 失败。
MQDLV_ALL_DUR
必须将持久消息传递到所有持久订户。 将持久消息传递至任何一个非持久订户的失败不会将错误返回至 MQPUT 调用。 如果发生传递到持久订户的故障,那么不会有其他订户接收到消息,并且 MQPUT 将失败。
MQDLV_ALL_AVAIL
持久消息将传递到可以接受该消息的所有订户。 将消息传递至任何一个订户的失败不会阻止其他订户接收到该消息。
ProxySubscriptions (MQCFIN)
是否要将此主题的代理预订 (即使不存在本地预订) 发送到直接连接的队列管理器 (参数标识 :MQIA_PROXY_SUB)。
值可以是:
MQTA_PROXY_SUB_FORCE
即使不存在本地预订,也会将代理预订发送到已连接的队列管理器。
MQTA_PROXY_SUB_FIRSTUSE
仅当存在本地预订时,才会为此主题发送代理预订。
PublicationScope (MQCFIN)
此队列管理器是将发布作为层次结构的一部分还是作为发布/预订集群的一部分传播到队列管理器 (参数标识 :MQIA_PUB_SCOPE)。
值可以是:
MQSCOPE_ALL
此主题的发布将传播到分层连接的队列管理器以及发布/预订集群连接的队列管理器。
MQSCOPE_AS_PARENT
此队列管理器是将发布作为层次结构的一部分传播到队列管理器,还是作为发布/预订集群的一部分传播到队列管理器,这取决于在与此主题相关的主题树中找到的第一个父管理节点的设置。

MQSCOPE_AS_PARENT 是此参数的缺省值 (如果未指定任何值)。

MQSCOPE_QMGR
此主题的发布不会传播到其他队列管理器。
注: 您可以通过在 "放置消息选项" 上使用 MQPMO_SCOPE_QMGR 逐个发布来覆盖此行为。
QMgrName (MQCFST)
本地队列管理器的名称 (参数标识 :MQCA_CLUSTER_Q_MGR_NAME)。

字符串的最大长度为 MQ_Q_MGR_NAME_LENGTH

SubscriptionScope (MQCFIN)
此队列管理器是将预订作为层次结构的一部分还是作为发布/预订集群的一部分 (参数标识 :MQIA_SUB_SCOPE) 传播到队列管理器。
值可以是:
MQSCOPE_ALL
此主题的预订将传播到分层连接的队列管理器以及发布/预订集群连接的队列管理器。
MQSCOPE_AS_PARENT
此队列管理器是将预订作为层次结构的一部分传播到队列管理器,还是作为发布/预订集群的一部分传播到队列管理器,这取决于在与此主题相关的主题树中找到的第一个父管理节点的设置。

MQSCOPE_AS_PARENT 是此参数的缺省值 (如果未指定任何值)。

MQSCOPE_QMGR
此主题的预订不会传播到其他队列管理器。
注: 您可以逐个预订地覆盖此行为,在预订描述符上使用 MQSO_SCOPE_QMGR 或在 DEFINE SUB 上使用 SUBSCOPE (QMGR)。
TopicDesc (MQCFST)
主题描述 (参数标识 :MQCA_TOPIC_DESC)。

最大长度为 MQ_TOPIC_DESC_LENGTH。

TopicName (MQCFST)
主题对象名 (参数标识 :MQCA_TOPIC_NAME)。

字符串的最大长度为 MQ_TOPIC_NAME_LENGTH

TopicString (MQCFST)
主题字符串 (参数标识 :MQCA_TOPIC_STRING)。

此字符串中的 "/" 字符具有特殊含义。 它将主题树中的元素进行定界。 主题字符串可以以 "/" 字符开头,但不需要。 以 "/" 字符开头的字符串与以 "/" 字符开头的字符串不同。 主题字符串不能以 "/" 字符结尾。

字符串的最大长度为 MQ_TOPIC_STR_LENGTH。

TopicType (MQCFIN)
此对象是本地主题还是集群主题 (参数标识 :MQIA_TOPIC_TYPE)。
值可以是:
MQTOPT_LOCAL
此对象是本地主题。
MQTOPT_CLUSTER
此对象是集群主题。
UseDLQ (MQCFIN)
将发布消息 cannote 传递到其正确的订户队列 (参数标识 :MQIA_USE_DEAD_LETTER_Q) 时,应使用死信队列 (还是未传递的消息队列)。
该值可能为:
MQUSEDLQ_NO
无法传递到其正确订户队列的发布消息被视为未能将消息放入主题,并且根据 NPMSGDLV 和 PMSGDLV 的设置,应用程序的 MQPUT 将失败。
MQUSEDLQ_YES
如果队列管理器 DEADQ 属性提供死信队列的名称,那么将使用该队列,否则 behvaiour 将与 MQUSEDLQ_NO 相同。
MQUSEDLQ_AS_PARENT
是否使用死信队列取决于主题树中最接近的管理主题对象的设置。
WildcardOperation (MQCFIN)
预订的行为,包括对此主题执行的通配符 (参数标识 :MQIA_WILDCARD_OPERATION)。
值可以是:
MQTA_PASSTHRU
使用比此主题对象中的主题字符串更具体的通配符主题名称进行的预订将接收对此主题以及比此主题更具体的主题字符串进行的发布。 MQTA_PASSTHRU 是 IBM MQ随附的缺省值。
MQTA_BLOCK
使用比此主题对象中的主题字符串更具体的通配符主题名称进行的预订不会接收到此主题或比此主题更具体的主题字符串的发布。