Skip Headers
Oracle® Fusion Applications Extensibility Guide for Business Analysts
11g Release 7 (11.1.7)

Part Number E16691-12
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

1 Customizing and Extending Oracle Fusion Applications

This chapter provides an overview of how to customize and extend Oracle Fusion applications and introduces Page Composer, Oracle Fusion CRM Application Composer (Application Composer), Business Process Composer, and Oracle Business Intelligence Publisher (Oracle BI Publisher).

Within this guide, the term customize means to change a standard (existing) artifact. The term extend means to create a completely new artifact, such as a custom object.

This chapter includes the following sections:

Note:

For Oracle Cloud implementations, check the Oracle Cloud documentation to determine which Oracle Fusion Applications versions are supported by that Oracle Cloud implementation.

1.1 Understanding Customizing and Extending Oracle Fusion Applications

While Oracle Fusion applications provide robust out-of-the-box functionality, there may be areas of an application that you must change to meet your business needs. This book guides you through the process of using runtime tools to extend and customize Oracle Fusion applications.

Oracle Fusion applications are built using a common data model. Because of this commonality, when you make a customization in one area, that customization is available to all objects in the application. For example, if you add an attribute to an object, you can easily add that attribute to the web-based view page, to an associated mobile page, and to any associated reports.

You can make the customizations in a sandbox so that the changes are isolated. After validating the changes, you can publish them into a full test environment. For more information about sandboxes, see Section 2.2, "Using the Sandbox Manager."

For customizations and extensions, there are three basic scenarios:

1.1.1 Personalization

The term personalization refers to the changes that every end user of the Oracle Fusion Applications product suite makes to certain artifacts in the user interface (UI) at runtime. These changes remain for that user each time that user logs in to the application. Personalization includes changes based on user behavior (such as changing the width of a column in a table), changes the user elects to save, such as search parameters, or composer-based personalizations, where an end user can redesign aspects of a page.

For composer-based personalizations, Oracle Fusion Applications includes Page Composer, which allows end users to change certain UI pages to suit their needs. For example, they can rearrange certain objects on a page, add and remove designated content, and save queries. Figure 1-1 shows the Partner Profile page in Page Composer. An end user can add other content to this page, or change the order of the current content.

Figure 1-1 End Users Can Personalize UIs with Page Composer

Personalize page by moving or adding

1.1.2 Runtime Customizations and Extensions

Runtime customizations and extensions include those that a business analyst makes to an Oracle Fusion application at runtime using browser-based composers. These customizations and extensions are visible and usable by all or by a subset of Oracle Fusion Applications users. The types of runtime customizations and extensions range from changing the look and feel of a page, to customizing standard objects, adding a new object and associated pages and application functionality, changing workflows, defining security for new objects, and customizing reports. Figure 1-2 shows how you can customize the fields on a standard object using Application Composer, which is a runtime tool used to customize and extend certain Oracle Fusion Customer Relationship Management (Oracle Fusion CRM) applications.

Figure 1-2 Application Composer Allows You to Customize Objects at Runtime

Edit business objects in composer

Customizing and extending Oracle Fusion applications using runtime tools, with the exception of Application Composer, is covered in this book. For information about Application Composer, see the "Application Composer: Introduction" chapter in the Oracle Fusion Applications CRM Extensibility Guide.

1.1.3 Design Time Customizations and Extensions

Note:

This functionality is not available in Oracle Cloud implementations.

Design time customizations and extensions include more complex changes, such as creating a SOA composite application or creating a new batch job, and they require deployment into the runtime environment. These design time customizations and extensions are most often done by Java developers using Oracle JDeveloper (a comprehensive integrated development environment), or they may be done in other tools, such as Oracle SOA Composer. The customizations are then uploaded or deployed to a running instance of Oracle Fusion Applications.

Design time customizations and extensions are covered in the Oracle Fusion Applications Extensibility Guide for Developers.

1.2 Understanding Customization Layers

Oracle Fusion applications contain built-in customization layers that allow you to make customizations that affect only certain instances of an application. For example, the Sales application has a layer for job role. When you customize an artifact, you can choose to make that customization available only to users of a specific job role, for example, a sales representative.

Customizations you make are not saved to the base standard artifact. Instead, they are saved to an Extensible Markup Language (XML) file that is stored in an Oracle Metadata Services (MDS) repository. This XML file acts like a list of instructions that determines how the artifact looks or behaves in the application, based on the layer that is controlling the current context. The customization engine in MDS manages this process.

For example, say you want to customize the Sales home page by removing the Quick Create panel, but only for users with the Sales Representative role. Before you make your customization, you first select the layer in which to make your customization, in this case the role layer whose value is Sales Representative. When you make your customization by removing that pane from the page, an XML file is generated with the instructions to remove the pane, but only in the role layer, and only when the value is Sales Representative. The original page file remains untouched. The customization engine in MDS then stores the XML file in an MDS repository.

Now, whenever someone logs in to the application and requests an artifact, the customization engine in MDS checks the repository for XML files that match the requested artifact and the given context, and if there is a match, it layers the instructions on top of the base artifact. In this example, whenever the Sales home page is requested (the artifact) by someone who is assigned the role of Sales Representative (the context), before the page is rendered, the customization engine in MDS pulls the corresponding XML file from the repository, layers it on top of the standard Sales home page, and removes that pane. Whenever someone who is not a Sales Representative logs in (for example, someone with the role of Sales Manager), the XML file with your changes is not layered on top, and so the Quick Create panel is displayed.

Figure 1-3 shows how the customization XML file is applied to the base document and is visible only to a sales representative.

Figure 1-3 One Customization Layer Handled by the Customization Engine in MDS

One customization layer handled by customization engine

All users of Oracle Fusion applications can personalize certain pages using the Personalization menu. Users can move elements around on a page, hide elements, and even add available elements to their page. When they do this personalization, the customization engine in MDS creates an XML file specific to that user.

For example, say User 1 (who has the role of Sales Representative) personalizes the Sales home page. There will then be an XML file stored in the repository, noting the changes that user made. When User 1 logs in, as in the previous example, the customization engine in MDS pulls the XML file with the sales representative customizations from the repository and layers it on top of the standard Sales home page. In addition, the engine pulls the XML file with the User 1personalizations, allowing the user to see the personalization changes along with the Sales Representative changes. When other Sales Representatives log in, they do not see the User 1 personalization changes, as shown in Figure 1-4.

Figure 1-4 Personalizations Are Also Handled by the Customization Engine in MDS

XML document for personalization

The exact customization layers available for an application depend on that application family (see the product-specific documentation from Oracle Enterprise Repository for Oracle Fusion Applications for details). However, all Oracle Fusion applications have the following customization layers:

These layers are applied in a hierarchy, and the highest layer in that hierarchy in the current context is considered the tip. Within the default customization layers, the global layer is the base layer, and the user layer is the tip. If customizations are done to the same object, but in different layers, at runtime, the tip layer customizations take precedence. For example, if you customize the label for a field in the site layer using Page Composer and customize the same label in the global layer using JDeveloper, the site layer customization will be displayed at runtime.

Because customizations are saved in these XML files, when you patch or upgrade your Oracle Fusion applications, the base artifacts can be updated without touching your changes. The base artifact is replaced, and when the application is run after the patch or upgrade, the XML files are simply layered on top of the new version. You do not need to redo your customizations.

Before you create customizations, you must select the layer to which you want your customizations to be applied. Most of the tools that you use to create your customizations provide a dialog where you can pick the layer for your customizations.

1.3 Understanding the Runtime Tools

Oracle Fusion Applications provides several runtime tools to enable you to customize and extend Oracle Fusion applications. With these tools, you can perform the following tasks:

For a more detailed description of the workflow you must follow when customizing and extending Oracle Fusion applications, see Chapter 2, "Understanding the Customization Development Lifecycle."

1.3.1 Understanding Role-Based Access to Tools

The user interfaces in Oracle Fusion applications are controlled by role-based authentication, meaning that the information presented in the UI, and what the user can do in the UI, depends on the role assigned to the currently logged-in user. For example, if you are assigned a role with an administrative privilege, when you log in to Oracle Fusion Applications, you will see an Administration menu, as shown in Figure 1-5. This menu allows you to do things such as customize a page for all users, or manage customizations.

Figure 1-5 Oracle Fusion Applications Menu Bar

Menu bar accesses Administration

1.3.2 Personalizing and Customizing Pages Using Page Composer

Both personalization and customization use Page Composer to make changes to an application page. Using personalization, any user can drag and drop fields, rearrange regions, add approved external content, and save their favorite queries.

Using administration customization, you also use Page Composer to customize pages for other users. You can add fields, add validation, change defaults, rearrange regions, and add external content. Page Composer allows you to work in a WYSIWYG view, and, in some cases, Source view, as shown in Figure 1-6.

Figure 1-6 Page Composer

Oracle Composer

For more information about customizing pages, see Chapter 3, "Customizing Existing Pages."

1.3.3 Customizing Pages Using Application Composer

If you want to extend or customize the Sales, Marketing, Customer Center, Trading Community Architecture (TCA), and Order Capture applications that are part of the Oracle Fusion CRM product family of Oracle Fusion Applications, you can use Application Composer to customize your pages, as described in the "Creating a Work Area: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

Note:

Only certain pages are available for customization. For a complete list, see the product-specific documentation from Oracle Enterprise Repository for Oracle Fusion Applications.

You access Application Composer by clicking the Application Composer link from the Navigator menu of Oracle Fusion Applications, as shown in Figure 1-7.

Figure 1-7 Navigator Menu

Navigator Menu

1.3.4 Creating and Customizing Objects

Application Composer allows business analysts to make more complex runtime customizations to Oracle Fusion CRM applications. In addition to customizing pages, business analysts can customize objects and all the artifacts that support them (such as fields, pages, buttons and links, security, server scripts, and saved searches), and can also extend Oracle Fusion applications by creating completely new objects and artifacts, as shown in Figure 1-8. For more information, see the "Defining Objects: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

Figure 1-8 Application Composer

CRM Application Composer

When new objects are created, you often also create associated Work Area pages for those objects. You can add those pages to the navigator menu so that they can be accessed in the same way as standard objects. For more information, see Chapter 5, "Customizing Menus."

1.3.5 Creating and Customizing Business Process Flows for Custom Objects

Note:

This feature is not available in Oracle Cloud implementations of Oracle Fusion Human Capital Management.

When you create a new object that is not a subclass of another object, you can also create a new object workflow to manage any business processes associated with it. For example, say you used Application Composer to create a marketing object and you want to create an associated approval flow. From within Application Composer, you can access Oracle Business Process Composer and create the process that defines that flow. For applications outside of Oracle Fusion CRM, you access Business Process Composer directly from the Navigator menu. For more information about using the Business Process Composer, see Chapter 6, "Customizing and Extending BPMN Processes ."

1.3.6 Defining Security Policies for Custom Objects

When you create a new object in Application Composer, you can define security policies for it. A security policy defines the end user's level of access to the data records of the object. For more information about creating security policies for custom Oracle Fusion CRM objects, see the "Securing Custom Objects: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

1.3.7 Adding Custom Attributes to Business Components

If you need to add an attribute to a business component in an application that is not one of the five Oracle Fusion CRM applications, you can often use flexfields. A flexfield enables you to define attributes on a business component and then apply business logic to them. For example, an airline manufacturer might require very specific attributes for their orders that are not provided by the out-of-the-box implementation of an order. Because a flexfield exists for the order business component, you can use it to create and configure the desired attribute. Flexfield configurations are stored in an MDS repository, and so are safe during patching and upgrading. You access flexfields from the Setup and Maintenance menu from the Administration menu. For more information about flexfields, see Chapter 4, "Using Flexfields for Custom Attributes."

1.3.8 Customizing Reports and Analytics

Oracle Fusion Applications comes with a complete set of reports. You can customize these reports (for example, change the layout) to fit your particular business needs. Additionally, if you customize or create a business object, you can create a new report for that object. For more information, see Chapter 7, "Customizing Reports and Analytics."

1.3.9 Performing Design Time Customizations

Note:

This functionality is not available in Oracle Cloud implementations.

Design time customizations and extensions include complex changes that require deployment into the runtime environment. For information about design time customizations, see the Oracle Fusion Applications Extensibility Guide for Developers.

1.3.10 What You Can Customize and Extend and with Which Tool

There are many scenarios for which you can customize Oracle Fusion applications. The following tables identify for each scenario the artifacts that you can customize or create in Oracle Fusion Applications, what tool you use, the type of user that can make the change, and whether the changes are stored in an MDS repository:

Note:

Application Composer is available only if you want to make changes in the following Oracle Fusion CRM applications:

  • Marketing

  • Sales

  • Customer Center

  • Trading Community Architecture (TCA)

  • Order Capture

Some features described in this section are not available in Oracle Cloud implementations

Note:

While you can customize view pages in Page Composer and Application Composer, only certain pages are configured to allow it. If the customization that you want to make is not available in Page Composer, then you must use JDeveloper to make the customization.

Table 1-1 View Page Customization Scenarios in Oracle Fusion Applications

Customization/
Extension
Tool Type of User MDS? Where to Find Information

Add, move, delete, show, or hide components on a page.

Page Composer

Business Analyst

Yes

Section 3.2, "Editing a Page in Page Composer"

Change a page layout.

Page Composer

Business Analyst

Yes

Section 3.2, "Editing a Page in Page Composer"

Create a site-level search for all users.

Page Composer

Business Analyst

Yes

Section 3.2, "Editing a Page in Page Composer"

Customize a page title.

Page Composer

Business Analyst

Yes

Section 3.2, "Editing a Page in Page Composer"

Customize a task list menu.

Page Composer

Business Analyst

Yes

Section 3.2, "Editing a Page in Page Composer"

Customize popup window content.

Page Composer

Business Analyst

Yes

Section 3.2, "Editing a Page in Page Composer"

Add fields, buttons, links, to a standard page (Oracle Fusion CRM).

Application Composer

Business Analyst

Yes

"Application Composer: Using the Application Composer" chapter in the Oracle Fusion Applications CRM Extensibility Guide

Customize attributes for a flexfield on a page.

Page Composer

Business Analyst

Yes

Section 3.2, "Editing a Page in Page Composer"

Customize properties for UI components on a standard page.

Page Composer

Business Analyst

Yes

Section 3.3, "Editing Component Properties in Page Composer"

Customize properties for UI components on a standard page (Oracle Fusion CRM).

Application Composer

Business Analyst

Yes

"Editing an Object: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide

Customize the UI Shell template.

Page Composer

Business Analyst

Yes

Section 3.4, "Editing the UI Shell Template Used by All Pages"


Table 1-2 Branding Customization Scenarios in Oracle Fusion Applications

Customization/
Extension
Tool Type of User MDS? Where to Find Information

Customize the UI Shell template.

Page Composer

Business Analyst

Yes

Section 3.4, "Editing the UI Shell Template Used by All Pages"

Customize report layouts.

Oracle BI Publisher

Business Analyst

No

Section 7.2.2, "Customizing Layouts"


Table 1-3 Object Customization Scenarios in Oracle Fusion Applications

Customization/
Extension
Tool Type of User MDS? Where to Find Information

Customize objects (Oracle Fusion CRM).

Application Composer

Business Analyst

Yes

"Editing an Object: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide

Add an attribute to a business object using flexfields (not Oracle Fusion CRM).

Setup and Maintenance work area

Business Analyst

No

Chapter 4, "Using Flexfields for Custom Attributes"

Create objects (Oracle Fusion CRM).

Application Composer

Business Analyst

Yes

"Editing an Object: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide

Add a business object page to the navigator menu

Setup and Maintenance work area

Business Analyst

No

Chapter 5, "Customizing Menus"

Add custom object work area pages to the navigator menu (Oracle Fusion CRM)

Application Composer

Business Analyst

No

Chapter 5, "Customizing Menus"

Add validation to an object (Oracle Fusion CRM).

Application Composer

Business Analyst

Yes

"Groovy Scripting: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide"

Customize saved searches for a custom object (Oracle Fusion CRM).

Application Composer

Business Analyst

Yes

"Saved Searches for CRM Objects: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide"

Customize object workflows for an object (Oracle Fusion CRM).

Application Composer

Business Analyst

Yes

"Object Workflows: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide

Create object workflows for an object (Oracle Fusion CRM).

Application Composer

Business Analyst

Yes

"Object Workflows: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide


Table 1-4 Business Process Customization Scenarios in Oracle Fusion Applications

Customization/
Extension
Tool Type of User MDS? Where to Find Information

Create a BPMN process in a BPM project.

Business Process Composer

Business Analyst

Yes

Section 6.2, "Creating a BPM Project"

Create a BPMN approval process in a BPM project (Oracle Fusion CRM).

Application Composer

Business Analyst

Yes

Section 6.2, "Creating a BPM Project"

Customize custom BPM projects.

Business Process Composer

Business Analyst

Yes

Section 6.3, "Customizing BPMN Processes"

Customize custom BPM projects (Oracle Fusion CRM).

Application Composer

Business Analyst

Yes

Section 6.3, "Customizing BPMN Processes"


Table 1-5 Report Customization Scenarios in Oracle Fusion Applications

Customization/
Extension
Tool Type of User MDS? Where to Find Information

Create report layout.

Oracle BI Publisher

Business Analyst

No

Section 7.2.2, "Customizing Layouts"

Customize report layouts.

Oracle BI Publisher

Business Analyst

No

Section 7.2.2, "Customizing Layouts"

Customize style templates.

Oracle BI Publisher

Business Analyst

No

Section 7.2.2, "Customizing Layouts"

Create a report.

Oracle BI Publisher

Business Analyst

No

Section 7.2.4, "Creating Custom Reports"

Translate a report.

Oracle BI Publisher

Business Analyst

No

Section 7.2.5, "Adding Translations"

Create a report subject area (Oracle Fusion CRM)

Application Composer

Business Analyst

No

"Custom Subject Areas: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide


Table 1-6 Analysis and Dashboard Customization Scenarios in Oracle Fusion Applications

Customization/
Extension
Tool Type of User MDS? Where to Find Information

Customize analytics.

Reports and Analytics pane

Business Analyst

No

Section 7.3.2, "Customizing Analytics"

Customize and extend the Oracle BI repository (RPD file).

JDeveloper, Oracle BI Administration Tool

Developer

No

Section 7.3.3, "Customizing the Oracle BI Repository (RPD)"


Table 1-7 Security Customization Scenarios in Oracle Fusion Applications

Customization/
Extension
Tool Type of User MDS? Where to Find Information

Grant access to custom objects (Oracle Fusion CRM).

Application Composer

Business Analyst

No

"Securing Custom Objects: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide

Enable elevated privileges customization.

Application Composer

Business Analyst

No

"Securing Custom Objects: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide