ATPToSalesOrder collaboration template

The ATPToSalesOrder collaboration template is designed to be used when ATP checks are a dependency of the Sales Order creation and update process. ATPToSalesOrder subscribes to the generic Order business object to update product availability data in a sales order.

Issues and assumptions

Collaboration object setup

This section includes information on port bindings and required steps for setting up collaboration objects based on ATPToSalesOrder. 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.

Port information

Figure 1 illustrates the ATPToSalesOrder collaboration's ports, as they are displayed in System Manager.

Figure 1. ATPToSalesOrder collaboration's 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.

Port name: From
Business object Bound to Function Verbs used
Order. The source (buyer's) application connector. 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.

Update.

Delete.


Port name: ToATP
Business object Bound to Function Verbs used
ATP. The ATP collaboration. This is the object being sent. Retrieve.

Port name: ToSOP
Business object Bound to Function Verbs used
Order. The SalesOrderProcessing collaboration. This is the object being sent to the SalesOrderProcessing collaboration.

Create.

Update.

Delete.


Port name: ToSource
Business object Bound to Function Verbs used
Order. The source (buyer's) application connector. This is the object that is sent back to the source application once the ATP and SalesOrderProcessing collaborations have ended successfully and return control to the ATPToSalesOrder collaboration.

Update

Collaboration template processes

This section illustrates the process logic for this collaboration template:

Overall process logic

Figure 2 illustrates ATPToSalesOrder's process logic.

Figure 2. ATPToSalesOrder collaboration's process logic

Inherited process logic

This collaboration template uses the following standard collaboration business processes:

For information on these processes, see the Collaboration Development Guide.

Note: ATPToSalesOrder does not include a Retrieve scenario. The ATPToSalesOrder process logic includes the ATP Transaction subprocess which maps the generic Order object to the generic ATP object and sends it to the ATP collaboration. The ATP collaboration returns the response ATP business object to the ATPToSalesOrder collaboration where it is mapped back to an Order business object and sent to the SalesOrderProcessing collaboration. Mapping from the ATP business object to the Order business object occurs in the following two steps:

Note: Code has been added to the collaboration to enable mapping when the source and destination objects are of the same type. For example, an Order business object to another Order business object.

Transaction process logic

Figure 3 illustrates ATPToSalesOrder's transaction process logic.

Figure 3. ATPToSalesOrder collaboration's transaction process logic

Compensation processing

InterChange Server Express can roll back a transaction when any step in a transactional collaboration fails. For example, when ATPToSalesOrder 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 ATPToSalesOrder 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 WebSphere Business Integration Server Express Plus system, see the System Implementation Guide. For information on 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:

  1. Add this capability to the collaboration template and to every other collaboration template in the collaboration-object group.
  2. Set the minimum transaction level of the collaboration object and all members of the collaboration-object group to a value higher than None. If a failure occurs in any subtransaction step, settings of Minimal Effort or higher cause this collaboration object and other collaboration objects in the group to execute compensation for Create, Update, and Delete operations performed on all business objects.
  3. Set the USE_RETRIEVE property of the collaboration object and all other members of the collaboration-object group to "true". Forcing the collaboration objects to retrieve values before changing them allows the collaboration objects to restore the original values in an Update or Delete process.

Configuration properties

This section describes the standard properties and collaboration template-specific properties for this collaboration template:

Standard properties

This collaboration template uses the following standard configuration properties for collaboration templates:

For information on these configuration properties, see the Collaboration Development Guide.

Properties specific to this collaboration template

In addition to its standard configuration properties, this collaboration template has the configuration properties described below.

Configuration properties specific to the ATPToSalesOrder collaboration template

Property name and explanation Possible values Default value

MAP_TO_ATP.

This property is the name of the map that the collaboration will call to map the incoming Order business object to the ATP business object which will be sent to the ATP collaboration.

The name of the map in the repository. none.

MAP_FROM_ATP.

This property is the name of the map that the collaboration will call to map the ATP business object received from the ATP collaboration to the Order business object which will be sent to the SalesOrderProcessing collaboration.

The name of the map in the repository. none.

RETURN_TO_SOURCE

The value of this property determines whether or not the Order object synchronized with the destination application will be sent back to the source with the "update" verb. Since the Order object will contain ATP dates retrieved through the ATPToSalesOrder process, if synchronization of this information is relevant to the source application, then this property should be set to "true".

true, false none

Implementation notes

Collaboration messages

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:

  1. In the Start menu, click Programs > IBM WebSphere Business Integration Express > Toolset Express > Administrative > Log Viewer.
  2. In the File menu, click Open.
  3. Use the Look In field to change the current folder to ProductDir\collaborations\messages, and then select the message file for this collaboration template.

Copyright IBM Corp. 1997, 2004

Copyright IBM Corp. 2004