The OrderDeliveryStatus collaboration synchronizes order delivery data from an Enterprise Resource Planning (ERP) application to a Customer Interaction Management (CIM) application. As status information on order deliveries changes in an order management system, the collaboration sends the change in state to a collaborating destination application.
To synchronize the status of an order delivery between the ERP and CIM applications, the orders must already exist. The collaboration verifies that the order exists in the destination application before it sends the request to update its status. Because each status change is made to an existing order delivery, the collaboration sends business objects with the Update verb only.
Every status business object reflects the format of the order delivery whose status it tracks. For example, if the order delivery contains three line items, the status business object contains the order header and the three line items from the order delivery. The header information provides a summary view of the entire order delivery status.
Typically the sales order process originates in the CIM application when the Telesales Representative or the Customer Service Representative (CSR) takes an order or makes a quote while talking with a customer. After the order is saved in the front-office application, the Telesales rep or CSR sends the order to the ERP application, where it is processed and booked. ERP processes include order generation, delivery of the products, billing to the customer, product returns, and any service or repairs.
Future requests or changes made to the front-office representative are also sent to the ERP system, where the changes are processed. Any change of status that occurs to the order delivery in the ERP system is immediately pushed back to the CIM system by the OrderDeliveryStatus collaboration.
The OrderDeliveryStatus collaboration uses the generic OrderDeliveryStatus business object to provide status data on deliveries made against sales orders.
The order life cycle can vary from a simple process to a complex one.
The OrderDeliveryStatus collaboration uses a generic OrderDeliveryStatus business object to report a change to an order's delivery state during the sales order lifecycle. For example, when a partial or full delivery is created in the ERP against an order, an OrderDeliveryStatus business object update is triggered for synchronization with the CIM application. As long as the sales order in the ERP application exists as an order in the CIM, the order in the CIM application can be of any type; that is, the ERP sales order can synchronize with a quote, a contract, a return, or a sales order in the CIM application. However, the orders must exist in both the ERP and CIM applications because the OrderDeliveryStatus collaboration treats updates to order deliveries in the ERP as updates to the sales order in the CIM. The order number serves as the link between the two applications.
An ERP application always serves as the source, because updates to the sales order are always made in the back-office application. Whenever the ERP application notes a change in state to an order delivery, the collaboration sends the specific status change of the order delivery to the CIM application. Although the synchronizations performed by the OrderDeliveryStatus collaboration are intended primarily for a CSR or Telesales Rep who responds to customers' queries through a front-office application, the collaboration is not triggered by a customer's phone call to the front office. Instead, status changes are pushed to the CIM application at the time they are made in the ERP application. Because the status of order deliveries is synchronized in the CIM application as soon as they are changed in the ERP application, the CSR or Telesales Rep has access to the current status of an order delivery when a customer requests it.
This section includes information on port bindings and required steps for setting up collaboration objects based on OrderDeliveryStatus. For information on standard features, ports, and configuration properties for collaboration templates, see the Collaboration Development Guide. For general information on creating collaboration objects, see the System Implementation Guide.
Figure 1 illustrates ports of OrderDeliveryStatus as they are displayed in System Manager. The tables that follow the figure provide information about each port.
Figure 1. OrderDeliveryStatus collaboration ports
Note: To prevent the collaboration object from using a port, bind that port to the Port connector. Binding the port indicates that the port is unused without causing the collaboration object to provide additional functionality.
Business object | Bound to | Function | Verbs used |
---|---|---|---|
OrderDeliveryStatus | The destination application's connector | Sends a reference-valued business object to retrieve the full-valued business object. The result determines the verb to use when synchronizing the Order. |
Retrieve |
Business object | Bound to | Function | Verbs used |
---|---|---|---|
OrderDeliveryStatus | Source application's connector or calling collaboration. | Receives the triggering business object. At the end of a synchronous call, this port also returns the triggering business object to the source application when the collaboration ends successfully. |
Create Retrieve Update Delete |
Business object | Bound to | Function | Verbs used |
---|---|---|---|
OrderDeliveryStatus | The destination application's connector |
Sends the triggering business object out of the collaboration |
Create Update Delete |
OrderDeliveryStatus is designed to be used as a stand-alone collaboration. To set up OrderDeliveryStatus as a stand-alone collaboration object, follow these steps:
This section illustrates the process logic for this collaboration template:
Figure 2 illustrates the OrderDeliveryStatus process logic.
Figure 2. OrderDeliveryStatus collaboration process logic
This collaboration template uses the following standard collaboration business processes:
For information on these processes, see the Collaboration Development Guide.
InterChange Server Express can roll back a transaction when any step in a transactional collaboration fails. For example, when OrderDeliveryStatus is a member of a collaboration-object group that participates in a transactional collaboration, its actions are one subtransactional step of a larger transaction. If any step in the collaboration-object group's business process fails, the transactional collaboration details how InterChange Server Express rolls back the processing of every collaboration in the group.
When an OrderDeliveryStatus collaboration object is used independently of other collaboration objects or the collaboration object's From port is bound to a source application rather than to another collaboration, its process comprises a single transactional step. In such a situation, it is not necessary to perform rollback.
To cause a collaboration object or a collaboration-object group to perform rollback requires modification of the collaboration template. To understand transaction processing in the IBM WebSphere Business Integration Server Express Plus system, see the System Implementation Guide. For information about adding transaction processing to the collaboration template, see the Collaboration Development Guide.
To extend the collaboration object to handle transaction processing, complete the following steps:
Note: OrderDeliveryStatus does not have unique configuration properties. All of its properties are standard.
This collaboration template uses the following standard configuration properties for collaboration templates:
For information on these configuration properties, see the Collaboration Development Guide.
To view an explanation of the messages of this collaboration template, launch the Log Viewer and open the collaboration template's message file. To launch the Log Viewer and open the collaboration template's message file:
To upgrade to a newer version of the collaboration template, perform the following steps: