Browser version scriptSkip Headers

Oracle® Fusion Applications CRM Extensibility Guide
11g Release 7 (11.1.7)
Part Number E20388-06
Go to Documentation Home
Home
Go to contents  page
Contents
Book<br />List
Book
List
Go to Feedback page
Contact
Us

Go to previous page
Previous
Go to previous page
Next
PDF

3 Application Composer: Using Sandboxes

This chapter contains the following:

Using Sandboxes : Overview

Sandboxes : Explained

Sandboxes : How They Work with Some Customizations and Features

Sandbox Development Lifecycle Components : Explained

Using the Sandbox Manager: Explained

Supported Sandbox Manager Operations : Explained

Multiple Sandbox User Conflicts : Explained

FAQs for Using Sandboxes

Using Sandboxes : Overview

Read this chapter to learn about proper and recommended sandbox usage when customizing and extending your Oracle Fusion CRM applications. When doing customization work within Oracle Fusion, you must always use a sandbox as a safety precaution, so that you can fully test your changes before rolling them out to your end users. In this chapter, you will learn about:

Maintain sandboxes using the Sandbox Manager, which you can access by selecting Manage Sandboxes... from the Administration menu.

Sandboxes : Explained

Today's dynamic business landscape demands fast responses from companies to address both customer and market needs, typically requiring several different teams to work simultaneously on application customizations while sharing the same data model and configuration starting point. Oracle Fusion CRM Applications use sandboxes to allow companies to meet these requirements. Sandboxes let companies avoid the risk of conflicts between teams working in parallel, and give administrators the ability to test all customizations before their users ever see them.

Sandboxes in Oracle Fusion Applications provide robust out-of-the-box functionality to help isolate and control customization efforts without impacting other users' configuration environments, and/or the production environment. You can read all about sandboxes in the Oracle Fusion Applications Extensibility Guide for Business Analysts. Or, review this document to learn how to customize Oracle Fusion CRM Applications, specifically, using sandboxes.

Sandboxes let users make changes isolated from the mainline application, as well as from other sandboxes. The mainline is the source of data and definitions used at the time of creating a new sandbox. Business analysts can implement and test application customizations in a sandbox and, once satisfied, publish them back to the mainline. When making changes in a sandbox, your customizations will not be available to any other sandbox or to the mainline application until you have published your sandbox. When publishing a sandbox, the included application customizations overwrite the mainline application's existing configuration.

Within this section, the term customizing means to change an existing artifact, for example, adding a new field to an existing business object. Customizing also refers to changing what is displayed on a page, as well as creating a completely new artifact, such as a business object or page.

Note

Never make your customizations directly in the mainline. Instead, always use sandboxes whenever possible.

Composers

To customize applications within Oracle Fusion CRM, you can use these composers:

Customization Impact Areas

At a technical level, your customizations affect two major areas: the Metadata Services (MDS) repository and the database layer.

First, all changes result in the creation or updating of many files within the MDS repository. Your customizations are stored as XML files in the repository, segregated by sandbox.

Additionally, as custom objects and fields are created, their definitions are allocated to generic placeholders that already exist as tables or columns in the database.

Customization Types

Sandboxes handle metadata customizations made to the data stored in the Metadata Services (MDS) repository.

Sandbox Usage

Sandboxes typically have one of two purposes:

Sandbox Manager

You can maintain sandboxes using the Sandbox Manager:

Sandboxes : How They Work with Some Customizations and Features

When customizing Oracle Fusion CRM Applications using the Oracle Fusion CRM Application Composer or Page Composer within a sandbox, be aware of the exceptions listed below.

Lookup Types and Values

Lookup types and lookup values are considered seed data, and are not stored inside the MDS. Accordingly, any lookup types or lookup values that you create as part of a customization are retained in the database, even after a sandbox is deleted.

Reports and Custom Fields

You can use the Oracle Business Intelligence (BI) Composer to build custom reports. During report creation, you select a report subject area as the basis for your new report. A report subject area contains a set of objects and fields that represent information about the areas of an organization's business. Many report subject areas are already available to you as part of Oracle Fusion Applications.

Note that you can also create custom subject areas, which are report subject areas that you build using the Application Composer. To create a custom subject area, however, you must be in the mainline application; you cannot be in a sandbox. Therefore, if you want your report to include custom fields or objects (always created inside a sandbox), you must first publish your sandbox. Only after publication can you create a custom subject area that includes the custom fields or objects that you want to later report on.

Web Services (including Object Workflows)

Web services do not reflect sandbox changes such as custom fields or objects until the sandbox is published. Consequently, features that depend on Web services to work will not gain access to the custom fields or objects until the sandbox is published.

For example, when working with object workflows, you can create a custom field and define a workflow condition using that field. While working in a sandbox, however, you cannot reference the custom field in the workflow actions because workflow actions rely on Web services to get field values. Therefore, you must first publish the sandbox in which you created your custom field. Only after publishing the sandbox can you then update the object workflow's condition using your custom field.

Note

Since e-mail templates are part of the object workflow feature, you must create these templates outside a sandbox as well, in the mainline application.

Import and Export

To support the importing and exporting of the custom objects that you created with the Application Composer, you must first generate the object artifacts required for both file-based import and bulk export. Note that this task is not supported from within a sandbox, and can only be completed in the mainline application.

Sandbox Development Lifecycle Components : Explained

The development lifecycle and planning may look like the following for each customization cycle, usually one week:

This graphic describes the development lifecycle and
planning for each customization cycle

Stage



Publishing a Sandbox

This figure shows the lifecycle of publishing a
sandbox.

This figure shows the lifecycle of publishing a
sandbox.

Invalid Sandbox

In the following figure, sandbox A, B, and C are now invalid with the new label, as these sandboxes were derived from the 4/19/2012 mainline. This graphic shows that the sandboxes A, B, and C are
now invalid with the new label, as these sandboxes were derived from
the 4/19/2012 mainline.

Example of a Multi-week Cycle

This graphic shows the configuration cycle for week 1

This graphic shows the configuration cycle for week 2

Using the Sandbox Manager: Explained

Maintain sandboxes using the Sandbox Manager, which you can access by selecting Manage Sandboxes... from the Administration menu.

Use the Sandbox Manager to:

Creating a Sandbox

Using the Sandbox Manager, create a new sandbox by using the Actions menu option, or by clicking the New button.

Tip

To customize data security policies outside Oracle Fusion CRM without affecting the mainline, create a separate data security sandbox by selecting the Create data security sandbox check box when creating a new sandbox. When working within Oracle Fusion CRM, however, do not create data security sandboxes.

When creating multiple sandboxes, create one for testing only which you will never publish. Also, create a single integration sandbox that you do intend to eventually publish.

Coordinate with other administrator users to manually migrate (re-key) approved configurations from a private sandbox into the integration sandbox. To avoid confusion, establish naming conventions such as rjones4_19nopub, mhoope4_19nopub, and integrationsandbox4_19topub. The date indicates when a sandbox was derived from the mainline application. You can also check the sandbox creation date and time using the Sandbox Manager.

Activating a Sandbox

After creating a new sandbox, you must next activate it to be able to use it. To activate a sandbox, select the sandbox and then click the Set as Active button. Only one sandbox can be active at a time.

Once a sandbox is active for your session, the sandbox name is displayed in the global area.

After activating a sandbox, you should always log out from Oracle Fusion Applications and log back in. This helps you to avoid conflicts by ensuring that the cache is cleared.

Note that if you log out and log back in, your sandbox remains active. A sandbox remains active until you exit the sandbox, publish the sandbox, delete the sandbox, or set another sandbox as active.

Exiting a Sandbox and Returning to the Mainline

To exit from the current sandbox session, hover over the sandbox name in the global area and then click Exit Sandbox.

The sandbox session is closed and you are returned to the mainline application. After exiting a sandbox session, you should always log out from Oracle Fusion Applications and log back in. This helps you to avoid conflicts by ensuring that the cache is cleared.

Important

Once back in the mainline application, avoid making customizations using the Oracle Fusion CRM Application Composer. To start making customizations again, use the Sandbox Manager to set a new sandbox as active.

Publishing a Sandbox

Completed customizations created within a test-only sandbox and then replicated to an integration sandbox must be published to be available to other users in the mainline application. Always publish customizations from the integration sandbox only.

Note that there is no standard mechanism to roll back changes that have already been published to the mainline.

To publish a sandbox, select the sandbox and then click the Publish button.

After you publish a sandbox, the sandbox session is closed and the sandbox is no longer active. Be sure to delete your test-only sandboxes, and then create new sandboxes (including a new integration sandbox) for your application customization work.

Deleting a Sandbox

Deleting sandboxes cleans up the Metadata Services (MDS) repository and database layers.

Once you have tested your customizations, you then move those customizations to the integration sandbox. After you publish your integration sandbox, you must delete all test-only sandboxes, and then create and work in entirely brand new sandboxes, including a new integration sandbox. You can delete only nonpublished sandboxes that are not active.

Warning

Although you might delete a sandbox, transactional data for custom objects is retained because transactional data is stored outside of the MDS. Suppose a custom object named D1 is created in a sandbox, three rows of transactional data were entered through its work area at run time, and then the sandbox is deleted. The three rows of transactional data are retained, although not visible to users unless a new custom object is created with the exact same name (D1) with the same fields in the same order. In this case, the data might be exposed once again.

Supported Sandbox Manager Operations : Explained

The only supported sandbox operations are described below.

Supported Sandbox Operations

The only supported sandbox operations are:

Importing Sandboxes

Do not import sandboxes. This operation is reserved for Oracle internal development only.

Signing Out of Oracle Fusion Applications

Sign out and sign back in when:

Multiple Sandbox User Conflicts : Explained

Customizations are stored as XML files in the Metadata Services (MDS) repository, segregated by sandbox. When you customize an application artifact, your changes typically impact multiple metadata files, directly or indirectly. Therefore, when multiple users are working in the same sandbox or with different sandboxes intended for publishing, conflicts might happen.

Multiple Users in a Sandbox Exist

A user might overwrite changes performed by other users using the same sandbox:

When more than one user is working in the same sandbox, and the same object within the sandbox is saved at the same time, only one user's customization is saved. The other user's customization (customization B) may not be lost, but will overwrite customization A if the other user again tries to save customization B.

If customizations on the same object are saved at different times, then the last saved customization will overwrite the other user's changes.

Multiple Integration Sandboxes Exist

When multiple sandboxes exist for publication, one user might overwrite changes made by another user during sandbox publication into the mainline application. The resulting mainline configuration is always from the last published sandbox.

Avoiding Conflicts

To avoid such conflicts, comply with these guidelines:

FAQs for Using Sandboxes

When do I publish a sandbox?

You can publish when configurations have been thoroughly tested and are ready to be moved to the mainline application.

You need to test the following configurations, which must be tested outside a sandbox:

How frequently can I publish a sandbox?

Integration sandboxes are typically published once a week. Publishing integration sandboxes less frequently than once a week is not recommended.

Note

Once you publish an integration sandbox, all private sandboxes are invalid because the label in the mainline application has changed. If you made changes to private sandboxes that you want to retain, document those changes and then delete all private sandboxes.

How can I manage server exceptions while publishing a sandbox?

When publishing a sandbox, a server exception may be encountered. Follow the guidelines below based on the exception error encountered:

Can I delete a sandbox?

Yes. You can delete a sandbox.

Note

When you delete a sandbox, you should first confirm that the sandbox is not active. Only non-published sandboxes can be deleted.

Once you have tested your customizations, you must move those customizations to the integration sandbox. Publish your integration sandbox and then delete all the test-only sandboxes. You can then create and work in entirely brand new sandboxes, including a new integration sandbox.

What''s a data security service error?

When publishing a data security enabled sandbox, data security changes made in the sandbox Metadata Services (MDS) repository must not conflict with data security changes that have been made in the mainline MDS repository that the sandbox was created from. A conflict causes a data security service error. If you encounter a message showing a conflict when you publish your sandbox, do the following:
  1. Exit the sandbox

  2. Create a new sandbox, activate it, and resume your work

  3. Apply or create your security changes in the new sandbox

  4. Delete the original sandbox where you encountered the error.