Monday, November 21, 2011

OA Framework Personalization and Extensions

An OA Framework requirement in Oracle Applications comes in 3 ways:
· Personalization of OA Framework pages
· Customization via personalization of OA Framework pages
· Development of new OAF Page and integrate with the application
First we need to identify whether the requirement is personalization/ customization/ new development.
Pre-Requisites:· Access to following responsibilities:
· Functional Administrator
· System Administrator
· OA Framework Toolbox Tutorial
· OA Framework Toolbox Tutorial Labs
· <Any other responsibility> on which OAF pages needs to be deployed.
· Database access to Apps schema
· Access to custom_top/java_top of UNIX box with 777 privilege to deploy the new applications
ex: (/u01/app/visappl/fnd/11.5.0/)
· Get .dbc file from UNIX box (application server) from '$FND_TOP\secure\'folder

· Following profiles options to be set at user level o Personalize Self-Service Defn Yes (To get Personalize link for OAF Pages)
o FND: Diagnostics Yes (To get 'About This Page' link to get page details)

· Get the responsibility key and application short name for the responsibility to which you are developing OAF page using following query and make sure that responsibility is added to the Application front end user.

o SELECT r.responsibility_key,fa.APPLICATION_SHORT_NAME
fnd_responsibility r,
fnd_application fa

JDeveloper Setup for OA Framework:· Find the correct version of JDeveloper to use with eBusiness Suite 11i or Release 12.x [ID 416708.1]
· Extract the JDeveloper into your local machine ex:<<Drive:\JDeveloper\jdevhome\jdev>>
· Setup JDev user home environment variable:
· Copy the path of <<Drive:\JDeveloper\jdevhome\jdev>>
· Right click My Computer --> Properties --> Advanced Tab --> Click on'Environment Variables' button at the bottom
o In the user variables section, click on new button, input following details:
o Variable Name: JDEV_USER_HOME
o Variable Value: Paste the path of <<Drive:\JDeveloper\jdevhome\jdev>>
o Click on Ok, Ok, Ok.
o Above steps are for the Jdeveloper9i and for some 10g versions.
o For latest 10g and 11g JDeveloper versions, you can map the JDev user home to your own  folder/path so that your source code can be isolated from Jdeveloper setup.
· Place the .dbc file extracted from UNIX box into <<Drive:\JDeveloper\jdevhome\jdev\dbc_files\secure>>
· Create a shortcut on desktop for jdevw.exe from the folder <<Drive:\JDeveloper\jdevbin\jdev\bin\>>
· Run the JDeveloper by clicking on jdevw.exe shortcut on the desktop.
o In JDeveloper Click on File--> Open Open the file <<Drive:\JDeveloper\jdevhome\jdev\myprojects\>>toolbox.jws
o Right click the Tutorial.jpr and set its project settings as follows:
o Under Common--> Oracle Applications --> Runtime Connection
o Select the .dbc file using browse button from the path <<Drive:\JDeveloper\jdevhome\jdev\dbc_files\secure>>
o Input application front end username/password
o Input application short name and responsibility key
o Make sure that respective responsibility is added to the Application front end user
o And then OK
o Rebuild the Tutorial.jpx and Run test_fwktutorial.jsp
· If the page runs without error, the JDeveloper setup is configured correctly.

Make sure other links are also working fine from test_fwktutorial.jsp file.

Development and Deployment of OAF application1. Develop the OAF application
2. Move the application to respective path ($JAVA_TOP) of Application Server thru FTP in Default Mode
3. Move only .class files in binary mode again.
4. Run command prompt, change to the directory DIRECTORYNAME:\JDeveloper\jdevbin\jdev\bin
5. Run following command for all UI OA objects like Page, Region, (.xml) ...
import PAGEPATHWITHFILENAMEWITHEXTN -username DBUSERNAME -password DBPASSWORD - rootdir CLASSPATHOFTHEPROJECT -dbconnection "(description = (address_list = (address = (protocol = tcp)(host = DBHOSTNAME)(port = DBPORT)))(connect_data = (sid = DBSID)))"
6. After getting successful message of importing,Access the respective page or region using following URL: http://HOSTNAME:PORT/OA_HTML/OA.jsp?page=MDSFILEPATH Or else you can register the OAF page call as FND function as follows and call it as mentioned below.
7. Registering FND function for calling OAF page:
8. Login into Application using Application Developer or Sys Administrator Navigate to Application Front End. System Administrator/Application Developer.
Application--> Function
Input Function, Function name, Description
Click on properties tab
Select type as SSWA jsp function
Click on Web HTML
Input following text in HTML Call
Save the page.
9. To test whether the OAF page is registered in MDS repository, execute
following script at sql prompt.
set serveroutput on;
exec jdr_utils.printDocument('MDSPAGEPATH');
10. Add this function name to the menu of any OAF responsibility from which
you want to call the OAF page.
Or you can directly access it as
Substitutions and Customizations· Get the AM/VO that needs to be customized to your local machine.
· Get the .class files from Application server
· Get .xml files using jdr_utils.exportdocuments / from Functional Administrator Responsibility.
· Create a project with the fetched files
· Automatically .jpx file gets created for the project
· Extend the existing AM/VO fulfilling the requirement
· Right click it navigate to substitutions
· Map the existing AM/VO to the extended and click on Add button
· Run the following script to import the substitutions to MDS server
DBUSERNAME -password DBPASSWORD -dbconnection "(description =
(address_list = (address = (protocol = tcp)(host = DBHOSTNAME)(port =
DBPORTNUMBER)))(connect_data = (sid = DBSID)))"
Controller Extensions:· Create a new Controller extending the existing controller
· Upload the class file to server
· Open the OAF page for which the controller to be customized
· Click on personalize page
· Click on expand all
· Identify the root region for which Controller file is mapped
· Click on personalize link
· At site level add path of the customized controller file
· Click on apply

No comments:

Post a Comment

Best Blogger TipsGet Flower Effect