Oracle E-Business Suite R12 Integration and OA Framework Development and Extension Cookbook

By Andy Penver
  • Instant online access to over 7,500+ books and videos
  • Constantly updated with 100+ new titles each month
  • Breadth and depth in over 1,000+ technologies
  1. Personalizing OA Framework Pages

About this book

Oracle’s suite of applications is used by many major businesses and public sector organizations throughout the world. Oracle E-Business Suite is the most comprehensive suite of integrated, global business applications that enable organizations to make better decisions, reduce costs, and increase performance. The book will show you how to build different types of extensions with different toolsets. It will take you from start to finish with fully working examples.

This book will show readers a wide variety of step-by-step examples of how to extend Oracle E-Business Suite Release 12 in a number of areas. The book focuses on OA Framework personalization and development, WebADI, and BI Publisher. It will take readers through the process of how to get started and what tools are needed. It will explain how to develop working examples and how to deploy them within Oracle E-Business Suite Release 12.

Learn how to extend Oracle E-Business Suite (EBS) Release 12, using detailed examples to work through how various components are configured and how we can extend standard functionality. The book focuses on OA Framework personalization and development, desktop integration (formerly WebADI), and BI Publisher and each chapter will introduce the topic before going through working examples from start to finish. There are plenty of detailed illustrations throughout each chapter giving clear instructions of what we are doing and why. Each topic will develop a solution that will utilize common core components of a subject area. It focuses on starting an extension right from the beginning to deploying it within E-Business Suite. At the end of each chapter the reader will have a good understanding of what they need to do for each area to take away and start using it in practice.

Each chapter will detail how to build an extension in the supported manner and also comes with complete, fully tested code and scripts that can be downloaded.

Publication date:
March 2013
Publisher
Packt
Pages
398
ISBN
9781849687126

 

Chapter 1. Personalizing OA Framework Pages

In this chapter we will cover:

  • Getting started with personalizations

  • Setting the personalization profile options

  • Discovering information about a page

  • Clearing the cache

  • Creating a user-level personalization

  • Adding tool tips

  • Creating an item

  • Re-ordering items on a page

  • Adding a button to a page

  • Hiding a button on a page

  • Making a field required

  • Adding a flexfield to a page

  • Using SPEL to trigger personalizations

  • Deactivating personalizations

  • Deleting personalizations

 

Introduction


OA Framework pages have been implemented using an object-oriented design approach that allows us to be pretty flexible when it comes to making changes to the user interface. The objects that we see on each page are made up of smaller objects that are stored independently in a repository called Meta Data Service (MDS).

In this chapter, we will discuss how to make changes to the user interface through personalization. When we personalize a page, we are altering the declaration of a page's interface. At runtime, objects are loaded from the repository and are rendered in a browser. What we see is determined by the metadata definition, which specifies how objects are displayed on the page. We can create a personalization at multiple levels such as site, function, organization, or responsibility. The good thing is that they can be configured directly from the UI page and are likely to survive an upgrade, as opposed to extensions. One thing you cannot modify with personalizations is the business logic.

At the end of this chapter, readers will have an understanding of how we can personalize OA Framework pages in EBS. Readers will understand which responsibilities are used to administer personalizations and which profile options need to be changed to view the personalization links. Throughout this chapter, we will be creating a variety of different examples that will give a broad understanding of what we can achieve through personalizing OA Framework pages.

 

Getting started with personalizations


It is important that we understand some common terminology and gain an understanding of how an OA Framework page is constructed before we get started. Let's start off by understanding that OA Framework has been developed by Oracle and is based upon a Model View Controller (MVC) architecture developed using Java 2 Platform, Enterprise Edition (J2EE).

  • Model: A model can be thought of as the data and is implemented using Oracle Business Components for Java (BC4J). This comprises three layers, which are the entity object (EO), view object (VO), and application module (AM).

    • Entity object: This is based upon a database table and all of the database transactions will go through the EO.

    • View object: This is based upon any number of entity objects or it can be an SQL statement, if the page is read only.

    • Application module: This is a container for the view object and it manages transactions that occur. Each page has a root AM to maintain the transaction context.

  • View: A view defines a user interface that is rendered as an HTML page. This is implemented with user interface XML (UIX).

  • Controller: A controller is java code that handles events when they occur at runtime. There are two methods that are called when the page runs.

In this recipe, we are going to set up some records that we will use throughout the chapter. We are going to demonstrate our personalizations in the manager self-service screens. We will need to perform the following tasks before we get started with personalizing OA Framework pages:

  • Creating a custom responsibility

  • Creating a new user

  • Creating an employee record

  • Assigning a manager

  • Attaching an employee to a user record

Creating a custom responsibility

Now to create our new responsibility that we will use to access core HR screens, we will create a test employee record and ensure that the employee is a manager of other employees. This will be used to access some of the self-service screens where we will create some personalizations in the upcoming recipes.

How to do it...

Perform the following steps to create a new responsibility called XX Test HRMS Manager:

  1. Log in to Oracle E-Business with the System Administrator responsibility.

  2. Navigate to Security | Responsibility | Define and the Responsibilities window will open.

  3. Enter the required data as given in the following table:

    Item name

    Item value

    Responsibility Name

    XX Test HRMS Manager

    Application

    Human Resources

    Responsibility Key

    XXTESTHRMSMGR

    Description

    XX Test HRMS Manager

    Data Group

     

    Name

    Standard

    Application

    Human Resources

    Menu

    GLB HRMS Navigator

    Request Group

     

    Name

    HR Reports and Processes

  4. Click on the Save button in the toolbar (or press Ctrl + S) to save the record.

  5. The Responsibilities screen should now appear as shown in the following screenshot:

  6. Now create a test manager self-service responsibility.

  7. Click on the new record icon.

  8. Enter the required data as given in the following table:

    Item name

    Item value

    Responsibility Name

    XX Test Manager Self-Service

    Application

    Human Resources

    Responsibility Key

    XXTESTMGRSS

    Description

    XX Test Manager Self-Service

    Data Group

     

    Name

    Standard

    Application

    Human Resources

    Menu

    Manager Self Service

    Request Group

     

    Name

     
  9. Click on the Save button in the toolbar (or press Ctrl + S) to save the record.

  10. Exit the form.

How it works...

We have now created a new responsibility where we can access the HRMS screens.

Creating a new user

We are going to create a user called XXUSER that we will use throughout the chapter for our personalizations. We will add the responsibilities, that we will use throughout the chapter. Also, the user will be assigned an employee record so that when we access the manager self-service screens, there is relevant data available for our personalizations that we are going to create.

How to do it...

To create the user, perform the following steps:

  1. Log in to Oracle and select the System Administrator responsibility.

  2. Navigate to Security | User | Define.

  3. Enter XXUSER in the User Name field.

  4. Enter a password in the Password field and press the Tab key.

  5. Enter the password again and press the Tab key.

  6. Set Password Expiration to None.

  7. Navigate to the Direct Responsibilities tab.

  8. Add the following responsibilities:

    • Application Developer

    • Functional Administrator

    • Manager Self-Service

    • System Administrator

    • XX Test HRMS Manager

    • XX Test Manager Self-Service

    The Users screen should now appear as shown in the following screenshot:

  9. Save the form.

How it works...

We have now created our user called XXUSER. The user has access to the responsibilities, which we are going to need throughout the chapter.

Creating an employee record

Now we are going to create an employee called Employee Manager, which we will use throughout the chapter for our personalizations. As suggested by the name, this employee will be the manager of other employees.

How to do it...

To create the employee, perform the following steps:

  1. Log in to Oracle with the XX Test HRMS Manager responsibility.

  2. Navigate to People | Enter and Maintain.

  3. When the Find Person screen opens, click on the New button.

  4. Enter the required data as given in the following table:

    Item name

    Item value

    Last

    Manager

    First

    Employee

    Gender

    Male (or Female)

    Action

    Create Employment

    Person Type

    Employee

    Social Security

    123123123

    Date of Birth

    28-MAR-1970

  5. Update the Latest Start Date field to 01-JAN-1990.

  6. Save the record, and when prompted, click on the Correction button.

  7. Click on OK, when prompted with the message The original hire date will be updated to be the same as the start date.

  8. Make a note of the employee number that has been automatically generated.

    Note

    If the employee number has not been automatically generated, type one manually and save the record as a Correction.

    The data entered should look similar to the following screenshot:

How it works...

We have now created an employee record that we will configure as the manager of other employees. We need to do this so that the self-service screens we are going to personalize will have some data returned in them and we can complete some of the upcoming recipes.

Assigning a manager

We are now going to update the assignment record of an existing employee so that the employee we have just created is the manager of an existing hierarchy and when we perform some personalizations, there is some data returned in the forms we are going to personalize.

How to do it...

To assign a manger, perform the following steps:

  1. In the Enter and Maintain person screen, click on the Find Person (torch) icon in the toolbar.

  2. Enter 1197 for the employee number.

  3. Click on the Assignment button.

  4. Click on the Supervisor tab.

  5. Enter our employee number in the Worker Number field. (The employee number is 2110 for the employee that was created in the preceding recipe. It may be a different number on the environment you are using.)

  6. Tab out of the field and select the Correction button, if prompted.

  7. The Name fields will automatically populate to Manager, Employee, and so on (our test employee), when we tab out of the Worker Number field.

  8. Save the form and close it.

How it works...

We have assigned our employee as a manager of another employee. This means that we will then inherit the hierarchy of the employee we became the manager of and hence we will have data in the self-service screens that we are going to personalize.

Attaching an employee to a user record

We are going to associate the employee we have just created to our user called XXUSER. When we log in as the XXUSER responsibility, the self-service screen will display data on the screens appropriate to the employee record that we have associated with our user. As we have assigned our employee record as the manager of other employees, we will see the data of the employees in the screens we are going to access in manager self-service.

How to do it...

To create the user, perform the following steps:

  1. Select the System Administrator responsibility.

  2. Navigate to Security | User | Define.

  3. Press the F11 key to enter a query.

  4. Enter XXUSER in the User Name field and press Ctrl + F11 to execute the query.

  5. In the Person field enter Manager and Employee, and press the Tab button.

  6. Save the form.

How it works...

We have now associated our employee with our user. Therefore, when we log in as our user XXUSER, we will be able to access the self-service screens as a manager of other employees.

 

Setting the personalization profile options


There are three profile options that allow us to personalize self-service screens. The three profile options are as follows:

  • Personalize Self-Service Defn: When set to Yes, a Personalize Page link will appear at the top of each self-service page

  • F ND: Personalization Region Link Enabled: When set to Yes, a Personalize Region link will appear on each region of a self-service page

  • FND: Diagnostics: When set to Yes, an About this Page link will appear at the bottom of each self-service page

How to do it...

To set the three profile options, perform the following steps:

  1. Log in to Oracle with XXUSER and select the Functional Administrator responsibility.

  2. Navigate to Core Services | Profiles.

  3. In the Name field of the Search screen, type Personalize%.

  4. Click on the Go button.

You will see that the Personalize Self-Service Defn profile option value is set to No at site level, as shown in the following screenshot (circled):

We are now going to update the profile option to Yes at user level for the XXUSER user:

  1. Click on the Update Value (pencil) icon.

  2. Click on the User tab and click on the Add Another Row button:

  3. In the User field, enter the name of our user, XXUSER.

  4. Navigate to the Value field and click on the list icon.

  5. Click on the Go button.

  6. Click on the Quick Select icon for the Yes value as shown in the following screenshot:

  7. When you are returned to the Profiles screen, click on the Update button and wait for the confirmation that the record has been saved.

  8. Now navigate to Core Services | Profiles to return to the profiles screen.

We will now check to see if the value has been set. To do this, perform the following steps:

  1. In the Name field of the Search screen, type Personalize%.

  2. In the Access Levels region, enter XXUSER in the User field.

  3. Click on the Go button.

The value we set for our user will be displayed as shown in the following screenshot. We can see that there is a Personalize Page link that has now appeared as a result of setting the profile option to Yes.

We are now going to set the values for the other two profiles options at user level in the same way.

Repeat these steps but this time set the FND: Personalization Region Link Enable profile option to Yes.

We can now see that the personalize region links are now displayed in the self-service page, as shown in the following screenshot:

We are now going to set the value of the FND: Diagnostics profile option at site level in the same way:

  1. In the Name field of the Search region, enter FND: Diagnostics.

  2. Click on the Go button.

  3. Click on the Update Value (pencil) icon.

  4. Under the Site tab, set the Site Value field to Yes.

  5. Click the Update button and wait for the confirmation that the record has been saved.

  6. Now navigate to Core Services | Profiles to return to the Profiles screen.

  7. In the Name field of the Search screen, type FND: Diagnostics.

  8. Click on the Go button.

We can now see that the About this Page link is now displayed in the self-service page, as shown in the following screenshot:

How it works...

We have set the profile options that enable links on self-service pages. This will provide access to the required links on the screen so that we can create our personalizations.

 

Discovering information about a page


The About this Page link is used to find key information about the objects and the structure of the page. It is essential when we want to create personalizations and also if we need to extend a page.

How to do it...

To look at the information available on the About this Page link, perform the following steps:

  1. Log in to Oracle with the XXUSER and select the Functional Administrator responsibility.

  2. Navigate to Core Services | Profiles.

  3. Scroll to the bottom of the page and select the About this Page link.

    If we look at the page, we can identify some key information as shown in the following screenshot:

  4. Click on the Expand All link and scroll down the page.

We can see the objects that are displayed on the page such as items and buttons. We can also see the view object used for the table, as shown in the following screenshot:

Now if we click on the FndProfileSearchVO link, we can see the following query behind the view object, as shown in the following screenshot:

How it works...

We used the About this Page link to discover information about a self-service page. This will be a very common feature that will be used when we personalize pages.

 

Clearing the cache


When we make changes to a screen in self-service, the page is often stored in the cache. We might therefore not see the changes that we make on the screen. When this occurs, we will need to clear the cached page so that we will see the changes we have made to a page through personalization. We will need to clear the cache when we add some of the personalizations in the recipes in this chapter. When we are required to clear the cache, we can perform the following tasks.

How to do it...

To clear the cache, perform the following steps:

  1. Log in to Oracle with XXUSER and select the Functional Administrator responsibility.

  2. Navigate to Core Services | Caching Framework.

  3. Click on the Global Configuration link from the left-hand side navigation pane.

  4. In the Global Cache Configuration screen, click on the Clear All Cache button as shown in the following screenshot:

  5. When prompted with the warning shown in the following screenshot, click on the Yes button:

How it works...

We have now cleared the cache so that changes we have made will now become visible as the page is re-cached when we access the page we have personalized. Remember that the entire cache is cleared out when we do this for all of the self-service pages.

 

Creating a user-level personalization


We will now create a user-level personalization. This feature allows end users to save a search they commonly use. However, not all search pages have this feature.

How to do it...

To create a user-level personalization, perform the following steps:

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to Absence Management.

  3. Click on the Advanced Search link as shown in the following screenshot:

  4. In the Advanced Search screen, select the Show table data when any condition is met radio button.

  5. From the Add Another drop-down list, select Department.

  6. Click on the Add button.

  7. Enter Services-West in the Department condition as shown in the following screenshot:

  8. Click on the Save Search button.

  9. In the View Name field shown in the following screenshot, enter XXX Services-West Report:

  10. In the Column Properties region, shift the Employee Number and Location columns to the Columns Displayed list.

  11. Shift Employee Number up in the list so that it is just after the Name field.

  12. In the Sort Settings region, set the First Sort column to Name.

  13. Set Sort Order to ascending.

    The steps performed here are summarized in the following screenshot:

  14. Click on the Apply button.

    We will now see the view, which we created in the list of personalized views, in the following screenshot:

  15. Click on the Apply button and we will return to the Advanced Search region.

  16. Click on the View button.

  17. Select XXX Services-West Report and click on the Go button.

    We can see that the view we created returns the records we would expect, given the restrictions we made.

How it works...

XXUSER can now select this view whenever he/she logs in and navigates to Advanced Search |Views and selects the user view that we have created.

 

Adding tool tips


A tool tip is used to add text to a screen to provide information about a region or item. In this recipe, we are going to add some tips to the screen. We will be adding a simple tool tip to a page and we will also add text that we retrieve from a message stored in the message repository. We will also show the difference between a short tip type and a long tip type. We will perform the following tasks in this recipe:

  • Adding a tool tip to a page

  • Creating new messages

  • Adding a short tip type

  • Adding a long message tip type

Adding a tool tip to a page

We are now going to add a tool tip to a page. It could relate to anything and really does depend on what we are trying to achieve. Common uses for tool tips are providing information about a region and instructions about an item on a page.

How to do it...

To add a tooltip, perform the following steps:

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to Absence Management.

  3. Click on the Action icon.

  4. Click on the Personalize Page link at the top-right corner of the page.

  5. Click on the Complete View radio button.

  6. Click on the Expand All link.

  7. On the top line of the page (Page Layout: Oracle Self Service Human Resources: Absence Management), select the Create Item icon as shown in the following screenshot:

  8. From the Level drop-down list, select Site.

  9. From the Item Style drop-down list, select Tip.

  10. Complete the properties of the item as per the following table:

    Property

    Value

    ID

    XX_ABS_TIP

    Text

    XX Absence Management region tip

  11. Click on the Apply button.

  12. Scroll down to the bottom of the application and click on the Return to Application link.

How it works...

We have just added a tip to a page and can see the results in the following screenshot:

Creating new messages

We can also use the message dictionary to use as a tip. This will allow us to modify the screen tip or merge data into the message, if required. We will now define two messages in Oracle EBS, which we will use to create a short tip and a long tip on a page. Each message, by default, displays this text before each message: APP:<application short name>-<Number> unless the number field is null or 0.

How to do it...

To create a message, perform the following steps:

  1. Log in to Oracle with the Application Developer responsibility.

  2. Navigate to Application | Messages and the Messages window will open.

  3. Create a new message with the following data:

    Item name

    Item value

    Name

    XX_ABS_TYPE_ST

    Language

    US

    Application

    Application Object Library

    Number

    0

    Current Message Text

    Absence Type Short Tip

  4. Save the form.

  5. Create the second message with the following data:

    Item name

    Item value

    Name

    XX_ABS_TYPE_LT

    Language

    US

    Application

    Application Object Library

    Number

    0

    Current Message Text

    This is a longer tip that may span multiple lines.

  6. Save and exit the form.

The form should appear as shown in the following screenshot (the image has been amended to remove blank lines):

How it works...

We have now configured our message that we will use to create our short and long tip personalizations.

Adding a short tip type

We are now going to create a personalization that will add a short tip to a self-service screen. The short tip called XX_ABS_TYPE_ST will reference the message that we have just created.

How to do it...

To add a short tooltip on an item, perform the following steps:

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to Absence Management.

  3. Click on the Action item.

  4. Under the Absence Summary tab, click on the Personalize Search link in the Search region.

  5. Click on the Personalize icon for the Message Choice: Absence Type item.

  6. Click on the Choose Levels Displayed button.

  7. Shift all of the items other than Site and Responsibility back to the Available Levels side as summarized in the following screenshot:

  8. Click on the Apply button.

  9. Set Tip Message Name at responsibility level of XX_ABS_TYPE_ST.

  10. Set Tip Type at the Responsibility level to shortTip as shown in the following screenshot:

  11. Click on the Apply button.

  12. Click on the Return to Application link.

How it works...

We can see that the message is displayed as a tip underneath the Absence Type field as shown in the following screenshot:

Adding a long message tip type

We are now going to create a personalization that will add a long tip to a self-service screen. The short tip will reference the message we have just created called XX_ABS_TYPE_LT. We will see the difference between the tips we have created and how they are displayed on the screen.

How to do it...

To add a long tool tip on an item, perform the following steps:

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to Home | Absence Management.

  3. Click on the Action icon for an employee record.

  4. Under the Absence Summary tab, click on the Personalize "Search" link in the Search region.

  5. Click on the Personalize icon for the Message Choice: Absence Type item.

  6. Click on the Choose Levels Displayed button.

  7. Shift all of the items other than Site and Responsibility back to the Available Levels side.

  8. Click on the Apply button.

  9. Set Tip Message Name to the responsibility level XX_ABS_TYPE_LT.

  10. Set Tip Type to the responsibility level longMessage, as shown in the following screenshot:

  11. Click on the Apply button.

  12. Click on the Return to Application link.

How it works...

We can see an icon next to the Absence Type field and when clicked, it opens a new window with the message text from the XX_ABS_TYPE_LT message we created earlier, as shown in the following screenshot:

 

Creating an item


Okay, in this recipe we are going to add an item to a screen. We can add an item to a screen without extending a page as long as the field exists in the view object of the region we are extending. A view object will nearly always contain many more data items than are visible on the screen. To find out the items that are in the view object, we need to do a little bit of investigation into the view object. Once we have checked the available items, we can personalize the page to make the items visible on the screen. We can also order the items in the region we are displaying them.

How to do it...

To add an item to a page, perform the following steps:

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to Home | Personal Information.

  3. Click on the Action icon for an employee record.

    We are going to add a new item to the Basic Details region. This item will specify the employee original start date after the Full Name field.

    However, before we add the item, we need to find out some information about the page as we need to know the view object that is used by the Basic Details region and the name of the attribute for the original start date item.

  4. Scroll down to the bottom of the page and click on the About this Page link.

  5. Then, click on the Expand All link.

  6. Scroll down until you see the details for the Basic Details region.

    We can see that the view object for this region is BasicDetailsCurrentVO.

  7. Scroll down and expand the Business Component References Details section.

  8. Click on oracle.apps.per.selfservice.personalinformation.server.BasicDetai lsCurrentVO for the basic details view object.

  9. If we look at the attributes returned by the view object, we will notice that the original start date field is called OriginalDateOfHire:

Now that we have the information about the item we want to add, we can create the item through personalization:

  1. Scroll to the bottom of the page and click on the Return to About Page link.

  2. Scroll down to the bottom of the next page and click on the Return to Page: Personal Information link.

  3. In the Personal Information page, click on the Personalize "Basic Details" link.

  4. In the Personalize Region: Basic Details screen, click on the Create Item icon for the Default Single Column: Basic Details object as shown in the following screenshot:

  5. From the Item Style list, select MessageStyledText to add a display only field.

  6. Set the values of the following properties:

    Property

    Value

    ID

    XXOrigHireDate

    Prompt

    Orig. Hire Date

    View Attribute

    OriginalDateOfHire

    View Instance

    BasicDetailsCurrentVO

  7. Click on the Apply button.

How it works...

We have now added the item, but note that we need to move the item just next to the Full Name field and also the font for the item's data is not the same as the other data. We are going to reorder the item in the region in the next recipe.

 

Re-ordering items on a page


We will now re-order the items in the region and we will also set the CSS Class property of the item so that the font matches the other items in the region.

How to do it...

To re-order items in a region, perform the following steps:

  1. Navigate to Home | XX Test Manager Self-Service | Personal Information.

  2. Click on the Action icon.

  3. Click on the Personalize "Basic Details" link.

  4. Click on the Complete View radio button.

  5. Click on the Expand All link.

  6. For the Default Single Column: Basic Details object, click on the Reorder icon, as shown in the following screenshot:

  7. In the Function table, click on the up arrow icon until the Orig. Hire Date field is in the desired location, as shown in the following screenshot:

  8. Click on the Apply button.

  9. Click on the Update Item icon for the Message Styled Text: Orig. Hire Date field, as shown in the following screenshot:

  10. Set the CSS Class property to OraDataText.

  11. Click on the Apply button.

  12. Click on the Return to Application link.

How it works...

We have now moved the item so that it is just below the Full Name field and we have set the property to use the Oracle CSS Class so that the font for the data is the same as the other data items.

 

Adding a button to a page


We are now going to add a button to a page that is going to link to a website when the button is clicked. The link will go to the Google Search page, but this link could easily be a link to a new page that we have created.

How to do it...

To add a button to the Basic Details page, perform the following steps:

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to Home | Personal Information.

  3. Click on the Action icon.

  4. Click on the Personalize "Basic Details" link.

  5. Click on the Complete View radio button.

  6. Click on the Expand All link.

  7. In the Personalize Region: Basic Details screen, click on the Create Item icon for Default Single Column: Basic Details as shown in the following screenshot:

  8. In the Create Item page, select Button from the Item Style drop-down list.

  9. Complete the details of the following property items as per the table:

    Property

    Value

    ID

    XX_BasicDetails_Btn

    Destination URI

    http://google.com

    Prompt

    Google

  10. Click on the Apply button.

  11. Click on the Return to Application link.

How it works...

We have now created a button in the Basic Details region. The button will open the URL that we have entered in the Destination URI property. We can see this in the following screenshot:

There's more...

Okay, well what if we want to go to another OA Framework page? We can do this too. We will now update the button to call another OA Framework page, but first we must gather some information to get the URL of the page we want to navigate to. Let's get the information for the My Employee Information page:

  1. Navigate to Home | My Employee Information.

  2. Click on the About this Page link.

  3. Click on the Page Context tab.

  4. Click on the Expand All link.

  5. Scroll down to the (JSP) My Employee Information line.

    Note

    You will notice that the page has lots of information on it. Now that we have clicked on the Expand All link, a quick way to find the information we require would be to bring up the browser search page facility and search for the name of the page we want the information for as shown in the following screenshot. To activate the search facility in a browser window, press CTRL + F. We can then type in the characters we want to search for. We can use this to help speed up our fact finding as often there is a lot of information on a page we need to sift through. In this example, we can see that the My Employee Information page has a function of HR_MGR_VIEWS_SS and a destination URL of OA.jsp?page=/oracle/apps/per/selfservice/mgrviews/webui/ManagerViewsPG&OAFunc=HR_MGR_VIEWS_SS.

  6. Navigate back to Home | Personal Information.

  7. Click on the Action icon.

  8. Click on the Personalize "Basic Details" link.

  9. Click on the Complete View radio button.

  10. Click on the Expand All link.

  11. In the Personalize Region: Basic Details screen, click on the Update Item icon for the Button: Google item we created earlier, as shown in the following screenshot:

  12. Update the details of the following property items as per the table:

    Property

    Value

    Destination Function

    HR_MGR_VIEWS_SS

    Destination URI

    OA.jsp?page=/oracle/apps/per/selfservice/mgrviews/webui/ManagerViewsPG&OAFunc=HR_MGR_VIEWS_SS

    Prompt

    My Employee Info

  13. Click on the Apply button.

  14. Click on the Return to Application link.

  15. Now click on the My Employee Info button.

You should now have opened the My Employee Information page as shown in the following screenshot:

 

Hiding a button on a page


To perform this recipe, we will use the button created in the Adding a button to a page recipe.

Getting ready

Now, we are going to show how we can hide a button. We are going to show the button on the page for our custom responsibility, but hide it for other users. We can do this by setting the Rendered property of the button to False at the Site level and set it to True at the Responsibility level for our custom responsibility.

How to do it...

To hide a button on a page, perform the following steps:

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to Home | Personal Information.

  3. Click on the Action icon.

  4. Click on the Personalize "Basic Details" link.

  5. Click on the Complete View radio button.

  6. Click on the Expand All link.

  7. Click on the Personalize icon for the Button: My Personal Info object.

  8. Click on the Choose Levels Displayed button.

  9. Shift all levels other than the Site and Responsibility levels to the left-hand side as shown in the following screenshot:

  10. Click on the Apply button.

  11. Set the Rendered property at the Site level to False.

  12. Set the Rendered property at the Responsibility level to True:

  13. Click on the Apply button.

  14. Click on the Return to Application link.

    Note

    You will see that in the Personal Information page, the My Personal Info button is still available.

  15. Navigate to the Home page.

  16. Change the responsibility to Manager Self-Service.

  17. Navigate to the Personal Information page.

  18. Click on the Action icon.

How it works...

We can now see that the button is no longer displayed for other responsibilities. We can set the Rendered property to False, when we do not want an item to be displayed.

 

Making a field required


We can also change the Required property of an item to make users enter data. At this stage, you should be getting the idea about changing properties of items and getting a feel for what can be achieved. To gain a better understanding, it would be a good idea to investigate what properties can be changed and what effect it has on the item. Next, we will make a field required.

How to do it...

To make a field required on a page, perform the following steps:

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to Home | Personal Information.

  3. Click on the Action icon.

  4. In the Basic Details region, click on the Update button.

  5. Select the Correct or complete the current details radio box and click on Next.

  6. Click on the Personalize "Basic Details" link.

  7. Click on the Complete View radio button.

  8. Click on the Expand All link.

  9. Press Ctrl + F to bring up the search facility on the browser.

  10. Type in First and scroll down to Message Text Input: First Name (which will be highlighted from the find).

  11. Click on the Personalize icon for the First Name field.

  12. Click on the Choose Levels Displayed button.

  13. Shift all levels other than the Site and Responsibility levels to the left-hand side.

  14. Click on the Apply button.

  15. Set the Required property at the Responsibility level to true as shown in the following screenshot:

  16. Click on Apply.

  17. Click on the Return to Application link.

How it works...

In this recipe, we have set the Required property of an item so that it has become mandatory for the user to enter data. We can now see that the First Name field is now required as it has * next to the prompt:

 

Adding a flexfield to a page


In this recipe, we are going to show how we can create a descriptive flexfield (DFF) and then display the flexfield on the screen. Again, we need to gather some information about the page and find out if a flexfield is available for a particular region. We will then configure a segment on the DFF and show how we can display it on the screen.

How to do it...

To add a flexfield to a page, perform the following steps:

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to the Absence Management page.

  3. Click on the Action icon for an employee record.

  4. Click on the Create Absence button and the Enter Absence Details screen will open as shown in the following screenshot:

  5. Scroll down to the bottom of the page and click on the About this Page link.

  6. Click on the Expand All link.

  7. Scroll down to the Flexfield References section and we will see what flexfields are available on this screen.

The following screenshot shows us that the PER_ABSENCE_ATTENDANCES flexfield is available:

Getting the title of a descriptive flexfield

Now, we have the flexfield name and we can add a descriptive flexfield segment to the flexfield. First, we will get the title of the Additional Absence Information DFF. To do this, perform the following steps:

  1. Log in to Oracle with the Application Developer responsibility.

  2. Navigate to Flexfield | Descriptive | Register and the Descriptive Flexfields window will open.

  3. Press the F11 key to enter a query and enter PER_ABSENCE_ATTENDANCES in the Name field.

  4. Press CTRL + F11 to execute the query and the following record should be returned.

    We can see that the PER_ABSENCE_ATTENDANCES flexfield is returned from the query. Make a note of the flexfield title Additional Absence Details.

  5. Exit the Descriptive Flexfields screen and navigate to Flexfield | Descriptive | Segments and the Descriptive Flexfields Segments window will open.

  6. Press F11 to enter a query.

  7. When in ENTER-QUERY mode, type Additional Absence Details in the Title field and press Ctrl + F11 to execute the query.

  8. If the Freeze Flexfield Definition checkbox is checked, uncheck it.

  9. Click on OK when the warning message appears.

  10. Click on the Segments button for the Global Data Elements record.

The steps taken are summarized in the following screenshot:

Adding a DFF segment

Now, we can create a new DFF segment for the Global Data Elements context as performed in the following steps:

  1. Enter the following data in the Segments Summary screen:

    Property

    Value

    Number

    45

    Name

    Test DFF

    Window Prompt

    Test DFF

    Column

    ATTRIBUTE20

    Value Set

     

    Displayed

    checked

    Required

    checked

  2. Click on the Open button.

  3. Enter the following data:

    Property

    Value

    Name

    Test DFF

    Description

    Test DFF

    Enabled

    checked

    Displayed

    checked

    Required

    unchecked

    Display Size

    10

    Description Size

    10

    Concatenated Description Size

    25

    List of Values

    Test DFF

    Window

    Test DFF

  4. When you change the Display Size field, click on OK when the warning appears.

  5. Click on Save.

  6. Close the Segments screen.

  7. Close the Segments Summary screen.

  8. Check the Freeze Flexfield Definition checkbox to recompile the flexfield definition.

  9. Click on OK when the warning appears.

  10. Click on Save and OK when a note message appears.

  11. Exit the form.

Enabling a flexfield on a self-service page

Now that we have created a DFF segment, we are going to show the flexfield in the Create Absence screen. To do this, perform the following steps:

  1. Change responsibility to the XX Test Manager Self-Service responsibility.

  2. Navigate to the Absence Management page.

  3. Click the Action icon for an employee record.

  4. Click on the Create Absence button.

  5. Click on the Personalize Page link.

  6. Click on the Complete View radio button.

  7. Click on the Expand All link.

  8. Press Ctrl + F to bring up the search facility on the browser.

  9. Type in Additional and scroll down to the Flex: Additional Absence Details record (which will be highlighted from the find).

  10. Click on the Personalize icon for the Flex: Additional Absence Details field.

    The steps are summarized in the following screenshot:

  11. Click on the Choose Levels Displayed button.

  12. Shift all of the items other than Site back to the Available Levels side.

  13. Click on the Apply button.

  14. Set the Rendered at Site level to true.

  15. Click on the Apply button.

  16. Scroll to the bottom of the page and click on the Return to Application link.

How it works...

We have now updated the page so that the flexfield is displayed in the Enter Absence Details screen, as shown in the following screenshot:

 

Using SPEL to trigger personalizations


SPEL stands for Simplest Possible Expression Language. A SPEL statement will return a Boolean value of either True or False and can be used for conditionally setting a property of an item on a page.

Adding a SPEL statement

In this recipe, we are going to use SPEL to set the properties of an item. We are going to set the Read Only property based on a SPEL statement. If the SPEL statement returns True, the item will be made read only to the user.

How to do it...

To set properties using SPEL, perform the following steps:

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to the Absence Management page.

  3. Click on the Action icon for an employee record.

  4. Click on the Create Absence button.

  5. Click on the Personalize Page link.

  6. Click on the Complete View radio button.

  7. Click on the Expand All link.

  8. Press Ctrl + F to bring up the search facility on the browser.

  9. Type in Comments and scroll down to the Message Text Input: Absence Comments record (which will be highlighted from the find).

  10. Click on the Personalize icon.

  11. Click on the Choose Levels Displayed button.

  12. Shift all of the items other than Site and Responsibility back to the Available Levels side.

  13. Click on the Apply button.

  14. Set the Read Only property at the Responsibility level to SPEL.

  15. Set the Responsibility level for the SPEL statement to ${oa.FunctionSecurity.XXABSREADONLY}, as shown in the following screenshot:

  16. Click on the Apply button.

  17. Scroll down to the bottom of the page and click on the Return to Application link.

How it works...

You may notice that the comments item is now not displayed on the screen. This is because we need to create the function and add it to the menu for the SPEL condition to be returned.

Creating a function

We are now going to create a function that we will add to a menu.

How to do it...

To create a function, perform the following steps:

  1. Log in to Oracle with XXUSER and select the Application Developer responsibility.

  2. Navigate to Application | Function.

  3. Create a function with the following details:

    Item name

    Item value

    Function

    XXABSREADONLY

    User Function Name

    XX Absence Read Only

    Description

    XX Absence Read Only

    Type

    Subfunction

    The function will be displayed as shown in the following screenshot:

  4. Save the record and dismiss the confirmation message.

Adding a function to a menu

We will now add a function to a menu attached to the XX Test Manager Self Service responsibility. The function will be present in the menu, which will mean that the SPEL statement will return True.

How it works...

To add a function to a menu, perform the following steps:

  1. Log in to Oracle with XXUSER and select the Application Developer responsibility.

  2. Navigate to Application | Menu.

  3. Query back the Manager Self Service menu.

  4. Add the function XXABSREADONLY to the menu with the following details:

    Item name

    Item value

    Seq

    200

    Function

    XX Absence Read Only

  5. Save the menu and dismiss the confirmation message to compile the menu.

We can see that the function has now been added to the menu as shown in the following screenshot:

 

Deactivating personalizations


In this recipe, we will show how we can deactivate personalizations.

How to do it...

  1. Log in to Oracle with XXUSER and select the XX Test Manager Self-Service responsibility.

  2. Navigate to Absence Management.

  3. Click on the Action icon for an employee record.

  4. Click on the Create Absence button.

    We can see our personalization that adds the flexfield as shown in the following screenshot. But we now want to deactivate this personalization.

  5. Click on the Personalize Page link.

  6. Click on the Manage Levels button, as shown in the following screenshot:

  7. In the resulting page, check the Site level checkbox.

  8. Click on the Deactivate button, as shown in the following screenshot:

    You can see that the personalization has now been deactivated:

  9. Scroll down to the bottom of the page and click on the Return to Personalization Structure link.

  10. Scroll down to the bottom of the page and click on the Return to Application link.

How it works...

We can now see that the personalization we created to display the flexfield has been deactivated. This is because we have deactivated the personalization.

There's more…

If we want to disable all personalizations, we can do that by setting a profile option called Disable Self-Service Personal to Yes.

 

Deleting personalizations


In this recipe, we will discover how we can delete personalizations. We have created personalizations in the personal information screen. We are going to show how we can find the regions belonging to the personal information pages and how we can delete them from the Functional Administrator responsibility.

How to do it...

To delete personalizations, perform the following steps:

  1. Log in to Oracle with XXUSER and select the Functional Administrator responsibility.

  2. Navigate to Personalization | Application Catalog.

    In the Document Path field, enter the following path of the personal information page from the Creating an item recipe discussed earlier in this chapter.

    /oracle/apps/per/selfservice/personalinformation/

    Note

    This will restrict the records returned to just the regions or pages used in the personal information pages.

  3. Click on the Manage Personlizations icon for OverviewPG.

    A summary of the steps is shown in the following screenshot:

  4. Check the Select checkboxes of the personalizations we want to delete.

  5. Click on the Delete Personalizations button as shown in the following screenshot:

  6. Click on the Yes button to confirm the deletion as shown in the following screenshot:

How it works...

This recipe showed how we can delete personalizations. We can do this from a single screen, which makes it easier for us to manage our personalizations. You will see that the personalizations have now been deleted.

About the Author

  • Andy Penver

    Andy Penver currently lives and works in the U.K. as a solution architect for a large public sector client. He studied at Christ Church (University of Kent). He has over 18 years of experience in working with Oracle E-Business Suite. He has worked in both the private and public sectors, and has a strong technical background. He has led and managed teams of consultants through the full project lifecycles on some very large programs throughout the U.K. and Europe. Andy has been heavily involved in two large-scale, award-winning implementations of a shared service centre. Andy is currently the Managing Director of his own consultancy, NU-TEKK Limited. Andy has previously authored and published a book called Oracle E-Business Suite R12 Core Development and Extension Cookbook.

    Browse publications by this author
Book Title
Access this book, plus 7,500 other titles for FREE
Access now