Application Module Extension in OAF
Transcript of Application Module Extension in OAF
![Page 1: Application Module Extension in OAF](https://reader031.fdocuments.in/reader031/viewer/2022021312/577cc6d51a28aba7119f3da3/html5/thumbnails/1.jpg)
8/12/2019 Application Module Extension in OAF
http://slidepdf.com/reader/full/application-module-extension-in-oaf 1/5
Application Module Extension in OAF
Like the Controller extension, AM extension is also not supported by Oracle. However for somebusiness needs we have to extend it sometimes.
Root AM Can’t be extended where as we can extend Nested AM’s only.
This AM can be found under below BC4J packagemahi.oracle.apps.fnd.Employee.server.CreateEmployeeAM
Why we are extending AM:-
This CreateEmployeeAM contains an apply method which subsequently commits thetransaction.
public void apply(){
getTransaction().commit();}
Our business need is to capture user name and user id at runtime and insert it into a customaudit table for audit purpose
Here is Audit Table script --
CREATE TABLE test_tab1( -- -------------------
-- Data Columns
-- --------------------user_id VARCHAR(50),user_name VARCHAR(50),-- --------------------- Who Columns-- -------------------last_update_date DATE NOT NULL,last_updated_by NUMBER NOT NULL,creation_date DATE NOT NULL,created_by NUMBER NOT NULL,last_update_login NUMBER
);
Steps to Extend Application Module (AM)
1. Create a New Application Module (AM)
Right Click on Employee(is nothinh but your .jpr name in jdeveloper) > New > ADF BusinessComponents > Application Module
![Page 2: Application Module Extension in OAF](https://reader031.fdocuments.in/reader031/viewer/2022021312/577cc6d51a28aba7119f3da3/html5/thumbnails/2.jpg)
8/12/2019 Application Module Extension in OAF
http://slidepdf.com/reader/full/application-module-extension-in-oaf 2/5
Package -- mahi.oracle.apps.fnd.Employee.server
Name -- ExtnCreateEmployeeAM
Extends -- mahi.oracle.apps.fnd.Employee.server.CreateEmployeeAM
Click Next NextNext
Select the Generate Java File(s) Check Box
Click Finish.
Write following code in ExtnCreateEmployeeAMImpl.java
import oracle.apps.fnd.framework.OAException;import java.sql.PreparedStatement;import java.sql.Connection;
public class ExtnCreateEmployeeAMImpl extends CreateEmployeeAMImpl{....
public void apply(){ java.sql.Date d = getOADBTransaction().getCurrentDBDate().dateValue();try{Connection conn = getOADBTransaction().getJdbcConnection();String Query = "insert into test_tab1 values(:1,:2,:3,:4,:5,:6,:7)";PreparedStatement stmt = conn.prepareStatement(Query);
stmt.setInt(1, getOADBTransaction().getUserId());stmt.setString(2, getOADBTransaction().getUserName());stmt.setDate(3, d);stmt.setInt(4, getOADBTransaction().getUserId());stmt.setDate(5, d);stmt.setInt(6, getOADBTransaction().getUserId());stmt.setInt(7, getOADBTransaction().getUserId());stmt.execute();}
catch(Exception exception){throw new OAException("Error in Staffing Query"+exception, OAException.ERROR);}
super.apply();}}
![Page 3: Application Module Extension in OAF](https://reader031.fdocuments.in/reader031/viewer/2022021312/577cc6d51a28aba7119f3da3/html5/thumbnails/3.jpg)
8/12/2019 Application Module Extension in OAF
http://slidepdf.com/reader/full/application-module-extension-in-oaf 3/5
2. Perform AM Substitution
Double Click on Employee.jpx
Business Components Substitutions
Left Side : Base AM. i.e. CreateEmployeeAM
Right Side : Custom AM. i.e. ExtnCreateEmployeeAM
Click on Add
3. After substitution it will modify *.jpx
In our case it will modify Employee.jpx at project location
i.e. -- D:\xxxx\jdevhome\jdev\myclasses
4. Migrate/ Import the modified jpx
Open Command Prompt and go to following location of your projectD:\xxxx\jdevbin\oaext\bin
Use this Import Command to import jpx
Jpximport.bat D:\xxxx\jdevhome\jdev\myclasses\Employee.jpx -username apps -password
guptag123 -dbconnection
"(DESCRIPTION=(LOAD_BALANCE=YES)(FAILOVER=YES)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(H
OST=test.mahi.com)(PORT=1586)))(CONNECT_DATA=(SID= DEV2)))"
Once you Run the above command you will get a path for your Extension(Copy this path. Itwill be used to delete this extension if any error occurs)
5. Congratulation you have successfully finished. Run Your CreateEmployeePG page andTest Your Work
![Page 4: Application Module Extension in OAF](https://reader031.fdocuments.in/reader031/viewer/2022021312/577cc6d51a28aba7119f3da3/html5/thumbnails/4.jpg)
8/12/2019 Application Module Extension in OAF
http://slidepdf.com/reader/full/application-module-extension-in-oaf 4/5
![Page 5: Application Module Extension in OAF](https://reader031.fdocuments.in/reader031/viewer/2022021312/577cc6d51a28aba7119f3da3/html5/thumbnails/5.jpg)
8/12/2019 Application Module Extension in OAF
http://slidepdf.com/reader/full/application-module-extension-in-oaf 5/5