3 Process Integration for Locations

This chapter provides an overview of the process integration for locations and discusses business process flows, location integration details, assumptions and constraints, Oracle E-Business Suite (Oracle EBS) and Oracle Transportation Management (OTM) interfaces, core Oracle Application Integration Architecture (Oracle AIA) components, and integration services.

This chapter includes the following sections:

3.1 Business Process Flows

Drivers subscribe to training that requires a common location between OTM and Oracle EBS. Oracle EBS Human Resources (HR) is the master record for all trainings and hosts the master record for all training locations. The process integration for locations supports these integration flows:

  • Initial Load of Training Location Information: Extracts and loads initial training locations from Oracle EBS HR to OTM.

  • Updating Training Location Information: Enables the synchronization of incremental creation and updates of the newly created or modified location information from Oracle EBS to OTM.

3.2 Locations Integration Details

This integration flow uses these integration services:

  • SyncLocationListInitialLoadDBAdapter

  • CreateLocationListEbizAdapter

  • UpdateLocationListEbizAdapter

  • SyncLocationListEbizGetABM

  • SyncLocationListEbizJMSProducer

  • SyncLocationListEbizJMSConsumer

  • SyncLocationListEbizReqABCSImpl

  • LocationEBS

  • SyncLocationListLogisticsProvABCSImpl

3.2.1 Initial Load of Location Information

This flow loads the location information created in Oracle EBS into OTM.

These events occur when you initiate the process:

  1. Initiate the SyncLocationListInitialLoadDBAdapter service manually by providing the range of the Start_ID and End_ID that need to be synced to Oracle Transportation Management (OTM) as part of the initial load. For every Location_ID, this service invokes the SyncLocationListEbizGetABM.

  2. The SyncLocationListEbizGetABM invokes the get_location_details application programming interface (API), which then returns the complete location details. This service then checks for the completeness of the payload and drops the messages into AIA_EbizLocationJMSQueue.

  3. The SyncLocationListEbizJMSProducer service reads the complete payload from the SyncLocationListEbizGetABM and drops the messages into AIA_EbizLocationJMSQueue.

  4. The SyncLocationListEbizJMSConsumer service listens to the AIA_EbizLocationJMSQueue, dequeues the messages, and invokes the SyncLocationListEbizReqABCSImpl with the LocationEBizABM.

  5. The SyncLocationListEbizReqABCSImpl service transforms the LocationEBizABM into the SyncLocationListEBM and populates the enterprise business message (EBM) Header. The transformation does cross-referencing for system-specific values and invokes the LocationEBS with the SyncLocationList operation. The LocationEBS is a routing mediator service with several operations on the LocationEBO.

  6. The LocationEBS service with the SyncLocationList operation routes the messages based on the Composite Application Validation System (CAVS) flag to either the SyncLocationListLogisticsProvABCSImpl service or the CAVS simulator.

  7. The SyncLocationListLogisticsProvABCSImpl transforms the SyncLocationListEBM into the LogisticsABM and invokes the OTM web service, which connects to the OTM application.

3.2.2 Updating Location Information

The locations created or updated in the Oracle E-Business Suite must be updated in the OTM.

These events occur when you initiate the process:

  1. In the case of new locations, the CreateLocationListEbizAdapter service listens to the oracle.apps.per.api.location.create_location business event. This business event is raised when a location is created in Oracle EBS. The event information is then passed to the SyncLocationListEbizGetABM.

  2. In the case of updates to existing locations, the UpdateLocationListEbizAdapter service listens to the oracle.apps.per.api.location.update_location business event. This business event is raised when a location is updated in Oracle E-Business Suite. The event information is then passed to the SyncLocationListEbizGetABM.

  3. The SyncLocationListEbizGetABM invokes the get_location_details application programming interface (API), which then returns the complete location details. This service then checks for the completeness of the payload and drops the messages into AIA_EbizLocationJMSQueue.

  4. The SyncLocationListEbizJMSProducer service reads the complete payload from the SyncLocationListEbizGetABM and drops the messages into AIA_EbizLocationJMSQueue.

  5. The SyncLocationListEbizJMSConsumer service listens to the AIA_EbizLocationJMSQueue, dequeues the messages, and invokes the SyncLocationListEbizReqABCSImpl with the LocationEBizABM.

  6. The SyncLocationListEbizReqABCSImpl service transforms the LocationEBizABM into the SyncLocationListEBM and populates the enterprise business message (EBM) header. The transformation does cross-referencing for system-specific values and invokes the LocationEBS with the SyncLocationList operation. The LocationEBS is a routing mediator service with several operations on the LocationEBO.

  7. The LocationEBS service with the SyncLocationList operation routes the messages based on the composite application validation system (CAVS) flag to either the SyncLocationListLogisticsProvABCSImpl service or the CAVS simulator.

  8. The SyncLocationListLogisticsProvABCSImpl transforms the SyncLocationListEBM into the LogisticsABM and invokes the Oracle Transportation Management (OTM) web service, which connects to the OTM application.

3.3 Assumptions and Constraints

These are the assumptions and constraints:

  1. Default location role in Oracle Transportation Management (OTM) is SHIPFROM/SHIPTO. Do not change these default values in OTM. If you change the default value (for example, from SHIPFROM/SHIPTO to WAREHOUSE) the integration flow is not immediately affected; however, if a subsequent update occurs for that location in Oracle E-Business Suite, a new record with the default value (SHIPFROM/SHIPTO) is created in OTM. Thus, multiple location role records exist for the same location in OTM.

  2. Location is a stand-alone flow in this integration. Though the driver profile and training calendar flows have a foreign key of location ID, they do not synchronize the locations automatically. This is based on the assumption that the particular location concerned is already being interfaced with the OTM.

3.4 Oracle EBS Interfaces

These are the Oracle EBS interfaces for the Location integration flow:

  • SyncLocationListInitialLoadDBAdapter

  • CreateLocationListEbizAdapter

  • UpdateLocationListEbizAdapter

  • SyncLocationListEbizGetABM

  • SyncLocationListEbizJMSProducer

  • SyncLocationListEbizJMSConsumer

For more information about Oracle EBS web services, see Oracle E-Business Suite references: Oracle E-Business Suite Electronic Technical Reference Manual (eTRM) located on My Oracle Support and Oracle Applications Online Documentation Library, located on the Oracle Technology Network http://www.oracle.com/technology/documentation/applications.htm

3.4.1 SyncLocationListInitialLoadDBAdapter

The SyncLocationListInitialLoadDBAdapter service is used for initial loads and is triggered manually. This service reads all the Location IDs from Oracle E-Business Suite database within the range specified by the input values. These Location IDs are passed to the SyncLocationListEbizGetABM for further processing.

3.4.2 CreateLocationListEbizAdapter

The CreateLocationListEbizAdapter service is used for incremental changes. This service listens to the oracle.apps.per.api.location.create_location business event and then calls the SyncLocationListEbizGetABM for further processing of the event message.

3.4.3 UpdateLocationListEbizAdapter

The UpdateLocationListEbizAdapter service is used for incremental changes. This service listens to the oracle.apps.per.api.location.update_location business event and calls the SyncLocationListEbizGetABM business process execution language (BPEL) process for further processing of the event message.

3.4.4 SyncLocationListEbizGetABM

The SyncLocationListEbizGetABM service is called by the SyncLocationListInitialLoadDBAdapter for initial loads and is called from the Oracle E-Business Suite adapters for incremental changes. This service reads the full Location information from the Oracle E-Business Suite database using the get_location_details API and drops the messages into the AIA_EbizLocationJMSQueue.

3.4.5 SyncLocationListEbizJMSProducer

The SyncLocatoinListEbizJMSProducer service is used for enqueuing Oracle E-Business Suite payloads in the AIA layer. This service pushes the messages to the AIA_EbizLocationJMSQueue that is picked up by the SyncLocationListEbizJMSConsumer service.

3.4.6 SyncLocationListEbizJMSConsumer

The SyncLocationListEbizJMSConsumer service is used for picking up the Oracle E-Business Suite payload from the AIA queue. This service picks up the messages from the AIA_EbizLocationJMSQueue and invokes the SyncLocationListEbizReqABCSImpl service.

3.5 OTM Interfaces

OTM provides an interface through a web service to connect to its application. This connectivity is established as a partner link in the Provider Service. Once invoked, the Logistics web service immediately returns an acknowledgement with a transmission number. Once the processing is complete, it then sends a transmission report back indicating the success or the failure. The application business message can be seen in the GLOG xsd.

For more information about the Logistics Service, see Oracle Transportation Management Integration Guide.

3.6 Core Oracle AIA Components

The integration flow uses these components:

  • LocationEBO

  • SyncLocationListEBM

  • LocationEBS

    The core enterprise business object (EBO) and enterprise business message (EBM) XSD files can be located by EBO within the $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Core/EBO/ parent folder.

    The core enterprise business services (EBS) web services definition language (WSDL) files can be located by EBO within the $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Core/EBO/ parent folder.

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

For more information about using the Oracle Enterprise Repository and configuring it to provide the AIA Reference Doc link, see Oracle Application Integration Architecture Foundation Pack for Oracle Fusion Middleware Developer's Guide, "Configuring and Using Oracle Enterprise Repository as the Oracle AIA 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.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Extensibility for AIA Artifacts".

3.7 Integration Services

These are the services delivered with this integration:

  • SyncLocationListEbizReqABCSImpl

  • LocationEBS

  • SyncLocationListLogisticsProvABCSImpl

3.7.1 SyncLocationListEBizReqABCSImpl

SyncLocationListEbizReqABCSImpl is a business process execution language (BPEL) process and a single operation service. It has LocationEBS as a partner service. This service receives the LocationEbizABM message as a request and does not return a response to the calling service. This service performs these actions:

  • Accepts LocationEbizABM message from Oracle E-Business Suite. This message contains a cross-reference for location ID.

  • Transforms LocationEbizABM into SyncLocationListEBM. While transforming from the application business message (ABM) to the enterprise business message (EBM), cross-references are looked up for the location ID.

  • Sends the LocationListEBM message as an input to the SyncLocationList operation in the LocationEBS service.

These domain value map (DVM) lookups are used by this service:

  • ADDRESS_COUNTRYID - Domain value mapping for country codes.

  • STATE – Domain value mapping for the state codes.

3.7.2 LocationEBS

The LocationEBS is the Enterprise Business Service that exposes all the enterprise operations related to the location, such as create location, update location, synchronize location, and so forth. This integration uses only the SyncLocationList operation. This Enterprise Business Service routes the request to the appropriate provider like the SyncLocationListLogisticsProvABCSImpl or the Composite Application Validation System (CAVS) based on the filter condition and operations. The service does updates and creates using the synchronization. It does no transformations in this service. Oracle Transportation Management (OTM) determines whether this synchronize location message is for a create or an update action.

For more information about this EBS, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack and Designing and Developing Enterprise Business Services and Oracle Fusion Middleware Concepts and Technologies Guide, "Understanding Enterprise Business Services".

3.7.3 SyncLocationListLogisticsProvABCSImpl

This SyncLocationListLogisticsProvABCSImpl is a business process execution language (BPEL) process, which receives the SyncLocationListEBM, transforms the message into the LogisticsABM, invokes the Logistics web service with the SyncLocationListEBM, and waits for the transmission report from the Logistics web service. If the transmission report specifies that the transaction is successful, it supplies the cross-reference values; otherwise, it invokes the AIAAsyncErrorHandlingBPEL process to generate the error messages.

These Domain Value Map (DVM) lookups are used by this service:

  • ADDRESS_COUNTRYID - Domain value mapping for country codes.

  • STATE – Domain value mapping for the state codes.