WMQ/ Introduction to messaging from WMQ

■Messaging
□what is a message?
in message queueing, a message is simply a collection of data sent by one program and intended for another program.
WebSphere MQ primarily defines four types of message:
1. Datagram: a simple message for which no reply is expected
2. Request: a message for which a reply is expected
3. Reply: a reply to request message
4: Report: a message that describes an event such as the occurence of an error.

※ this article focuses on type 2 and 3 only.

□message descriptor
a message consists of control information and application data.
the control information is defined in a message descriptor structure (MQMD) and contains things like:
- the type of the message
- an identifier for the message
- the priority for delivery of the message.
the data is determined by the participating programs, not MQ.

□what is a message queue?
a message queue is a named destination to which messages can be sent.
queues are managed by a queue manager.
the physical management of queues is the responsibility of the queue namager and is not made apparent to the participating application programs.
programs access queues only through queue manager.

□what is a queue manager?
a queue manager is a system program that provides queuing services to applications.
it exposes an API that would allow programs to put and get messages from queues.
a queue manager provides additional functions that would provide administrators with the ability to create new queues, alter the properties of existing ones, and control the operation of the queue manager.

□Messages
there are four types of mesage defined by WebSphere MQ:
- datagram
- request
- reply
- report
applications can use the first three types of messages to pass information b/w themselves.
the fourth type, report, is for applications and queue managers to report information about events such as the occurrence of an error.

*Datagram messages
you should use a datagram when you do not require a reply from the application that receives the message.

*Request messages
you should use a request message when you expect a reply from the application that receives the message.
if you want to link your reply message with your request message, there are two options:
option1:
you can give the application that handles the request message the responsibility of ensuring that it puts information into the reply message that relates to the request message.
option2:
you can use the report field in the message descriptor of your request message to specify the content of the MsdId and CorrelId fields of the reply message:
you can request that either the MsgId or the CorrelId of the original message is that the MsgId of the original message is to be copied into the MsgId field of the reply message.
(the default action is to generate a new message identifier.)

*Reply messages
you should use a reply message when you reply to another message.
when you create a reply message, you should respect any options that were set in the message descriptor of the message to which you are replying.
report options specify the content of the message identifier (MsgId) and correlation identifier (CorrelId) fields.
these fields allow the application that receives the reply to correlate the reply with its original request .

*Report messages
report messages inform applications about events such as the occurence of an error when processing a message.
they can be gerenated by a queue manager, a message channel agent, or an application.
note that report messages can be generated at any time, and they may arrive on a queue when your application is not expecting them.

*correlating replies
in websphere MQ applications, when a program receives a message that asks it to do some work, the program usually sends one or more reply messages to the requester.
to help the requester to associate these replies with its original request, an application can set a correlation identifier field in the descriptor of each message.
programs should copy the message identifier of the request message into the correlation identifier field of their reply messages.

□Channels
a channel is a communication link used by queue managers.
there are two categories of channel in WebSphere MQ, and we can describe them as control channels and data channels:
*message channels, which are unidirectional, and trasfer messages from one queue manager to another.
*message queue interface (MQI) channels, which are bidirectional, and transfer control calls from a WebSphere MQ client to a queue manager, and responses from a queue manager to a WebSphere MQ client.


WebSphere MQ Object Model
WMQ provides the following set of classes:
*MQQueueManager
*MQQueue
*MQMessage
*MQPutMessageOptions
*MQGetMessageOptions


■WebSphere MQ Client
a websphere MQ client is part of the websphere mq product that can be installed on a separate machine from the base product and server and acts as a proxy b/w that machine and the server.
you can run a websphere MQ application on a websphere MQ client and it can interact with one or more websphere MQ servers and connect to their queue managers by means of a communications protocol.

the MQI is available to applications running on the client platform; the queues and other websphere MQ objects are held on a queue manager that you have installed on a server machine.
an application that you want to run in the websphere mq client environment must first be linked with the relevant client library.
when the application issues an MQI call, the websphere MQ client directs the request to a queue manager, where it is processed and from where a reply is sent back to the websphere mq client.

□how the client connects to the server
an applicationrunning in the websphere mq client environment runs in synchronous mode because there must be an active connection b/w the client and the server machines.
the connection is made by an application issuing an MQCONN or MQCONNX calls.
clients and server communicate through MQI channels.
when the call succeeds, the MQI channel remains connected until the application issues a MQDISC call.
this is the case for every queue manager that an application needs to connect to.

□why use websphere mq clients?
using websphere MQ clients is an efficient way of implementing WebShpere MQ messaging and queuing.

you can have an application that uses the MQI running on one machine and the queue manager running on a different machine.
the benefits of doing this are:
- there is no need for a full WebSphere MQ implementation on the client machine; for example, it could be a DOS, Windows 3.1, 95, 98, XP.
- hardware requirements on the client system are reduced.
- system administration requirements are reduced.
- a WebSphere MQ application running on a client can connect to multiple queue managers on different systems.



■Queue Accessing Optons
MQOO_INPUT_AS_Q_DEF: Open to get messages using queue-defined default.
MQOO_INPUT_SHARED: Open to get messages with shared access.
MQOO_INPUT_EXCLUSIVE: Open to get messages with exclusive access.
MQOO_BROWSE: Open to browse message.
MQOO_OUTPUT: Open to put messages.
MQOO_INQUIRE: Open for inquiry, required if you wish to query properties.
MQOO_SET: Open to set attributes, required if you wish to set properties.
MQOO_BIND_ON_OPEN: Bind handle to destination when queue is opened.
MQOO_BIND_NOT_FIXED: Do not bind to a specific destination.
MQOO_BIND_AS_Q_DEF: Use default binding for queue.
MQOO_SAVE_ALL_CONTEXT: Save context when message retrieved.
MQOO_PASS_IDENTITY_CONTEXT: Allow identity context to be passed.
MQOO_PASS_ALL_CONTEXT: Allow all contexts to be passed.
MQOO_SET_IDENTITY_CONTEXT: Allows identity context to be set.
MQOO_SET_ALL_CONTEXT: Allows all contexts to be set.
MQOO_ALTERNATE_USER_AUTHORITY: Validate with the specified user identifier.
MQOO_FAIL_IF_QUIESCING: ail if the queue manager is quiescing.

■Error & Reason Codes (MQException.MQRC_{ERROR_REASON_CODE})
[0000] MQRC_NONE
[0900] MQRC_APPL_FIRST
[0999] MQRC_APPL_LAST
[2001] MQRC_ALIAS_BASE_Q_TYPE_ERROR
[2002] MQRC_ALREADY_CONNECTED
[2003] MQRC_BACKED_OUT
[2004] MQRC_BUFFER_ERROR
[2005] MQRC_BUFFER_LENGTH_ERROR
[2006] MQRC_CHAR_ATTR_LENGTH_ERROR
[2007] MQRC_CHAR_ATTRS_ERROR
[2008] MQRC_CHAR_ATTRS_TOO_SHORT
[2009] MQRC_CONNECTION_BROKEN
[2010] MQRC_DATA_LENGTH_ERROR
[2011] MQRC_DYNAMIC_Q_NAME_ERROR
[2012] MQRC_ENVIRONMENT_ERROR
[2013] MQRC_EXPIRY_ERROR
[2014] MQRC_FEEDBACK_ERROR
[2016] MQRC_GET_INHIBITED
[2017] MQRC_HANDLE_NOT_AVAILABLE
[2018] MQRC_HCONN_ERROR
[2019] MQRC_HOBJ_ERROR
[2020] MQRC_INHIBIT_VALUE_ERROR
[2021] MQRC_INT_ATTR_COUNT_ERROR
[2022] MQRC_INT_ATTR_COUNT_TOO_SMALL
[2023] MQRC_INT_ATTRS_ARRAY_ERROR
[2024] MQRC_SYNCPOINT_LIMIT_REACHED
[2025] MQRC_MAX_CONNS_LIMIT_REACHED
[2026] MQRC_MD_ERROR
[2027] MQRC_MISSING_REPLY_TO_Q
[2029] MQRC_MSG_TYPE_ERROR
[2030] MQRC_MSG_TOO_BIG_FOR_Q
[2031] MQRC_MSG_TOO_BIG_FOR_Q_MGR
[2033] MQRC_NO_MSG_AVAILABLE
[2034] MQRC_NO_MSG_UNDER_CURSOR
[2035] MQRC_NOT_AUTHORIZED
[2036] MQRC_NOT_OPEN_FOR_BROWSE
[2037] MQRC_NOT_OPEN_FOR_INPUT
[2038] MQRC_NOT_OPEN_FOR_INQUIRE
[2039] MQRC_NOT_OPEN_FOR_OUTPUT
[2040] MQRC_NOT_OPEN_FOR_SET
[2041] MQRC_OBJECT_CHANGED
[2042] MQRC_OBJECT_IN_USE
[2043] MQRC_OBJECT_TYPE_ERROR
[2044] MQRC_OD_ERROR
[2045] MQRC_OPTION_NOT_VALID_FOR_TYPE
[2046] MQRC_OPTIONS_ERROR
[2047] MQRC_PERSISTENCE_ERROR
[2048] MQRC_PERSISTENT_NOT_ALLOWED
[2049] MQRC_PRIORITY_EXCEEDS_MAXIMUM
[2050] MQRC_PRIORITY_ERROR
[2051] MQRC_PUT_INHIBITED
[2052] MQRC_Q_DELETED
[2053] MQRC_Q_FULL
[2055] MQRC_Q_NOT_EMPTY
[2056] MQRC_Q_SPACE_NOT_AVAILABLE
[2057] MQRC_Q_TYPE_ERROR
[2058] MQRC_Q_MGR_NAME_ERROR
[2059] MQRC_Q_MGR_NOT_AVAILABLE
[2061] MQRC_REPORT_OPTIONS_ERROR
[2062] MQRC_SECOND_MARK_NOT_ALLOWED
[2063] MQRC_SECURITY_ERROR
[2065] MQRC_SELECTOR_COUNT_ERROR
[2066] MQRC_SELECTOR_LIMIT_EXCEEDED
[2067] MQRC_SELECTOR_ERROR
[2068] MQRC_SELECTOR_NOT_FOR_TYPE
[2069] MQRC_SIGNAL_OUTSTANDING
[2070] MQRC_SIGNAL_REQUEST_ACCEPTED
[2071] MQRC_STORAGE_NOT_AVAILABLE
[2072] MQRC_SYNCPOINT_NOT_AVAILABLE
[2075] MQRC_TRIGGER_CONTROL_ERROR
[2076] MQRC_TRIGGER_DEPTH_ERROR
[2077] MQRC_TRIGGER_MSG_PRIORITY_ERR
[2078] MQRC_TRIGGER_TYPE_ERROR
[2079] MQRC_TRUNCATED_MSG_ACCEPTED
[2080] MQRC_TRUNCATED_MSG_FAILED
[2082] MQRC_UNKNOWN_ALIAS_BASE_Q
[2085] MQRC_UNKNOWN_OBJECT_NAME
[2086] MQRC_UNKNOWN_OBJECT_Q_MGR
[2087] MQRC_UNKNOWN_REMOTE_Q_MGR
[2090] MQRC_WAIT_INTERVAL_ERROR
[2091] MQRC_XMIT_Q_TYPE_ERROR
[2092] MQRC_XMIT_Q_USAGE_ERROR
[2093] MQRC_NOT_OPEN_FOR_PASS_ALL
[2094] MQRC_NOT_OPEN_FOR_PASS_IDENT
[2095] MQRC_NOT_OPEN_FOR_SET_ALL
[2096] MQRC_NOT_OPEN_FOR_SET_IDENT
[2097] MQRC_CONTEXT_HANDLE_ERROR
[2098] MQRC_CONTEXT_NOT_AVAILABLE
[2099] MQRC_SIGNAL1_ERROR
[2100] MQRC_OBJECT_ALREADY_EXISTS
[2101] MQRC_OBJECT_DAMAGED
[2102] MQRC_RESOURCE_PROBLEM
[2103] MQRC_ANOTHER_Q_MGR_CONNECTED
[2104] MQRC_UNKNOWN_REPORT_OPTION
[2105] MQRC_STORAGE_CLASS_ERROR
[2106] MQRC_COD_NOT_VALID_FOR_XCF_Q
[2109] MQRC_SUPPRESSED_BY_EXIT
[2110] MQRC_FORMAT_ERROR
[2111] MQRC_SOURCE_CCSID_ERROR
[2112] MQRC_SOURCE_INTEGER_ENC_ERROR
[2113] MQRC_SOURCE_DECIMAL_ENC_ERROR
[2114] MQRC_SOURCE_FLOAT_ENC_ERROR
[2115] MQRC_TARGET_CCSID_ERROR
[2116] MQRC_TARGET_INTEGER_ENC_ERROR
[2117] MQRC_TARGET_DECIMAL_ENC_ERROR
[2118] MQRC_TARGET_FLOAT_ENC_ERROR
[2119] MQRC_NOT_CONVERTED
[2120] MQRC_CONVERTED_MSG_TOO_BIG
[2120] MQRC_TRUNCATED
[2121] MQRC_NO_EXTERNAL_PARTICIPANTS
[2122] MQRC_PARTICIPANT_NOT_AVAILABLE
[2123] MQRC_OUTCOME_MIXED
[2124] MQRC_OUTCOME_PENDING
[2125] MQRC_BRIDGE_STARTED
[2126] MQRC_BRIDGE_STOPPED
[2127] MQRC_ADAPTER_STORAGE_SHORTAGE
[2128] MQRC_UOW_IN_PROGRESS
[2129] MQRC_ADAPTER_CONN_LOAD_ERROR
[2130] MQRC_ADAPTER_SERV_LOAD_ERROR
[2131] MQRC_ADAPTER_DEFS_ERROR
[2132] MQRC_ADAPTER_DEFS_LOAD_ERROR
[2133] MQRC_ADAPTER_CONV_LOAD_ERROR
[2134] MQRC_BO_ERROR
[2135] MQRC_DH_ERROR
[2136] MQRC_MULTIPLE_REASONS
[2137] MQRC_OPEN_FAILED
[2138] MQRC_ADAPTER_DISC_LOAD_ERROR
[2139] MQRC_CNO_ERROR
[2140] MQRC_CICS_WAIT_FAILED
[2141] MQRC_DLH_ERROR
[2142] MQRC_HEADER_ERROR
[2143] MQRC_SOURCE_LENGTH_ERROR
[2144] MQRC_TARGET_LENGTH_ERROR
[2145] MQRC_SOURCE_BUFFER_ERROR
[2146] MQRC_TARGET_BUFFER_ERROR
[2148] MQRC_IIH_ERROR
[2149] MQRC_PCF_ERROR
[2150] MQRC_DBCS_ERROR
[2152] MQRC_OBJECT_NAME_ERROR
[2153] MQRC_OBJECT_Q_MGR_NAME_ERROR
[2154] MQRC_RECS_PRESENT_ERROR
[2155] MQRC_OBJECT_RECORDS_ERROR
[2156] MQRC_RESPONSE_RECORDS_ERROR
[2157] MQRC_ASID_MISMATCH
[2158] MQRC_PMO_RECORD_FLAGS_ERROR
[2159] MQRC_PUT_MSG_RECORDS_ERROR
[2160] MQRC_CONN_ID_IN_USE
[2161] MQRC_Q_MGR_QUIESCING
[2162] MQRC_Q_MGR_STOPPING
[2163] MQRC_DUPLICATE_RECOV_COORD
[2173] MQRC_PMO_ERROR
[2182] MQRC_API_EXIT_NOT_FOUND
[2183] MQRC_API_EXIT_LOAD_ERROR
[2184] MQRC_REMOTE_Q_NAME_ERROR
[2185] MQRC_INCONSISTENT_PERSISTENCE
[2186] MQRC_GMO_ERROR
[2187] MQRC_CICS_BRIDGE_RESTRICTION
[2188] MQRC_STOPPED_BY_CLUSTER_EXIT
[2189] MQRC_CLUSTER_RESOLUTION_ERROR
[2190] MQRC_CONVERTED_STRING_TOO_BIG
[2191] MQRC_TMC_ERROR
[2192] MQRC_PAGESET_FULL
[2192] MQRC_STORAGE_MEDIUM_FULL
[2193] MQRC_PAGESET_ERROR
[2194] MQRC_NAME_NOT_VALID_FOR_TYPE
[2195] MQRC_UNEXPECTED_ERROR
[2196] MQRC_UNKNOWN_XMIT_Q
[2197] MQRC_UNKNOWN_DEF_XMIT_Q
[2198] MQRC_DEF_XMIT_Q_TYPE_ERROR
[2199] MQRC_DEF_XMIT_Q_USAGE_ERROR
[2201] MQRC_NAME_IN_USE
[2202] MQRC_CONNECTION_QUIESCING
[2203] MQRC_CONNECTION_STOPPING
[2204] MQRC_ADAPTER_NOT_AVAILABLE
[2206] MQRC_MSG_ID_ERROR
[2207] MQRC_CORREL_ID_ERROR
[2208] MQRC_FILE_SYSTEM_ERROR
[2209] MQRC_NO_MSG_LOCKED
[2216] MQRC_FILE_NOT_AUDITED
[2217] MQRC_CONNECTION_NOT_AUTHORIZED
[2218] MQRC_MSG_TOO_BIG_FOR_CHANNEL
[2219] MQRC_CALL_IN_PROGRESS
[2220] MQRC_RMH_ERROR
[2222] MQRC_Q_MGR_ACTIVE
[2223] MQRC_Q_MGR_NOT_ACTIVE
[2224] MQRC_Q_DEPTH_HIGH
[2225] MQRC_Q_DEPTH_LOW
[2226] MQRC_Q_SERVICE_INTERVAL_HIGH
[2227] MQRC_Q_SERVICE_INTERVAL_OK
[2232] MQRC_UNIT_OF_WORK_NOT_STARTED
[2233] MQRC_CHANNEL_AUTO_DEF_OK
[2234] MQRC_CHANNEL_AUTO_DEF_ERROR
[2235] MQRC_CFH_ERROR
[2236] MQRC_CFIL_ERROR
[2237] MQRC_CFIN_ERROR
[2238] MQRC_CFSL_ERROR
[2239] MQRC_CFST_ERROR
[2241] MQRC_INCOMPLETE_GROUP
[2242] MQRC_INCOMPLETE_MSG
[2243] MQRC_INCONSISTENT_CCSIDS
[2244] MQRC_INCONSISTENT_ENCODINGS
[2245] MQRC_INCONSISTENT_UOW
[2246] MQRC_INVALID_MSG_UNDER_CURSOR
[2247] MQRC_MATCH_OPTIONS_ERROR
[2248] MQRC_MDE_ERROR
[2249] MQRC_MSG_FLAGS_ERROR
[2250] MQRC_MSG_SEQ_NUMBER_ERROR
[2251] MQRC_OFFSET_ERROR
[2252] MQRC_ORIGINAL_LENGTH_ERROR
[2253] MQRC_SEGMENT_LENGTH_ZERO
[2255] MQRC_UOW_NOT_AVAILABLE
[2256] MQRC_WRONG_GMO_VERSION
[2257] MQRC_WRONG_MD_VERSION
[2258] MQRC_GROUP_ID_ERROR
[2259] MQRC_INCONSISTENT_BROWSE
[2260] MQRC_XQH_ERROR
[2261] MQRC_SRC_ENV_ERROR
[2262] MQRC_SRC_NAME_ERROR
[2263] MQRC_DEST_ENV_ERROR
[2264] MQRC_DEST_NAME_ERROR
[2265] MQRC_TM_ERROR
[2266] MQRC_CLUSTER_EXIT_ERROR
[2267] MQRC_CLUSTER_EXIT_LOAD_ERROR
[2268] MQRC_CLUSTER_PUT_INHIBITED
[2269] MQRC_CLUSTER_RESOURCE_ERROR
[2270] MQRC_NO_DESTINATIONS_AVAILABLE
[2271] MQRC_CONN_TAG_IN_USE
[2272] MQRC_PARTIALLY_CONVERTED
[2273] MQRC_CONNECTION_ERROR
[2274] MQRC_OPTION_ENVIRONMENT_ERROR
[2277] MQRC_CD_ERROR
[2278] MQRC_CLIENT_CONN_ERROR
[2279] MQRC_CHANNEL_STOPPED_BY_USER
[2280] MQRC_HCONFIG_ERROR
[2281] MQRC_FUNCTION_ERROR
[2282] MQRC_CHANNEL_STARTED
[2283] MQRC_CHANNEL_STOPPED
[2284] MQRC_CHANNEL_CONV_ERROR
[2285] MQRC_SERVICE_NOT_AVAILABLE
[2286] MQRC_INITIALIZATION_FAILED
[2287] MQRC_TERMINATION_FAILED
[2288] MQRC_UNKNOWN_Q_NAME
[2289] MQRC_SERVICE_ERROR
[2290] MQRC_Q_ALREADY_EXISTS
[2291] MQRC_USER_ID_NOT_AVAILABLE
[2292] MQRC_UNKNOWN_ENTITY
[2293] MQRC_UNKNOWN_AUTH_ENTITY
[2294] MQRC_UNKNOWN_REF_OBJECT
[2295] MQRC_CHANNEL_ACTIVATED
[2296] MQRC_CHANNEL_NOT_ACTIVATED
[2297] MQRC_UOW_CANCELED
[2298] MQRC_FUNCTION_NOT_SUPPORTED
[2299] MQRC_SELECTOR_TYPE_ERROR
[2300] MQRC_COMMAND_TYPE_ERROR
[2301] MQRC_MULTIPLE_INSTANCE_ERROR
[2302] MQRC_SYSTEM_ITEM_NOT_ALTERABLE
[2303] MQRC_BAG_CONVERSION_ERROR
[2304] MQRC_SELECTOR_OUT_OF_RANGE
[2305] MQRC_SELECTOR_NOT_UNIQUE
[2306] MQRC_INDEX_NOT_PRESENT
[2307] MQRC_STRING_ERROR
[2308] MQRC_ENCODING_NOT_SUPPORTED
[2309] MQRC_SELECTOR_NOT_PRESENT
[2310] MQRC_OUT_SELECTOR_ERROR
[2311] MQRC_STRING_TRUNCATED
[2312] MQRC_SELECTOR_WRONG_TYPE
[2313] MQRC_INCONSISTENT_ITEM_TYPE
[2314] MQRC_INDEX_ERROR
[2315] MQRC_SYSTEM_BAG_NOT_ALTERABLE
[2316] MQRC_ITEM_COUNT_ERROR
[2317] MQRC_FORMAT_NOT_SUPPORTED
[2318] MQRC_SELECTOR_NOT_SUPPORTED
[2319] MQRC_ITEM_VALUE_ERROR
[2320] MQRC_HBAG_ERROR
[2321] MQRC_PARAMETER_MISSING
[2322] MQRC_CMD_SERVER_NOT_AVAILABLE
[2323] MQRC_STRING_LENGTH_ERROR
[2324] MQRC_INQUIRY_COMMAND_ERROR
[2325] MQRC_NESTED_BAG_NOT_SUPPORTED
[2326] MQRC_BAG_WRONG_TYPE
[2327] MQRC_ITEM_TYPE_ERROR
[2328] MQRC_SYSTEM_BAG_NOT_DELETABLE
[2329] MQRC_SYSTEM_ITEM_NOT_DELETABLE
[2330] MQRC_CODED_CHAR_SET_ID_ERROR
[2331] MQRC_MSG_TOKEN_ERROR
[2332] MQRC_MISSING_WIH
[2333] MQRC_WIH_ERROR
[2334] MQRC_RFH_ERROR
[2335] MQRC_RFH_STRING_ERROR
[2336] MQRC_RFH_COMMAND_ERROR
[2337] MQRC_RFH_PARM_ERROR
[2338] MQRC_RFH_DUPLICATE_PARM
[2339] MQRC_RFH_PARM_MISSING
[2340] MQRC_CHAR_CONVERSION_ERROR
[2341] MQRC_UCS2_CONVERSION_ERROR
[2342] MQRC_DB2_NOT_AVAILABLE
[2343] MQRC_OBJECT_NOT_UNIQUE
[2344] MQRC_CONN_TAG_NOT_RELEASED
[2345] MQRC_CF_NOT_AVAILABLE
[2346] MQRC_CF_STRUC_IN_USE
[2347] MQRC_CF_STRUC_LIST_HDR_IN_USE
[2348] MQRC_CF_STRUC_AUTH_FAILED
[2349] MQRC_CF_STRUC_ERROR
[2350] MQRC_CONN_TAG_NOT_USABLE
[2351] MQRC_GLOBAL_UOW_CONFLICT
[2352] MQRC_LOCAL_UOW_CONFLICT
[2353] MQRC_HANDLE_IN_USE_FOR_UOW
[2354] MQRC_UOW_ENLISTMENT_ERROR
[2355] MQRC_UOW_MIX_NOT_SUPPORTED
[2356] MQRC_WXP_ERROR
[2357] MQRC_CURRENT_RECORD_ERROR
[2358] MQRC_NEXT_OFFSET_ERROR
[2359] MQRC_NO_RECORD_AVAILABLE
[2360] MQRC_OBJECT_LEVEL_INCOMPATIBLE
[2361] MQRC_NEXT_RECORD_ERROR
[2111] MQRC_SOURCE_CCSID_ERROR
[2112] MQRC_SOURCE_INTEGER_ENC_ERROR
[2113] MQRC_SOURCE_DECIMAL_ENC_ERROR
[2114] MQRC_SOURCE_FLOAT_ENC_ERROR
[2115] MQRC_TARGET_CCSID_ERROR
[2116] MQRC_TARGET_INTEGER_ENC_ERROR
[2117] MQRC_TARGET_DECIMAL_ENC_ERROR
[2118] MQRC_TARGET_FLOAT_ENC_ERROR
[2119] MQRC_NOT_CONVERTED
[2120] MQRC_CONVERTED_MSG_TOO_BIG
[2120] MQRC_TRUNCATED
[2121] MQRC_NO_EXTERNAL_PARTICIPANTS
[2122] MQRC_PARTICIPANT_NOT_AVAILABLE
[2123] MQRC_OUTCOME_MIXED
[2124] MQRC_OUTCOME_PENDING
[2125] MQRC_BRIDGE_STARTED
[2126] MQRC_BRIDGE_STOPPED
[2127] MQRC_ADAPTER_STORAGE_SHORTAGE
[2128] MQRC_UOW_IN_PROGRESS
[2129] MQRC_ADAPTER_CONN_LOAD_ERROR
[2130] MQRC_ADAPTER_SERV_LOAD_ERROR
[2131] MQRC_ADAPTER_DEFS_ERROR
[2132] MQRC_ADAPTER_DEFS_LOAD_ERROR
[2133] MQRC_ADAPTER_CONV_LOAD_ERROR
[2134] MQRC_BO_ERROR
[2135] MQRC_DH_ERROR
[2136] MQRC_MULTIPLE_REASONS
[2137] MQRC_OPEN_FAILED
[2138] MQRC_ADAPTER_DISC_LOAD_ERROR
[2139] MQRC_CNO_ERROR
[2140] MQRC_CICS_WAIT_FAILED
[2141] MQRC_DLH_ERROR
[2142] MQRC_HEADER_ERROR
[2143] MQRC_SOURCE_LENGTH_ERROR
[2144] MQRC_TARGET_LENGTH_ERROR
[2145] MQRC_SOURCE_BUFFER_ERROR
[2146] MQRC_TARGET_BUFFER_ERROR
[2148] MQRC_IIH_ERROR
[2149] MQRC_PCF_ERROR
[2150] MQRC_DBCS_ERROR
[2152] MQRC_OBJECT_NAME_ERROR
[2153] MQRC_OBJECT_Q_MGR_NAME_ERROR
[2154] MQRC_RECS_PRESENT_ERROR
[2155] MQRC_OBJECT_RECORDS_ERROR
[2156] MQRC_RESPONSE_RECORDS_ERROR
[2157] MQRC_ASID_MISMATCH
[2158] MQRC_PMO_RECORD_FLAGS_ERROR
[2159] MQRC_PUT_MSG_RECORDS_ERROR
[2160] MQRC_CONN_ID_IN_USE
[2161] MQRC_Q_MGR_QUIESCING
[2162] MQRC_Q_MGR_STOPPING
[2163] MQRC_DUPLICATE_RECOV_COORD
[2173] MQRC_PMO_ERROR
[2182] MQRC_API_EXIT_NOT_FOUND
[2183] MQRC_API_EXIT_LOAD_ERROR
[2184] MQRC_REMOTE_Q_NAME_ERROR
[2185] MQRC_INCONSISTENT_PERSISTENCE
[2186] MQRC_GMO_ERROR
[2187] MQRC_CICS_BRIDGE_RESTRICTION
[2188] MQRC_STOPPED_BY_CLUSTER_EXIT
[2189] MQRC_CLUSTER_RESOLUTION_ERROR
[2190] MQRC_CONVERTED_STRING_TOO_BIG
[2191] MQRC_TMC_ERROR
[2192] MQRC_PAGESET_FULL
[2192] MQRC_STORAGE_MEDIUM_FULL
[2193] MQRC_PAGESET_ERROR
[2194] MQRC_NAME_NOT_VALID_FOR_TYPE
[2195] MQRC_UNEXPECTED_ERROR
[2196] MQRC_UNKNOWN_XMIT_Q
[2197] MQRC_UNKNOWN_DEF_XMIT_Q
[2198] MQRC_DEF_XMIT_Q_TYPE_ERROR
[2199] MQRC_DEF_XMIT_Q_USAGE_ERROR
[2201] MQRC_NAME_IN_USE
[2202] MQRC_CONNECTION_QUIESCING
[2203] MQRC_CONNECTION_STOPPING
[2204] MQRC_ADAPTER_NOT_AVAILABLE
[2206] MQRC_MSG_ID_ERROR
[2207] MQRC_CORREL_ID_ERROR
[2208] MQRC_FILE_SYSTEM_ERROR
[2209] MQRC_NO_MSG_LOCKED
[2216] MQRC_FILE_NOT_AUDITED
[2217] MQRC_CONNECTION_NOT_AUTHORIZED
[2218] MQRC_MSG_TOO_BIG_FOR_CHANNEL
[2219] MQRC_CALL_IN_PROGRESS
[2220] MQRC_RMH_ERROR
[2222] MQRC_Q_MGR_ACTIVE
[2223] MQRC_Q_MGR_NOT_ACTIVE
[2224] MQRC_Q_DEPTH_HIGH
[2225] MQRC_Q_DEPTH_LOW
[2226] MQRC_Q_SERVICE_INTERVAL_HIGH
[2227] MQRC_Q_SERVICE_INTERVAL_OK
[2232] MQRC_UNIT_OF_WORK_NOT_STARTED
[2233] MQRC_CHANNEL_AUTO_DEF_OK
[2234] MQRC_CHANNEL_AUTO_DEF_ERROR
[2235] MQRC_CFH_ERROR
[2236] MQRC_CFIL_ERROR
[2237] MQRC_CFIN_ERROR
[2238] MQRC_CFSL_ERROR
[2239] MQRC_CFST_ERROR
[2241] MQRC_INCOMPLETE_GROUP
[2242] MQRC_INCOMPLETE_MSG
[2243] MQRC_INCONSISTENT_CCSIDS
[2244] MQRC_INCONSISTENT_ENCODINGS
[2245] MQRC_INCONSISTENT_UOW
[2246] MQRC_INVALID_MSG_UNDER_CURSOR
[2247] MQRC_MATCH_OPTIONS_ERROR
[2248] MQRC_MDE_ERROR
[2249] MQRC_MSG_FLAGS_ERROR
[2250] MQRC_MSG_SEQ_NUMBER_ERROR
[2251] MQRC_OFFSET_ERROR
[2252] MQRC_ORIGINAL_LENGTH_ERROR
[2253] MQRC_SEGMENT_LENGTH_ZERO
[2255] MQRC_UOW_NOT_AVAILABLE
[2256] MQRC_WRONG_GMO_VERSION
[2257] MQRC_WRONG_MD_VERSION
[2258] MQRC_GROUP_ID_ERROR
[2259] MQRC_INCONSISTENT_BROWSE
[2260] MQRC_XQH_ERROR
[2261] MQRC_SRC_ENV_ERROR
[2262] MQRC_SRC_NAME_ERROR
[2263] MQRC_DEST_ENV_ERROR
[2264] MQRC_DEST_NAME_ERROR
[2265] MQRC_TM_ERROR
[2266] MQRC_CLUSTER_EXIT_ERROR
[2267] MQRC_CLUSTER_EXIT_LOAD_ERROR
[2268] MQRC_CLUSTER_PUT_INHIBITED
[2269] MQRC_CLUSTER_RESOURCE_ERROR
[2270] MQRC_NO_DESTINATIONS_AVAILABLE
[2271] MQRC_CONN_TAG_IN_USE
[2272] MQRC_PARTIALLY_CONVERTED
[2273] MQRC_CONNECTION_ERROR
[2274] MQRC_OPTION_ENVIRONMENT_ERROR
[2277] MQRC_CD_ERROR
[2278] MQRC_CLIENT_CONN_ERROR
[2279] MQRC_CHANNEL_STOPPED_BY_USER
[2280] MQRC_HCONFIG_ERROR
[2281] MQRC_FUNCTION_ERROR
[2282] MQRC_CHANNEL_STARTED
[2283] MQRC_CHANNEL_STOPPED
[2284] MQRC_CHANNEL_CONV_ERROR
[2285] MQRC_SERVICE_NOT_AVAILABLE
[2286] MQRC_INITIALIZATION_FAILED
[2287] MQRC_TERMINATION_FAILED
[2288] MQRC_UNKNOWN_Q_NAME
[2289] MQRC_SERVICE_ERROR
[2290] MQRC_Q_ALREADY_EXISTS
[2291] MQRC_USER_ID_NOT_AVAILABLE
[2292] MQRC_UNKNOWN_ENTITY
[2293] MQRC_UNKNOWN_AUTH_ENTITY
[2294] MQRC_UNKNOWN_REF_OBJECT
[2295] MQRC_CHANNEL_ACTIVATED
[2296] MQRC_CHANNEL_NOT_ACTIVATED
[2297] MQRC_UOW_CANCELED
[2298] MQRC_FUNCTION_NOT_SUPPORTED
[2299] MQRC_SELECTOR_TYPE_ERROR
[2300] MQRC_COMMAND_TYPE_ERROR
[2301] MQRC_MULTIPLE_INSTANCE_ERROR
[2302] MQRC_SYSTEM_ITEM_NOT_ALTERABLE
[2303] MQRC_BAG_CONVERSION_ERROR
[2304] MQRC_SELECTOR_OUT_OF_RANGE
[2305] MQRC_SELECTOR_NOT_UNIQUE
[2306] MQRC_INDEX_NOT_PRESENT
[2307] MQRC_STRING_ERROR
[2308] MQRC_ENCODING_NOT_SUPPORTED
[2309] MQRC_SELECTOR_NOT_PRESENT
[2310] MQRC_OUT_SELECTOR_ERROR
[2311] MQRC_STRING_TRUNCATED
[2312] MQRC_SELECTOR_WRONG_TYPE
[2313] MQRC_INCONSISTENT_ITEM_TYPE
[2314] MQRC_INDEX_ERROR
[2315] MQRC_SYSTEM_BAG_NOT_ALTERABLE
[2316] MQRC_ITEM_COUNT_ERROR
[2317] MQRC_FORMAT_NOT_SUPPORTED
[2318] MQRC_SELECTOR_NOT_SUPPORTED
[2319] MQRC_ITEM_VALUE_ERROR
[2320] MQRC_HBAG_ERROR
[2321] MQRC_PARAMETER_MISSING
[2322] MQRC_CMD_SERVER_NOT_AVAILABLE
[2323] MQRC_STRING_LENGTH_ERROR
[2324] MQRC_INQUIRY_COMMAND_ERROR
[2325] MQRC_NESTED_BAG_NOT_SUPPORTED
[2326] MQRC_BAG_WRONG_TYPE
[2327] MQRC_ITEM_TYPE_ERROR
[2328] MQRC_SYSTEM_BAG_NOT_DELETABLE
[2329] MQRC_SYSTEM_ITEM_NOT_DELETABLE
[2330] MQRC_CODED_CHAR_SET_ID_ERROR
[2331] MQRC_MSG_TOKEN_ERROR
[2332] MQRC_MISSING_WIH
[2333] MQRC_WIH_ERROR
[2334] MQRC_RFH_ERROR
[2335] MQRC_RFH_STRING_ERROR
[2336] MQRC_RFH_COMMAND_ERROR
[2337] MQRC_RFH_PARM_ERROR
[2338] MQRC_RFH_DUPLICATE_PARM
[2339] MQRC_RFH_PARM_MISSING
[2340] MQRC_CHAR_CONVERSION_ERROR
[2341] MQRC_UCS2_CONVERSION_ERROR
[2342] MQRC_DB2_NOT_AVAILABLE
[2343] MQRC_OBJECT_NOT_UNIQUE
[2344] MQRC_CONN_TAG_NOT_RELEASED
[2345] MQRC_CF_NOT_AVAILABLE
[2346] MQRC_CF_STRUC_IN_USE
[2347] MQRC_CF_STRUC_LIST_HDR_IN_USE
[2348] MQRC_CF_STRUC_AUTH_FAILED
[2349] MQRC_CF_STRUC_ERROR
[2350] MQRC_CONN_TAG_NOT_USABLE
[2351] MQRC_GLOBAL_UOW_CONFLICT
[2352] MQRC_LOCAL_UOW_CONFLICT
[2353] MQRC_HANDLE_IN_USE_FOR_UOW
[2354] MQRC_UOW_ENLISTMENT_ERROR
[2355] MQRC_UOW_MIX_NOT_SUPPORTED
[2356] MQRC_WXP_ERROR
[2357] MQRC_CURRENT_RECORD_ERROR
[2358] MQRC_NEXT_OFFSET_ERROR
[2359] MQRC_NO_RECORD_AVAILABLE
[2360] MQRC_OBJECT_LEVEL_INCOMPATIBLE
[2361] MQRC_NEXT_RECORD_ERROR


ref:
Interfacing with IBM WebSphere MQ (formally IBM MQSeries) from .NET, 4 May 2006
http://www.codeproject.com/KB/cross-platform/DotNetWebSphere.aspx

tag : WebSphere MQ JMS MQOO MQRC

2009-06-04 00:05 : __j2ee__jms : コメント : 0 : トラックバック : 0 :
コメントの投稿
非公開コメント

« next  ホーム  prev »

search

ad



counter


tag cloud

category cloud