subDescriptorRecord
The subDescriptorRecord property identifies a record variable that passes information about the structure of the topic subscription to the IBM MQ system.
The record variable that the property identifies is based on a BasicRecord. You need this record when opening or closing a TOPIC.
If you do not specify the subDescriptorRecord property, EGL automatically builds a default MQSD structure. EGL sets all fields to initial values, except for the object type, queue manager name, and queue name. EGL sets the queue manager name and queue name to the current values specified in the recordName.resourceAssociation variable.
| Field | Type | Description |
|---|---|---|
| STRUCID | CHAR(4) | Structure identifier |
| VERSION | INT | Structure version number |
| OPTIONS | INT | Options |
| OBJECTNAME | CHAR(48) | Object name |
| ALTERNATEUSERID | CHAR(48) | Alternate User Id |
| ALTERNATESECURITYID | CHAR(48) | Alternate Security ID |
| SUBEXPIRY | INT | Subscription Expiry |
| OBJECTSTRING | TBD | Object String |
| SUBNAME | TBD | Subscription Name |
| SUBUSERDATA | TBD | Subscription user data |
| SUBCORRELID | INT | Subscription Correlation ID |
| PUBPRIORITY | INT | Publication priority |
| PUBACCOUNTINGTOKEN | INT | Publication Accounting Token |
| PUBAPPIDENTITYDATA | INT | Publication application identity data |
| SELECTIONSTRING | TBD | String providing selection criteria |
| SUBLEVEL | INT | Subscription Level |
| RESOBJECTSTRING | TBD | Long object name |
You can use the subDescriptorRecord property to specify MQSD or your own variable based on MQSD. Code the program to initialize and set fields in the MQSD record variable before accessing the Topic. EGL uses your MQSD structure instead of the default structure.