Oracle EBS R12.2.6 EXTENDING VIEW OBJECT IN OAF FRAMEWORK

EXTENDING VIEW OBJECT IN OAF  FRAMEWORK

View Objects are quires that bring data seen in EBS web pages, a lot of attributes offered by oracle in each view object, but sometimes you need to show additional attributes. In this case oracle let developer to show these attribute by extending View Objects.  The following are steps used to extend View Objects:
Before Starting you should set the following profile options on user level:
Profile NameProfile Value
FND: DiagnosticsYes
Personalize Self-Service DefnYes
FND: Personalization Region Link EnabledYes
Disable Self-Service PersonalNo

Step 1:

  1. Navigate to the page you want to extend the View Object.
  2. Focus on the region you want to extend.
  3. Click on about this page and get VO name and path associated to this region.

Step 2:

Let consider that we want to add voucher number to the notification arrived to the approver.
region_of_extended_view_object
We want to add voucher number in invoice approval notification page, by adding new column to the region view object.
Note down the below details:
VO Name: NotifPGAcctSumVO
VO Pathoracle.apps.ap.invoice.request.negotiation.server.NotifPGAcctSumVO(View Object path can be found in Business components section in about page)

Step 3:

  1. Get NotifPGAcctSumVO.class and NotifPGAcctSumVOIMPL.class from server ($JAVA_TOP) download them under the same path in jdeveloper(in our example: oracle/apps/ap/invoice/request/negotiation/server/).
  2. Build the same directory under VOExtension file in jdeveloper(in our example: jdeveloper\jdevhome\jdev\myprojects\VOExtension\oracle\apps\ap\invoice\request\negotiation\server)
  3. Convert NotifPGAcctSumVOIMPL.class to java file.
  4. Build new view object under (VOExtension \oracle\apps\ap\invoice\request\negotiation\server), extend the original View Object that is already downloaded from server.
create_new_vo
5. Add the modified query of the original view object to the newly created view object.
Note: Make sure to use different binding names for bind variable to get ride JBO-27122: sql error
vo_query
6. Substitute the original View Object with the newly created View Object.
project_properties.png
Substitute_VO.png

Step 4:

Move the newly created folder:
From: D:\jdeveloper\jdevhome\jdev\myclasses\
TO: $JAVA_TOP

Step 5:

Use java import utility so that substitution take effect by using the following command:
jpximport.bat D:\jdeveloper\jdevhome\jdev\myprojects\VOExtension.jpx -username user -password pss –dbconnection “(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=port))(CONNECT_DATA=(SID=sid)))”

Step 6:

Bounce the Apache Web Server using the following commands:
admanagedsrvctl.sh stop oacore_server1
admanagedsrvctl.sh start oacore_server1

Step 7:

Go to the front end go to the page which you want to extend.
Click on about this page. Expand all in business components check whether the extended VO is reflecting or not.

Step 8:

  1. Add a new item of column type for the newly added filed.
  2. Add a new item for displaying the information. Provide the required information.
  3. Create one item for column header.
  4. Apply then back to application to make sure that the column has been added.
Reference: https://jehadmzahimblog.wordpress.com/

2 comments:

  1. hi, you said that :Convert NotifPGAcctSumVOIMPL.class to java file.
    Which use you java Decompiler for class to java file?
    I use jad for 1.7.65
    I want to extend ReqLinesNotificationsVO

    Must I do it convert class file to java?

    ReplyDelete
  2. Thanks a lot for sharing this tuto

    ReplyDelete

2015@Bahaa Barghouti. Powered by Blogger.