Ariba Supplier OnRamp 7.1 | webMethods Ariba Supplier OnRamp Documentation | webMethods Ariba Supplier OnRamp Installation and User’s Documentation | Concepts | cXML Document Processing without Trading Networks | MasterAgreementRequest Processing
 
MasterAgreementRequest Processing
 
The MasterAgreementRequest Handler
Master Agreements enable buyers to establish a commitment for goods and services with suppliers. They represent a common mechanism for managing supplier and budget commitments, and they enable buyers to negotiate better discounts by basing the discounts on future purchases, while enabling suppliers to more accurately forecast demand.
The MasterAgreementRequest document defines the Master Agreement created by the buying organization. It specifies beginning and end dates, and the committed maximum and minimum values of the agreement. It also lists maximum and minimum values and quantities for individual items. The MasterAgreementRequest document consists of MasterAgreementRequestHeader and AgreementItemOut. The MasterAgreement-RequestHeader contains the Master Agreement common to all contained items. The AgreementItemOut specifies the requirements of a particular line item that is part of the Master Agreement contract.
Ariba Supplier OnRamp provides sample services to create a MasterAgreement-Request test message and submit it to the configured URL. To test this transaction, see Using the Test Module.
Ariba Supplier OnRamp processes a MasterAgreementRequest message received by the supplier as follows:
*If logging is enabled, the document receiver service receiveCXML logs an entry indicating that the MasterAgreementRequest was received. For a description of logging, see Using the Logging Facility.
*The receiveCXML service queries the Configuration module to determine if a developer-defined event handler service is registered for the MasterAgreementRequestReceived event. If the handler service is registered, that service is invoked. For more information, see Listening to and Processing Punchout Process Events.
*The receiveCXML service obtains the operation type (new, update, or delete) of the MasterAgreementRequest.
*The receiveCXML service searches for the user-defined MasterAgreementRequest handler for the particular operation type. receiveCXML queries the Configuration Module for the handler service name by calling wm.ariba.supplier.handlers:getHandler service
*The receiveCXML service invokes the appropriate handler. If an error occurs when the handler is invoked, receiveCXML returns an ErrorResponse to the Ariba buyer. Any errors that occur while the handler executes are returned in a serviceError record (assuming that you designed the handler with the appropriate specifications). In addition, if logging is enabled, a log entry is entered to indicate that an error occurred. Furthermore, if an event service is registered for the MasterAgreementRequestFailure event, that service is invoked. receiveCXML checks the serviceError record to see if an error occurred and will return an ErrorResponse to the Ariba buyer.
*If an error did not occur, receiveCXML calls the service and returns a MasterAgreementResponse to the Ariba Buyer.
*If logging is enabled, receiveCXML adds a log entry indicating that a MasterAgreementResponse was sent.
*If an event service is registered for the MasterAgreementResponseSent event, receiveCXML calls the service.