Skip Headers
Oracle® Fusion Applications Extensibility Guide
11g Release 5 (11.1.5)

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

4 Customizing Objects

This chapter describes how to use CRM Application Composer to customize and extend application artifacts in Oracle Fusion applications.

This chapter includes the following sections:

4.1 About Customizing and Extending Your Fusion Application with Objects

CRM Application Composer allows you to customize existing objects, attributes, and rules and create new ones for the following CRM applications:

If you want to customize applications other than those listed here, then you must use developer tools to create or change objects. For more information, see Chapter 11, "Customizing and Extending Oracle ADF Application Artifacts." For more information about the other types of object customizations that you cannot perform in a runtime environment, see Section 4.1.2, "What You Cannot Customize in the Runtime Environment."

Tip:

If you want to customize objects in applications other than those listed here, then you might be able to use flexfields. For more information about flexfields, see Chapter 5, "Using Flexfields for Custom Attributes."

4.1.1 What You Can Customize and Create in the Runtime Environment

CRM Application Composer allows you to create and customize objects for the Sales, Marketing, Customer Center, Trading Community Architecture, and Order Capture applications. Objects are high-level artifacts that typically manage data that resides in a corresponding database table.

Using CRM Application Composer, you can perform object customizations like the following:

  • Edit existing objects.

    For example, you can edit the object's attributes or create custom attributes, add server script, create validation rules, create object workflows, and add saved searches.

  • Edit the searches over your objects or create new ones.

  • Create custom objects.

    When using CRM Application Composer to create an object, you do not need to create the corresponding table to store the data, the tool manages that for you.

  • Extend existing work areas or create new work areas.

    You can edit pages for an existing object, or create pages for a custom object.

After you implement customizations on an object or create a custom object, you can use other tools to do the following:

4.1.2 What You Cannot Customize in the Runtime Environment

While you can create objects using CRM Application Composer, the following are more advanced use cases for which you must use development tools:

  • Customize or create an object contained in an application that is not Sales, Marketing, Customer Center, Trading Community Architecture, or Order Capture.

    In those cases, you must use JDeveloper instead of CRM Application Composer to implement customizations. For more information, see Chapter 11, "Customizing and Extending Oracle ADF Application Artifacts."

  • Edit relationships between preconfigured objects.

    You can use CRM Application Composer to create custom objects that are a child object or related object of an existing object. However, you cannot modify the relationships between preconfigured objects. To customize the relationships between preconfigured objects, you must use JDeveloper. For more information, see Chapter 11, "Customizing and Extending Oracle ADF Application Artifacts."

  • Create a new type of page for your new object.

    CRM Application Composer allows you to create work area pages only to expose the object in the application.

    If you want to create a new type of page that does not fit the CRM Application Composer design pattern, then you must use JDeveloper. For more information, see Chapter 11, "Customizing and Extending Oracle ADF Application Artifacts."

  • Edit the navigator menu.

    To customize the navigator menu, you use the Manage Menu Customizations task in the Setup and Maintenance work area. For more information, see Chapter 6, "Customizing the Navigator Menu."

  • Use managed beans to contain logic for a page.

    For example, if you want to add logic in response to a component event, then you must use JDeveloper. For more information, see the "Using a Managed Bean in a Fusion Web Application" section of the Oracle Fusion Middleware Fusion Developer's Guide for Oracle Application Development Framework (Oracle Fusion Applications Edition).

4.1.3 Before You Begin Customizing and Extending Your Oracle Fusion Application with Objects

Before you customize or extend CRM applications using CRM Application Composer, you should be familiar with the Oracle Fusion application architecture that enables customization, as described in Chapter 1, "Customizing and Extending Oracle Fusion Applications." You should also understand the typical workflows for working with runtime customizations and extensions, as described in Chapter 2, "Understanding the Customization Development Lifecycle."

In addition, you must perform the following tasks before you can begin customizing or extending objects:

  • Optionally, set up a sandbox.

    CRM Application Composer can use sandboxes to manage your customizations. For more information, see Section 2.2, "Using the Sandbox Manager."

  • Start CRM Application Composer.

    • You must have specific privileges to access CRM Application Composer. Contact your security administrator for details.

    • You can enter the CRM Application Composer environment directly from the application you want to customize. To start CRM Application Composer, log in as an administrator to the application you want to customize, and from the navigator menu, choose CRM Application Composer.

  • Select the application to customize.

    In addition to customizing the application you are logged in to, you can optionally implement customizations in objects that are common to multiple applications. To customize one of these common objects, select CRM Common from the Application dropdown list.

4.2 Editing Objects

You can customize objects in a number of ways using CRM Application Composer. Objects use metadata to store information about them, such as which attributes are displayed and how they are labeled. When you modify an object using CRM Application Composer, you are editing the object's metadata. For more information about how customizations are stored, see Chapter 1, "Customizing and Extending Oracle Fusion Applications." Also, for an overview of extensibility in CRM Application Composer, see the "Extending CRM Applications: How It Works" section in the Oracle Fusion Applications CRM Extensibility Guide.

Changes that you make to an object appear on the associated pages that display the object, without requiring editing of the page. The only time you need to edit a page after customizing an object is if you add or remove an attribute in the object and want to add or remove that attribute on a page.

Before You Begin

If the object you want to edit is not displayed in the CRM Application Composer tree when you select the application you want to customize, then you cannot use CRM Application Composer. You must use JDeveloper, as described in Section 11.2, "Editing Existing Business Components."

When you want to edit an existing object, expand that object in the Objects panel to display the kinds of editors that are available for the object.

Task: Edit Attributes

You can change the properties of an attribute, such as changing the label or making it required. In CRM Application Composer, open the object you want to customize and use the Fields editor to make changes to the attribute. For more information, see the "Editing Fields: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

For custom attributes, you can configure all properties pertaining to the field type and the exposed properties in the task flows. When you make changes to an existing attribute, these changes are reflected in all pages that display the object.

For preconfigured attributes on standard objects and the system-generated attributes on custom objects, the only properties you can configure in CRM Application Composer are Display Label and Hint Text. For other changes to these kinds of attributes, you must use JDeveloper, as described in Section 11.2, "Editing Existing Business Components."

Task: Add Attributes

You can use CRM Application Composer to add a custom attribute to an object using the Fields editor. Open the object you want to customize, and select Fields. For more information, see the "Editing an Object: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

If you add an attribute and want that attribute to appear on a page, then you also must add it to the page. You can do this in CRM Application Composer using the Pages editor. For more information, see Section 4.3, "Editing a Page in CRM Application Composer."

Task: Add and Edit Business Rules

You can add validation rules, triggers, and object functions to an object in CRM Application Composer using the Server Scripts editor. For example, you can add snippets of Groovy script that are executed at specific points in the lifecycle (Create, Modify, Remove, BeforeInsert, and so on). Open the object you want to customize, and select Server Scripts. The Server Scripts editor contains an expression builder, which helps you compose the script for your business rule. For more information, see the "Groovy Scripting: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

Task: Add Buttons and Links

You can use CRM Application Composer to create buttons and links for an object. This can be accomplished from the Buttons and Links editor. Open the object you want to customize, and select Buttons and Links. For more information, see the "Buttons and Links: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

Using CRM Application Composer, you define a button or link that can then be used on a page for the object. If you add a button or link and want it to appear on a page, then you also must add it to the page. You can do this in CRM Application Composer using the Pages editor. For more information, see Section 4.3, "Editing a Page in CRM Application Composer."

Task: Edit the Web Service for the Object

You do not need to modify the web service for an object after adding or removing attributes. The payload is managed for you by CRM Application Composer. However, if you have client applications that use the service, you must regenerate the web service proxy with the new WSDL to allow access to new attributes. For more information, see the Oracle Fusion Applications CRM Extensibility Guide.

Task: Add Object Workflows

Object workflows connect changes in objects to subsequent actions, which allows you to automate your commonly used business processes. You can use CRM Application Composer to add an object workflow that conditionally responds to one of the following record modification events for the object:

In response to these events, you can choose to take one of the following actions:

To add an object workflow, open the appropriate object, select Object Workflows, and click New. For more information, see the "Object Workflows: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

4.3 Editing a Page in CRM Application Composer

When you make changes to an object in CRM Application Composer, some kinds of changes are automatically reflected on the pages for an object. For example, a change to the label text for an attribute does not require you to edit the corresponding page. However, for the kinds of changes described in this section (for example, adding components and reordering fields), you must edit the pages that contain the object for the change to appear.

The Pages editor in CRM Application Composer allows you to create and edit the three types of pages that are associated with an object:

At runtime, these pages are displayed in the work area of the application. Each of these pages has specific, preconfigured behaviors that are commonly associated with the use of an object. For more information, see the "Creating a Work Area: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

CRM Application Composer allows administrative users to make specific types of changes to the pages that expose objects. The actions that you perform in CRM Application Composer follow a specific design pattern, and are limited to changes associated with the object:

For other modifications to pages (such as layout or look and feel), you can use Page Composer, as described in Chapter 3, "Customizing Existing Pages."

Note:

When you use CRM Application Composer to customize the properties of attributes and other components of an object, your customizations are applied to the object and are reflected in the customized application on the pages in which that object appears. There is no need to make subsequent modifications to the UI components that display them on the page. However, if you want to modify a property of a component on a particular page (for example, changing the tooltip for a field on a particular page), then you can use Page Composer to make this kind of change. For more information about using Page Composer to edit the properties of UI components, see Section 3.3, "Editing Component Properties in Page Composer."

Before You Begin

In CRM Application Composer, you can create and edit only those pages that are associated with an object. Therefore you must start with an object. Whether you are customizing a preconfigured object or creating a custom object, the object must be created first.

Before editing the page for an object, you must start CRM Application Composer, and select the application that contains the object you want to customize. For more information, see Section 4.1.3, "Before You Begin Customizing and Extending Your Oracle Fusion Application with Objects."

Task: Add Components to a Page

After you add a field or button to an object, you can use the Pages editor in CRM Application Composer to add the corresponding components to the object's pages. Open the appropriate object, select Pages, and then click the page you want to edit. For more information about using CRM Application Composer to edit pages, see the "Editing Pages: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

To add other kinds of components to a page or to edit other types of pages, use Page Composer. For information about using Page Composer, see Chapter 3, "Customizing Existing Pages."

Task: Remove Components from a Page

You can use the Pages editor in CRM Application Composer to remove components associated with an object (such as, buttons and fields) from the object's pages. Open the appropriate object, select Pages, and then click the page you want to edit. For more information, see the "Editing Pages: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

Task: Reorder Fields on a Page

Using CRM Application Composer, you can change the order of fields on a page using the Pages editor. Open the appropriate object, select Pages, and then click the page you want to edit. For more information, see the "Editing Pages: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

Task: Enable Instance-Level Grant Conveyance

When editing a summary table on the landing page for a custom object, the Pages editor in CRM Application Composer provides the Allow Access Grant checkbox. Select this checkbox to allow the user of that page to give another user access to particular rows in that object. This option is also available for subtab tables. For more information, see Section 9.3, "Enabling End User Instance-Level Security Customization."

4.4 Creating Custom Objects

Objects are high-level artifacts that manage data residing in a database table. When you create a custom object, the underlying infrastructure to store the data is managed by CRM Application Composer. You can also use CRM Application Composer to add validation, child objects, and the pages that will display your custom object.

Task: Create Custom Objects

You can add custom objects to your CRM applications that allow you to expose and capture additional data. To create a custom object in CRM Application Composer, select Custom Objects and click New. This opens a dialog that allows you to name and create the object. After creating the object, you can edit the details for the object. For more information, see the "Extending CRM Applications: How It Works" section in the Oracle Fusion Applications CRM Extensibility Guide.

Task: Create Relationships Between Objects

With CRM Application Composer, you can configure a custom object to be a related or child object of another object. To do this, click Relationships in the Common Setup panel. The Relationships editor allows you to define a relationship by selecting the source and target objects in the relationship.

You can also use CRM Application Composer to create custom objects that are a child object or related object of an existing object. To do this, select the existing object, and click New in the Child Objects or Related Objects area.

When you create an object as the child of another object, it will have cascading properties and it can be used only in the context of the parent object. It cannot be used as a standalone object or the child of another object. However, if you create a custom object and subsequently configure it as the child of another object, it can be used independently of the parent but it will not have cascading properties. For more information, see the "Object Relationships: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

Task: Add Business Rules

You can add validation rules, triggers, and object functions to an object in CRM Application Composer using the Server Scripts editor. For example, you can add snippets of Groovy script that are executed at specific points in the lifecycle (Create, Modify, Remove, BeforeInsert, and so on). Open the object you want to customize, and select Server Scripts. The Server Scripts editor contains an expression builder, which helps you compose the script for your business rule. For more information, see the "Groovy Scripting: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

Task: Create Pages for the Object

After you have created an object, you can use CRM Application Composer to generate the pages (landing, creation, and detail) that expose the object in the work area of the application. You do this using the Pages editor. Open the object, and select Pages. For more information, see the "Creating a Work Area: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

Task: Add an Object Page to the Navigator Menu

After you have created a custom object and the pages that display it, you might want to add one or more of those pages to the navigator menu. For information about modifying the navigator menu, see Chapter 6, "Customizing the Navigator Menu."

Task: Add Security for the Object

After you have created an object, you can use CRM Application Composer to implement security for the object. If you want to customize security for an object contained in an application that is not Sales, Marketing, or Customer Center, then you must use Functional Setup Manager. For more information about customizing security, see Chapter 9, "Customizing Security for Custom Business Objects." For information about using CRM Application Composer to implement security, see the security chapter in the Oracle Fusion Applications CRM Extensibility Guide.

Task: Add an Object to an Existing Report

The Custom Subject Areas editor in the Common Setup area of CRM Application Composer allows you create and customize subject areas that can be used in reports. You can use this editor to add objects, child objects, fields, date measuring, rollups, and aggregates to a subject area, as well as define which application roles can see them. To define a custom subject area, click Custom Subject Areas in the Common Setup panel, then click New.

After you define a custom subject area, a user of the application with the appropriate role, while running the BI Report Composer from the client, can select the report subject area and report on the objects and fields that were included as part of that subject area. For information about custom subject areas, see the "Editing an Object: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide. For more information about customizing reports, see Chapter 8, "Customizing Reports and Analytics."

4.5 Creating and Editing Search Objects

You can create and edit searches for an object in CRM Application Composer using the Saved Searches editor. Select an object and click Saved Searches. To edit an existing search object, select the saved search you want to edit, and click the Edit icon. To create a new custom search object, click the Create icon. For more information, see the "Saved Searches: Explained" section in the Oracle Fusion Applications CRM Extensibility Guide.

In addition to saved searches, the work area for an object contains a regional search and the landing page contains a local search. Using the Pages editor, you can specify which attributes from the object are used in the search. Select an object and click Pages. Then click the search you want to edit, either Edit Regional Search or Edit Local Search. For more information, see the Oracle Fusion Applications CRM Extensibility Guide.

4.6 Editing Objects and Pages in Oracle JDeveloper After Using CRM Application Composer

Using CRM Application Composer, you can extend the application with custom objects, implement customizations on standard objects, and add and edit the pages that display those objects.

To see these customizations and custom objects in JDeveloper, you must export them from the runtime environment and import them into the JDeveloper customization application workspace. For more information, see Section 10.2.4, "Importing Customizations into Your Application Workspace."

When using more than one tool to implement customizations and extensions, be aware of the following: