Default Handling Exit Program


  Required Parameter Group:

1 Receiving program information Input Char(* )
2 Message key Input Char(4)

  QSYSINC Member Name: EMHDFTPG

The Default Handling exit program provides a default message handling action that can be used if the program to which an escape message is sent does not monitor for the message. Additional information and an example are provided in the CL Programming topic. A default handling program is defined to the system through the Add Message Description (ADDMSGD) command and the Change Message Description (CHGMSGD) command.


Authorities and Locks

None.


Required Parameter Group

Receiving program information
INPUT; CHAR(*)

The name of the call message queue to which the message was sent (this name is the same name as that of the program that did not monitor for the escape message). The structure for this parameter is described in Format for Receiving Program Information.

Message key
INPUT; CHAR(4)

The message reference key of the escape message on the call message queue.


Format for Receiving Program Information

For detailed descriptions of each field, see the Field Descriptions.

Offset Type Field
Dec Hex
0 0 CHAR(10) Receiving program name
10 A CHAR(10) Receiving module name
20 14 CHAR(256) Receiving procedure name
276 114 CHAR(1) Receiving program type
277 115 CHAR(3) Reserved
280 118 BINARY(4) Offset to long receiving procedure name
284 11C BINARY(4) Length of long receiving procedure name
288 120 CHAR(*) Reserved
The offset to this field is found in the offset field identified above. CHAR(*) Long receiving procedure name


Field Descriptions

Length of long receiving procedure name. For receiving program types 1 and 2, the length of the receiving procedure name, in bytes.

Long receiving procedure name. For receiving program types 1 and 2, the complete procedure name that did not monitor for the message. A nested procedure name has each procedure name separated by a colon. The outermost procedure name is identified first followed by its contained procedures. The innermost procedure is identified last in the string.

Offset to long receiving procedure name. When the receiving program type is 1 or 2, the offset to the long receiving procedure name, in bytes, from the beginning of this parameter structure.

Receiving module name. For receiving program types 1 and 2, the name of the module that did not monitor for the message. For type 0, this field contains blanks.

Receiving procedure name. For receiving program type 1, the name of the procedure that did not monitor for the message. A nested procedure name has each procedure name separated by a colon. The outermost procedure name is identified first followed by its contained procedures. The innermost procedure is identified last in the string. For types 0 and 2, this field contains blanks.

Receiving program name. The name of the program that did not monitor for the message.

Receiving program type. The type of program that received the message (that is, that did not monitor for the message). Valid values follow:

0 The message was sent to an OPM program.
1 The message was sent to a procedure within an ILE program, and the procedure name is 256 characters or less.
2 The message was sent to a procedure within an ILE program, and the procedure name is from 257 through 4096 characters. For this type, the receiving procedure name is blank, and the name can be obtained from the long receiving procedure name.

Reserved. An ignored field.


Usage Notes

This exit program could be called from an exit point within a multithreaded job and should be written to be threadsafe.


Exit program introduced: V3R6
Top | Message Handling APIs | APIs by category