Start of changeConvert Format of Service Information (QPDETCVT) API


  Required Parameter Group:

1 Receiver variable Output Char(*)
2 Length of receiver variable Input Binary(4)
3 Format of receiver variable Input Char(8)
4 Information to convert Input Char(*)
5 Format of information to convert Input Char(8)
6 Error Code I/O Char(*)

  Default Public Authority: *USE

  Threadsafe: Yes

The Convert Format of Service Information(QPDETCVT) API will take the data input and convert it to a string containing an XML object.


Authorities and Locks

Authority to use the API
No authorities needed.


Required Parameter Group

Receiver Variable
OUTPUT; CHAR(*)

The receiver variable that receives the information requested. The data returned will be a formatted XML string.


Length of receiver variable
INPUT; BINARY(4)

The size of the area to contain the information returned, in bytes.

This parameter must specify the size of the variable you use for the receiver variable parameter. If this parameter specifies a longer size, other parts of storage could be overwritten when the API returns the information.

To determine how much information the API actually returns in response to this call, see the bytes returned field in the receiver variable format. To determine how much information the API could return if space were available, see the bytes available field.

If the bytes available is greater than the length supplied, no XML data will be returned and the bytes returned field will be set to 8.


Format of receiver variable
INPUT; CHAR(8)

The format of the information passed back to the caller of this API. The possible format names are:

CVTR0100 The information returned to the caller of this API. For more information, see CVTR0100 Format for information to convert

Information to convert
INPUT; CHAR(*)

The data to be converted.

Format of information to convert
INPUT; CHAR(8)

The format of the information passed in the information to convert. The possible format names are:

CVTS0100 The information to convert and the receiver variable are for LIC Log data typically associated with the exit program specified in Start Watch (STRWCH) command or API. The format of the receiver variable will be described by the XSD file specified in the returned XML object.
CVTS0200 The information to convert and the receiver variable are for message data typically associated with the Start Watch (STRWCH) command or API exit program. The format of the receiver variable will be described by the XSD file specified in the returned XML object.
CVTS0300 The information to convert and the receiver variable are for message data typically associated with the Open List of Messages (QGYOLMSG) API or the List Nonprogram Messages (QMHLSTM) API. For more information, see CVTS0300 Format for information to convert. The format of the receiver variable will be described by the XSD file specified in the returned XML object.
CVTS0400 The information to convert and the receiver variable are for message data typically associated with the Open List of Job Log Messages (QGYOLJBL) API or the List Job Log Messages (QMHLJOBL) API. For more information, see CVTS0400 Format for information to convert. The format of the receiver variable will be described by the XSD file specified in the returned XML object.

Error code
I/O; CHAR(*)

The structure in which to return error information. For the format of the structure, see Error Code Parameter.



CVTR0100 - Format for receiver variable

The following table shows the format of the returned information. For a detailed description of each field, see Field Descriptions.

Offset Type Field
Dec Hex
0 0 BINARY(4) Bytes returned
4 4 BINARY(4) Bytes available
8 8 BINARY(4) XML data length
12 C CHAR(*) XML data

CVTS0100 - Format for LIC Log conversion

The following table shows the input for converting a LIC Log to XML. Any data not available should be initialized with '00'x.
For a detailed description of each field, see Field Descriptions

Offset Type Field
Dec Hex
0 0 BINARY(4) Length of watch information
4 4 CHAR(4) LIC Log major code
8 8 CHAR(4) LIC Log minor code
12 C CHAR(8) LIC Log identifier
20 14 CHAR(8) LIC Log timestamp
28 1C CHAR(8) TDE number
36 24 CHAR(16) Task name
52 34 CHAR(30) Server type
82 52 CHAR(2) Exception ID
84 54 CHAR(10) LIC job name
94 5E CHAR(10) LIC job user name
104 68 CHAR(6) LIC job number
110 6E CHAR(4) Reserved
114 72 CHAR(8) Thread ID
122 7A CHAR(8) LIC module compile binary timestamp
130 82 CHAR(8) LIC module offset
138 8A CHAR(8) LIC module RU name
146 92 CHAR(48) LIC module name
194 DA CHAR(128) LIC module entry point name
322 142 CHAR(2) Reserved
324 144 BINARY(4) Offset to comparison data
328 148 BINARY(4) Length of comparison data
* * CHAR(*) LIC Log comparison data


CVTS0200 - Format for message conversion (STRWCH)

The following table shows the input for converting messages received from the Start Watch command or API to XML. Any data not available should be initialized with '00'x.

For a detailed description of each field, see Field Descriptions.

Offset Type Field
Dec Hex
0 0 BINARY(4) Length of watch information
4 4 CHAR(7) Message ID
11 B CHAR(1) Reserved
12 C CHAR(10) Message queue name
22 16 CHAR(10) Message queue library
32 20 CHAR(10) Job name
42 2A CHAR(10) Job user name
52 34 CHAR(6) Job number
58 3A CHAR(4) Reserved
62 3E CHAR(256) Sending program name
318 13E CHAR(10) Sending module name
328 148 BINARY(4) Offset to sending procedure name
332 14C BINARY(4) Length of sending procedure name
336 150 CHAR(10) Receiving program name
346 15A CHAR(10) Receiving module name
356 164 BINARY(4) Offset to receiving procedure name
360 168 BINARY(4) Length of receiving procedure name
364 16C BINARY(4) Message severity
368 170 CHAR(10) Symbolic message type
378 17A CHAR(8) Message timestamp
386 182 CHAR(4) Message key
390 186 CHAR(10) Message file name
400 190 CHAR(10) Message file library
410 19A CHAR(2) Reserved
412 19C BINARY(4) Offset to comparison data
416 1A0 BINARY(4) Length of comparison data
420 1A4 CHAR(10) Compare against
430 1AE CHAR(10) Reserved
432 1B0 BINARY(4) Comparison data CCSID
436 1B4 BINARY(4) Offset where comparison data was found
440 1B8 BINARY(4) Offset to message replacement data
444 1BC BINARY(4) Length of message replacement data
448 1C0 BINARY(4) Replacement data CCSID
* * CHAR(*) Sending procedure name
* * CHAR(*) Receiving procedure name
* * CHAR(*) Message comparison data
* * CHAR(*) Message replacement data


CVTS0300 - Format for message conversion (QGYOLMSG)

The following table shows the input for converting messages received from the Open List of Messages in format LSTM0100 to XML. For a detailed description of each field, For a detailed description of each field, see Field Descriptions.
Any data not available should be initialized with '00'x.

Offset Type Field
Dec Hex
0 0 BINARY(4) Length of fixed header
4 4 BINARY(4) Offset to first message
8 8 BINARY(4) Number of messages to convert
These fields repeat for each message identifier specified. BINARY(4) Displacement to the next entry
BINARY(4) Displacement to fields
BINARY(4) Number of fields
BINARY(4) Message severity
CHAR(7) Message identifier
CHAR(2) Message type
CHAR(4) Message key
CHAR(10) Message file name
CHAR(10) Message file library specified at send time
CHAR(10) Message queue
CHAR(10) Message queue library used
CHAR(7) Date sent
CHAR(6) Time Sent
CHAR(6) Microseconds
CHAR(*) Reserved

These fields repeat for each identifier field specified. BINARY(4) Displacement to the next field information
BINARY(4) Length of field information
BINARY(4) Identifier field
CHAR(1) Type of data
CHAR(1) Status of data
CHAR(14) Reserved
BINARY(4) Length of data
CHAR(*) Data
CHAR(*) Reserved


CVTS0400 - Format for message conversion (QGYOLJBL)

The following table shows the input for converting messages received from the Open list of Joblog Messages in format OLJL0100 to XML. For a detailed description of each field, see Field Descriptions.
Any data not available should be initialized with '00'x.


Offset Type Field
Dec Hex
0 0 BINARY(4) Length of fixed header
4 4 BINARY(4) Offset to first message
8 8 BINARY(4) Number of messages to convert
12 C CHAR(10) Job name
22 16 CHAR(10) Job user name
32 20 CHAR(6) Job number
These fields repeat for each message identifier specified. BINARY(4) Displacement to the next entry
BINARY(4) Displacement to fields
BINARY(4) Number of fields
BINARY(4) Message severity
CHAR(7) Message identifier
CHAR(2) Message type
CHAR(4) Message key
CHAR(10) Message file name
CHAR(10) Message file library specified at send time
CHAR(7) Date sent
CHAR(6) Time sent
CHAR(6) Microseconds
CHAR(2) Message type
CHAR(*) Reserved

These fields repeat for each identifier field specified. BINARY(4) Displacement to the next field information returned
BINARY(4) Length of field information returned
BINARY(4) Identifier field
CHAR(1) Type of data
CHAR(1) Status of data
CHAR(14) Reserved
BINARY(4) Length of data
CHAR(*) Data
CHAR(*) Reserved

Field Descriptions

Bytes available. The number of bytes of data available to be returned. All available data is returned if enough space is provided.

Bytes returned. The number of bytes of data returned.

Compare against. The part of the message the data specified in message comparison data field was compared against. This field is set to blanks if zero was specified for the length of comparison data field. The possible values are:

*MSGDTA The message comparison data was compared against the message replacement data.
*FROMPGM The message comparison data was compared against the sending program name.
*TOPGM The message comparison data was compared against the receiving program name.

Comparison data CCSID. The coded character set identifier (CCSID) of the message comparison data.

Data. The data associated with the specified identifier field.

Date Sent. The date on which the message was sent, in CYYMMDD (century, year, month, and day) format.

Displacement to fields. The displayment displacement, in bytes, from the beginning of the repeating information for each message variable to the beginning of the first repeating identifier field of the CVTS0300 or CVTS0400 format.

Displacement to the next entry. The displacement, in bytes, from the beginning of the first message entry to the beginning of the next message entry. If there is no next entry, this field should be set to 0.

Displacement to the next field information. The displacement, in bytes, from the beginning of the first message entry to the beginning of the next repeating identifier field of the CVTS0300 format.

Exception ID. The exception that caused the Log entry to be requested. This is a 2-byte hexadecimal field formed by concatenating to the high-order 1-byte exception group number a low-order 1-byte exception subtype number. Exception identifier is binary zeros if the LIC Log entry was not requested as a result of an exception.

Identifier field. The field returned. See QGYOLMSG - Open List of Messages, the Valid Field Identifiers for the list of valid field identifiers.

Job name. The name of the job that sent the message.

Job number. The job number (000001-999999) to further qualify the job name and user name of the job that sent the message

Job user name. The user name of the job that sent the message.

Length of comparison data. The length of the user specified text which was compared against the message or LIC Log event data.

Length of data. The length of the data returned in the data field, in bytes. If no data is returned, this value will be set to 0.

Length of field information. The total length of information in this field, in bytes.

Length of fixed header. The total length of fixed header information, in bytes. The possible values are:

12 - when using format CVTS0300
38 - when using format CVTS0400

Length of message replacement data. The length of the message replacement data, in bytes.

Length of receiving procedure name. The length of the procedure the message was sent to when the message was sent to a procedure within an ILE program. This field is set to zero if the message was sent to an original program model (OPM) program or when the message is sent to a nonprogram message queue.

Length of sending procedure name. The length of the procedure sending the message when the message was sent from a procedure within an ILE program. This field is set to zero if the message was sent from an original program model (OPM) program.

Length of watch information. The length of the Information to convert parameter , including the 4-byte length of this field, associated with the the data in format CVTS0100 or format CVTS0200.

LIC job name. The name of the job which requested the Log entry. LIC job name is blank (hex 40s) if the Log entry was not requested by a job.

LIC job number. The job number (000001-999999) to further qualify the job name and user name of the job which requested the LIC Log entry. LIC job number is blank (hex 40s) if the LIC Log entry was not requested by a job.

LIC job user name. The user name of the job which requested the LIC Log entry. LIC user name is blank (hex 40s) if the LIC Log entry was not requested by a job.

LIC Log comparison data. The user specified text string used to compare against the entry data of the watched for log entry. This is an optional field.

LIC Log identifier. The LIC Log entry identifier of the LIC Log that occurred. The LIC Log entry identifier is binary zeros if the entry was not added to the LIC Log by the time this event was signalled.

LIC Log major code. The major code of the LIC Log that occurred.

LIC Log minor code. The minor code of the LIC Log that occurred.

LIC Log timestamp. The binary timestamp of when the entry was requested to be added to the LIC Log. The format for this field is the system time-stamp format.

LIC module compile binary timestamp. The binary timestamp of when the LIC module was compiled. The format for this field is the system time-stamp format.

LIC module entry point name. The name of the entry point which requested the LIC Log entry. If the entry point name is greater than 128 characters, the LIC module entry point name is truncated to 128 characters.

LIC module name. The name of the module which requested the LIC Log entry. If the module name is greater than 48 characters, the LIC module name is truncated to 48 characters.

LIC module offset. The byte offset into the LIC module text which requested the LIC Log entry.

LIC module RU name. The replaceable unit name of the module which requested the LIC Log entry. LIC module RU name is always in upper case EBCDIC.

Message comparison data. The user specified text string used to compare against the entry data of the watched for message ID.

Message file library. The name of the library containing the message file.

Message file library specified at send time. The name of the library containing the message file as specified when the message was sent. If *CURLIB or *LIBL was specified for the library when the message was sent, that value is returned as the library here.

Message file name. The name of the message file that was used to send the message.

Message ID. The identifier of the message that occurred.

Message identifier. The identifying code of the message listed. If an immediate message is listed, this field is set to blanks.

Message key. The message reference key of the message that occurred. This field is set to blanks if *JOBLOG is specified for the message queue name.

Message queue. The name of the message queue where the message was listed.

Message queue library. The name of the library where the message queue is located. This field is set to blanks if *JOBLOG is specified for the message queue name.

Message queue library used. The actual library that contains the message queue.

Message queue name. The name of the message queue where the message was sent. The following special values are accepted:

Value Message Type
*JOBLOG The message ID was found in the job specified in the job name, user name and job number fields.

Message replacement data. The values for substitution variables in the message sent.

Message severity. The severity code, ranging from 00 through 99, of the message.

Message timestamp. The timestamp of when the message was sent. The format for this field is the system time-stamp format.

Message type. The type of message listed. The possible values and their meanings follow:


Value Message Type
01 Completion
02 Diagnostic
04 Informational
05 Inquiry
06 Sender's copy
08 Request
10 Request with prompting
14 Notify, exception already handled when API is called
15 Escape, exception already handled when API is called
16 Notify, exception not handled when API is called
17 Escape, exception not handled when API is called
21 Reply, not checked for validity
22 Reply, checked for validity
23 Reply, message default used
24 Reply, system default used
25 Reply, from system reply list
26 Reply, from exit program

Microseconds. The microseconds part of the time sent.

Number of fields. The number of identifier fields provided to the application

Number of messages to convert. The number of messages provided to the application

Offset to comparison data. The offset to the field that holds the comparison data. If there was no comparison data, this field should be set to 0.

Offset to first message. The offset , in bytes, from the beginning of the message information to convert variable to the beginning of the first repeating message entry of the CVTS0300 or CVTS0400 format.

Offset to message replacement data. The offset to the field that holds the replacement data.

Offset to receiving procedure name. The offset to the field that holds the procedure the message was sent to when the message was sent to a procedure within an ILE program. This field is set to zero if the message was sent to an original program model (OPM) program or when the message is sent to a nonprogram message queue.

Offset to sending procedure name. The offset to the field that holds the procedure sending the message when the message was sent from a procedure within an ILE program. This field is set to zero if the message was sent from an original program model (OPM) program.

Offset where comparison data was found. The offset in the message replacement data, the sending program name or the receiving program name, where the message comparison data was found. This field is set to zero if zero was specified for the length of comparison data field.

Receiving module name. The name of the module receiving the message when the message was sent to a procedure within an ILE program. If the message was sent to an original program model (OPM) program, this field is set to blanks. This field will be blank when the message is sent to a nonprogram message queue.

Receiving procedure name. The name of the procedure the message was sent to when the message was sent to a procedure within an ILE program. A nested procedure name has each procedure name separated by a colon. The outermost procedure name is identified first followed by the procedures it contains. The innermost procedure is identified last in the string.

Receiving program name. The name of the program the message was sent to, or the Integrated Language Environment (ILE) program name that contains the procedure receiving the message. This field will be blank when the message is sent to a nonprogram message queue.

Replacement data CCSID. The coded character set identifier (CCSID) that the message data is in. This only applies to the part of the replacement data that corresponds to a convertible character data type (*CCHAR). All other replacement data has not be converted and can be considered to have a CCSID of 65535. If there is no *CHAR replacement data, this field may be set to 65535.

For more information about message handler and its use of CCSIDS, see CCSIDS: Message Support in the Gobalization topic. For more information about the *CCHAR field type, see the Add Message Description (ADDMSGD) command.

Reserved. A reserved field. This field must be set to hexadecimal or binary zero.

Sending module name. The name of the module the sending message when the sender is a procedure within an ILE program.

Sending procedure name. The name of the procedure sending the message when the sender is a procedure within an ILE program. A nested procedure name has each procedure name separated by a colon. The outermost procedure name is identified first followed by the procedures it contains. The innermost procedure is identified last in the string.

Sending program name. The program name or ILE program name that contains the procedure sending the message.

Server type. The type of server that requested the LIC Log entry. Server type is blank (hex 40s) if the LIC Log entry was not requested by a server.

Status of data. The status of the data listed for this message. Possible values and their meanings follow:

blank The data returned is complete.
A The caller of the API was not authorized to view the data. This occurs when the caller of the API is not authorized to the message file or message file library containing a stored message being listed.
D The data was damaged. This occurs when the message file or library specified at send time for a stored message is damaged when the API is called.
U The data was unavailable. This occurs when the message file or library specified at send time for a stored message is exclusively used by another process when the API is called.
N The data was not found. This occurs when the message file or library specified at send time for a stored message cannot be found or resolved when the API is called.

This field is applicable to the field identifiers that are retrieved from the message file for a stored message. A description of the action that occurs for specific field identifiers when the status of data field is not blank follows:

0101 When the status of data field is not blank, the alert option field identifier contains blanks.
0301, 0302 When the status of data field is not blank, these message field identifiers contain message text about the problem encountered while attempting to access the message file. Both fields have the replacement data substituted.
0401, 0402, 0403, 0404 When the status of data field is not blank, these message help field identifiers contain the text of the message regarding the problem encountered while attempting to access the message file. All fields have the replacement data substituted. The message help with formatting characters and message help with replacement data and formatting characters field identifiers also have the message formatting characters included.
0501 When the status of data field is not blank, the default reply field identifier contains the system default reply.
0801 When the status of data field is not blank, the message file library used field identifier contains blanks.

This field is also applicable to the various sending information fields (identifiers 0601, 0603) when a problem is encountered while attempting to retrieve this information. When one of these fields cannot be retrieved from the message:

The status of data field is always blank for the other field identifiers. The length of data field is zero.

Symbolic message type. The type assigned to the message when it was sent. The possible values are:

*COMP Completion
*DIAG Diagnostic
*ESCAPE Escape
*INFO Informational
*INQ Inquiry
*NOTIFY Notify
*RQS Request
*STATUS Status

Task name. The name of the task which requested the LIC Log entry. Task name is blank (hex 40s) if the LIC Log entry was not requested by a task.

TDE number. The number of the task dispatching element (TDE) which requested the LIC Log entry.

Thread ID. The thread which requested the LIC Log entry. Thread identifier is binary zeros if the LIC Log entry was not requested by a thread.

Time sent. The time at which the message being listed was sent, in HHMMSS (hour, minute, and second) format.

Type of data. The type of data returned.

C The data is returned in character format.
B The data is returned in binary format.
M The data is returned in a mixed form

XML data. The XML data being returned.

XML data length. The length of the XML object being returned.


Error Messages

The following messages may be sent from this function:

Message ID Error Message Text
CPF0CC1 Error initializing the XML parser.
CPF3C21 Format name &1 is not valid.
CPF3C24 Length of the receiver variable is not valid.
CPF3C36 Number of parameters, &1, entered for this API was not valid.
CPF3CF1 Error code parameter not valid.
CPF3CF2 Error(s) occurred during running of &1 API.


End of change


API introduced: V5R4
Top | Problem Management APIs |APIs by category