23
Oracle Oracle Application Application Framework Framework Vamshi Vamshi krishna krishna

OAF Trainiing

Embed Size (px)

DESCRIPTION

A documentation on OAF training.

Citation preview

  • OracleApplication Framework

    Vamshi krishna

  • Topics:Introduction to OAFPre-requisites for learning OAFOAF ArchitectureJDeveloper tool & VersionsSteps to Develop/Customize of OAF pagesRegistration OAF pages in Oracle Applications11i.

  • Introduction to OAF

    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 Oracle9i JDeveloper called Oracle Applications Extension (OA Extension).

  • Introduction to OAF..(Contd..)End User Productivity Enterprise-Grade Performance and Scalability Developer Productivity Application Customizability Open Standards

  • Pre-requisites 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.

  • OAF Architecture

    Model View Controller ( MVC), its over view

  • OAF Architecture(Contd)

  • OAF Architecture(Contd)Overview of ModelThe Model is where the application implements its business logic The model component is implemented using the BC4J.BC4J Consists of three components Entity Object and Associations. View Object and View Link objects. Application Module. Entity Object and Associations : Entity Objects represents a database row in middle-tire. Database rows are represented as individual entities, in which attributes typically corresponds to columns in the corresponding table to automatically implement queries,inserts,updates and deletes. Entity objects can also be based on views, synonyms or snapshots. most entity objects that you create subclass that: oracle.apps.fnd.framework.server.OAEntityImpl; Associations are used to establish the relationship between the entity objects. When you create an entity object, framework will provide you a java class with the setter and getter methods corresponding to each column of the table to which you are entity object is based on.

  • OAF Architecture(Contd)View Objects view object accesses the result set of a sql statement. It can be either based on the entity object or on plain sql query. All view objects that you create subclass the Oracle.apps.fnd.framework.server.OAViewObjectImpl.Application Module A logical container that manages and provides access to related BC4J model objects. All application modules that you create subclass the Oracle.apps.fnd.framework.server.OAApplicationModuleImpl

  • OAF Architecture(Contd)The View : The OA Framework View is implemented using UI XML (UIX). UIX uses XML to describe the components and hierarchy that make up an application page. UIX also provides runtime capabilities to translate that metadata into HTML output so that it can be shown on a Browser or a mobile device. The metadata used to describe the UI is loaded into a database repository, called Meta Data Services (MDS), at deployment time and optionally at design time as well.The Controller: The Controller responds to user action and direct aplication flow. It provides the writing between the UIX web bean and the middle-tier.All the controllers that we create subclass the oracle.apps.fnd.framework.webui.OAControllerImpl. The controller will request from HTTP Get and Http Post.

  • OAF Architecture(Contd)Controller Methods Process Request Process Form Data Process Form RequestProcess Request: This phase is invoked upon a browser Get or redirect/forward. This is where custom code can call the application module to intialize and query the data. this phase may optionally construct or modify the web beans to create or alter the page structure and web bean properties.Process Form Data: This phase is invoked upon a browser post. During this phase the framework will automatically applies form changes back to the underlying view objects. Rarely custom code required in this phase. if exceptions are thrown during this phase, the process form request phase is skipped and the page is redisplayed.Process Form Request: This phase is invoked upon a browser post , assuming no exceptions were thrown during the process form data phase. This is were custom code can handle the submit events call the application module to process the event.

  • OAF Architecture(Contd)Framework passes two parameters OA PageContext and OAWebBeanUsage of OA PageContext:To get and set values of the fields, using oapagecontext.getparameter and oapagecontext.putparameter.For redirecting to the current page or anotherpage, for example to redirecting to current page itself use oapagecontext.forwardimmediatelyToCurrentpage. Or you may use oapagecontext.sendRedirect.Usage of OAWebBean: Remember that webbean represents the hierarchy/structure of components in the page.Hence using this parameter object, you can get a handle to any bean/component in that page hierarchy.once you have a handle to that bean(say field bean or button bean), you can then invoke methods like set Rendered etc to change the behaviour of page at runtime.some examples are 1. OA WebBean LastName=oawebbean.findindexedChildRecursive(personlastname); 2. OAStackLayoutBean oastack=oawebbean.findindexedChildRecursive(stackRegionName);

  • OAF Architecture(Contd)Onion Structure of OAF

  • BC4J File StructuresAM AND VO -> BC4J XXAAM.oracle.apps.po.xxname.serverEntity Object(EO) -> BC4J XXAAM.oracle.apps.po.xxname.schema.serverLOV ->BC4JXXAAM.oracle.apps.po.xxname.LOV.serverPoplist ->BC4JXXAAM.oracle.apps.po.xxname.poplist.serverController & PageXXAAM.oracle.apps.po.xxname.webui

  • JDeveloper tool & VersionsJdeveloper9i is tool to develop OAF pages as well as customizations.p4045639_11i_GENERIC download this patch from oracle metalink.We have three folders jdevbin,jdevdoc,jdevhome in that patch.Setting up jdeveloper into your workstation.

  • Development of OAF Pages.

    Creating Simple Page.Creating Hellow World Page.Some sample example Pages.

  • Development OAF Pages.(Contd..)Search Page Automatic Search. Manual Search.Creating LOV.Creating Dropdown list.

  • Development OAF Pages.(Contd..)Create PageHow to Use java Based EO.How to Use PL/SQL Based EO.

  • Development OAF Pages.(Contd..)Update Page How to use SPEL.

  • Development OAF Pages.(Contd..)Delete Page How to create Dialog box in OAF.

  • Development OAF Pages.(Contd..)How to call oracle Sql and PL/SQL in OAF Prepare Statement.Callable Statement.Calling Oracle APIS.

  • Register OAF Pages in Oracle Apps11iDeploying OAF Pages into ApplicationTransferring the related source code/files to the Oracle APPS environment.Importing the new directory structure/path of the page/form in the MDS repository.Registration of the page in the Oracle Apps environment

  • THANK YOU