Home

 

Fields

 

Type (MQLONG)

Structure type.

This indicates that the structure is a MQCFSF structure describing a string filter parameter. The value must be:

MQCFT_STRING_FILTER

Structure defining a string filter.

StrucLength (MQLONG)

Structure length.

This is the length in bytes of the MQCFSF structure. The value must be:

MQCFSF_STRUC_LENGTH

This is the length, in bytes, of the MQCFSF structure, including the string at the end of the structure (the FilterValue field). The length must be a multiple of 4, and must be sufficient to contain the string. Bytes between the end of the string 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 FilterValue field:

MQCFSF_STRUC_LENGTH_FIXED

Length of fixed part of command format filter string-parameter structure.

Parameter (MQLONG)

Parameter identifier.

This identifies the parameter that is to be filtered on. The value of this identifier depends on the parameter to be filtered on. Any of the parameters which can be used in the Inquire command can be used in this field.

The parameter is from the following groups of parameters:

  • MQCA_*

  • MQCACF_*

  • MQCAMO_*

  • MQCACH_*

Operator (MQLONG)

Operator identifier.

This identifies the operator that is being used to evaluate whether the parameter satisfies the filter-value.

Possible values are:

MQCFOP_GREATER

Greater than

MQCFOP_LESS

Less than

MQCFOP_EQUAL

Equal to

MQCFOP_NOT_EQUAL

Not equal to

MQCFOP_NOT_LESS

Greater than or equal to

MQCFOP_NOT_GREATER

Less than or equal to

MQCFOP_LIKE

Matches a generic string

MQCFOP_NOT_LIKE

Does not match a generic string

MQCFOP_CONTAINS

Contains a specified string. Use this when filtering on lists of strings.

MQCFOP_EXCLUDES

Does not contain a specified string. Use this when filtering on lists of strings.

MQCFOP_CONTAINS_GEN

Contains an item which matches a generic string. Use this when filtering on lists of strings.

MQCFOP_EXCLUDES_GEN

Does not contain any item which matches a generic string. Use this when filtering on lists of strings.

See the FilterValue description for details telling you which operators may be used in which circumstances.

CodedCharSetId (MQLONG)

Coded character set identifier.

This specifies the coded character set identifier of the data in the FilterValue field. The following special value can be used:

MQCCSI_DEFAULT

Default character set identifier.

The string data is in the character set defined by the CodedCharSetId field in the MQ header structure that precedes the MQCFH structure, or by the CodedCharSetId field in the MQMD if the MQCFH structure is at the start of the message.

FilterValueLength (MQLONG)

Length of filter-value string.

This is the length, in bytes, of the data in the FilterValue field. This must be zero or greater, and does not need to be a multiple of 4.

FilterValue (MQCHARĂ—FilterValueLength)

Filter value.

This specifies the filter-value that must be satisfied. Depending on the parameter, the value and the permitted operators can be:

  • An explicit string value.

    We can only use the following operators:

    • MQCFOP_GREATER

    • MQCFOP_LESS

    • MQCFOP_EQUAL

    • MQCFOP_NOT_EQUAL

    • MQCFOP_NOT_GREATER

    • MQCFOP_NOT_LESS

  • A generic string value. This is a character string with an asterisk at the end, for example ABC*. The operator must be either MQCFOP_LIKE or MQCFOP_NOT_LIKE. The characters must be valid for the attribute you are testing. If the operator is MQCFOP_LIKE, all items where the attribute value begins with the string (ABC in the example) are listed. If the operator is MQCFOP_NOT_LIKE, all items where the attribute value does not begin with the string are listed.

  • If the parameter takes a list of string values, the operator can be:

    • MQCFOP_CONTAINS

    • MQCFOP_EXCLUDES

    • MQCFOP_CONTAINS_GEN

    • MQCFOP_EXCLUDES_GEN

    An item in a list of values. The value can be explicit or or generic. If it is explicit, use MQCFOP_CONTAINS or MQCFOP_EXCLUDES as the operator. For example, if the value DEF is specified with the operator MQCFOP_CONTAINS, all items where one of the attribute values is DEF are listed. If it is generic, use MQCFOP_CONTAINS_GEN or MQCFOP_EXCLUDES_GEN as the operator. If ABC* is specified with the operator MQCFOP_CONTAINS_GEN, all items where one of the attribute values begins with ABC are listed.

  1. If the specified string is shorter than the standard length of the parameter in MQFMT_ADMIN command messages, the omitted characters are assumed to be blanks. If the specified string is longer than the standard length, it is an error.

  2. When the queue manager reads an MQCFSF structure in an MQFMT_ADMIN message from the command input queue, the queue manager processes the string as though it had been specified on an MQI call. This means that within the string, the first null and the characters following it (up to the end of the string) are treated as blanks.

The filter value must be a valid value for the parameter being tested.

 

Parent topic:

MQCFSF - PCF string filter parameter


pc15150_


 

Home