ObjectName (MQCHAR48)

This is the local name of the object as defined on the queue manager identified by ObjectQMgrName. The name can contain the following characters:
  • Uppercase alphabetic characters (A through Z)
  • Lowercase alphabetic characters (a through z)
  • Numeric digits (0 through 9)
  • Period (.), forward slash (/), underscore (_), percent (%)
The name must not contain leading or embedded blanks, but can contain trailing blanks. Use a null character to indicate the end of significant data in the name; the null and any characters following it are treated as blanks. The following restrictions apply in the environments indicated:
  • On systems that use EBCDIC Katakana, lowercase characters cannot be used.
  • On z/OS®:
    • Avoid names that begin or end with an underscore; they cannot be processed by the operations and control panels.
    • The percent character has a special meaning to RACF®. If RACF is used as the external security manager, names must not contain the percent. If they do, those names are not included in any security checks when RACF generic profiles are used.
  • On IBM® i, names containing lowercase characters, forward slash, or percent, must be enclosed in quotation marks when specified on commands. These quotation marks must not be specified for names that occur as fields in structures or as parameters on calls.

The full topic name can be built from two different fields: ObjectName and ObjectString. For details of how these two fields are used, see Using topic strings.

The following points apply to the types of object indicated:
  • If ObjectName is the name of a model queue, the queue manager creates a dynamic queue with the attributes of the model queue, and returns in the ObjectName field the name of the queue created. A model queue can be specified only on the MQOPEN call; a model queue is not valid on the MQPUT1 call.
  • If ObjectName is the name of an alias queue with TARGTYPE(TOPIC), a security check is first made on the named alias queue; this is normal when alias queues are used. When the security check completes successfully, the MQOPEN call will continue and will behave like an MQOPEN call on an MQOT_TOPIC; this includes making a security check against the administrative topic object.
  • If ObjectName and ObjectQMgrName identify a shared queue owned by the queue-sharing group to which the local queue manager belongs, there must not also be a queue definition of the same name on the local queue manager. If there is such a definition (a local queue, alias queue, remote queue, or model queue), the call fails with reason code MQRC_OBJECT_NOT_UNIQUE.
  • If the object being opened is a distribution list (that is, RecsPresent is present and greater than zero), ObjectName must be blank or the null string. If this condition is not satisfied, the call fails with reason code MQRC_OBJECT_NAME_ERROR.
  • If ObjectType is MQOT_Q_MGR, special rules apply; in this case the name must be entirely blank up to the first null character or the end of the field.

This is an input/output field for the MQOPEN call when ObjectName is the name of a model queue, and an input-only field in all other cases. The length of this field is given by MQ_Q_NAME_LENGTH. The initial value of this field is the null string in C, and 48 blank characters in other programming languages.