Professional Documents
Culture Documents
INSERT
DEVELOP SEARCH PAGE Name As: XxcustomerSearch Page
Step1
1) Create Page (.jws,.jpr,bc4j,Am,Page,Attacht Am to Page) (window title, Title)
2) Rt click on Main RN---- New RN StyleMsgCompnent, properties: Row 1,
Coloum 3
Rt click Msg Compent RNCreate 3 Items
Item1 - id &prompt: Party Name,
Item2 - id &prompt: Division,
Item3 - id &prompt: Contract Number,
3) Rt click MainRN NewRN Style ---RowlayoutRN
If you want Deleting the Customer Information from Data Base permanently
use the Code
(We can modify in same XxcustomerSearchVO)
a. Expand...Schema Server Send to xxcustomer_rebate_header (Its created for
HeaderEO)
b. Select Attribute and Suffield like
-- Party_Name (xxcustomer_rebate_headerEO:Party_Name)
-- Division (xxcustomer_rebate_headerEO: Division)
-- Contract _Number (xxcustomer_rebate_headerEO: Contract _Number)
-- Headerid (xxcustomer_rebate_headerEO: Headerid)
c. Select Query
Select xxcustomer_rebate_headerEO. Party _Name,
xxcustomer_rebate_headerEO. Division
xxcustomer_rebate_headerEO. Contract _Number
xxcustomer_rebate_headerEO. Headerid
From xxcustomer_rebate_header xxcustomer_rebate_headerEO
Where xxcustomer_rebate_headerEO.Party _Name like nvl(:1,
xxcustomer_rebate_headerEO. Party
_Name)
xxcustomer_rebate_headerEO.Division like nvl(:1,
xxcustomer_rebate_headerEO. Division)
xxcustomer_rebate_headerEO. Contract _Number like nvl(:1,
xxcustomer_rebate_headerEO. Contract
_Number)
contractno=pc.getParameter("ContractNumber");
vo.setWhereClauseParam(2,contractno);
flag=3;
}
else
{
vo.setWhereClauseParam(2,null);
}
System.out.println("print flag value"+flag);
return flag;
}
Step-4
Create Controller for XxcustomerSearchPage
Rt Click On Main RN Set New Controller Name As: XXcustomerSearchCO
We have to import one statement
xxdel.oracle.apps.po.xxcustomer_rebate_project.server.Xxcustomer_Rebate_proje
ctAMImpl;
Write this code After Process Form Request
XXSunCustomerRebatesAMImpl am=(XXSunCustomerRebatesAMImpl)
pageContext.getApplicationModule(webBean);
if(pageContext.getParameter("Go")!=null)
{
am.searchparams(pageContext,webBean);
am.getXXSunCustomerSearchVO().executeQuery();
}
StepIf we Want to Create LOVs, Drop Down Lists, Entity Objects - Should
Create BC4J
Under .jpr
1) Rt click on .jpr---New Business Componen
t ---Bc4j..poplist.server
a. Rt Click On poplist.Server New View Object Name As: DivisionVO
---NextNex
b. Select Query Select 'IT' division from dua
Unio
Select 'Accounting' division from dua
Unio
Select 'Finance' division from dual -----Next---Finis
c. Attach VO to A
1.
Select XxcustomerCreatePage
For Header
2) Rt click on Main RN New RN-StyleTable Layout
Rt click on Table Layout RNNew Row Layout
Rt click on Row Lay out RNNewCell Format
Rt click on Cell Format RNNewRegion Using Wizard
Select HeaderVONextRegion Style: Default Double ColumnNext
As per our Requirement Choose the Columns.
Step-5 Contn..
Select XxcustomerCreatePage in Region4 (Default Double Column)
Under Region4 Select the Item: Party Name Change Style As: Message lovinput
Under Party Name 1 Region will be created
RT click on RegionNewtable using wizardSelect CustomerNameLOVVO
Next
NextSend the Customer Name Next---Finish
In Customer Name Properties Mapping
Lov Region item: Customer Name
Return item
: Party Name
Criteria item
: Party Name
Follow the Same Steps for BilltoLocation
For Lines
5) Rt click Main RN New RN Style: Advance Table View Instant: Select Line
VO
Rt click on Advance Table RNNewColumn
Rt click on ColumnNewItem
properties: View Attribute
Rt click on Column HeaderNew---Sort able Header Create Prompt
(Create more Columns, Items & Column Headers for Rest of Things)
Cont
StepIn OAF call one Page to another Page Use this Parameters
import oracle.jbo.domain.Number;
public void customerheader()
{
Xxcustomer_Rebate_hdrVO Impl vo=get Xxcustomer_Rebate_hdrVO ();
OADBTransaction tr=getOADBTransaction();
if(!vo.isPreparedForExecution())
{
vo.executeQuery();
}
Row row=vo.createRow();
vo.insertRow(row);
Number ctno=tr.getSequenceValue("xxcustomer_rebate_seq");
vo.getCurrentRow().setAttribute("ContractNumber", ctno);
String hid=tr.getSequenceValue("xxcustomer_rebate_header_seq").toString();
vo.getCurrentRow().setAttribute("HeaderId", hid);
}
Step-11
Create Controller for Create Page Name As: XxcustomerCreateCO
To Generate Sequence for Header
Uder this call the header method from AMImpl
Import one statement
import xxdel.oracle.apps.po.xxcustomer_rebate_project.server.
Xxcustomer_Rebate_projectAMImpl;
Write the Code in Process Request
Xxcustomer_Rebate_projectAMImpl
am=(Xxcustomer_Rebate_projectAMImpl)pageContext.getApplicationModule(we
bBean);
am.customerheader();
Step-12
Create Add Button for Lines
Select Create Page In Advance Table RNNewFooter
Rt click on FooterNewAdtableRow
Properties: Add Rows Lable: Add Another Row
Rows to Add: 1
Insert Rows Automatically: False
Step-13
To Create Sequence for Lines, Write the Code in AMIpmL.Java
public void customerline()
{
Xxcustomer_Rebate_lineVO Impl vo= get Xxcustomer_Rebate_lineVO ();
Xxcustomer_Rebate_hdrVO Impl vo1=get Xxcustomer_Rebate_hdrVO ();
OADBTransaction tr=getOADBTransaction();
vo.setMaxFetchSize(0);
Row row=vo.createRow();
vo.insertRow(row);
Number lineid=tr.getSequenceValue("xxcustomer_rebate_line_seq");
vo.getCurrentRow().setAttribute("LineId",lineid);
String headerid=vo1.getCurrentRow().getAttribute("HeaderId").toString();
vo.getCurrentRow().setAttribute("HeaderId",headerid);
}
Step-15
In XxcustomerCreatePage after Enter the Customer Information we have to
save
Open XxcustomerCreateCO Write the code After Process Form Request
Xxcustomer_Rebate_projectAMImpl
am=(Xxcustomer_Rebate_projectAMImpl)pageContext.getApplicationModule(we
bBean);
if(pageContext.getParameter("Save")!=null)
{
am.getOADBTransaction().commit();
throw new OAException ("record saved
successfully",OAException.CONFIRMATION);
}
Step-14
Code for Add Button & Generate Sequence for Lines
Write the Code in XxcustomerCreateCO
After Process Form Request
if(ADD_ROWS_EVENT.equals(pageContext.getParameter(EVENT_PARAM)))
{
am.customerline ();
}
Step-16
Link B/W XxcustomerCreatePage to XxcustomerSearchPage
Write the code In XxcustomerCreateCO
Import one statemet
import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
After Form Request
if(pageContext.getParameter("GoTOSearch")!=null)
{
pageContext.setForwardURL("OA.jsp?
Update
Step-18
Select XxcustomerSearchPage
In Table RegionCreate 1 Item
Id & Prompt: Edit Style: Image
In Properties: 1) Image URL: Updateicon-enable.gif (take from path OAMedia)
2) Action Type: Fire Action (ones create Action Type Event will be Create)
3) Event: update (if we want we can change the Event Name)
4) Parameters: click here one window will open (it will Pass Value
Dynamically)
Name
Value
Pheaderid (Variable)
${oa. XxcustomerSearchVO1.HeaderId}
--- OK
(SearchVO-take from AM) (Attribute Name)
Check VO and add HeaderId **
Step-19
Create Controller for XxcustomerUpdatePage Name as: XxcustomerUpdateCO
Follow the Same Steps where in XxcustomerCreateCO
For Update the customer Information write this code in XxcustomerUpdateCO
In Process request
{
String headerid=pageContext.getParameter("pheaderid").toString();
(variable)
(Spell variable)
String wherecondition="HEADER_ID='"+headerid+"'";
(DataBaseColumnName)
am.getXxcustomer_Rebate_hdrVO1().setWhereClause(wherecondition);
am.getXxcustomer_Rebate_hdrVO1().executeQuery();
am.getXxcustomer_Rebate_lineVO1().setWhereClause(wherecondition);
am.getXxcustomer_Rebate_lineVO1().executeQuery();
}
Delete
Step-20
Select XxcustomerSearchPage
In Table RegionCreate 1 Item
Id & Prompt: Delete
Style: Image
In Properties: 1) Image URL: deleteicon_enable (take from path OA-Media)
2) Action Type: Fire Action (ones create Action Type Event will be Create)
3) Event: delete (if we want we can change the Event Name)
4) Parameters: click here one window will open (it will Pass Value
Dynamically)
Name
Value
Pdelete (Variable)
${oa. XxcustomerSearchVO1.Headerid}
--- OK
SearchVO-take from AM) (Attribute Name)
Step-21
In AMImpL.Java import this package
import oracle.jbo.RowSetIterator;
import oracle.apps.fnd.framework.webui.OADialogPage;
import java.util.Hashtable;
import java.io.
import oracle.apps.fnd.framework.OAViewObject;
import xxdel.oracle.apps.po.xxcustomer_rebate_project.server.
Xxcustomer_Rebate_projectVORowImpl;
public void deleteHederslines(String headerId)
{
int programToDelete = Integer.parseInt(headerId);
OAViewObject vo = (OAViewObject)getXxcustomer_Rebate_projectVO1();
Xxcustomer_Rebate_projectVORowImpl row = null;
int fetchedRowCount = vo.getFetchedRowCount();
RowSetIterator deleteIter = vo.createRowSetIterator("deleteIter");
if (fetchedRowCount > 0)
{
deleteIter.setRangeStart(0);
deleteIter.setRangeSize(fetchedRowCount);
for (int i = 0; i < fetchedRowCount; i++)
{
row =
(Xxcustomer_Rebate_projectVORowImpl)deleteIter.getRowAtRangeIndex(i);
Number primaryKey = row.getHeaderId();
if (primaryKey.compareTo(programToDelete) == 0)
{
row.remove();
getTransaction().commit();
break;
}
}
}
deleteIter.closeRowSetIterator();
}
Step-22
Create Message in Apps to Handle Exceptions in OAF
Login into Oracle Applications
Responsibility: Application Developer
Navigation: ApplicationMessage
Name: XX_CUSTOMER_WARNING
Language: US
Application: iSupplier Portal
Current Message Text: Are you sure want to delete the Selected Item (save)
After creating the Message we have Run Standard Concurrent Program
Concurrent Program: Generate Message
Step-23
Write Code In XxcustomerSearchCO to Delete Continuous
Import this packages
import oracle.apps.fnd.framework.webui.OADialogPage;
import java.io.Serializable;
import java.util.Hashtable;
In Process Form Request
if ("delete".equals(pageContext.getParameter(EVENT_PARAM)))
{
String HeaderId1= pageContext.getParameter("pdelete");
OAException mainMessage = new
OAException("pos","XX_CUSTOMER_WARNING");
OADialogPage dialogPage = new OADialogPage(OAException.WARNING,
mainMessage,
null, "", "");
String yes = pageContext.getMessage("AK", "FWK_TBX_T_YES", null);
"(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)
(HOST=apps.ora.com)(PORT=1521)))
(CONNECT_DATA=(SERVICE_NAME=VIS)))"
(Run same the import script for create page & update page)
3) Navigate to Oracle Apps In Application Developer Responsibility
a. Create Function (Nav:ApplicationFunction)
In Description Tab
Function: xxxxxxxxxxxxxxx
UserFunctionName:xxxxxxxxxxxxxxx
In Properties Tab
Type: SSWA servlet function
In web HTML
HTML call:URL of the Search Page (Save & Close)
b. Create Menu Attach Function to Menu
(Place the Menu in Respective Responisibility
Ex: PO:Menu: Purchasing SuperUser GUI)
Open Menu In Query Mode Paste the (Res:Menu) where User Name menu
c. Bounch the Apche Server ( first close all Applictions)
Open the Services Rt click on Apche server---Restart
1)
Create the page as the normal way like create jws, jpr, bc4js, AM, page etc. .
2)
3)
Create the EO which table you want to update the records through page.
4)
5)
Then create VO based on EO. Create a new VO under particular(VO) BC4J, there you can Shuffle the
EO (which you created in 2nd step) into selected side
6)
7)
Select the search page, there select table region and create one item and style as image.
8)
9)
In the image properties a) image uri as updateicon_enabled.gif b)Action Type as fire action. In the
parameter window -> id = pdeptid value -> ${oa.SearchVO1.DeptId}.
Create the update page with appropriate records. And Buttons.
10) Create Controller under pageLayouot region to handle the go button events and call the logic from AM.
Follow logic below.
Process request:
if(pageContext.getParameter("pdeptid")!=null)
{
String deptid=pageContext.getParameter("pdeptid").toString();
String whereclause="DEPT_ID='"+deptid+"'";
am.getCreateVO1().setWhereClauseParams(null);
am.getCreateVO1().setWhereClause(whereclause);
am.getCreateVO1().executeQuery();
}
If (pageContext.getParameter("Save")!=null)
{
am.getOADBTransaction().commit();
}
DEPTNAME VARCHAR2(100),
LOCATION VARCHAR2(100),
CREATED_BY NUMBER,
CREATION_DATE Date,
LAST_UPDATED_BY NUMBER,
LAST_UPDATE_DATE Date,
LAST_UPDATE_LOGIN NUMBER)
if (pageContext.getParameter("Create")!=null)
{
pageContext.setForwardURL("OA.jsp?
page=rajesh/oracle/apps/po/dept/webui/DepartmentCreationPage",
null,
OAWebBeanConstants.KEEP_MENU_CONTEXT,
null,
null,
false, // Retain AM
OAWebBeanConstants.ADD_BREAD_CRUMB_NO, // Do not display breadcrums
OAWebBeanConstants.IGNORE_MESSAGES);
}
1)
2)
Image Uri
- deleteicon_enabled.gif
Parameter window:SPEL
Name DeptId
Value - ${oa.SearchVO1.DeptId}
3)
write the delete login AM, start with creating method ->
int deptidtodelete=Integer.parseInt(departmentid);
SearchVOImpl vo=getSearchVO1();
SearchVORowImpl row=null;
// This tells us the number of rows that have been fetched in the
// row set, and will not pull additional rows in like some of the
// other "get count" methods.
if (fetchedrowcount >0)
{
deleteiter.setRangeStart(0);
deleteiter.setRangeSize(fetchedrowcount);
}
deleteiter.closeRowSetIterator();
}
4)
Call that delete even tin Controller like below. Below logic having how to create OADialog box in
OA Framework.
if ("delete".equals(pageContext.getParameter(EVENT_PARAM)))
{
// The user has clicked a "Delete" icon so we want to display a "Warning"
// dialog asking if she really wants to delete the employee. Note that we
// configure the dialog so that pressing the "Yes" button submits to
// this page so we can handle the action in this processFormRequest( ) method.
String DeptId = pageContext.getParameter("DeptId");
dialogPage.setOkButtonToPost(true);
dialogPage.setNoButtonToPost(true);
dialogPage.setPostToCallingPage(true);
// Now set our Yes/No labels instead of the default OK/Cancel.
dialogPage.setOkButtonLabel(yes);
dialogPage.setNoButtonLabel(no);
// The OADialogPage gives us a convenient means
// of doing this. Note that the use of the Hashtable is
// most appropriate for passing multiple parameters. See the OADialogPage
// javadoc for an alternative when dealing with a single parameter.
Hashtable formParams = new Hashtable();
formParams.put("DeptId", DeptId);
dialogPage.setFormParameters(formParams);
pageContext.redirectToDialogPage(dialogPage);
}
else if (pageContext.getParameter("DeleteYesButton") != null)
{
// User has confirmed that she wants to delete this employee.
// Invoke a method on the AM to set the current row in the VO and
// call remove() on this row.
String DeptId = pageContext.getParameter("DeptId");
// Now, redisplay the page with a confirmation message at the top. Note
// that the deleteComponent() method in the AM commits, and our code
// won't get this far if any exceptions are thrown.
pageContext.putDialogMessage(message);
}
}
OADBTransaction tr=getOADBTransaction();
vo.setMaxFetchSize(0);
Row row1=vo.createRow();
vo.insertRow(row1);
row1.setNewRowState(Row.STATUS_INITIALIZED);
Number empid=tr.getSequenceValue("EMPLOEE_EMP_ID_SEQ");
vo.getCurrentRow().setAttribute("EmployeeId",empid);
String departmentid=vo1.getCurrentRow().getAttribute("DeptId").toString();
vo.getCurrentRow().setAttribute("DeptId",departmentid);
if (ADD_ROWS_EVENT.equals(pageContext.getParameter(EVENT_PARAM)))
{
am.invokeMethod("createemp");
}
Validations
if(pageContext.getParameter("Go")!=null)
{
int flag=am.ConsumerSearch(pageContext,webBean);
if(flag==0)
{
am.getXXconsumer_DiscountVO1().setWhereClauseParam(0,"asdf");
am.getXXconsumer_DiscountVO1().setWhereClauseParam(1,"lkjh");
am.getXXconsumer_DiscountVO1().setWhereClauseParam(1,"qwer");
throw new OAException("plz entry any value in search
criteria",OAException.ERROR);
}
else
{
am.getXXconsumer_DiscountVO1().executeQuery();
import.java.util.Date;
String startdate=pageContext.getParameter("ContractStartDate");
String enddate=pageContext.getParameter("ContractEndDate");
if((null!=startdate)&&(null!=enddate))
{
Date sdate=new Date(startdate);
Date edate=new Date(enddate);
if(edate.getTime()<sdate.getTime())
{
throw new OAException("end date should be greaterthan stard
date",OAException.ERROR);
}
}
import.oracle.jbo.domain.Number;
String slevel1=pageContext.getParameter("Level1From");
String slevel2=pageContext.getParameter("Level1To");
Number nlevel1=null;
Number nlevel2=null;
try
{
nlevel1 = new Number (slevel1);
nlevel2 = new Number (slevel2);
}
catch (Exception e)
{
e.printStackTrace();
}
if((null!=slevel1)&&(null!=slevel2))
{
if(nlevel1.intValue() > nlevel2.intValue())
{
throw new OAException("level2 is greater than level1",OAException.ERROR);
}
}
String cname=pageContext.getParameter("PartyName");
Pattern p=Pattern.compile("[^a-zA-Z0-9\\s]");
Matcher m=p.matcher(cname);
if(m.find())
{
throw new OAException("Special Characters are not
allowed",OAException.ERROR);
}
In Create CO (ProcessFormRequest)
if("firepartial".equals(pageContext.getParameter(EVENT_PARAM)))
{
String fright=pageContext.getParameter("FreightDeduct");
Number frighting=null;
try
{
frighting=new Number(fright);
}
catch (Exception e)
{
e.printStackTrace();
}
if((null!=fright))//&&(null!=fright))
{
if((frighting.intValue()<=0)||(frighting.intValue()>=100))
// if((frighting.intValue()<0)||(frighting.intValue()>100))
{
throw new OAException("frieght deduction should not allow more then 100",
OAException.ERROR);
}
}
DEPENDENT LOV
WHERE
hza.party_id = hp.party_id
AND hzas.cust_account_id = hza.cust_account_id
AND hzps.party_site_id = hzas.party_site_id
AND hzl.location_id = hzps.location_id
AND hzsu.site_use_code = 'BILL_TO'
AND hzsu.cust_acct_site_id = hzas.cust_acct_site_id
DEPENDENT POPLIST
Create 2 VO's Under POP List..Server & Attach VO's To AM
1. DNameVO: SELECT DNAME FROM SCOTT.DEPT
2. ENameVO: SELECT ENAME, DNAME FROM SCOTT.EMP E, SCOTT.DEPT D WHERE
E.DEPTNO=D.DEPTNO
In Search PG Create Item under MessageComponetLayout
Item Style: Message Choice
Go to AMIpmL.java
public void initquary (String dname)
{
EnameVOImpl vo=getEnameVO1();
vo.setWhereClause("DNAME=:1");
vo.setWhereClauseParams(null);
vo.setWhereClauseParam(0,dname);
vo.executeQuery();
}
In Search CO (ProcessFormRequest)
import java.io.Serializable;
if("Dname".equals(pageContext.getParameter(EVENT_PARAM)))
{
String dname=pageContext.getParameter("Dname");
if(!(("".equals(dname))&&(dname==null)))
{
Serializable[] param={dname};
am.invokeMethod("initquary",param);
Advertising Rebate
OATableBean tb=(OATableBean)webBean.findChildRecursive("region4");
OAMessageStyledTextBean mst=(OAMessageStyledTextBean)webBean.
findChildRecursive("ADVERTISING_REBATE");
if(mst!=null)
{
mst.setCurrencyCode("USD");
}
OAMessageFileUploadBean upload=(OAMessageFileUploadBean)webBean.
findChildRecursive("ContractAttachment");
1)
Create the page as the normal way like create jws, jpr, bc4js, AM, page etc. .
2)
Create one EO BC4J under that BC4J create EO.->Right click of the BC4J select New Entity Object.
EX: xxaam.oracle.apps.po.autosearch.schema.server and xxxEO.
Note : for Manual search no need to create Entity Object. Just for explaining how to create EO based VO.
3)
Then create VO based on EO. Create new VO under particular(VO) BC4J, there you can shuffle the EO
(which you created in 2nd step) into selected side.
4)
Click next twice and query automatically will generate , if you want to change you select expert mode
checkbox and you can change the query. Amend the where clause like below example.
Ex: SELECT DepartmentEO.DEPT_ID,
DepartmentEO.DEPTNO,
DepartmentEO.DEPTNAME,
DepartmentEO.LOCATION,
DepartmentEO.CREATED_BY,
DepartmentEO.CREATION_DATE,
DepartmentEO.LAST_UPDATED_BY,
DepartmentEO.LAST_UPDATE_DATE,
DepartmentEO.LAST_UPDATE_LOGIN
FROM Department DepartmentEO
WHERE DepartmentEO.DEPTNAME LIKE NVL(:1,DepartmentEO.DEPTNAME)
AND DepartmentEO.LOCATION LIKE NVL(:2,DepartmentEO.LOCATION)
5)
6)
7)
8)
Then design the page , create 3 regions 1 for getting page items, 2 for getting buttons and, 3 for table
region for displaying results when you press the go button.
vo.setWhereClauseParam(0,Dname);
flag=1;
}
else
{
vo.setWhereClauseParam(0,null);
}
if(pageContext.getParameter("Location")!=null && !pageContext.getParameter("Location").equals(""))
{
Location=pageContext.getParameter("Location").toString();
vo.setWhereClauseParam(1,Location);
flag=2;
}
else
{
vo.setWhereClauseParam(1,null);
}
System.out.println("the flag value is"+flag);
return flag;
9)
Create Controller under pageLayouot region to handle the go button events and call the logic from AM.
Follow logic below.
if(pageContext.getParameter("Go")!=null)
{
XXnewAMImpl am=(XXnewAMImpl)pageContext.getApplicationModule(webBean);
}
else
{
am.getDepartmentVO1().executeQuery();
}
}
10) Then run the page to test the Manual search page.
Create the bc4j for LOV.Right click the .jpr create the BC4j for LOV.
Ex: xxaam.oracle.apps.po.autosearch.lov.server
Under the LOV bc4j, create the LOVVO and LOVAM(this VO and AM called as LOVVO and LOV AM).
Ex: xxxLOVVO and xxxLOVAM.
Attach that LOVAM to VO.
Ex:Add xxxLOVVO to xxxLOVAM.
Create the region under jpr, navigation path is -> right click .jpr->New->OAComponenst ->webtier>Region.
Ex:xxxLOVRN
Dialog Box->In region properties -> style as ListOfValues ->click OK.
In structure window select region ->property inspector ->scope public and add LOV AM To this Region.
Come to item search allowed property should be true.
Select the page, which item you want to make LOV and select item style as Message LOV Input.
In property inspector window ->you have to add region path in external LOV.
Come to mapping section , select map1
Property inspector ->functional
LOV Region Item data base column Name
Return Item region Item
Criteria Item- same as return item
SAVE IT AND run the page we get the info like where the emp
ended then we see the images.which we set dare
1)
Create the page as the normal way like create jws, jpr, bc4js, AM, page etc. .
2)
3)
Create the EO which table you want to insert the records through page.
4)
5)
Then create VO based on EO. Create new VO under particular(VO) BC4J, there you can
Shuffle the EO (which you created in 2nd step) into selected side
6)
7)
8)
OADBTransaction Tr=getOADBTransaction();
if(!vo.isPreparedForExecution())
{
vo.executeQuery();
}
Row row1=vo.createRow();
vo.insertRow(row1);
row1.setNewRowState(Row.STATUS_INITIALIZED);
Number deptid=Tr.getSequenceValue("DEPT_DEPT_ID_SEQ");
//
vo.getCurrentRow().setAttribute("DeptId",deptid);
vo.getCurrentRow().setAttribute("DeptId",deptid);
9)
Create Controller under pageLayouot region to handle the go button events and call the logic from AM.
Follow logic below.
Process Request :
DeptAMImpl am=(DeptAMImpl)pageContext.getApplicationModule(webBean);
am.invokeMethod("CreateDept");
If (pageContext.getParameter("Save")!=null)
{
am.getOADBTransaction().commit();
}
http://oraappsframework.blogspot.in/search/label/Real%20time%20project
Entity Object
Syntax: <thirdparty>.oracle.apps.applshortname.componentname.<subcomp>.schema.server
Ex: xyz.oracle.apps.xxcust.empmgmt.schema.server
Syntax: <thirdparty>.oracle.apps.applshortname.componentname.<subcomp>.lov.server
Ex: xyz.oracle.apps.xxcust.empmgmt.lov.server
5.
Lov Regions
Syntax: <thirdparty>.oracle.apps.applshortname.componentname.<subcomp>.lov.webui
Ex: xyz.oracle.apps.xxcust.empmgmt.lov.webui
6.
Pick List VO
Syntax: <thirdparty>.oracle.apps.applshortname.componentname.<subcomp>.picklist.server
Ex: xyz.oracle.apps.xxcust.empmgmt. picklist.server