OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide

Writing Your Program
OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide424822-001
5-49
Finishing Transfer-in of a Root Object
all specifies whether you want to change the state of all currently reserved objects or
only the object specified in the object parameter.
remove specifies what you want to do with the original root object on the input queue.
You can remove the object permanently from the input queue, move the object from the
input queue to the archive queue, or leave the object in the input queue as an unreserved
object. Leaving the object as an unreserved object has the same effect as cancelling the
object’s transfer-in. If the gateway is defined as P1-EXIT type, you have a fourth option
to remove the object from the input queue and place it in the output queue. The four
option to the remove parameter are as follows:
MH-CANCEL specifies leaving the unreserved root object on the input queue.
MH-REMOVE specifies removing the object from the input queue.
MH-ARCHIVE specifies moving the object from the input queue to the archive
queue.
MH-TRANSFER specifies moving the object from the input queue to the output
queue. This option is valid only for the P1-EXIT type gateway.
Archiving Root objects
The purpose of archiving is to remove a fully or partially undecodable root object from
the input queue. Such a root object might be indicated, for instance, if
GPI_MT_START_TRANSFER_IN_ fails, and a subsequent call to GPI_STATUS_
returns one of the following primary codes:
ZGPI-RC-UNDECODABLE-MESSAGE
ZGPI-RC-UNDECODABLE-CONTENT
If these codes or other conditions indicate a problem root object, you have two options:
you can delete it (losing all information contained), or you can archive it using the
MH-ARCHIVE flag described above.
A root object on the archive queue is not accessible to GPI procedures. For help in
analyzing an archived root object, contact your Compaq representative.
Example: Finishing Transfer of an Inbound Root Object
The following TAL example shows a call to GPI_MT_FINISH_TRANSFER_IN_ . The
reserved root object on the input queue and its corresponding copy in GPI library
memory space are both deleted. The call, however, does not affect any of the other
reserved objects on the queue.
Note. If you specify OM-TRUE for all, objects not processed before an error condition occurs
remain as reserved root objects on the input queue. Objects processed before the error
occurs are removed and become the responsibility of the client.