Oracle® Fusion Applications Extensibility Guide for Business Analysts 11g Release 7 (11.1.7) Part Number E16691-12 |
|
|
PDF · Mobi · ePub |
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.
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:
Personalization
Runtime customizations and extensions
Design time customizations and extensions
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.
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.
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.
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.
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.
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.
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:
Global layer: When customizations are made in the global layer, they affect all users of the application. This layer's XML files are added for everyone, whenever the artifact is requested. Customizations made to ADF Business Components in JDeveloper must be made in the global layer.
Site layer: Customizations made in the site layer affect users at a particular location.
User layer: The user layer is where all personalizations are made. Users do not have to explicitly select this layer. It is automatically selected when you use the Personalization menu.
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.
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:
Personalize and customize pages using Page Composer
Customize pages using Application Composer
Create and customize objects using Application Composer
Create business process flows for custom objects
Define security policies for custom objects
Add custom attributes to a business object
Customize reports and analytics
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."
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.
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.
For more information about customizing pages, see Chapter 3, "Customizing Existing Pages."
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.
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.
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."
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 ."
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.
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."
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."
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.
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:
View page customizations: Table 1-1
Branding customizations: Table 1-2
Object customization: Table 1-3
Business process customizations: Table 1-4
Report customizations: Table 1-5
Analysis and dashboard customizations: Table 1-6
Security customizations: Table 1-7
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 |
|
Change a page layout. |
Page Composer |
Business Analyst |
Yes |
|
Create a site-level search for all users. |
Page Composer |
Business Analyst |
Yes |
|
Customize a page title. |
Page Composer |
Business Analyst |
Yes |
|
Customize a task list menu. |
Page Composer |
Business Analyst |
Yes |
|
Customize popup window content. |
Page Composer |
Business Analyst |
Yes |
|
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 |
|
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 |
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 |
|
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 |
|
Add custom object work area pages to the navigator menu (Oracle Fusion CRM) |
Application Composer |
Business Analyst |
No |
|
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 |
|
Create a BPMN approval process in a BPM project (Oracle Fusion CRM). |
Application Composer |
Business Analyst |
Yes |
|
Customize custom BPM projects. |
Business Process Composer |
Business Analyst |
Yes |
|
Customize custom BPM projects (Oracle Fusion CRM). |
Application Composer |
Business Analyst |
Yes |
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 |
|
Customize report layouts. |
Oracle BI Publisher |
Business Analyst |
No |
|
Customize style templates. |
Oracle BI Publisher |
Business Analyst |
No |
|
Create a report. |
Oracle BI Publisher |
Business Analyst |
No |
|
Translate a report. |
Oracle BI Publisher |
Business Analyst |
No |
|
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 |
|
Customize and extend the Oracle BI repository (RPD file). |
JDeveloper, Oracle BI Administration Tool |
Developer |
No |
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 |