A data-conversion exit is a user-written exit that receives control during the processing of an MQGET call. The exit is invoked if the following are true:
A user-written exit can also be invoked to convert a built-in format, but this happens only if the built-in conversion routines cannot convert the built-in format successfully.
There are some other conditions, described fully in the usage notes of the MQ_DATA_CONV_EXIT call in the WebSphere MQ Application Programming Reference.
See the WebSphere MQ Application Programming Reference for details of the MQGET call. Data-conversion exits cannot use MQI calls, other than MQXCNVC.
A new copy of the exit is loaded when an application attempts to retrieve the first message that uses that Format since the application connected to the queue manager. A new copy may also be loaded at other times if the queue manager has discarded a previously-loaded copy.
The data-conversion exit runs in an environment similar to that of the program which issued the MQGET call. As well as user applications, the program can be an MCA (message channel agent) sending messages to a destination queue manager that does not support message conversion. The environment includes address space and user profile, where applicable. The exit cannot compromise the queue manager's integrity, since it does not run in the queue manager's environment.
In a client-server environment, the exit is loaded at the server, and conversion takes place there.
On z/OS, you must also be aware of the following:
Although not recommended, user exit programs can also make use of CICS API calls, with the following caution: