Skip Headers
Oracle® Application Integration Architecture Oracle Communications Order to Cash Integration Pack Implementation Guide for Siebel CRM, Oracle Communications Order and Service Management, and Oracle Communications Billing and Revenue Management
Release 11.3

Part Number E37675-02
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

17 Implementing the Update Sales Order Business Flow

This chapter describes the Update Sales Order business flow and explains how the Oracle Communications Order to Cash Integration Pack for Siebel customer relationship management (Siebel CRM), Oracle Communications Order and Service Management (OSM), and Oracle Communications Billing and Revenue Management (BRM) (the integration) implements the business flow using Siebel CRM interfaces, communications industry-specific Oracle Application Integration Architecture (Oracle AIA) components, and integration services.

Overview of the Update Sales Order Business Flow

The following pre-built integration options enable the Update Sales Order business flow:

  • Oracle Communications Order to Cash for Siebel CRM, OSM, and BRM Pre-Built Integration option

  • Oracle Communications Order to Cash for Siebel CRM and OSM Pre-Built Integration option

The Update Sales Order business flow supports the following integration flow:

  • Updating Statuses from OSM to Siebel CRM

Updating Statuses from OSM to Siebel CRM Integration Flow

This integration flow uses the following services:

  • UpdateSalesOrderOSMCFSCommsJMSConsumer

  • UpdateSalesOrderSiebelCommsProvABCSImpl

Figure 17-1 illustrates how OSM send a sales order data and status update to Siebel CRM through Oracle AIA:

Figure 17-1 Updating Statuses from OSM to Siebel CRM Sequence Diagram

This image is described in surrounding text.

When this process is initiated, the following events occur:

  1. OSM creates an UpdateSalesOrderEBM message and enqueues it in the AIA_UPDSO_OUT_JMSQ queue using a store-and-forward mechanism. The UpdateSalesOrderOSMCFSCommsJMSConsumer service consumes this message and routes it to the UpdateSalesOrderSiebelCommsProvABCSImpl service.

    Caution:

    The UpdateSalesOrderOSMCFSCommsJMSConsumer service also has a sequencer. If any update to Siebel CRM causes a system or business error, further updates to the account are locked in the sequencer table until the error is fixed. If the error is a business error, the message must be removed from the sequencer table. If the error is a system error, the message must be resubmitted.
  2. The UpdateSalesOrderSiebelCommsProvABCSImpl service converts the UpdateSalesOrderEBM message into a Siebel CRM application business message (ABM) and invokes the Siebel CRM web service to update the order.

    Oracle AIA always copies fulfillment status to the DeliveryStatus ABM attribute. Internally, Siebel CRM reflects the end state status values (Canceled and Complete) on the Status field. The DeliveryStatus is mapped in the Siebel CRM user interface to the Fulfillment Status.

    In other words, the Status field in the Siebel CRM user interface represents the overarching status throughout order capture and order fulfillment. Fulfillment Status is a sub-status to a Status of Open. Fulfillment Status indicates the status of the order in OSM in the central order management role while the order is in being fulfilled.

    See "Supporting Order Priorities" and "Using the Oracle Mediator Resequencer Feature" for more information about using sequencing logic to make updates to Siebel.

Defining Transaction Boundaries and Recovery Details

For this flow there are two transaction boundaries. Table 17-1 describes the transactions involved, the database operations, and what actions to take in case of an error.

If any update to Siebel CRM causes a system or business error, further updates to the account are locked in the sequencer table until the error is fixed. If the error is a business error, the message must be removed from the sequencer table. If the error is a system error, the message must be resubmitted.

See "Using Error Type to Control Response to Order Fallout" for more information on system and business errors.

The following services are involved:

  • UpdateSalesOrderOSMCFSCommsJMSConsumer

  • UpdateSalesOrderOSMCFSCommsJMSConsumer_RS

  • UpdateSalesOrderSiebelCommsProvABCSImpl

Table 17-1 Transaction Boundaries and Recovery Details

Transaction DB Operations In Case of Error Recovery

UpdateSalesOrderOSMCFSCommsJMSConsumer consumes the message and puts it in the sequencer table defined at the Routing Service UpdateSalesOrderOSMCFSCommsJMSConsumer_RS.

Message goes into the sequencer table.

Rollback JMS message to AIA_UPDSO_OUT_JMSQ_ErrorQ

Resubmit the order from AIA_UPDSO_OUT_JMSQ_ErrorQ.

UpdateSalesOrderOSMCFSCommsJMSConsumer_RS routes the message to UpdateSalesOrderSiebelCommsProvABCSImpl, which invokes the Siebel web service to update the order.

AIA cross-reference entries.

Rollback the message to the sequencer table.

Resubmit the order from the sequencer table.


See "Configuring Oracle AIA Processes for Error Handling and Trace Logging", Configuring Fault Policies to Not Issue Rollback Messages in Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack for more information about rollback procedures.

Siebel CRM Interfaces

The Update Sales Order business flow uses the following Siebel CRM interfaces:

  • SWIOrderUpsert

  • SWIOrderUpsertSubProcess

These are inbound Siebel web services used to update the order information back to Siebel CRM.

See Siebel Order Management Guide Addendum for Communications for more information about web services.

Industry Oracle AIA Components

The Update Sales Order business flow uses the following communications industry-specific Oracle AIA components:

  • SalesOrderEBO

  • UpdateSalesOrderEBM

The industry enterprise business object (EBO) and enterprise business message XML schema (EBM XSD) files are located in: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Industry/Communications/EBO/

The industry enterprise business service (EBS) WSDL files are located in: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Industry/Communications/EBO/

For detailed documentation of individual EBOs and EBMs, click the AIA Reference Doc link on EBO and EBM detail pages in the Oracle Enterprise Repository (OER).

EBOs can be extended, for instance, to add new data elements. These extensions are protected and remain intact after a patch or an upgrade, so long as the extensibility guidelines are followed.

See Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack for more information about:

  • Configuring and using OER as the Oracle SOA Repository to provide the AIA Reference doc link

  • Extending existing schemas and EBOs

Integration Services

The following services are delivered with the Update Sales Order business flow:

  • UpdateSalesOrderOSMCFSCommsJMSConsumer

  • UpdateSalesOrderSiebelCommsProvABCSImpl

Some of these services have been enabled to use Session Pool Manager.

See Oracle Application Integration Architecture Pre-Built Integrations Utilities Guide for more information about Session Pool Manager.

UpdateSalesOrderOSMCFSCommsJMSConsumer

The UpdateSalesOrderOSMCFSCommsJMSConsumer is a Mediator process with a JMS Adapter Service. This process dequeues the UpdateSalesOrderEBM message from the AIA_UPDSO_OUT_JMSQ.

This service has one operation: Consume_Message.

UpdateSalesOrderSiebelCommsProvABCSImpl

The UpdateSalesOrderSiebelCommsProvABCSImpl is a BPEL process with one operation: UpdateSalesOrder. It accepts the UpdateSalesOrderEBM as the input from the UpdateSalesOrderOSMCFSCommsJMSConsumer, and uses the order information in the input message to update the orders in Siebel CRM.

The main functions of this service are:

  • Updating the order line status: updates the order line status back to Siebel CRM.

  • Enriching the order: enriches the information back to Siebel CRM from a central fulfillment system to facilitate customer care, service, and asset-based ordering. It is also used to update or enrich the order line items with fulfillment attributes back to Siebel CRM. Among these attributes are service IDs and allocated resources such as port number and IP address.

  • Updating the order header: enriches the order header to Siebel CRM.

This process is an asynchronous, one-way service.

This service is SPM-enabled.

See Oracle Application Integration Architecture Pre-Built Integrations Utilities Guide for more information about Session Pool Manager.