General Concept on the OA Framework
Oracle Applications Framework (OA Framework) is the Oracle Applications development and deployment platform for HTML-based business applications.
OA Framework is based on the industry-standard J2EE MVC design pattern.
MVC Stands for Model View Controller
Model: - The Model is where the application implements its business logic. All the BC4J components
in OAF comes under Model like AM (Application Module), VO (View Object), EO (Entity
Object), VL (View Link) & AO (Association Object).
View: - The View is where the application implements its user interface, View means the UI (user
Interface) that is visible to users
Controller: -The controller is where the application handles user interaction and direct business flow
Controller is a simple java class file that contain method for initial page
Request and post back request
Onion Architecture :--
BC4J : Business Components for JavaBC4J is a set of java libraries that consists SQL database concepts like views, tables and transactions into the Java via View Objects (VOs), Entity Objects (EOs), and Application Modules (AMs).
All BC4J components are found under $JAVA_TOP example
Application Module, View Object, and View Link, PVO found under:-
$JAVA_TOP/oracle/apps/pa/project/server
Controller found under:- $JAVA_TOP/oracle/apps/pa/project/webui
Entity Object, Validation View Object, Validation Application Module found under:-
$JAVA_TOP/oracle/apps/pa/project/scheme/server
Entity Objects (EO):- An Entity Object is a java representation of a table; each column of the table is
mapped to an "Entity Attribute".
When we handle data through a page - INSERT / UPDATE / DELETE - we do this
When we handle data through a page - INSERT / UPDATE / DELETE - we do this
by using an Entity Object.
EO- oracle.apps.<appShortName>.<yourname>.schema.server
oracle.apps.ak.amit.schema.server
Naming Convention: Should be ended with EO
View Objects (VO):- In a simple term, a BC4J objects encapsulate a database query and provide access
to view rows in its result set
VO-- oracle.apps.<appShortName>.<yourname>.<ModuleName>.server
Naming Convention: Should be ended with VO
Application Module (AM):- A application module is a container for related BC4J components. AM is
connected to Database and is responsible for commit and Rollback
Transactions
AM:- oracle.apps.<appShortName>.<yourname>.<ModuleName>.server
Naming Convention: Should be ended with AM
Association Object - BC4J association objects implement the relationships between entity objects. For
Example, a purchase order header can reference a supplier, or it can own its order
Lines. AO- oracle.apps.<appShortName>.<yourname>.schema.server
Naming Convention: Should be ended with AO
Controller (CO):- The controller is the java code in charge of loading a page when we call it. It is also in
charge of handling an event on a page, like a click on a button, or the call of a List Of
Values. It has three Methods
1. ProcessRequest
2. ProcessFormData
3. ProcessFormRequest
CO oracle.apps.<appShortName>.<yourname>.<ModuleName>.webui
Naming Convention: Should be ended with CO
Validation View Object(VVO) - A view object created exclusively for the purpose of performing light-
weight SQL validation on behalf of entity objects or their experts.
Naming Convention: Should be ended with VVO
Naming Convention: Should be ended with VVO
Validation Application Module(VAM) - An application module created exclusively for the purpose of
grouping and providing transaction context to related validation
view objects. Typically, a standalone entity object or the top-
level entity object in a composition would have an associated
validation application module.
Naming Convention: Should be ended with VAM
Naming Convention: Should be ended with VAM
Property View Object(PVO):To Enable PPR (Partial Page Rendering in your application, you should
include PVO including transient attribute for tracking the state of the
Property.This View Objects ultimately include only a single row which you
Will initialize and update as user interact with the page
IMP:Should be create in the same package as your page’s AM.you
should have only one PVO per application but it can include multiple
attributes
Root Application Module (RM)- Each pageLayout region in an OA Framework application is associated
with a "root" application module which groups related services and
establishes the transaction context.
This transaction context can be shared by multiple pages if they all reference the same root application module, and instruct the framework to retain this application module (not return it to the pool) when navigating from page to page within the transaction task.View Link(VL) - Establishes a master/detail relationship between two view objectsEntity Expert (EE)- A special singleton class registered with an entity object (EO) that performs
This transaction context can be shared by multiple pages if they all reference the same root application module, and instruct the framework to retain this application module (not return it to the pool) when navigating from page to page within the transaction task.View Link(VL) - Establishes a master/detail relationship between two view objectsEntity Expert (EE)- A special singleton class registered with an entity object (EO) that performs
operations on behalf of the EO.Attribute Set - Bundles of region or item properties that can be reused either as is or with modifications. For example, all buttons sharing the same attribute set would have the same label and Alt text
MDS - The declarative metadata repository used with 11.5.10+ OA Framework applications. This replaced
the older AK Repository.Page- The first component is the page; a page is a set of regions (header, footer, table…), and each region
contain items (field, button, checkbox...), or other regions.Pages are XML files found under
$APPL_TOP/MDS folder example:-$appl_top/pa/11.5.0/mds/project/webui/MyProjectsPG.xml
Naming Convention: Should be ended with PG
Important Profiles in OAF
FND_Diagnostics: Setting this Profile option to Yes will enable the Diagnostics global button to be
rendered on the screen.Pressing this button will enable the user for the logged message
Personalization Level:- Personalization can be enabled at site ,function, responsibility and user
level(Top).Personalization at lower level override at personalization at higher
level
1) FND: Personalization Region Link Enabled :
Valid values: Yes - renders the "Personalize Region" links above each region in a page. Each link takes you first to
the Choose Personalization Context page, then to the Page Hierarchy Personalization page with focus on the region
node from which you selected the "Personalize Region" link.
2)Personalize Self-Service Defn – Set this profile to Yes to allow personalizations.
3)Disable Self-Service Personalization - Yes will disable all personalizations at any level.
4)FND: Personalization Document Root Path (new in 11.5.10) - Set this profile option to a tmp directory
2)Personalize Self-Service Defn – Set this profile to Yes to allow personalizations.
3)Disable Self-Service Personalization - Yes will disable all personalizations at any level.
4)FND: Personalization Document Root Path (new in 11.5.10) - Set this profile option to a tmp directory
with open (777) permissions for migrating personalization’s between instances



No comments:
Post a Comment