Download as pdf or txt
Download as pdf or txt
You are on page 1of 30

Personalization and Extension for E-Business Suite using OA Framework

March 23, 2007


Zensar Technologies 2007

Vishnu Vadla Practice Manager EAS US

Southern California Regional OAUG

Topics
OA Framework Overview MVC Architecture Personalization and Extension Development Tips Case Study of Logitech Inc., Q&A

Zensar Technologies 2007

Southern California Regional OAUG

OA Framework - Overview
Oracle Applications Framework (OAF) is the Oracle Applications development and deployment platform for HTML-based business applications
UIs/Forms for iProcurement, iSupplier, iExpense etc

100% Java & XML based


OA Framework is J2EE based and features several industry standards such as XML, HTML, Java, JSP, SQL and Web Services

Oracle 9i JDeveloper For OA extension


Design-time extension to Oracle9i JDeveloper is called Oracle Applications Extension (OA Extension)
Zensar Technologies 2007 Southern California Regional OAUG

OA Framework - Overview
Advantages
Scalable Personalizable Extensible

..contd

Versions
First released in 11.5.7 Became extensible with 11.5.10, or patched 11.5.9

Zensar Technologies 2007

Southern California Regional OAUG

OA Framework Characteristics
Declarative and Rapid application development Consistent and Compelling UI Built-in durable Personalization Extensible UI and business logic J2EE based, Java and XML Based on MVC architecture

Zensar Technologies 2007

Southern California Regional OAUG

OA Framework Architecture
Client
Browser

Application Server
Listener

Data Server

Servlet Engine

BC4J UIX OA Extension (MDS) OA Controller

Metadata Repository

11i Data

Zensar Technologies 2007

Southern California Regional OAUG

Model View Controller


Model
Data
Controller

View
User Interface

Controller
Code
Model

View

MVC architecture is a component-based design pattern with interfaces between the Model, View, and Controller. Separates core business model functionality from the presentation and control logic that uses this functionality Allows multiple views to share the same enterprise data model
Zensar Technologies 2007 Southern California Regional OAUG

OAF and MVC


View Common UIX-based HTML components used throughout Applications Controller OA Controller responds to user actions, directs application flow

Vi ew

UIX

Co n

tro

lle

OA Controller

BC4J

Model Business logic encapsulated in Business Components for Java (BC4J) view objects and entity objects

Zensar Technologies 2007

od

el

Southern California Regional OAUG

View in OAF
OA Framework Design time Page Hierarchy UIX Bean Hierarchy UIX Renderers JSP/HTML OA Framework Runtime

Cache

Browser

Metadata

.XML

Zensar Technologies 2007

Southern California Regional OAUG

Model in OAF
BC4J OBJECTS
Entity Objects (EO) View Objects (VO) Application Module (AM)
.XML

UIX Bean Hierarchy

e Si d ie w V

DML Validations Defaulting

Application Module (AM)

Database Tables,Views PL/SQL

Zensar Technologies 2007

Southern California Regional OAUG

Controller in OAF
User takes an action Browser sends request to Controller

Controller

Apply 1. Controller delegates data processing to Model 2. Determines next page 3. Invokes View to present the next page to user
Zensar Technologies 2007

Metadata Workflow

Model View

Southern California Regional OAUG

OAF Page

Zensar Technologies 2007

Southern California Regional OAUG

Personalization & Extension


Personalization
Declaratively tailoring UI look-and-feel, layout or visibility of built-in content to suit a business need or a user preference
Change the prompt for a field and other text on a page Set whether a field or region is visible Reorder the fields or components on a page Restrict the data that a user can access etc.

Use the Personalization Framework

Extension
Extending the functionality of an application:
Adding new content or business logic Extending/overriding existing business logic

Use Oracle9i JDeveloper

Zensar Technologies 2007

Southern California Regional OAUG

Personalization
No development tool needed Personalizations are overlaid on top of base product metadata at runtime Durable Survive upgrades and patches Admin personalizations available on any component User personalizations on tables/inquiries Can implement personalizations on test system Personalization feedback is immediate Administrator can easily enable/disable personalizations
Zensar Technologies 2007

Personalization Personalization Definition Personalization Definition Definition

Base Product Page Definition

Southern California Regional OAUG

Personalization Levels
Admin Level Personalization
Single view at each level

Site, Organization, Responsibility

User Level Personalization


User Views
Several views per User

Each level overlays the levels below it, and all overlay the base page's XML metadata in MDS.

Personalization Personalization Definition Personalization Definition Definition

Base Product Page Definition

MDS
Zensar Technologies 2007 Southern California Regional OAUG

Personalization Profile Options


Personalize Self-Service Defn Disable Self-Service Personal FND: Personalization Region Link Enabled FND: Diagnostics

Refer to Metalink Note:275876.1 for exhaustive list of OAF Profile options

Zensar Technologies 2007

Southern California Regional OAUG

OAF New Responsibility


Functional Administrator
Sysadmin of Personalization Deploying Personalizations Import and Export Personalizations A Real Life saver when dealing with Personalizations

Zensar Technologies 2007

Southern California Regional OAUG

Extensibility
Extending & Creating Business Objects
New Page New Attribute Extend/Override defaults and validations New business logic

Extension is achieved using the BC4J components:


Entity Objects (EO) View Objects (VO) Application Modules (AM)

Zensar Technologies 2007

Southern California Regional OAUG

Onion Ring OA Framework applications layers


OA Framework applications can be abstracted into a series of concentric layers, like an onion. Each layer only knows about the layers below it. OA Controllers This encapsulation allows Application reuse at any of the layer Modules boundaries. View
Objects

dataflow up stack (pull) dataflow down stack (push)

Entity Objects

DB

Zensar Technologies 2007

Southern California Regional OAUG

Entity Object (EO)


Data interface, not Application interface Encapsulates business rules Each table can have at most one entity object EO instance is associated with a row from the database table Handles transactional details Automatically implements DML operations Resides in
<company>.oracle.apps.<cust_top>.xxx.schema.server pacakge

Zensar Technologies 2007

Southern California Regional OAUG

View Object (VO)


Application interface, not data interface Encapsulates database queries Provides access to EOs Two types
SQL based EO based

Resides in
<company>.oracle.apps.<cust_top>.xxx.server pacakge

Zensar Technologies 2007

Southern California Regional OAUG

Application Module (AM)


Application Module is container for VOs Establishes the transaction context for the related UI pages Every page must have a root application module
Oracle.apps.fnd.framework.server.OAApplicationModule

Resides in
<company>.oracle.apps.<cust_top>.xxx.server pacakge

Zensar Technologies 2007

Southern California Regional OAUG

Case Study of Logitech Inc.,


Development Tool used
Oracle 9i JDeveloper Version 9.0.3.5

Customizations
iSupplier Customization
PO Acknowledgement and Notification ASN Update to PO

Special Pricing Approval and Processes


New OAF Pages in association with Workflow Developed

Zensar Technologies 2007

Southern California Regional OAUG

iSupplier Customization - iSupplier PO Acknowledgement

Logitech - Case Study

Supplier Acknowledgment of PO

Supplier View of the Purchase Order

Zensar Technologies 2007

Southern California Regional OAUG

iSupplier Customization - iSupplier ASN Update to PO

ASNs are created through iSupplier


Automatically update the PO Shipment DFF for Shipment Date and Status Automatically Re-Calculate Promised Date, based on Actual Ship Date. Automatically reset the Promised Date to the previous value in the event of ASN Cancellation PO Shipment DFF updates should not cause a PO Revision. PO Shipment DFF updates should not require re-approval. PO Shipment DFF updates will be visible in iSupplier

Logitech - Case Study

Zensar Technologies 2007

Southern California Regional OAUG

Special Pricing
Business requirement
Logitech Inc - Case Study

Create special prices for selected customers and groups of customers. Flexibility to set promotional limits. Facility to choose Items for which the Special pricing is applied. Define the Date ranges for the Special Pricing.

Zensar Technologies 2007

Southern California Regional OAUG

Special Pricing

Logitech - Case Study

the Promo request will go through the approval Process. After approval process this will be applied as requested

Zensar Technologies 2007

Southern California Regional OAUG

Lessons Learned and Development Tips


Customization/Development Estimates FND: Diagonstics Functional Administrator Defects in Standard packages (raise tar) Concurrent program for bouncing the apache server Use JDeveloper BC4J wizards to extend and create new Business Objects Always extend the object, never start with a copy of an object . Use the substitution mechanism to let OA Framework start using the extended version of the object Use About this Page link to get all the information related to the page
Get page name and location Version numbers BC4J object names, etc.

Please refer to chapter 8 of OAF Developer guide for Coding Standards

Zensar Technologies 2007

Southern California Regional OAUG

Q&A

Zensar Technologies 2007

Southern California Regional OAUG

Thank You
Vishnu Vadla Practice Manager - Oracle vishnu@usa.zensar.com

Zensar Technologies 2007

Southern California Regional OAUG

You might also like