OAF Class

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 8

Introduction

1) OAF

Earlier HTML pages, JTF, Selfservice pages, Started with JSP(performance).

Springlets, J2EE and the other all frameworks(Partially built in application).

 OAF are web based application. OAF pages can support to the Mobile applications

Oracle Applications Framework is the Oracle Applications development and deployment platform for
HTML-based business applications

OA Framework consists of a set of middle-tier runtime services and a design-time extension to Oracle10G
JDeveloper called Oracle Applications Extension (OA Extension).

2)Advantages of OAF

End User Productivity

Enterprise-Grade Performance and Scalability

Developer Productivity

Application Customizability

Open Standards

3)Necessary to USe OAF in Oracle apps


a) Integration
b) Security
c) Customizations

4) Diff b/w OAF and Forms

OAF Forms
1)OAF pages followed with MVC Architecture As 1) Forms followed only Client /server
well as Client /server Architecture Architecture
2)OAF pages are web application 2)Forms are not web application
3)OAF pages can interact mobile devices 3)Forms cannot interact mobile devices
4)OAF pages are light weight components 4)Forms are are light wiegh componenents
compare to OAF.
5)OAF pages are look and feel is good 5)N/A
6)OAF page start with Region->Items 6)Forms start with window->canvas->blocks-
>fields
7)OAF pages will be there in JAVA_TOP 7)FOrms will be there in AU_TOP
5) Diff b/w OAF and ADF.

OAF ADF
1)OAF Follows MVC Architecture 1)ADF follows MVC1 and MVC2 Architecture
2)OAF can integrate only Oracle EBS. 2)ADF can integrate any other ERPS
3)OAF Does not support Drag and Drop 3)ADF does support Drag and Drop Options
Option
4)OAF page can not see the lay out at design 4)ADF can see the lay out at design time
time

Prerequisites for LEARNING OAF:

You need to have an Oracle Apps 11i or higher environment to play around with.

Basic knowledge of java is needed. Rather I would say basic knowledge of OOP [Object Oriented
Programming] is needed. I mean just the concepts.

Understand MVC concept

Roles and responsibilities in OAF:

1)Development of OAF pages from scratch (Custom Modules)


2)Customization of OAF pages from existing custom application(only Custom Modules)
3)Personalization of OAF pages from existing standard OR CUSTOM oracle Pages(Standard module and custom
module)
(With out touching of oracle std code)
4)Extension of OAF pages from existing standard oracle Pages(only oracle Std pages)
(With touching of oracle std code)
5)Upgradation of OAF pages from LOWE VERSION of apps to higher version of apps(11i to R12)
MVC Architecture:
M V C

Model View Controller

Front End

Table,View,Synonym Etc(Entity Object EO) Http Get(ProcessRequest)


HttpPost(ProcessForm Request)
Queries (ViewObjec VO)
Primary and foreign key(Entity Association(AO))
All the joins from tables, ViewLinks(VL)
Packages,Proc,func,triggers,sequences, commit, rollback(OADB Transactions)

Empno 101

GO

EmpNO Ename Salary


MVC Architecture In Details:

1)OAF Follows J2ee Architecture , J2EE follows MVC Architecture Ultimately OAF also follows MVC
Achitecture.
2)MVC is clean design interface b/w model /view /Controller

OverView of Model:

1)Model will interact all the DB Objects and DB Transactions


2)Model will implement all the BC4J Components
BC4J: Represents the Directory Structure of All your Objects
3)BC4J Consist of 3 types
a) Entity Object and associations
b) ViewObjects and ViewLinks
c) Application Module

EntityObject:

1)Entity Object represents DB table,Views,Synonym and snap shots


2)All the EntitytObjects End with EO
EmployeeEO
3)Performing the DML operations on OAF page , must have to create an EntityObject
4)When you create an EntityoBject Framework will create one java file
EmployeeEOImpl.java

Two types of EntityObjects:

I. Java Based Entity Object -- Performing the DML Operations on Oracle Custom Tables , will go for Java
Based Entity Object
II. PL/SQL Based EntityObject -- Performing the DML Operations on Oracle Standard Tables , will go for
PL/SQL Based Entity Object

EnityAssociations:

1)Association is relationship b/w two two entityObejcts having one common column
2)to perfom DML operations on Master details data
3)All the EntityAssociation objects end with AO.
eX: DeptEmpAO
A)ON Delete Cascade
B)ON Update Keys
c)ON Update History Columns

ViewObjects and ViewLinks(VO and VL):

1)ViewObjects will be access all Sql Queries


2)All the ViewObjects end with VO
SuppliersVO
3)When you create the VO TWO JAVA FILES will be create.
SuppliersVOImpl.java (Single record Level Validation)
SuppliersVORowImpl.java(Multiple rows validation)
Example Heder and lines

Types of viewObjects:

a)Automatic VO -- Automatically Query stmt will generate


Automatic VOS are linking with EnityObjects (to perform the DML operations and as well as fetch)

b)ManualVO-- Manually write SQL Query


(to display the data on the page and search operations)

ViewLinks:

1)Relatship b/w two vos, having one common column


2)All the VIewLink Objects End with VL
DeptEmpVL
3)TO Display Master details data on the page through ViewLink.

ApplicationModule:

1)Interface b/w All the DB Objects with OAF page


(All the EO,VOS routed to the page via AM)
2)All the Application Module Objects End with AM
SupplierInfoAM
3)When you create an AM , one java file will create
SupplierInfoAMImpl.java

TWO Types of AM
1)Root Application Module : Attaching AM to the Root Region of the pagecalled as Root Application Module
Ex:Accessing VOS to all of the sub regions
2)Nested Application Module:
Attaching AM to the Sub Region of the pagecalled as Nested Application Module.
Ex:Accessing VOS to with specific to sub region.

OAF page Output process in Jdeveloper:


Jdeveloper

EmployeePG -> UIX -> Page will be rendered


a)Empno
c)Sal
b)ename
E)JOB

<Empno prmopt -emp no, size -40, -------- Empno -TextINPUT/>

OAF page Output Process in Oralce apps Server:

1)EmployeePG ->Move the file respective top :


2)Run the XML importer script for the page:
import D:\OAF\jdevhome\jdev\myprojects\vamshi\oracle\apps\po\department\webui\ EmployeePG.xml -
rootdir D:\OAF\jdevhome\jdev\myprojects -username apps -password apps -dbconnection
"(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=apps.ora.com)(PORT=1521)))(CONNECT_
DATA=(SERVICE_NAME=VIS)))"
MDS Table -
 JDR_PATHS --all the paths
 JDR_COMPONENETS
 JDR_ATTRIBUTES

Controller :

1)Controller Interacts Web browser activities.


2)Controller will taken care Http Get/Http Post
3)All the Controller Objects End with CO.
SupplierCO.java

In Controller we have 3 methods:

ProcessRequest -HttpGet -- on the page load display any default data will go for Process Request.
ProcessFormRequest-HttpPost -- after web page opens , perform any actions on the webpge will go for
Process Form Request
Ex: Button Press,Link Press,TabOuts
ProcessFormData-HttpGet/HttpPost -- optional Method in controller .

Two parameters in Controller:


1)OAPageContext (in built class which oracle already developed)
2)OAWebBean(in built class which oracle already developed)

public void abc()


{
}
public int abc()
{

}
public void ProcessRequest(OAPageConText opc, OAWebBean owb)
{
1)to get the Apps Context Values
opc.getUserName();
int vuid=opc.getUserId();
opc.getMessage("Message Name from AOL");
opc.getStructureCode("KFF Title");
opc.getFunctionId();
....
....
.....
....
2)to get the value from page
String vsname=null;
SupplierName
Dell
vsname=opc.getParemeter("SupplierName");
System.Out.PrintLn("Print suppliername"+vsname);

3) navigating to another page

Page 1 Page2

Next

opc.setforwrdurl("page2 path");

4)
page1 code
vsname=opc.getParemeter("SupplierName");
opc.putsessionvalue("abc", vsname);
page5 code
String ssname=pageContext.getSessionvalue("abc ");

OAWebBean:
OAWebBean Represents the Item Proeperties:
}
Onion Structure in OAF:

BC4J(Business Components for java) FileStructure:



AM AND VO -> BC4J
XXAAM.oracle.apps.po.xxname.server
[CLIENT NAME].Oracle.apps.[application short name].[component name].server

Entity Object(EO) -> BC4J


XXAAM.oracle.apps.po.xxname.schema.server

LOV ->BC4J
XXAAM.oracle.apps.po.xxname.LOV.server

Poplist ->BC4J
XXAAM.oracle.apps.po.xxname.poplist.server

Controller & Page
XXAAM.oracle.apps.po.xxname.webui

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy