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

Search Courses

The purpose of this article is twofold
1. To understand one of the limitations of OA Framework personalization, in case you wish to add new “Submit Button” to a page.
2. To explain, what exactly happens when a page in OA Framework gets Submitted

When working on OA Framework extensions, you may have a requirement to add a new Submit Button to the page. This type of extension necessitates the need to extend the controller.



Why can’t I add a Submit Button using personalization?
Simply because Oracle’s OA Framework doesn’t allow you to do so via personalization.

Not even in R12?
Indeed, not even in R12 [checked upto Rollup3]

 

But using personalization, I can see the option to add a button using personalization on my instance!
Using personalization, you can add normal buttons, but not Submit Buttons.


What is the difference between a normal button and a submit button?
A Submit Button posts the page to the application server. In other words, the data entered by the user into the fields/records is sent to the Application Server, where data can be validated as per business logic and DML’s can be performed [via say jdbc].
In layman’s language, when you click on Submit Button in OA Framework, following sequence of events happen

Steps executed in OA Framework when Button is clicked

Submit Button

Normal Button

Java controller class against the region is invoked

Yes

No

ProcesFormData in Controller is called. This method fetches/sucks the data from fields in the screens and populates the View Object Record Attributes in cache.

Yes

No

If View Object is based on Entity Object, then ViewObject Row cache is not updated. But instead Entity Object Row cache is updated

Yes

No

If Screen is based on a VO, and the VO is based on EO[s], then cache of EO is validated by execution of a method called validateEntity()

Yes

No

Finally, if no errors occur in previous steps, i.e. if no Unhandled exceptions were thrown, then processFormRequest is called, where button click can be trapped and you can decide between :-
a. next navigation
b. commit data
c. rollback data
d. change variables
e. miscellaneous as per requirements

Yes

No

 

Note the sentence above that is underlined.

Lets say your requirement is
User enters data into fields in OA Framework Page
     When button is clicked, the data must be validated
                If data validation succeeds, then send navigation to next page.
                If data validation fails, then do not navigate to next page [instead display error on same page]

Now, reverting back to underlined statement, if processFormData invokes validations, and if validations were to throw an unhandled exception, then processForRequest will not be called. Hence execution will never reach processFormRequest in case of validation failure. Given that we usually perform navigational actions within processFormRequest, navigation to the next page will hence be stopped.



If so, then what is the need for a plain Button?
A plain button has no interaction with the Application Server. It is simply used to invoke java script, for example opening another website etc.


How do we add a submit button programmatically?
We will cover this in the article following this one.


Anil Passi

Comments   

0 #1 Anant Nimbalkar 2008-01-16 14:13
As usual, gr8 stuff Anil. The kind of questions you put and the way you answer it, it makes it so damn easy to understand for any layman.
Quote
0 #2 Venkata Vaitla 2008-01-21 11:41
Hello Anil,

Its a nice site. Lots of useful information for apps technical persons. We have requirement from client in which we are calling XML publisher report (Concurrent program using RDF report as data source). The request is getting called from OA framework. Even the XML tags are getting generated , but the PDF output is not getting generated. Kindly suggest what may be the issue. The report is working from thick client(Applet). Both reports and OA framework page are customizations. Please let me know if more information is required.

Than ks

Prasanna
Quote

Add comment


Security code
Refresh

Search Trainings

Fully verifiable testimonials

Apps2Fusion - Event List

<<  Apr 2024  >>
 Mon  Tue  Wed  Thu  Fri  Sat  Sun 
  1  2  3  4  5  6  7
  8  91011121314
15161718192021
22232425262728
2930     

Enquire For Training

Fusion Training Packages

Get Email Updates


Powered by Google FeedBurner