Personalization and Extensibility Using Oracle Applications Framework

Daniel Benhur BV Solutions Group, Overland Park, KS

Introduction
The Oracle Applications (OA) Framework is the tool that comes with the Oracle eBusiness Suite Application and through which personalizations and extensions can be created very easily in its self-service web applications. Using the OA Framework, personalizations such as changing the font size or name, hiding a column, or changing sort order can be accomplished by the click of a button, similar to setting Internet options in the Internet Explorer. With OA Framework personalizations, customizations are no longer needed for personalizing Web pages. This paper provides an overview of the capabilities for personalization and extensibility available in the OA Framework.

What is OA Framework?
Oracle Self-Service Web Applications are built using the technology of the OA Framework. The OA Framework consists of several components, one of which is the AK Developer, which is part of the OA Framework architecture in Version 5.6 and earlier. The OA Framework in Version 5.7 and above includes the OA Personalization Framework, which provides the capability to personalize the User Interface (UI) without modifying underlying code. The OA Framework provides the technology foundation for all self-service Web applications in the Oracle E-Business Suite. The OA Personalization Framework is the only recommended means for customizing self-service OA Framework-based applications, such as iProcurement. Personalizations and extensions performed within the scope of the OA Personalization Framework are fully supported by Oracle. With the OA Framework, Oracle E-Business self-service Web pages can be modified to comply with specific business processes. The OA Framework is designed to provide very effective and easy-to-upgrade personalization and extensibility capabilities. Personalization refers to the ability to tailor/personalize the look and feel of the UI , layout of the UI, and visibility of built-in content. Extensibility is the ability to extend the functionality of an application beyond what can be done through personalization, for example, adding new content or business logic and extending or overriding existing business logic. This paper covers only the personalization aspect of the OA Framework. Personalization that is created through the OA Framework will not require reimplementation during upgrades, which is a major advantage of this software application.
OAUG Connection Point® 2005 1 Copyright ©2005 by Daniel Benhur

Personalization in Self-Service Web Applications
There are different aspects of personalizations that system administrators, developers, and end users can perform. System administrators can create personalizations that will overwrite any other personalizations applicable to a specific function, localization, site, responsibility, or user. The end user can create personalizations to his/her UI interface pertaining to his or her specific needs. Personalizations that can be created through the OA Framework are shown in Table 1: Table 1 OA Framework Personalizations
Administrator Level Personalization • Number of rows displayed in a table • Product branding (image) • Region header icon • Hiding or showing items in a region • Layout order of regions and items within the boundaries of the parent region • Including or excluding descriptive flexfield segments • Rearranging data sorting • Filtering (restrict querying) tabular data • Item labels and region headers • Required state of non-mandatory items • Updating allowed state for updateable items • Totals for table columns, when applicable • Item cascading style sheet (CSS) personalizing the look and feel of an item • Default value for an item • Tips (in-line instructions and usage help) associated with items • Adding new items to an existing region. Typically, part of an extensibility project; new items are limited to a few styles • Controller class to override controller logic, if needed; typically part of an extensibility project User Level Personalization • Number of rows displayed in a table • Hiding or showing regions and items (results table columns are a typical example) • Changing the layout order of regions and items within the boundaries of the parent region (order of results table columns are a typical example) • Up to three sorting levels for tabulated data • Filtering (restrict querying) tabular data • Item labels and region headers • Totals for table columns, when applicable

Different Levels of Personalizations
Functional Level Functional level personalizations can be created to restrict a region on a page so that it is accessible and/or updateable to only certain functions. In this manner, personalizations will only be visible when a specific function is selected for that region. For example, if there is an updateable region that needs to be easily updated when accessed from

OAUG Connection Point® 2005

2

Copyright ©2005 by Daniel Benhur

Function A in the menu, but should be read only when accessed from Function B, functional personalization will provide for this. To accomplish this, a functional level personalization should be created that makes all fields read only for Function B. Only one set of personalizations per region per function can be created. ’’’ Localization Level For instances in which multiple localizations are installed, personalizations can be created specific to the individual localization. For example, if a company has implemented both US and Canada localization, and if the users in Canada should not see certain fields that the US users can see, this can be accomplished by creating localization level personalizations. Only one set of personalizations per region per localization can be created. Site Level The site refers to the OA installation where the Self-Service Application is implemented. Personalizations created at the site level will affect all users. For example, if the system administrator creates a personalization at the site level to display a company logo instead of the branding logo, all of the users who access the Self-Service Web Applications will see the company logo rather than the product branding logo. Organization Level An org can be an organization or a business unit. Depending on the context, an org can be a plant, warehouse, department, division within a company, or even an entire company. Personalizations that are created at the org level will affect all users in that organization. For example, instead of displaying the product branding logo at each SelfService Web Application page, each company (org) should have its company logo available at a specific site, then a personalization could be performed at the organization level for each individual organization so that the product branding logo can be replaced with the company logo. Responsibility Level A responsibility represents a specific level of authority within an application. Each responsibility allows the user to access specific functions or a set of module-specific forms, menus, reports, and data. The personalizations created at the responsibility level are effective only for the users of that responsibility. For example, the Open Requisitions page for the “EPS Administrator” responsibility can be personalized to display only open requisitions from a particular supplier, whereas the PO SuperUser can see all of the open requisitions waiting for his approval.

OAUG Connection Point® 2005

3

Copyright ©2005 by Daniel Benhur

Admin-Seeded User-Level System administrators can create personalizations that are available to all users, which allow the users to choose whether they want to use those personalizations. For example, the system administrator can create two personalized views of the Oracle Workflow Work list: one view to show open workflow notifications and the other view to show FYI notifications. The user will have access to both views. “Admin-seeded user-level” personalizations can only be created on tables (including hierarchy tables) in a Query region. These personalizations get seeded into each user’s Personal Table Views page, so that the user can choose which view to display. Although both the “Admin-seeded user-level” personalizations and site-level personalizations are propagated to all users, the two personalization levels are different. An “Admin-seeded user-level” personalization is actually saved as a personalized view that a user can choose to display from the Personal Table Views page, whereas a site-level personalization is a change that is made across the entire site which all users see automatically. Portlet Level The Oracle Portal provides users with corporate and customized personal home pages accessible via Web browsers. These home pages may contain corporate announcements, news headlines, and links to other Web-based services. Oracle Portal may also connect to other applications that share its user authorization with Oracle Portal. Oracle SelfService Web Applications is a partner application to Oracle Portal. Oracle Portal users may add links to their home pages to access Oracle Self-Service Web Applications modules, and may display some Applications information, such as Oracle Workflow notifications, directly on their home pages. These links are called portlets. Users can personalize these portlets similar to how they personalize the tables of a query region in an application. Any personalizations made at the portlet level affect only the portlet used to display the region. User Level End users can personalize only certain tables in query regions, and these personalizations will not affect any other user. For example, a user can personalize the Requisitions History page to display only requisitions prepared by him/her. Each user can save multiple sets of personalizations per page per region. A saved set of personalizations is also known as a personalized “view” and can be selected and applied from the “View Personalization” list.

OAUG Connection Point® 2005

4

Copyright ©2005 by Daniel Benhur

OA Framework Profile Options
There are two system profile options that will affect the behavior of the OA Personalization Framework in Version 5.7 (in Version 5.10, there are additional profile options available): • • Personalize Self-Service Defn Disable Self-Service Personal

Personalize Self-Service Defn This profile option should be set to Yes or No at the user level for an administrator, or at the responsibility level for the system administrator. When this profile option is set to Yes, the following occurs: • A global Personalize button appears on each Self-Service Web Application page. After choosing the personalize button on any page, the personalization UI prompts the user for the administrative level desired for the personalizations. The Personalize Region links appear for every personalizable region on each Self-Service Web Application page. When a Personalize Region link is selected, the personalization UI initially prompts the user for the desired administrative level, then takes the user directly to the page to be personalized.

Either the Personalize button or the Personalize Region links can be used to create personalizations. Disable Self-Service Personal (FND_DISABLE_OA_CUSTOMIZATIONS) This profile option can be set to Yes or No at the site or application level. If this system profile option is set to Yes, no created personalizations, regardless of the level at which they are created, will be applied. Only the original base definition of each Self-Service Web Application page will be displayed. This option can be helpful when logging a TAR related to OA Framework issues so that Oracle support can trouble-shoot the issue.

Advantages of OA Framework Personalizations
• • • Any user can create customizations to the UI to accommodate his or her needs. A list of user-level personalizations is provided in Table 1. Personalizations can be made read only, which prevents any other user from updating them. It provides the capability to limit the number of records displayed in a table in any UI.

OAUG Connection Point® 2005

5

Copyright ©2005 by Daniel Benhur

• • • •

When personalizing a table, the user can check ‘Show Total’ to turn on totaling for a specific item/column in a table, if it is applicable to the underlying data. The font and size of the text in the UI can be changed by including the appropriate Cascade Style sheet (CSS) name in the CSS class name field. Any customization made via the OA Framework is supported by Oracle (this is the most important advantage). Personalizations are not affected by upgrades.

Limitations of OA Framework Personalizations
• Even though personalizations can be created at various levels and regions in the Self-Service Applications, there are certain limitations to what can be personalized. For example, table heading styles are fixed and cannot be changed. Items marked as required cannot be changed to “Not Required” by checking the required check box. Adding a new item to a table is not supported.

• •

Even though there are some restrictions on the type and extent of the personalization, the capacity of the OA Framework is powerful and can accommodate many of the customization requirements without requiring technical staff to do these personalizations.

OA Framework Patch Details
This is the list of patches and the Metalink notes for the OA Framework version 5.7 and 5.10. Version OA 5.7 OA 5.10 Metalink Note 236618.1 268969.1 Patch 2771817 3262919

Conclusion
The OA Personalization Framework has many features that allow the end user to easily customize the view of UI pages specific to his or her needs. These customizations can be performed in the Self-Service Web pages by setting up personalization preferences in a similar fashion to those that are set for Internet preferences. No technical knowledge is required to create Self-Service Web Application UI customizations using the OA Framework. In addition, these customizations are supported by Oracle, and this is the only recommended means to customize Self-Service Web Application pages. Since this data is stored in the Meta data, it is not overwritten during an upgrade and will always be

OAUG Connection Point® 2005

6

Copyright ©2005 by Daniel Benhur

available. The different levels of personalization allow for greater security and flexibility when creating personalizations.

About the Author
Daniel Benhur works as a Software Analyst in Black & Veatch Solutions Group and has over 10 years of experience with Oracle Tools (Forms, Reports, Designer) and Database. Daniel Benhur has been working with Oracle Applications since 2000 and possesses an extensive technical knowledge of the financial and procurement modules; he also possesses moderate functional knowledge of these modules. Daniel Benhur has created personalizations in the iProcurement Self-Service Application; this experience led to the creation of this paper.

OAUG Connection Point® 2005

7

Copyright ©2005 by Daniel Benhur

Appendix
1. Personalization to enable the work list to display the notification in the Home Page:

2. After the Personalize Self-Service Defn profile option is enabled, Personalization tabs displayed at various regions:

OAUG Connection Point® 2005

8

Copyright ©2005 by Daniel Benhur

3. List of Columns in the Shopping Lists in iProcurement:

4. Option to choose the level of personalization.

OAUG Connection Point® 2005

9

Copyright ©2005 by Daniel Benhur

5. Column properties:

6. Sorting options and query filter options in the table:

OAUG Connection Point® 2005

10

Copyright ©2005 by Daniel Benhur

7. UOM Column removed from the Shopping Lists table:

8. Change the sorting by Price:

OAUG Connection Point® 2005

11

Copyright ©2005 by Daniel Benhur

9. Shopping Lists items sorted by Price:

10. Hiding the UOM Column from the table:

OAUG Connection Point® 2005

12

Copyright ©2005 by Daniel Benhur

11. UOM Column removed from the table:

12. Adding the UOM column to the Shopping List:

OAUG Connection Point® 2005

13

Copyright ©2005 by Daniel Benhur

13. UOM column added to the Shopping Lists table:

14. Renaming column title from UOM to Unit of Measure:

OAUG Connection Point® 2005

14

Copyright ©2005 by Daniel Benhur

15. Column title changed to Unit of Measure:

16. Adding a hyperlink to a Web site from a Self-Service Application page:

OAUG Connection Point® 2005

15

Copyright ©2005 by Daniel Benhur

17. Custom link name:

18. Linking to Company’s Intranet home page:

OAUG Connection Point® 2005

16

Copyright ©2005 by Daniel Benhur

19. Disabling a function from Self-Service Web Applications: Disabling the Standard Checkout and Express Checkout from the Shopping Lists page:

20. Lookups for Self-Service Web Applications:

OAUG Connection Point® 2005

17

Copyright ©2005 by Daniel Benhur

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.