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

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

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

4 PLM - Synchronize Product and Price: Implementation

This chapter provides an overview of the synchronize product and price business flow and discusses Siebel Customer Relationship Management (Siebel CRM) and Oracle Billing and Revenue Management (Oracle BRM) interfaces, industry Oracle Application Integration Architecture (Oracle AIA) components, and integration services.

This chapter includes the following sections:

4.1 Synchronize Product and Price Business Flow Overview

The Synchronize Product and Price integration between Oracle BRM and Siebel Customer Relationship Management (Siebel CRM) supports the following integration flows (in real time or batch mode):

4.2 Product Synchronization Integration Flow

The product synchronization integration flow enables you to create new products in Oracle BRM and then synchronize those products in Siebel CRM. The products created are used by the Order Capture and Asset Tracking modules in Siebel CRM. The product synchronization integration flow also enables updates to existing products in Oracle BRM. The updates are then synchronized in Siebel CRM.

When products are created in Oracle BRM, those products have multiple events, each with a price, which differs from Siebel CRM, which has only one product and a price for that product.

The product synchronization integration flow takes multiple events with recurring prices first. If no recurring price event exists, then the integration takes the first event and makes that the main (parent) product with a price.

After synchronizing the product data from Oracle BRM to Siebel CRM, Siebel returns a message containing both the product and the price data. The integration separates the product data from the price list data, and then synchronizes the price data in a separate process.

This integration flow delivers these services:

Figure 4-1 is the sequence diagram for the product synchronization.

Figure 4-1 Product Synchronization Sequence Diagram

This image is described in surrounding text.

When this process starts, the following events occur:

  1. In the Oracle BRM Pricing Center, go to File, New. Drag the product to edit to the right pane. Double-click the product name and edit appropriate fields. To commit the changes, click File, Commit to BRM Database. The modified product is published to the Oracle BRM product queue.

  2. Dequeue the Oracle BRM product queue. The adapter SyncProductInfoChangeBRMAQ polls the Oracle BRM product queue.

    It is dequeued whenever it sees a message in the queue and invokes the SyncProductBRMCommsReqABCSImpl with the operation SyncProduct.

  3. The SyncProductBRMCommsReqABCSImpl first transforms the Oracle BRM product message into an ItemCompositionEBM and routes the message to the SyncItemCompositionListSiebelCommsProvABCSImpl

  4. The SyncItemCompositionListSiebelCommsProvABCSImpl transforms the ItemCompositionEBM into the Siebel product message and then calls the Siebel product web service on operation SWIProductImportUpsert. The Siebel web service completes the request and returns a response message. The SyncItemCompositionListSiebelCommsProvABCSImpl then transforms the Siebel response message to an ItemCompositionResponseEBM and sends it back to the SyncProductBRMCommsReqABCSImpl.

  5. The SyncProductBRMCommsReqABCSImpl transforms the Oracle BRM product message into the PriceListListEBM and routes the message to the ProductOptimizedSyncPriceListListSiebelCommsProvABCSImpl.

  6. The ProductOptimizedSyncPriceListListSiebelCommsProvABCSImpl first identifies the event to be associated with the main product and then transforms the SyncPriceListListEBM to a SyncItemCompositionListEBM and routes the message to the SyncItemCompositionListSiebelCommsProvABCSImpl.

  7. The SyncItemCompositionListSiebelCommsProvABCSImpl transforms the ItemCompositionEBM to the Siebel product message and then calls the Siebel product web service on operation SWIProductImportUpsert. The Siebel web service completes the request and returns a response message. SyncItemCompositionListSiebelCommsProvABCSImpl then transforms the Siebel response message to an ItemCompositionResponseEBM and returns it to the ProductOptimizedSyncPriceListListSiebelCommsProvABCSImpl.

  8. The ProductOptimizedSyncPriceListListSiebelCommsProvABCSImpl transforms the PriceListEBM to a Siebel price list message and then calls the Siebel price list web service on operation Price_spcList_spcItem_spcInsertOrUpdate. The ProductOptimizedSyncPriceListListSiebelCommsProvABCSImpl transforms the PriceListListEBM to a Siebel product message and then calls the Siebel product web service on operation SWIProductImportUpsert. The Siebel web service completes the request and returns a response message. SWIProductImportUpsert then transforms the Siebel response message to a PriceList ListResponseEBM.

4.3 Billing Discount Synchronization Integration Flow

The billing discount synchronization integration flow enables you to create billing discounts as billing products in Oracle BRM and then synchronize those billing discounts with Siebel CRM. The billing discounts created are used by the Order Capture module in Siebel CRM.

The billing discount synchronization flow also enables updates to billing discounts in Oracle BRM. The updates are then synchronized in Siebel CRM.

The billing discount synchronization integration flow synchronizes only the basic billing discount attributes. It does not synchronize any price information. Add the billing discount detail information in the description of the billing discount when creating billing discounts

This integration flow delivers these services:

Figure 4-2 is the sequence diagram for the billing discount synchronization:

Figure 4-2 Billing Discount Synchronization Sequence Diagram

This image is described in surrounding text.

When this process starts, the following events occur:

  1. In the Oracle BRM Pricing Center, go to File, New. Drag the discount to edit to the right pane. Double-click the product name and edit the appropriate fields. To commit the changes, click File, Commit to BRM Database. The modified discount is published to the Oracle BRM discount queue.

  2. Dequeue the Oracle BRM discount queue. The adapter SyncDiscountInfoChangeBRMAQ polls the Oracle BRM discount queue. It is dequeued whenever it sees a message in the queue and invokes the SyncDiscountBRMCommsReqABCSImpl with the operation SyncDiscount.

  3. The SyncDiscountBRMCommsReqABCSImpl first transforms the Oracle BRM discount message into the ItemCompositionEBM and routes the message to the SyncItemCompositionListSiebelCommsProvABCSImpl.

  4. The SyncItemCompositionListSiebelCommsProvABCSImpl transforms the ItemCompositionEBM into the Siebel product message and then calls the Siebel product web service on operation SWIProductImportUpsert. The Siebel web service completes the request and returns a response message to the SyncItemCompositionListSiebelCommsProvABCSImpl.

4.4 Oracle BRM Interfaces

The process integration for product management uses these services:

For more information, see Oracle Communications Billing and Revenue Management (BRM) Documentation, "Service Integration Components," Synchronization Queue Data Manager.

4.5 Siebel CRM Interfaces

The process integration for product management uses these Siebel CRM interfaces:

For more information, see the Siebel CRM Web Services Reference, "Siebel CRM Primary Web Services."

4.6 Industry Oracle AIA Components

The process integration for product management uses the following delivered Industry AIA components:

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

The industry enterprise business service (EBS) WSDL files are located here: $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).

For more information about using the OER and configuring it to provide the AIA Reference Doc link, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring and Using Oracle Enterprise Repository as the Oracle SOA Repository."

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.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with AIA Design Patterns," AIA Assets Extensibility Patterns, Extending Existing Schemas in AIA.

4.7 Integration Services

These services are delivered with this integration:

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

For more information about Session Pool Manager, see Oracle Application Integration Architecture Pre-Built Integrations 11.1: Utilities Guide, "Session Pool Manager."

4.7.1 SyncProductBRMCommsReqABCSImpl

The SyncProductBRMCommsReqABCSImpl has the operation SyncProduct and performs all of the Product/Item-related actions such as Create Product/Item, Update Product/Item, and Sync Product/Item.

This service accepts a BRM product message as a request and does not return a response. An Oracle BRM product message has two sets of information:

  • Standard product attributes.

  • Pricing information that can be mapped to a PriceLine of a PriceList.

Because it has two sets of information, the Oracle BRM product message is transformed into two EBMs: one for the product (SyncItemCompositionListEBM) and another for the PriceLine (SyncPriceListList EBM).

The program first prepares the SyncItemCompositionListEBM with the basic product information.

After the SyncItemCompositionList is complete, it prepares a SyncPriceListListEBM with the pricing information of the Oracle BRM message. It fetches the PriceList name from a configuration parameter.

The configuration parameter is located in the AIAConfigurationProperties.xml file.

4.7.2 SyncDiscountBRMCommsReqABCSImpl

The SyncDiscountBRMCommsReqABCSImpl is a BPEL service and it is the Oracle BRM discount request ABC implementation. It has the operation SyncDiscount. This accepts an Oracle BRM discount message as a request and does not return a response.

The SyncDiscountBRMCommsReqABCSImpl service accepts an Oracle BRM discount message. An Oracle BRM discount is created as a product for all of the recipients. An Oracle BRM discount message has basic discount attributes and does not contain any pricing information. The Oracle BRM discount message is transformed into the SyncItemCompositionListEBM with the basic discount information.

4.7.3 SyncItemCompositionListSiebelCommsProvABCSImpl

The SyncItemCompositionListSiebelCommsProvABCSImpl process accepts the SyncItemCompositionListEBM. It transforms SyncItemCompositionListEBM into the Siebel product application business message (ABM). It then invokes the Siebel Product web service to create products and product structures in Siebel.

This service is SPM enabled.

For more information about Session Pool Manager, see Oracle Application Integration Architecture Pre-Built Integrations 11.1: Utilities Guide, "Session Pool Manager."

4.7.4 ProductOptimizedSyncPriceListListSiebelCommsProvABCSImpl

The ProductOptimizedSyncPriceListListSiebelCommsProvABCSImpl service performs all of the PriceList-related actions such as Create PriceList, Update PriceList, Sync PriceList, and Sync PriceListList. This operation has the standard create, read, update, delete (CRUD) operations.

This service transforms the PriceListEBM into a Siebel price list message and then calls the Siebel price list web service on operation Price_spcList_spcItem_spcInsertOrUpdate. The ProductOptimizedSyncPriceListListSiebelCommsProvABCSImpl transforms the PriceListListEBM into a Siebel product message and then calls the Siebel product web service on operation SWIProductImportUpsert. The Siebel web service completes the request and returns a response message. SWIProductImportUpsert then transforms the Siebel response message to a PriceList ListResponseEBM.

This service is SPM enabled.

For more information about Session Pool Manager, see Oracle Application Integration Architecture Pre-Built Integrations 11.1: Utilities Guide, "Session Pool Manager."