MQCFIL - PCF integer list parameter
The MQCFIL structure describes an integer-list parameter in a message that is a command or a response to a command. In either case, the format name in the message descriptor is MQFMT_ADMIN.
The MQCFIL structure can also be used for user-defined message data. In this case the message descriptor Format field is MQFMT_PCF (see Message descriptor for a PCF command ). Also in this case, not all the fields in the structure are meaningful. The supplied initial values can be used for most fields, but the application must set the StrucLength, Count, and Values fields to the values appropriate to the data.
The structure ends with a variable-length array of integers; see the Values field in the following section for further details.
Fields for MQCFIL
- Type (MQLONG)
- Structure type. This indicates that the structure is an MQCFIL structure describing an integer-list parameter. The value must be:
- MQCFT_INTEGER_LIST
- Structure defining an integer list.
- StrucLength (MQLONG)
- Structure length.
This is the length in bytes of the MQCFIL structure, including the array of integers at the end of the structure (the Values field). The length must be a multiple of four, and must be sufficient to contain the array; any bytes between the end of the array and the length defined by the StrucLength field are not significant.
The following constant gives the length of the fixed part of the structure, that is the length excluding the Values field:
- MQCFIL_STRUC_LENGTH_FIXED
- Length of fixed part of command format integer-list parameter structure.
- Parameter (MQLONG)
- Parameter identifier.
This identifies the parameter with values that are contained in the structure. The values that can occur in this field depend on the value of the Command field in the MQCFH structure; see MQCFH - PCF header for details.
The parameter is from the following groups of parameters:
- MQIA_*
- MQIACF_*
- MQIAMO_*
- MQIACH_*
- Count (MQLONG)
- Count of parameter values.
This is the number of elements in the Values array; it must be zero or greater.
- Values (MQLONG x Count)
- Parameter values.
This is an array of values for the parameter identified by the Parameter field. For example, for MQIACF_Q_ATTRS, this field is a list of attribute selectors (MQCA_* and MQIA_* values).
The way that this field is declared depends on the programming language:
- For the C programming language, the field is declared as an array with one element. Storage for the structure must be allocated dynamically, and pointers used to address the fields within it.
- For the COBOL, PL/I, RPG, and System/390 assembler programming languages, the field is omitted from the structure declaration. When an instance of the structure is declared, we must include MQCFIL in a larger structure, and declare additional fields following MQCFIL, to represent the Values field as required.
C language declaration
typedef struct tagMQCFIL { MQLONG Type; /* Structure type */ MQLONG StrucLength; /* Structure length */ MQLONG Parameter; /* Parameter identifier */ MQLONG Count; /* Count of parameter values */ MQLONG Values[1]; /* Parameter values - first element */ } MQCFIL;
COBOL language declaration
** MQCFIL structure 10 MQCFIL. ** Structure type 15 MQCFIL-TYPE PIC S9(9) BINARY. ** Structure length 15 MQCFIL-STRUCLENGTH PIC S9(9) BINARY. ** Parameter identifier 15 MQCFIL-PARAMETER PIC S9(9) BINARY. ** Count of parameter values 15 MQCFIL-COUNT PIC S9(9) BINARY.
PL/I language declaration ( z/OS only)
dcl 1 MQCFIL based, 3 Type fixed bin(31), /* Structure type */ 3 StrucLength fixed bin(31), /* Structure length */ 3 Parameter fixed bin(31), /* Parameter identifier */ 3 Count fixed bin(31); /* Count of parameter values */
System/390 assembler-language declaration ( z/OS only)
MQCFIL DSECT MQCFIL_TYPE DS F Structure type MQCFIL_STRUCLENGTH DS F Structure length MQCFIL_PARAMETER DS F Parameter identifier MQCFIL_COUNT DS F Count of parameter values MQCFIL_LENGTH EQU *-MQCFIL Length of structure ORG MQCFIL MQCFIL_AREA DS CL(MQCFIL_LENGTH)
Visual Basic language declaration ( Windows only)
Type MQCFIL Type As Long ' Structure type StrucLength As Long ' Structure length Parameter As Long ' Parameter identifier Count As Long ' Count of parameter values End Type Global MQCFIL_DEFAULT As MQCFIL
RPG language declaration ( IBM i only)
D* MQCFIL Structure D* D* Structure type D ILTYP 1 4I 0 INZ(5) D* Structure length D ILLEN 5 8I 0 INZ(16) D* Parameter identifier D ILPRM 9 12I 0 INZ(0) D* Count of parameter values D ILCNT 13 16I 0 INZ(0) D*Parent topic: Structures for commands and responses