MQEPH-嵌入式 PCF 头

MQEPH 结构描述了当消息是可编程命令格式 (PCF) 消息时,该消息中存在的其他数据。 PCFHeader 字段定义遵循此结构的 PCF 参数,这允许您将 PCF 消息数据与其他头一起遵循。

格式名称

mqfmt_embedded_pcf

字符集和编码

MQEPH 中的数据必须是由 MQENC_NATIVE 提供的本地队列管理器的 CodedCharSetId 队列管理器属性和编码所提供的字符集。

将 MQEPH 的字符集和编码设置为 MQMD 中的 CodedCharSetIdEncoding 字段 (如果 MQEPH 结构位于消息数据的开头) 或 MQEPH 结构之前的头结构 (所有其他情况)。

用法

不能使用 MQEPH 结构将命令发送到命令服务器或任何其他队列管理器 PCF 接受服务器。

同样,命令服务器或任何其他接受队列管理器 PCF 的服务器不会生成包含 MQEPH 结构的响应或事件。

字段

注: 在下表中,字段按用法 (而不是按字母顺序) 进行分组。 子主题遵循相同的顺序。
表 1. MQEPH for MQEPH 中的字段
字段名称和描述 常量的名称 常量的初始值 (如果有)
StrucId (结构标识) MQEPH_结构ID 'EPH¬'
版本 (结构版本号) MQEPH_VERSION_1 1
StrucLength (MQEPH 结构的长度加上 MQCFH 及其后的参数结构) mqeph_struc_length_fixed 68
编码 (遵循最后一个 PCF 参数结构的数据的数字编码) None 0
CodedCharSetId(最后一个 PCF 参数结构之后数据的字符集标识符) mqccsi_undefined 0
格式 (遵循最后一个 PCF 参数结构的数据的格式名) MQFMT_NONE 空白
标志 (标志) MQEPH_无 0
PCFHeader (可编程命令格式 (PCF) 头) 表 1 中定义的名称和值 0
注:
  1. 符号 ¬ 表示单个空白字符。
  2. 在 C 编程语言中,宏变量 MQEPH_DEFAULT 包含表中列出的值。 通过以下方式使用它来为结构中的字段提供初始值:
    MQEPH MyEPH = {MQEPH_DEFAULT};
    

语言声明

MQEPH 的 C 声明

typedef struct tagMQEPH MQEPH;
struct tagMQDH {
  MQCHAR4  StrucId;          /* Structure identifier */
  MQLONG   Version;          /* Structure version number */
  MQLONG   StrucLength;      /* Total length of MQEPH including the MQCFH
                                and parameter structures that follow it */
  MQLONG   Encoding;         /* Numeric encoding of data that follows last
                                PCF parameter structure */
  MQLONG   CodedCharSetId;   /* Character set identifier of data that
                                follows last PCF parameter structure */
  MQCHAR8  Format;           /* Format name of data that follows last PCF
                                parameter structure */
  MQLONG   Flags;            /* Flags */
  MQCFH    PCFHeader;        /* Programmable command format header */
 };

COBOL MQEPH 的申报

**   MQEPH structure
  10 MQEPH.
**    Structure identifier
   15 MQEPH-STRUCID         PIC X(4).
**    Structure version number
   15 MQEPH-VERSION         PIC S9(9) BINARY.
**    Total length of MQEPH structure including the MQCFH
**    and parameter structures that follow it
   15 MQEPH-STRUCLENGTH     PIC S9(9) BINARY.
**    Numeric encoding of data that follows last
**    PCF structure
   15 MQEPH-ENCODING        PIC S9(9) BINARY.
**    Character set identifier of data that
**    follows last PCF parameter structure
   15 MQEPH-CODEDCHARSETID  PIC S9(9) BINARY.
**    Format name of data that follows last PCF
**    parameter structure
   15 MQEPH-FORMAT          PIC X(8).
**    Flags
   15 MQEPH-FLAGS           PIC S9(9) BINARY.
**    Programmable command format header
   15 MQEPH-PCFHEADER.
**      Structure type
     20 MQEPH-PCFHEADER-TYPE           PIC S9(9) BINARY.
**      Structure length
     20 MQEPH-PCFHEADER-STRUCLENGTH    PIC S9(9) BINARY.
**      Structure version number
     20 MQEPH-PCFHEADER-VERSION        PIC S9(9) BINARY.
**      Command identifier
     20 MQEPH-PCFHEADER-COMMAND        PIC S9(9) BINARY.
**      Message sequence number
     20 MQEPH-PCFHEADER-MSGSEQNUMBER   PIC S9(9) BINARY.
**      Control options
     20 MQEPH-PCFHEADER-CONTROL        PIC S9(9) BINARY.
**      Completion code
     20 MQEPH-PCFHEADER-COMPCODE       PIC S9(9) BINARY.
**      Reason code qualifying completion code
     20 MQEPH-PCFHEADER-REASON         PIC S9(9) BINARY.
**      Count of parameter structures
     20 MQEPH-PCFHEADER-PARAMETERCOUNT PIC S9(9) BINARY.

PL/I MQEPH 的申报

dcl
 1 MQEPH based,
  3 StrucId         char(4),       /* Structure identifier */
  3 Version         fixed bin(31), /* Structure version number */
  3 StrucLength     fixed bin(31), /* Total Length of MQEPH including the
                                      MQCFH and parameter structures that
                                      follow it
  3 Encoding        fixed bin(31), /* Numeric encoding of data that follows
                                      last PCF parameter structure
  3 CodedCharSetId  fixed bin(31), /* Character set identifier of data that
                                      follows last PCF parameter structure
  3 Format          char(8),       /* Format name of data that follows last
                                      PCF parameter structure */
  3 Flags           fixed bin(31), /* Flags */
  3 PCFHeader,                     /* Programmable command format header
   5 Type           fixed bin(31), /* Structure type */
   5 StrucLength    fixed bin(31), /* Structure length */
   5 Version        fixed bin(31), /* Structure version number */
   5 Command        fixed bin(31), /* Command identifier */
   5 MsgseqNumber   fixed bin(31), /* Message sequence number */
   5 Control        fixed bin(31), /* Control options */
   5 CompCode       fixed bin(31), /* Completion code */
   5 Reason         fixed bin(31), /* Reason code qualifying completion code */
   5 ParameterCount fixed bin(31); /* Count of parameter structures */

MQEPH 的 High Level Assembler 声明

MQEPH                            DSECT
MQEPH_STRUCID                    DS   CL4   Structure identifier
MQEPH_VERSION                    DS   F     Structure version number
MQEPH_STRUCLENGTH                DS   F     Total length of MQEPH including the
*                                           MQCFH and parameter structures that
                                            follow it
MQEPH_ENCODING                   DS   F     Numeric encoding of data that follows
*                                           last PCF parameter structure 
MQEPH_CODEDCHARSETID             DS   F     Character set identifier of data that
*                                           follows last PCF parameter structure
MQEPH_FORMAT                     DS   CL8   Format name of data that follows last
*                                           PCF parameter structure
MQEPH_FLAGS                      DS   F     Flags
MQEPH_PCFHEADER                  DS   0F    Force fullword alignment
MQEPH_PCFHEADER_TYPE             DS   F     Structure type
MQEPH_PCFHEADER_STRUCLENGTH      DS   F     Structure length
MQEPH_PCFHEADER_VERSION          DS   F     Structure version number
MQEPH_PCFHEADER_COMMAND          DS   F     Command identifier
MQEPH_PCFHEADER_MSGSEQNUMBER     DS   F     Structure length
MQEPH_PCFHEADER_CONTROL          DS   F     Control options
MQEPH_PCFHEADER_COMPCODE         DS   F     Completion code
MQEPH_PCFHEADER_REASON           DS   F     Reason code qualifying completion code
MQEPH_PCFHEADER_PARAMETER COUNT  DS   F     Count of parameter structures
MQEPH_PCFHEADER_LENGTH           EQU  *-MQEPH_PCFHEADER
                                 ORG  MQEPH_PCFHEADER
MQEPH_PCFHEADER_AREA             DS   CL(MQEPH_PCFHEADER_LENGTH)
*
MQEPH_LENGTH                     EQU  *-MQEPH
                                 ORG  MQEPH
MQEPH_AREA                       DS   CL(MQEPH_LENGTH)

MQEPH 的 Visual Basic 声明

Type MQEPH
  StrucId         As String*4 'Structure identifier'
  Version         As Long     'Structure version number'
  StrucLength     As Long     'Total length of MQEPH structure including the MQCFH'
                              'and parameter structures that follow it'
  Encoding        As Long     'Numeric encoding of data that follows last'
                              'PCF parameter structure'
  CodedCharSetId  As Long     'Character set identifier of data that'
                              'follows last PCF parameter structure'
  Format          As String*8 'Format name of data that follows last PCF'
                              'parameter structure'
  Flags           As Long     'Flags'
  PCFHeader       As MQCFH    'Programmable command format header'
 End Type

Global MQEPH_DEFAULT As MQEPH