An Oracle White Paper March 2012 Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
An Oracle White Paper
March 2012
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
Disclaimer
The following is intended to outline our general product direction. It is intended for information purposes
only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or
functionality, and should not be relied upon in making purchasing decisions. The development, release, and
timing of any features or functionality described for Oracle’s products remains at the sole discretion of
Oracle.
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
Executive Overview ........................................................................... 1
Introduction ....................................................................................... 1
Using OER to Discover Integration Assets ........................................ 2
Web Services ................................................................................ 2
Business Events ............................................................................ 8
Interface Tables and Scheduled Processes ................................... 9
Flat Files ...................................................................................... 10
Coexistence Scenarios ................................................................ 10
Other Artifacts ............................................................................. 12
Using OER in Integration Design ..................................................... 12
Identifying Customization Areas for Integration ............................ 12
Analyzing Cross System Data Mappings ..................................... 17
Conclusion ...................................................................................... 19
Glossary .......................................................................................... 19
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
1
Executive Overview
Oracle Fusion Applications provides various ways to integrate its functional capabilities with other
Oracle applications as well as third party and legacy applications. This paper provides an overview of
discovering the artifacts used for such integrations and for use in implementations in general. It
focuses on the use of the Oracle Enterprise Repository (OER) for Oracle Fusion Applications as a
one-stop shop for discovering and governing Oracle Fusion Applications design time metadata.
Introduction
The primary focus of this document is to describe how to discover and use artifacts to build custom
integrations to Oracle Fusion Applications for on-premise and managed hosted deployments.
Figure 1: Integration Patterns
The diagram above shows an overview of Oracle Fusion Applications integration assets that can be
discovered in the repository, and their message interaction patterns between source and target
applications.
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
2
Using OER to Discover Integration Assets
This section describes the various types of integration artifacts and how to discover them. Oracle
Fusion Applications documents all integration artifacts, also known as assets, in OER. OER is the
single source of integration information, to provide effective Service-Oriented Architecture (SOA)
governance for any organization. It provides visibility and lifecycle control on the integration assets and
their relationships, which helps promote reuse, manages impact of change, and eliminates
redundancies.
Each integration asset in OER is marked with the level of compatibility support provided by Oracle.
These range from assets that are discoverable but not supported, such as some setup application
programming interfaces (APIs), to assets that are supported with assured backward compatibility.
To view the Oracle hosted version of OER, navigate to http://fusionappsoer.oracle.com and sign in
with your Oracle ID. To view OER in an on-premise deployment, navigate to http://host:port/oer
replacing the host and port with the address where OER was installed.
Use the search criteria on the left panel to view the assets, as shown below.
Figure 2: Viewing Oracle Fusion Applications Integration Assets in OER
Web Services
Oracle Fusion Applications uses standards-based Oracle Fusion Middleware Simple Object Access
Protocol/eXtensible Markup Language (SOAP/XML) web services for exposing inbound APIs. Any
web services development environment that is compliant with these web service standards may be used
to invoke the Oracle Fusion Applications web services. The web services can have two types of
underlying implementations – Application Development Framework Business Components (ADF-BC
services or simply ADF services) and SOA Composites services – both of which are exposed via OER.
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
3
Supportability
Oracle Fusion Applications are designed using SOA, however not all services are necessarily suited for
integration purposes. You should rely on assets in OER that have the Compatibility equal to
Supported - Backward Compatibility Assured so that uptake of upgrades or patches does not
require changes to your integration projects.
Note that services in OER are also tagged with the EXTERNAL keyword, which indicates visibility
of the service end points to external clients. The following table clarifies the intended service usage.
Compatibility Keyword Intended Service Usage
Supported EXTERNAL These services can be used by customers and partners to extend and
integrate with Oracle Fusion Applications. These services are available
in OER and explicitly tagged with the EXTERNAL keyword.
Supported Not specified These services cannot be accessed by external web service clients but
can only be accessed by custom composites that are deployed in the
Oracle Fusion Applications SOA domain. These services may not be
explicitly tagged with keywords in OER. The OER description of these
services may also be useful for customization purposes.
Not supported EXTERNAL These services need to be invoked from external web service clients as
part of a predefined business flow but should not be directly invoked by
customers or partners as an integration point. For example,
applications developed for mobile devices, such as the iPhone or iPad,
may need to interact with private services from outside the Oracle
Fusion Applications domain. These may be documented in OER but
are not suitable for integration.
Not supported Not specified These services are only meant to be used within Oracle Fusion
Applications. Customers and partners should not directly invoke these
service endpoints, even in custom composites deployed in the Oracle
Fusion Applications SOA domain. Since these services may allow
customizations, they may be available in OER in certain cases for
documentation of the customizable artifacts.
ADF Services
ADF services are based on the Oracle Fusion business objects and expose standard Create, Read,
Update, Delete (CRUD) style operations. Examples include changing the hire date of an employee
(Worker.changeHireDate), creating a project task (Project Task.CreateTask), or finding an organization
based on certain query criteria (Organization.findOrganizationByNameAndClassification). Note that ADF
services are not limited to CRUD style operations on locally-persisted objects. They may perform
federated queries; act as a wrapper service for batch jobs, or expose non-CRUD object specific
operations, for example, converting a CRM Lead into an Opportunity.
To find web services of interest in OER, query the assets for Type equal to Fusion Apps: ADF
Service, as shown below.
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
4
Note: The Oracle hosted version of OER does not have the Fusion Apps prefix added to the asset
types since it is dedicated for use by Oracle Fusion Applications, therefore you can ignore the use of
this prefix in this paper.
Figure 3: OER Asset Types
Use any part of the asset name or a commonly used synonym in the search string. For example, to find
an employee enter employee in the search string and browse through the results, which will yield the
correct service, Worker. Confirm the intent of the service by reviewing the description.
Figure 4: Finding Assets in OER
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
5
Once you find the desired asset, click the Detail tab to browse through the supported operations,
including asynchronous operations and callbacks. Scroll down to the end of the Detail tab to find the
Service WSDL URL. To view the schema documents containing customized object definitions replace
the ?WSDL URL suffix with ?XSD&xsdlist in the browser window. Note: This is not applicable to
the hosted OER instance.
Figure 5: Asset Detail in OER
Use the Service WSDL URL in a tool such as JDeveloper, which can then auto-retrieve all of the
references to the schema files. For example, as shown in the screenshot below, you can use the service
WSDL URL in a JDeveloper project to set up a web service invocation with the option to copy all of
the dependent schema artifacts into the project.
Figure 6: Using the Service WSDL URL to Set Up a Web Service Invocation in JDeveloper
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
6
Composite Services
Composite services typically represent end-to-end process flows that act on business events produced
by the ADF services. Examples include approving a project status change (Project Status Change
Approval.process) or scheduling an order fulfillment (Schedule Orchestration Order Fulfillment Line
Service.ScheduleOrders). Composite services are typically non-object based services that represent backend
processing flows, and orchestrate many object based services, rules services, and human workflows.
These types of composites are exposed as web services using the standard Web Services Description
Language (WSDL) and XML Schema Definition (XSD) schemas, where they may be invoked from any
web service client, as in the case of the ADF services.
To find the composite services of interest in OER, use the same approach for ADF services, but
querying for assets of Type equal to FusionApps: Composite Service. Drill down to the Detail tab
for the WSDL.
Figure 7: Composite Service WSDL in OER
Many Oracle Fusion Applications ADF-BC objects also initiate SOA composites by raising business
events, which are subscribed to by the composites. In this pattern, the business event is raised with a
key to an ADF-BC persisted object, which is then referred to in the composite services. Such
composites do not need to be typically invoked outside of the context of the ADF service. In fact, they
may not even be public web services and may have been documented to assist in integration
customization efforts.
To identify such composites in OER, navigate to the Taxonomy to find if the composite subscribes to
an event, and if the event payload only contains the key of the ADF Service Data Object. For example:
The diagram below shows a pay sheet approval composite service.
Figure 8: Example of a Composite Service in OER
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
7
To determine if this composite service can actually be used outside the scope of an ADF-BC object,
click the Taxonomy tab to review the composite information, as shown below.
Figure 9: Example of a Composite in OER
Click the composite name link and check its taxonomy to find out if it subscribes to a business event,
as shown below.
Figure 10: Navigating to the Composite Taxonomy in OER to Find Business Events Subscribed
Click the Subscribes To link. This shows the details of the event and its payload.
Figure 11: Business Event Details in OER
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
8
As seen above, the event payload only contains the unique identifier. For example, the pay sheet object
needs to be created prior to invoking the composite service since the composite service
implementation will need to make a call back into Oracle Fusion Applications to retrieve the details.
Accessing Customized Web Service Metadata
Customer projects typically require extensions to the base objects, for example, adding new attributes
to an ADF business component via flexfields. These customizations are reflected in the XSD schema
files and web services, and this metadata may be required in integration projects.
The public OER instance hosted at Oracle only contains the base, non-implementation specific,
metadata. The customer deployed OER instance provides the base metadata along with links to the
concrete WSDL and XSD that are customized for that implementation. The customized WSDLs
honor the base WSDL interfaces; thus partners can use the base WSDL and XSD to build value-added
applications and integration offerings that need to work against any customer implementation. This is
explained in the next section as part of the integration design patterns.
Business Events
Oracle Fusion Applications business objects and composites publish business events using the Event
Delivery Network (EDN). Oracle Fusion Applications publishes these business events as a way to
notify subscribers of any important changes, such as a change that has occurred to a business object,
for example, an Order Fulfilled or Customer Created, or a milestone reached in the business process,
for example, an Item Shipped. In addition, the Oracle Fusion Applications extensibility capabilities
allow you to create custom objects and trigger business events as well. The loose coupling of publishers
and subscribers in EDN makes business events a key extensibility point for integration purposes. For
any outbound notification to external applications business events can be subscribed to by SOA
composites, which can then invoke any external application.
To find the business events of interest in OER, query the assets for Type equal to FusionApps:
Event, as shown below.
Figure 12: Business Events in OER
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
9
Interface Tables and Scheduled Processes
Interface tables typically provide a batch loading mechanism, useful for initial or bulk data loading use
cases. For example, you can use interface tables to populate salary history for an employee (Salary
History) or set up financial chart of accounts (Chart of Accounts). Interface tables can be populated in a
variety of ways:
Using Oracle Data Integrator (ODI), the interface tables can be populated with data from external
databases or files.
Using Oracle Enterprise Scheduler (ESS), the ODI jobs as explained above, can be invoked using the
SOA Suite as a scheduled job.
Using Database Adapter, the interface table can be exposed as a web service to the SOA Suite. Note
that while this may be viable for a few rows, batch syncing of data to the interface tables should be
performed using the ODI or ESS job approach.
Using SQL commands. This is not recommended, as it requires custom implementation of the
mapping, fault handling, and so on.
Refer to the bulk data patterns in the next section for more details and examples.
To find the interface tables in OER, query the assets for Type equal to FusionApps: Table, with a
search string of InterfaceTable as shown below.
Figure 13: Interface Tables in OER
Review the description to understand the processing needed, for example, any scheduled jobs that may
need to be run for processing or purging the data, any related tables such as error tables, and columns
that may indicate the processed state of the rows.
To search for ESS processing jobs, search for assets of Type equal to Fusion Apps: Scheduled
Process.
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
10
Flat Files
Some Oracle Fusion Applications, such as Oracle Fusion Customer Relationship Management (CRM),
allow uploading of comma separated values (CSV) file data from a web based user interface (UI). For
example, an external application may need to populate Oracle Fusion CRM with product (Item) or
Opportunity information. Oracle Fusion CRM calls this the File Based Data Import, and to find these
files of interest in OER, query the assets for Type equal to FusionApps: File Based Data Import, as
shown below.
Figure 14: Flat File Definitions in OER (CRM example shown)
Coexistence Scenarios
Oracle Fusion Applications are designed for coexistence with other Oracle Applications Unlimited
products, for example, Oracle E-Business Suite, PeopleSoft, and Siebel. Specific coexistence scenarios
have been prioritized by Oracle for delivery as prepackaged integrations or with integration-ready
interfaces. For these scenarios, the functional and technical integration scenario documentation as well
as the legacy artifacts, for example Oracle E-Business Suite PL/SQL, is available in OER.
To find all artifacts associated with a given coexistence scenario, expand the Browse section in the left
panel and select FusionApps: Coexistence Scenario Documentation in the list. Expand the specific
coexistence scenario and click on the specific Oracle Applications Unlimited version to display all of
the artifacts used in that scenario by that application, as shown below.
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
11
Figure 15: Navigating Integration Coexistence Scenarios in OER
To select multiple applications in the coexistence scenario, or if the Browse option is not available,
navigate using More Search Options Filter By Categorization All Categorization Coexistence
Scenario Documentation. To find the integration documentation for these coexistence scenarios, click
the asset of Type equal to FusionApps: Coexistence Scenario Documentation and click the
Documentation tab.
Figure 16: Coexistence Scenario Documentation in OER
To look up the legacy artifacts, query the asset types with the prefix of the application suite, for
example, EBS, Siebel, PeopleSoft, or Primavera, as shown in the EBS:PL/SQL API example below.
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
12
Figure 17: Applications Unlimited Artifacts in OER (Oracle E-Business Suite example shown)
To discover integration artifacts from Oracle Applications Unlimited products that are not used in the
Oracle Fusion coexistence scenarios documented in OER, refer to the native implementations of
integration catalogs from those applications, for example, the Integration Repository (IREP) in the
Oracle E-Business Suite.
For any other legacy artifacts from third party systems, a recommended best practice is to harvest
those web service interfaces in OER for centralized governance.
Other Artifacts
Apart from the integration assets detailed in the sections above, OER for Oracle Fusion Applications
also contains a wealth of technical reference documentation, that were previously only found in
manuals. These include metadata and documentation for tables, views, flexfields, business process
project templates, data model diagrams, lookups, profile options, and roles, to name a few.
Using OER in Integration Design
Identifying Customization Areas for Integration
Integration patterns that affect the overall end-to-end business process likely require some level of
customization of Oracle Fusion Applications to utilize the previously mentioned integration assets.
The analysis phase would lead to identification of needs to customize the Oracle delivered business
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
13
process. Although there are various types of customizations that may need to be performed, some
examples of integration related customizations are:
Invoking external services to provide data validation or data enrichment; for example, performing an
address validation using a third-party service or retrieving additional customer account information
such as a credit rating.
Integrating with external applications by publishing messages or raising events, for example,
synchronizing a Siebel CRM application with data from Oracle Fusion Applications or vice-versa.
Consider an example that requires invoking an external web service for validating a credit card for
order processing. This may require customizing a packaged SOA composite Business Process
Execution Language (BPEL) process that performs the order fulfillment process. Oracle Fusion
applications are designed with customizations and extensibility in mind. SOA integration artifacts are
customized in a layer on top of the base artifact delivered by Oracle. The layer represents the context
for which customizations are needed, for example, by industry. The layered customization is performed
by importing the SOA project in JDeveloper using a customization context, for example,
Industry=Communications. Artifacts that have been marked as customizable, for example, BPEL
scopes, will then be available for editing.
To find the SOA artifacts available for integration customizations, it is important to understand the
end-to-end processing flow in OER from the ADF Service to the SOA Composite. SOA composites
subscribe to Business Events. These business events are raised by ADF services, UI task flows, and so
on. The event subscriptions by composites are available in OER in the FusionApps: Composite asset
type taxonomy. This establishes one half of the end-to-end relationship. The FusionApps: Event
asset type defines the FusionApps: Logical Business Object in its taxonomy definition. The
FusionApps: ADF Service asset types use this FusionApps: Logical Business Object as its name,
thereby establishing the other half of the end-to-end relationship. The overall flow is shown in the
diagram below.
Figure 18: Taxonomy Relationships for Oracle Fusion Applications in OER
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
14
Note that in some cases, the event taxonomy may not contain the Logical Business Object (LBO)
reference, but may have a Logical Business Area, which may be used in the search criteria.
An example better illustrates the above concept. Let’s look at the steps that you would take to modify a
Supply Chain Management order processing flow to add a credit validation step.
Search with asset Type equal to FusionApps: ADF Service with a search string equal to Order, and
identify the desired service based on the description and taxonomies. In the diagram below, Order
Promising is the service you want to focus on. Note that this service name is important as you will use
this to find the Business Events of interest.
Figure 19: ADF Service in OER
Search using asset Type equal to FusionApps: Event with a search string equal to Order Promising.
Review the results to find the suitable event. In the diagram below, find the event of Orchestration
Order Fulfillment Line Check-Availability Initiated.
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
15
Figure 20: Business Event in OER Corresponding to Logical Business Object
Check the event taxonomy to find which composites subscribe to this event. In the diagram below,
find the Promise Orchestration Order Fulfillment Line composite.
Figure 21: Finding Composites Subscribing to Business Event
Drill down to the composite to view the Special Administrative Region (SAR) file location, which you
can use for customization.
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
16
Figure 22: Viewing Composite Details in OER
Note that you still need to find the BPEL flow to customize. For this, click the composite taxonomy of
the composite to find the composite services of interest. Click the service definition link to review the
description of each and find the service of interest. The example below shows the service selected and
its details.
Figure 23: Composite Taxonomy in OER
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
17
Figure 24: Composite Service Overview in OER
Open the BPEL file indicated by the service (CheckAvailability.bpel in the example above) to customize
the flow using Oracle JDeveloper to introduce the credit validation integration as per your business
need.
Analyzing Cross Application Data Mappings
Most of the integration complexity in enterprise application integration projects stem from functional
analysis of the data mapping between the applications. For example, the term Account has a different
meaning in Siebel and may not directly correspond to the Account entity in Oracle Fusion
Applications. For example, which of the following OER asset types of FusionApps: ADF Service is
the right mapping for a Siebel Account entity?
Figure 25: OER Query Results for ADF Services matching Account in Oracle Fusion Applications
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
18
The correct answer depends on how the end-to-end business process flow is designed and may also be
influenced by the decisions made by existing legacy integrations. For example, if an existing
Application Integration Architecture (AIA) based integration mapped the Siebel Account to the TCA
Organization instead of the TCA Customer Account, then future implementations should continue using
the same semantics.
The above example highlights one aspect of the mapping at the coarse-grained entity level. Even when
the decision is made to map one entity to another, there are more mapping challenges at the row and
attribute level. For example, data structures of the entity (different table structures), the cardinality of
its instances (how primary keys are designed), entity relationships (master-detail tables), and list of
values for the entity attributes (encoded values for Address State) may all differ from one application to
another. The following diagram highlights the various integration challenges when mapping two or
more enterprise applications.
Figure 26: Integration Challenges with Enterprise Application Mappings
Oracle Fusion Application data model provides a good starting point for integrators. A good
understanding of the underlying semantics of the Oracle Fusion Applications data model as it relates to
other applications reduces the cost of integrations. Store such a mapping knowledge base in centralized
design specifications and mapping spreadsheets, and utilize tools such as the OER keywords or the
JDeveloper Synonym Dictionary. This data mapping exercise should be preceded by the configuration
and deployment of any additional ADF attributes needed at your site. This ensures that the regenerated
schemas reflect the implementation needs.
Making the Most of the Oracle Enterprise Repository for Oracle Fusion Applications
19
Conclusion
This paper provides an overview of the Oracle Enterprise Repository for Oracle Fusion Applications.
For more details, review the Developers Guide for Oracle Fusion Applications and Oracle Fusion
Middleware SOA Suite.
Glossary
ITEM MEANING
File-based Import Tool Oracle CRM tool that enables bulk data import data to the Oracle Fusion Applications
CRM schema. It uses ODI technology to load data from its interface tables to Oracle
Fusion base tables.
Oracle Data Integrator (ODI) Oracle tool that enables bulk data import data.
Service Data Object (SDO) Data structure for web services that uses standards based representation of entity data.
Making the Most of Oracle Enterprise
Repository for Oracle Fusion Applications
March 2012
Author: Rajesh Raheja
Contributing Authors: Nigel King, Tim Hall, Kris
Doherty
Oracle Corporation
World Headquarters
500 Oracle Parkway
Redwood Shores, CA 94065
U.S.A.
Worldwide Inquiries:
Phone: +1.650.506.7000
Fax: +1.650.506.7200
oracle.com
Copyright © 2011, Oracle and/or its affiliates. All rights reserved. This document is provided for information purposes only and the
contents hereof are subject to change without notice. This document is not warranted to be error-free, nor subject to any other
warranties or conditions, whether expressed orally or implied in law, including implied warranties and conditions of merchantability or
fitness for a particular purpose. We specifically disclaim any liability with respect to this document and no contractual obligations are
formed either directly or indirectly by this document. This document may not be reproduced or transmitted in any form or by any
means, electronic or mechanical, for any purpose, without our prior written permission.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and
are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are
trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark licensed through X/Open
Company, Ltd. 0611