TelcoProductManager collaboration template

The TelcoProductManager collaboration template is used to handle and synchronize data objects representing products and service across applications in the telecommunications (telco) industry. Each of these applications represents a different business function, including the following functions:

TelcoProductManager uses the Generic TelcoProduct business object to represent a product or a service including its supplier information.

This collaboration template uses the ProcessContext attribute of generic business objects to maintain process information between two or more collaboration objects. In order to maintain this information, the collaboration object performs the following actions, starting from when it receives a triggering business object:

Collaboration object setup

This section includes information on port bindings and required steps for setting up collaboration objects based on this collaboration template. For information on standard features, ports, and configuration properties for collaboration templates, and for general information on creating collaboration objects refer to the documents listed in Required documents for creating collaboration objects.

Port information

The following diagram illustrates TelcoProductManager's ports:

TelcoProductManager collaboration's ports

This collaboration template uses multiple destination ports instead of a single DestinationAppRetrieve port. The DestinationAppRetrieveMain port is used for the business object sent to ToMain port, and DestinationAppRetrieveSub1 and DestinationAppRetrieveSub2 are used for the business object sent to the ToSub1 and ToSub2 ports. The DestinationAppRetrieveMain port is used for the Retrieve process and the AdditionalRetrieve process.

Note: To keep the collaboration object from using a port, bind that port to the Port connector. Doing so 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
TelcoProduct

WebSphere MQ Workflow

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 object ends successfully.

Create, Update, Delete, UpdateStatus, Retrieve


Port name: ToMain
Business object Bound to Function Verbs used
TelcoProduct

Product catalog management system

Sends the triggering business object out of the collaboration object Create, Update, Delete,

Port name: ToSub1
Business object Bound to Function Verbs used
TelcoProduct

Account  management system

Sends the triggering business object out of the collaboration object Create, Update, Delete

Port name: ToSub2
Business object Bound to Function Verbs used
TelcoProduct

Provisioning system

Sends the triggering business object out of the collaboration object Create, Update, Delete

Port name: DestinationAppRetrieveMain
Business object Bound to Function Verbs used
TelcoProduct

Product catalog management system

Sends a reference-valued business object to retrieve the full-valued business object. The result determines which verb to use when synchronizing the TelcoProduct. Retrieve

Port name: DestinationAppRetrieveSub1
Business object Bound to Function Verbs used
TelcoProduct

Account management system

Sends a reference-valued business object to retrieve the full-valued business object. The result determines which verb to use when synchronizing the TelcoProduct. Retrieve

Port name: DestinationAppRetrieveSub2
Business object Bound to Function Verbs used
TelcoProduct

Provisioning system

Sends a reference-valued business object to retrieve the full-valued business object. The result determines which verb to use when synchronizing the TelcoProduct. Retrieve
 
Port name: SourceApp
Business object Bound to Function Verbs used
TelcoProduct Product catalog management system
 
Retrieves the source data from the master application.
When the collaboration object is used in a sync mode, where it receives only the key information from the From port, retrieves the source data from the master application, and synchronizes that data with other applications.
Retrieve

Port name: Return
Business object Bound to Function Verbs used
TelcoProduct WebSphere MQ Workflow
 
Returns the result of the collaboration object's processing to an application before the collaboration object ends its process.
This is typically used with WebSphere MQ Workflow connector to return the result of the business process to a WebSphere MQ Workflow activity.
Update

Setting up the collaboration object

To set up TelcoProductManager as a stand-alone collaboration object, complete the following steps:

  1. Create the TelcoProductManager collaboration object.
  2. Bind the collaboration object's ports as described in Port information.
  3. Set the configuration properties for TelcoProductManager.

Collaboration template processes

This section illustrates the following business processes for this collaboration template:

Overall process logic

This section illustrates TelcoProductManager's process logic for its supported verbs indicated below, as well as additional process logic that will be executed if the SYNC_FROM_SOURCE or USE_RETURN configuration properties are set to true:

Create, Delete, and Update

The following diagram shows the process logic for this collaboration template's Create, Delete, and Update verbs.

TelcoProductManager Create, Update and Delete process logic

UpdateStatus

The following diagram shows the process logic for this collaboration template's UpdateStatus verb.

TelcoProductManager UpdateStatus process logic

Retrieve

The following diagram shows the process logic for this collaboration template's Retrieve verb.

TelcoProductManager Retrieve process logic

SYNC_FROM_SOURCE

The following diagram shows the additional process logic that is executed when the collaboration object's SYNC_FROM_SOURCE configuration property is set to true.

TelcoProductManager SYNC_FROM_SOURCE  process logic

USE_RETURN

The following diagram shows the additional process logic that is executed when the collaboration object's USE_RETURN configuration property is set to true.

TelcoProductManager USE_RETURN process logic

Standard business processes

This collaboration template uses the following standard business processes:

Compensation processing

IBM WebSphere InterChange Server provides the ability to roll back a transaction upon the failure of any step in the transaction. For example, when TelcoItemSync is a member of a collaboration object group, its process is one subtransactional step in a larger process. If any step fails in the collaboration object group's processes, IBM WebSphere Business Interchange Server allows you to roll back the processing of every collaboration object in the group.

When a TelcoItemSync collaboration object is used independently of other collaboration objects, its process comprises a single transactional step. In such a situation, it is not necessary to perform a rollback.

To cause a collaboration object or a collaboration object group to perform rollback requires modifying the collaboration template. To understand transaction processing by WebSphere Business Integration Server, see the Technical Introduction to IBM WebSphere InterChange Server. 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 used 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 the collaboration object and member 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 members of a collaboration object group to true. Forcing the collaboration objects to retrieve values before changing them allows the collaborations objects to restore the original values in an Update or Delete process.

Configuration properties

This section describes the following properties for this collaboration template:

Standard properties

This collaboration template uses the following standard configuration properties:

Properties specific to this collaboration template

The following properties are specific to this collaboration template:

EXCEPTION_WHEN_BO_NOT_FOUND_ON_RETRIEVE

This property specifies how to handle an exception raised by the destination application when no records are found that match the search criteria.

EXCEPTION_WHEN_BO_NOT_FOUND_ON_RETRIEVE  configuration property
Possible values Usage
true (default value) Handles the exception as an error, and causes this collaboration object to fail and to raise an exception.
false Handles the exception as a zero result, and causes this collaboration object to finish successfully and to return an empty list.

SYNC_FROM_SOURCE

This property specifies whether to retrieve the source data from the master application through the SourceApp port before sending the data to another application. When the triggering business object has only the key information, this property should be set to true.

SYNC_FROM_SOURCE configuration property
Possible values Usage
true Causes this collaboration object to retrieve the full-value business object and use it as triggering business object.
false (default value) Causes this collaboration object to use the triggering business object directly. In this case, the SourceApp port is bound to the Port connector.

USE_RETURN

This property specifies whether to return the processed business object through the Return port.

Note: Exceptions from USE_RETURN process are not handled as INFORMATIONAL_EXCEPTIONS, because of the nature of the process.

USE_RETURN configuration property
Possible values Usage
true (default value) Causes this collaboration object to return the processed business object through the Return port after the completion of  processing. This is typically used when this collaboration object is called to return the result from the preceding asynchronous request.
false Causes this collaboration object not to return through the Return port. In this case, the Return port is bound to the Port connector.

USE_SUB_PORT

This property specifies whether to use Sub ports (ToSub1, ToSub2DestinationAppRetrieveSub1, and DestinationAppRetrieveSub2). You can use sub ports to synchronize data between three or more applications: the source, main destination and one or more sub destination applications.

USE_SUB_PORT configuration property
Possible values Usage
all (default value) Causes this collaboration object to synchronize the data between four applications.
For example, for a business object with the Create verb, the collaboration object completes the following actions:
  1. Receives the triggering business object with the Create verb from the From port.
  2. Sends the business object with the Create verb to the main destination application.
  3. Sends the business object with the Create verb to the sub1 destination application.
  4. Sends the business object with the Create verb to the sub2 destination application.
none Causes this collaboration object to synchronize the data only between the source and main destination applications, using steps 1 and 2 in the list above. In this case, Sub1 and Sub2 ports are bound to the Port connector.
1 Causes this collaboration object to synchronize the data between the source, main destination and Sub1 destination applications, using steps 1, 2, and 3 in the list above. In this case Sub2 ports are bound to the Port connector.
2 Causes this collaboration object to synchronize the data between the source, main destination and Sub2 destination applications, using steps 1, 2, and 4 in the list above. In this case Sub1 ports are bound to the Port connector.

Copyright IBM Corp. 2002, 2003