Skip Headers
Oracle® Application Integration Architecture Oracle Customer Master Data Management Integration Implementation Guide
Release 11.1

Part Number E27422-03
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

5 Oracle Customer Master Data Management Integration Option for Oracle E-Business Suite

This chapter provides an overview of the integration option for Oracle E-Business Suite, and discusses the process flows, interfaces, integration services.

This chapter includes the following sections:

5.1 Overview

These are the process flows when Oracle E-Business Suite is chosen as a participating application when installing Oracle Customer Hub:

For process flows from Oracle Customer Hub to Oracle E-Business Suite, see Chapter 2, "Oracle Customer Master Data Management Integration Base Pack".

For more information about Oracle E-Business Suite web services and documentation prior to Release 12.1.3, see the library on Oracle Technology Network: http://www.oracle.com/technetwork/documentation/applications-167706.html?. For Oracle E-Business Suite documentation for R12.1.3 and beyond, see this library: http://download.oracle.com/docs/cd/E18727_01/index.htm

5.1.1 Prerequisites

  • Address is required in Siebel CRM in order to create an account in Oracle E-Business Suite.

  • Accounts/contacts have been synchronized between Oracle Customer Hub and Oracle E-Business Suite prior to publishing the merge from the Oracle Customer Hub.

5.2 Match and Fetch between Oracle E-Business Suite and Oracle Customer Hub

The match or fetch integration flow is used to match organization and person parties between Oracle E-Business Suite and Oracle Customer Hub. This flow is initiated by Oracle E-Business Suite to generate a list of potential candidates from Oracle Customer Hub. From the list presented, a specific organization or person party entity is requested from Oracle Customer Hub, which returns the full profile of the selected record. The full profile from Oracle Customer Hub is then sent to Oracle E-Business Suite, at which point the parties are synchronized.

This integration flow leverages the Composite Application Framework to create a user interface (UI) that enables users to access Oracle Customer Hub to search for and to fetch the customer record from within Oracle E-Business Suite.

For more information about the match and fetch flow between Oracle E-Business Suite and Oracle Customer Hub, including the delivered Composite Application Framework UI, see Chapter 9: Deploying the Match and Fetch Enterprise Composite Application with the Customer MDM Pre-Built Integration.

Figure 5-1 illustrates the match and fetch functionality between Oracle E-Business Suite and Oracle Customer Hub.

Figure 5-1 Match and fetch Oracle E-Business Suite to Oracle Customer Hub

This image is described in surrounding text

This integration flow uses these interfaces:

Figure 5-2 illustrates the integration flow:

Figure 5-2 Match and fetch between Oracle E-Business Suite and Oracle Customer Hub

This image is described in surrounding text

When you initiate this process, these events occur:

  1. When a user accesses the Oracle E-Business Suite Customer Module to search for a party in the Customer Module, the composite UI application form appears.

    The user enters optional and required information (such as Organization Name and Zip Code) and clicks Search. This triggers the match flow, where the composite UI application synchronously invokes the QueryCustomerPartyList operation of the CustomerPartyEBSV2, and passes the QueryCustomerPartyListEBM.

  2. The CustomerPartyEBSV2 routes the QueryCustomerPartyListEBM to the QueryCustomerPartyListUCMProvABCSImpl provider service is synchronously invoked.

  3. The QueryCustomerPartyListUCMProvABCSImpl determines whether the request is for an organization or a person. It transforms the QueryCustomerPartyListEBM, which contains the match criteria, into the Oracle Customer Hub specific organization or person match requestor ABM.

    It invokes either the Oracle Customer Hub OrganizationMatchService or PersonMatchService.

  4. The Oracle Customer Hub OrganizationMatchService or PersonMatchService queries the Oracle Customer Hub database based on the match criteria and returns the organization or person match response EBM, which contains a list of organization or person candidates back to the QueryCustomerPartyListUCMProvABCSImpl, which synchronously invoked it.

  5. The QueryCustomerPartyListUCMProvABCSImpl receives the organization or person match response ABM and transforms it into the QueryCustomerPartyListResponseEBM.

    During the transformation, the common IDs are generated and the cross-reference database is populated where necessary. The response message is sent back to the CustomerPartyEBSV2.

  6. The CustomerPartyEBSV2 receives the QueryCustomerPartyListResponseEBM response from the QueryCustomerPartyListUCMProvABCSImpl and passes the message back to the composite UI Candidates List form, which displays the records that matched the criteria.

  7. The user clicks the Request button to select the most appropriate record from the composite UI Candidates List form.

    This triggers the fetch flow where the composite UI form synchronously invokes the FetchCustomerParty operation of the CustomerPartyOrchestrationEBSV2 business service. The QueryCustomerPartyEBM is passed with the Organization or Person common ID as the query criteria.

  8. The CustomerPartyOrchestrationEBSV2 is a routing service that synchronously invokes the FetchCustomerParty operation of the FetchCustomerPartyEBF, and passes the QueryCustomerPartyEBM.

  9. The FetchCustomerPartyEBF receives the QueryCustomerPartyEBM and synchronously invokes the QueryCustomerParty operation of the CustomerPartyEBSV2.

  10. The CustomerPartyEBSV2 routes the QueryCustomerPartyEBM to the QueryCustomerPartyUCMProvABCSImpl provider service, which is synchronously invoked.

  11. The QueryCustomerPartyUCMProvABCSImpl determines whether the request is for an organization or a person. It transforms the QueryCustomerPartyEBM, which contains the organization or person ID to the Oracle Customer Hub specific organization or person fetch service-requestor ABM.

    It invokes either the Oracle Customer Hub OrganizationFetchService or PersonFetchService.

  12. The Oracle Customer Hub OrganizationFetchService or PersonFetchService queries the Oracle Customer Hub database based on the organization or person ID.

    It returns the organization or person fetch response ABM that contains the full organization or person data record from Oracle Customer Hub back to the QueryCustomerPartyUCMProvABCSImpl, which synchronously invoked it.

  13. The QueryCustomerPartyUCMProvABCSImpl transforms the fetch response ABM into QueryCustomerPartyResponseEBM.

    The response message is sent back to the CustomerPartyEBSV2.

  14. The CustomerPartyEBSV2 receives the QueryCustomerPartyResponseEBM response from QueryCustomerPartyUCMProvABCSImpl and passes the message back to the FetchCustomerPartyEBF, which invoked it.

  15. The FetchCustomerPartyEBF receives the QueryCustomerPartyResponseEBM and transforms it into the SyncCustomerPartyListEBM.

    It asynchronously invokes the SyncCustomerPartyList operation of CustomerPartyEBSV2.

  16. The SyncCustomerPartyList operation of the CustomerPartyEBSV2 asynchronously routes the SyncCustomerPartyListEBM message to the SyncCustomerPartyListEbizProvABCSImpl.

  17. The SyncCustomerPartyListEbizProvABCSImpl receives the SyncCustomerPartyListEBM, and determines whether an account or contact synchronization is necessary.

    It transforms the SyncCustomerPartyListEBM into the Oracle E-Business Suite organization or person SyncCustomerABM and invokes the appropriate Oracle E-Business Suite synchronization service.

  18. The Oracle E-Business Suite synchronization service creates the party and account records and returns the SyncCustomerResponseABM, which contains the details of the record added.

  19. The SyncCustomerPartyListEbizProvABCSImpl receives the SyncCustomerResponseABM and transforms it into the SyncCustomerPartyListResponseEBM.

    As part of the transformation, the Oracle E-Business Suite ID is added to the cross-reference table. It then invokes the SyncCustomerPartyListResponse operation of the CustomerPartyResponseEBSV2, and passes the SyncCustomerPartyListResponseEBM.

  20. The FetchCustomerPartyEBF receives the SyncCustomerPartyListResponseEBM callback from CustomerPartyResponseEBSV2, and transforms the SyncCustomerPartyListResponseEBM into the QueryCustomerPartyResponseEBM and returns the response to the CustomerPartyOrchestrationEBSV2.

  21. The CustomerPartyOrchestrationEBSV2 returns the QueryCustomerPartyResponseEBM back to the composite UI with the full information of the party that was created.

For more information about the match and fetch flow between Oracle E-Business Suite and Oracle Customer Hub, including the delivered Composite Application Framework UI, see Chapter 9, "Deploying the Match and Fetch Enterprise Composite Application with the Customer MDM Pre-Built Integration".

5.3 Synchronization of Organizations and Persons from Oracle E-Business Suite to Oracle Customer Hub

This integration flow synchronizes organization and person party and customer account information from Oracle E-Business Suite to Oracle Customer Hub. Oracle Customer Hub consumes the message using AIA and after applying configurable data quality and data cleansing processes to the record, determines whether to update an existing record or to create a new customer record based on survivorship and update precedence rules in Oracle Customer Hub.

For this integration flow:

Figure 5-3 illustrates the synchronize organizations and persons from Oracle E-Business Suite to Oracle Customer Hub:

Figure 5-3 Synchronizing organizations and persons from Oracle E-Business Suite to OCH

This image is described in surrounding text

5.3.1 Synchronizing Organizations from Oracle E-Business Suite to Oracle Customer Hub

This integration flow is used to synchronize new organization accounts or updates from Oracle E-Business Suite to Oracle Customer Hub. This integration flow uses these interfaces:

  • SynOrganizationAccountEbizEventConsumer

  • SyncOrganizationAccountEbizReqABCSImpl

  • QueryOrganizationAccountEbizAdapter

  • CustomerPartyEBSV2

  • SyncCustomerPartyListUCMProvABCSImpl

  • CustomerPartyResponseEBSV2

  • SyncCustomerPartyListResponseEbizProvABCSImpl

Figure 5-4 illustrates the integration flow:

Figure 5-4 Synchronizing organizations from Oracle E-Business Suite to Oracle Customer Hub

This image is described in surrounding text

When you initiate this process, these events occur:

  1. Oracle E-Business Suite account events are raised when a new account is created or updated in Oracle E-Business Suite.

    This includes creates or updates to related addresses and contacts.

  2. The SyncOrganizationAccountEbizJMSConsumer service dequeues the messages and invokes the SyncAccountEbizReqABCSImpl.

    The consumer has two adapters defined to dequeue both create and update events.

  3. The Oracle E-Business Suite requester ABC implementation, SyncOrganizationAccountEbizReqABCSImpl first queries the entire payload using the keys in the event message using the QueryOrganizationAccountEbizAdapter and then transforms the Oracle E-Business Suite ABM into the SyncCustomerPartyListEBM and invokes the SyncCustomerPartyList operation of the CustomerPartyEBSV2.

    This implementation service has separate branches for create and update, as the APIs to query the entire payload from EBS are different; therefore, the maps to the EBM are also different.

  4. Invoking the CustomerPartyEBSV2 with the SyncCustomerPartyList operation routes the SyncCustomerPartyListEBM to the Oracle Customer Hub provider ABC implementation service, SyncCustomerPartyListUCMProvABCSImpl.

  5. The Oracle Customer Hub provider ABC implementation service, SyncCustomerPartyListUCMProvABCSImpl, transforms the SyncCustomerPartyListEBM to the appropriate Oracle Customer Hub account ABM and invokes the Oracle Customer Hub API.

  6. The response from the Oracle Customer Hub API is an integration object that has the account data if it was successfully created or updated, or both in Oracle Customer Hub, which is then transformed to the SyncCustomerPartyListResponseEBM in the process of which, the cross references tables are populated with the Oracle Customer Hub identifier values.

    The response is also sent to the CustomerPartyResponseEBSV2 if the response comes back from Oracle Customer Hub. If the Oracle Customer Hub ABM message was put in a queue, then the response IO status has to be checked and the cross-reference entry for the Oracle Customer Hub ID must be created at a later time when the publish from Oracle Customer Hub happens for this account using integration IDs.

  7. The SyncCustomerPartyListResponseEBM is transformed to Oracle E-Business Suite organization account ABM and the Oracle E-Business Suite organization account API is invoked.

5.3.2 Synchronizing Persons from Oracle E-Business Suite to Oracle Customer Hub

This integration flow synchronizes new persons or updates from Oracle E-Business Suite to Oracle Customer Hub. This integration flow uses these interfaces:

  • SynPersonAccountEbizEventConsumer

  • SyncPersonAccountEbizReqABCSImpl

  • QueryPersonAccountEbizAdapter

  • CustomerPartyEBSV2

  • SyncCustomerPartyListUCMProvABCSImpl

  • CustomerPartyResponseEBSV2

  • SyncCustomerPartyListResponseEbizProvABCSImpl

Figure 5-5 illustrates the integration flow:

Figure 5-5 Synchronizing persons from Oracle E-Business Suite to Oracle Customer Hub

Surrounding text describes Figure 5-5 .

When you initiate this process, these events occur:

  1. The Oracle E-Business Suite person account events are raised when a new person account is created or updated in Oracle E-Business Suite.

    This includes creates/updates to related addresses.

  2. The SyncPersonAccountEbizJMSConsumer service dequeues the messages and invokes the SyncPersonAccountEbizReqABCSImpl.

    This consumer has two adapters defined to listen on both create and update events.

  3. The Oracle E-Business Suite requester ABC implementation, SyncPersonAccountEbizReqABCSImpl, first queries the entire payload using the keys in the event message using the QueryPersonAccountEbizAdapter, then transforms the Oracle E-Business Suite ABM into the SyncCustomerPartyListEBM, and invokes the SyncCustomerPartyList operation of the CustomerPartyEBSV2.

  4. This implementation service has separate branches for create and update, as the APIs to query the entire payload from EBS are different; therefore, the maps to EBM are also different.

  5. Invoking the CustomerPartyEBSV2 with the SyncCustomerPartyList operation routes the SyncCustomerPartyListEBM to the Oracle Customer Hub provider ABC implementation service, SyncCustomerPartyListUCMProvABCSImpl.

  6. The Oracle Customer Hub provider ABC implementation service, SyncCustomerPartyListUCMProvABCSImpl, transforms the SyncCustomerPartyListEBM into the appropriate Oracle Customer Hub person ABM and invokes the Oracle Customer Hub API.

  7. The response from the Oracle Customer Hub API is an integration object that has the person data if it was successfully created or updated in Oracle Customer Hub.

    This object is then transformed into the SyncCustomerPartyListResponseEBM during which, the cross-reference tables are populated with the Oracle Customer Hub identifier values. The response is sent to the CustomerPartyResponseEBSV2 if the response comes back from Oracle Customer Hub. If the Oracle Customer Hub ABM message was put in a queue, then the response IO status has to be checked and the cross-reference entry for the Oracle Customer Hub ID must be created at a later time when the publish from Oracle Customer Hub happens for this person using integration IDs.

  8. The SyncCustomerPartyListResponseEBM is transformed into the Oracle E-Business Suite person account ABM and the Oracle E-Business Suite person account API is invoked.

5.4 Oracle E-Business Suite Integration Services

These are the integration services for Oracle E-Business Suite:

5.4.1 SyncCustomerPartyListEbizProvABCSImpl

The match and fetch flows use some of the same services as the synchronization flows. The SyncCustomerPartyListEbizProvABCSImpl service is implemented in BPEL and is invoked by the SyncCustomerPartyList operation of the CustomerPartyEBSV2, passing in the synchronize CustomerPartyListEBM payload. This service transforms the EBM into an Oracle E-Business Suite ABM and invokes the Oracle E-Business Suite APIs.

5.4.2 QueryPersonAccountEbizUpdateAdapter

The QueryPersonAccountEbizUpdateAdapter is implemented as a routing service in which the Oracle E-Business Suite adapter for querying the Person Account is registered as a Mediator service so that the apps adapter call from the ABCS Requester Implementation becomes a SOAP web service call.

5.4.3 QueryCustomerPartyListEbizCreateAdapter

The QueryCustomerPartyListEbizCreateAdapter is implemented as a routing service in which the Oracle E-Business Suite adapter for querying the Person Account is registered as a Mediator service so that the Apps adapter call from the ABCS becomes a SOAP web service call.

5.4.4 QueryCustomerPartyListEbizUpdateAdapter

The QueryCustomerPartyListEbizUpdateAdapter is implemented as a routing service in which the Oracle E-Business Suite adapter for querying the Person Account is registered as a Mediator service so that the Apps adapter call from the ABCS becomes a SOAP web service call.

5.4.5 SyncPersonAccountEbizReqABCSImpl

The SyncPersonAccountEbizReqABCSImpl service is implemented in BPEL and is invoked by the SyncPersonAccountEbizEventConsumer service, passing in the Person Account event payload. This service queries the entire Person Account Oracle E-Business Suite ABM message and then transforms it into an EBM and invokes the SyncCustomerPartyList operation of the CustomerPartyEBSV2.

5.4.6 SyncPersonAccountEbizEventConsumer

The SyncPersonAccountEbizEventConsumer is implemented as a routing service that listens on the Person Account event (create/update of person account data including child entities) in Oracle E-Business Suite and dequeues the event message and routes it to the SyncPersonAccountEbizReqABCSImpl service.

This consumer listens to two business events on the Oracle AQ:

  • oracle.apps.ar.hz.PersonCustBO.create

  • oracle.apps.ar.hz.PersonCustBO.update

5.4.7 SyncCustomerPartyListEbizEventConsumer

The SyncCustomerPartyListEbizEventConsumer service is responsible for dequeueing the Oracle create or update account business event payloads from AQ and invoking the appropriate operation of the requestor ABCS, SyncCustomerPartyEbizReqABCSImpl. The dequeue operation is done depending on the CorrelationID in AQ. For customer create, correlation ID is oracle.apps.ar.hz.OrgCustBO.create. For customer update, correlation ID is oracle.apps.ar.hz.OrgCustBO.update.

This consumer listens to two business events on the Oracle AQ:

  • oracle.apps.ar.hz.OrgCustBO.create

  • oracle.apps.ar.hz.OrgCustBO.update

5.4.8 SyncCustomerPartyListResponseEbizProvABCSImpl

The SyncCustomerPartyListResponseEbizProvABCSImpl service is implemented in BPEL and is invoked by the SyncCustomerPartyListResponse operation of the CustomerPartyResponseEBSV2, passing in the SyncCustomerPartyListResponseEBM payload. This service transforms the EBM into an Oracle E-Business Suite ABM and invokes the Oracle E-Business Suite API to synchronize the response.

5.4.9 SyncCustomerPartyListEbizAdapter

The SyncCustomerPartyListEbizAdapter service is an Oracle Applications Adapter service registered in Mediator. This adapter service exposes the HZ_AIA_CUSTOM_PUB.sync_acct_order PL/SQL API. This wrapper API is delivered as part of EBS HZ.N.

This service is the interface through which an order is created in Oracle E-Business Suite, and is invoked by the SyncCustomerPartyListEbizProvABCSImpl as part of the Update Customer and Create Order integration flow.

The SyncCustomerPartyListEbizAdapter service exposes the synchronize customer party operation of the PL/SQL wrapper API. This operation is a synchronous request + reply operation.

5.4.10 SyncCustomerPartyListEbizReqABCSImpl

The SyncCustomerPartyListEbizReqABCSImpl service is responsible for transforming the Oracle Apps, account, contact, or address created or updated event message into the appropriate SyncCustomerPartyListEBM format and invoking the SyncCustomerPartyList operation of the CustomerPartyEBSV2. There are two asynchronous operations for this service: create and update.

5.4.11 QueryPersonAccountEbizCreateAdapter

The QueryPersonAccountEbizCreateAdapter is implemented as a routing service in which the Oracle E-Business Suite adapter for querying the Person Account is registered as a Mediator service so that the apps adapter call from the ABCSReqImpl becomes a SOAP web service call.

5.5 Oracle E-Business Suite Interfaces

These are the Oracle E-Business Suite interfaces.

5.5.1 Inbound Web Services: Fetch

  • HZ_AIA_CUSTOM_PKG. SYNC_ACCT_ORDER

  • HZ_PERSON_CUST_BO_PUB.SAVE_PERSON_CUST_BO

5.5.2 Outbound from E-Business Suite or Composite App Event Interfaces: Match and Fetch

  • Account Match

  • Contact Match

  • Account Fetch

  • Contact Fetch

5.5.3 Inbound Web Services: Person or Organization Synchronization

Table 5-1 Inbound Web Services: Person or Organization Synchronization

API Name Schema

HZ_ORG_CUST_BO_PUB.GET_ORG_CUSTS_CREATED

HZ_ORG_CUST_BO

HZ_ORG_CUST_BO_PUB.GET_ORG_CUSTS_UPDATED

HZ_ORG_CUST_BO

HZ_PERSON_CUST_BO_PUB.GET_PERSON_CUSTS_CREATED

HZ_PERSON_CUST_BO

HZ_PERSON_CUST_BO_PUB.GET_PERSON_CUSTS_UPDATED

HZ_PERSON_CUST_BO

HZ_AIA_CUSTOM_PKG. SYNC_ACCT_ORDER

HZ_ORG_CUST_BO

HZ_PERSON_CUST_BO_PUB.SAVE_PERSON_CUST_BO

HZ_PERSON_CUST_BO


5.5.4 Outbound from E-Business Suite Event Interfaces: Organization or Person Synchronization

Table 5-2 Outbound from EBS Event Interfaces: Organization or Person Synchronization

Event Name Schema Description

oracle.apps.ar.hz.OrgCustBO.create

Event Name

CDH_EVENT_ID

This event is raised when an organization account is created

oracle.apps.ar.hz.OrgCustBO.update

Event Name

CDH_EVENT_ID

This event is raised when an organization account is updated

oracle.apps.ar.hz.PersonCustBO.create

Event Name

CDH_EVENT_ID

This event is raised when a person account is created

oracle.apps.ar.hz.PersonCustBO.update

Event Name

CDH_EVENT_ID

This event is raised when a person account is updated


For more information about Oracle E-Business Suite web services and documentation prior to Release 12.1.3, see the library on Oracle Technology Network: http://www.oracle.com/technetwork/documentation/applications-167706.html?. For Oracle E-Business Suite documentation for R12.1.3 and beyond, see this library: http://download.oracle.com/docs/cd/E18727_01/index.htm?