Login
Register

Home

Trainings

Fusion Blog

EBS Blog

Authors

Contact Us

OA Framework - All Articles
  • Register

Oracle Gold Partners, our very popular training packages, training schedule is listed here
Designed by Five Star Rated Oracle Press Authors & Oracle ACE's.

webinar new Click here to raise Support Ticket. Get reply within 48 hours.

Search Courses

User Rating: 5 / 5

Star ActiveStar ActiveStar ActiveStar ActiveStar Active
 

This article explains the programmatic steps required to complete a simple OA Framework Screen that interacts with the database table via screen. Prior to reading this article, you must read OA Framework Simple Screen where the underlying design of this screen has been explained. This particular screen interacts with Database via Java Entity Objects.

Lets see the programmatic steps that are involved to implement the interaction between OA Framework Page and Database.

 

First step

As soon as the page loads, OA Framework will execute the processRequest Method against the controller of that page.

Here in this method, we wish to initialize the view object.

This step is just a copy paste from the "OA Framework Manual".

However, please note, this step is divided into two steps, because Controller must not directly interact with ViewObject.

a. From Controller [method processRequest], lets invoke a method that resides within ApplicationModule. 

import oracle.apps.fnd.framework.OAApplicationModule;

.

public class demoSimpleTableCO extends OAControllerImpl

.

public void processRequest(OAPageContext oapagecontext, OAWebBean oawebbean)

{

      super.processRequest(oapagecontext, oawebbean);

      //get the handle to AM Attached to our Simple Page Region MainRegionRN

      //The page is passed as parameter to this method, hence we can get handle

      //to the AM quite easily

      OAApplicationModule am = oapagecontext.getApplicationModule(oawebbean);

      am.invokeMethod("initializeSimpleVO4PageLoad");

}



b. Now, inside the AM Implementation, we need to handle the mehod call made from "Step a" above.

import oracle.jbo.Row;

import oracle.apps.fnd.framework.OAViewObject;

.

public class Demosimple01AMImpl extends OAApplicationModuleImpl

.

public void initializeSimpleVO4PageLoad()

  {

    //get a handle to the View Object that we wish to initialize

    OAViewObject vo = (OAViewObject)getXxOafDemoSimple01View1();

    if (!vo.isPreparedForExecution())

    {

      vo.executeQuery();

    }

    //Create a blank Row

    Row row = vo.createRow();

    //Attach that blank row to the VO. Data will be fed into this row, when the user types into the fields

    vo.insertRow(row);

    //Set the status of the blank row to initialized

   row.setNewRowState(Row.STATUS_INITIALIZED);

}





Second step

As soon as the button is clicked, OA Framework will execute a method named processRequest in the controller[ remember Controller is attached to page region.]

We need to perform a Commit from the controller when the button is clicked. But we are not supposed to call commit directly from the controller.

Hence we will invoke a method in AM, and within that method in AM "the COMMIT will actually take place".

 

a. From the processFormRequest in Controller, call a method that we will define in AM.

public class Demosimple01AMImpl extends OAApplicationModuleImpl

.

.

  public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)

  {

    super.processFormRequest(pageContext, webBean);

    OAApplicationModule am = pageContext.getApplicationModule(webBean) ;

    am.invokeMethod("saveDataToSimpleTable") ;

  }

 

b. Now, inside the AM Implementation, we need to handle the call made from "Step a" above.

public class Demosimple01AMImpl extends OAApplicationModuleImpl

.

.

public void saveDataToSimpleTable()

{

        getDBTransaction().commit();

}




Now, after having completed all the steps, lets do the testing.

a. Rebuild the project.

b. Run the page

 

c. Enter some data into the screen.



d. Test to confirm that data is being inserted & updated in the table.

 


Anil Passi

Comments   

0 #1 Alpa 2007-02-27 00:00
Hey Anil!!

Your blog rocks!! Just wanted to share something with ya… one blogger to another…
The re is this amazing site that I came across where u can make money by sharing information…c heck it out here’s the link www.myndnet dot com

The coolest part is…every time ur information gets sold u get paid for it!!
I signed it for it.. very cool stuff… u can also mail me at barot dot

Cheers!
Al pa
Quote
0 #2 Ashok 2007-04-21 00:00
Hi Anil,

Can you explain how to deploy a OA Framework page in Oracle Apps? Deployig covers AM,EO,VO also.

Regard s

Ashok G
Quote
0 #3 Anil Passi 2007-07-13 12:15
Hi Ashok

Please see this article written by Anjani
http://www.google.com/search?q=site:apps2fusion.com+deployment-of-the-oa-framework-tutorials

This shows the deployment steps

Thanks
A nil Passi
Quote
0 #4 James 2008-02-12 01:12
Hi Anil,

I am trying to create Key Flexfields in OA Framework page. I saw your posting and hope you will be able to help me resolve this issue. I had tried the steps outlined in the Declarative Implementation as mentioned in OA Framework Developers Guide (Metalink note 269138.1). I am getting following error.

The data that defines the flexfield on this field may be inconsistent. Inform your system administrator that the function: KeyFlexfieldDef initionFactory. getStructureNum ber could not find the structure definition for the flexfield specified by Application = SQLGL, Code = GL# and Structure number =

I wonder why the structure number is null? How can I pass structure number to OAKeyFlexBean?

Thanks,

James
Quote
0 #5 Norman 2008-06-05 00:19
Hi Anil
I want to know how do create scroll bar for a table style region. By default we get prev/next button with number of records specified in the property-pallet te. Is it possible to implement this using any other method. Please help me with this.

Keep up the good work of sharing the knowledge.

Tha nks,
Norman
Quote
0 #6 rolex watches imitation 2012-03-03 03:04
I would get back again when I have sufficient time– however I am taking your RSS feed so I can read your site from cell phone. Thanks.
Quote
0 #7 khushi 2012-08-08 04:43
hi,
i am new to oaf, can u plz tel me how to retriev data from table????/
Quote
0 #8 Thomasevart 2021-05-30 13:44
impotency remedies http://www.sanroquederiomiera.es/clonazepam.html free natural remedies curvapolar.com/ alpraes.html hoarseness home remedies
Quote
0 #9 RichardBug 2021-05-31 12:12
home acne remedies https://tntark.dk/xanaxdk.html bravado erectile dysfunction curvapolar.com/ alpraes.html menopause remedies
Quote
0 #10 RobertSnoke 2021-06-03 05:43
texas drug rehab https://finb4all.badminton.es/stiles.html herbal med eriktomica.pane l.uwe.ac.uk/sti lfr.html herbal escense
Quote
0 #11 NelsonExoli 2021-06-04 10:12
drug detox diet https://colorydiseno.co/trames.html natural remedies uti frankwoehrmann. de/tavor.html stress relief remedies
Quote
0 #12 Allantew 2021-06-06 00:31
drug screening facilities https://coursecraft.net/courses/z94dc/splash drug test mdma eriktomica.pane l.uwe.ac.uk/sti lfr.html whiskey cough remedy
Quote
0 #13 Terrypug 2021-06-07 02:05
multispecialty health care https://colorydiseno.co/trames.html herbal diabetes treatment frankwoehrmann. de/tavor.html remedies for diarreah
Quote
0 #14 Williampaics 2021-06-08 13:35
home remedies laryngitis https://adipex.asso-web.com/ old herbal remedies huidpunt.nl/clo nfr.html natural remedies congestion
Quote
0 #15 Robertsic 2021-06-09 23:17
neova herbal wash https://colorydiseno.co/trames.html rheumatism home remedies brueckenlauf.bb w-web.de/alprad e.html a health care
Quote

Add comment


Security code
Refresh

Search Trainings

Fully verifiable testimonials

Apps2Fusion - Event List

<<  Jun 2021  >>
 Mon  Tue  Wed  Thu  Fri  Sat  Sun 
   1  2  3  4  5  6
  7  8  910111213
14151617181920
21222324252627
282930    

Enquire For Training

Related Items

Fusion Training Packages

Get Email Updates


Powered by Google FeedBurner