You are on page 1of 10

SUPPLIER SEARCH PAGE (AM)..

coading: In supplier search page we have to write code for some business logics CODE public SupplierSearchVOImpl getSupplierSearchVO1() { return (SupplierSearchVOImpl)findViewObject("SupplierSearchVO1"); } public void XXSupplierSearch(OAPageContext pageContext) { SupplierSearchVOImpl vo=getSupplierSearchVO1(); String S1 = pageContext.getParameter("SupplierName"); String S2 = pageContext.getParameter("SupplierNumber"); String S3 = pageContext.getParameter("SupplierClasification"); int flag=0; if (S1!=null && !S1.equals("")) { vo.setWhereClauseParam(0,S1); flag=1; } else { vo.setWhereClauseParam(0,null); } if (S2!=null && !S2.equals("")) { vo.setWhereClauseParam(1,S2); flag=1; } else { vo.setWhereClauseParam(1,null); } if (S3!=null && !S3.equals("")) { vo.setWhereClauseParam(2,S3); flag=1; }

else { vo.setWhereClauseParam(2,null); } if (flag == 0) { throw new OAException("Please Enter Atleast One Search Criteria",OAException.ERROR); } else { vo.executeQuery(); } } IN AM FOR THIS SEARCH PAGE WE HAVE TO IMPORT import oracle.apps.fnd.framework.webui.OAPageContext; import oracle.apps.fnd.framework.OAException; THEN WE CALL THIS AM IN CONTROLLER (for GO button)

Under PROCESS FORM REQUEST SupplierAMImpl am=(SupplierAMImpl)pageContext.getApplicationModule(webBean); if(pageContext.getParameter("Go")!=null) { am.XXSupplierSearch(pageContext); for CLEAR BUTTON In AM we have to write code for clear button .

SUPPLER CREATION PAGE INSERT records In AM (IMPORT) import oracle.jbo.Row; import oracle.apps.fnd.framework.server.OADBTransaction; import oracle.jbo.domain.Number; AM CODE For insert (for header level)

public void XXCreateSupplier() { SupplierVOImpl vo= getSupplierVO1(); if (!vo.isPreparedForExecution()) { vo.executeQuery(); } Row r= vo.createRow(); vo.insertRow(r); r.setNewRowState(Row.STATUS_INITIALIZED); OADBTransaction tr=getOADBTransaction(); Number sid=tr.getSequenceValue("XX_SUP_SEQ"); vo.getCurrentRow().setAttribute("SupplierId",sid); } Go to controller in creation page In process request SupplierAMImpl am=(SupplierAMImpl)pageContext.getApplicationModule(webBean); { Am.invokemethod(createsupplier); }

CREATION PAGE for INSERT (Supplier site level) AM public void XXCreteSupplierSite() IMPORT(Header level imports sufficient for sitelevel) public void XXCreteSupplierSite() { SuppSiteVOImpl vo=getSuppSiteVO1(); vo.setMaxFetchSize(0); Row r=vo.createRow(); vo.insertRow(r); r.setNewRowState(Row.STATUS_INITIALIZED); OADBTransaction tr=getOADBTransaction(); Number siteid=tr.getSequenceValue("XX_SUPSITEID_SEQ"); vo.getCurrentRow().setAttribute("SupplierSiteId",siteid); SupplierVOImpl x= getSupplierVO1(); Number sid=(Number)x.getCurrentRow().getAttribute("SupplierId"); vo.getCurrentRow().setAttribute("SupplierId",sid); } For SAVE public void XXSAVE ( ) { OADBTransaction tr=getOADBTransaction(); tr.commit(); throw new OAException("Records are saved sucessfully",OAException.CONFIRMATION); } FOR SAVE we can call in controller in process form request SupplierAMImpl am=(SupplierAMImpl)pageContext.getApplicationModule(webBean); if (pageContext.getParameter("Save")!=null) { am.invokeMethod("ValidateSupplier"); am.invokeMethod("XXApply");

} if (ADD_ROWS_EVENT.equals(pageContext.getParameter(EVENT_PARAM))) { System.out.println("Clicked on Add another row Advance table"); am.invokeMethod("XXCreteSupplierSite"); } EDIT GO to Advance table of supplier page create a coloum create one item in coloum Item id -----EDIT Item style----image Prompt---- edit Image URI---Update icon enabled.gif Action type ---fire action Event--edit Submit---true Parameters Using SPEL give the parameters Name view instance view attribute 1.psupplierid 2.psuppliersiteid ${oa.suppliersearchvo1.supplierid} ${oa.suppliersearchvo1.suppliersiteid}

GO TO SEARCH CONTROLLER UNDER PROCESS FORM REQUEST

if("Edit".equals(pageContext.getParameter(EVENT_PARAM))) { System.out.println("I am updating record"); pageContext.setForwardURL("OA.jsp? page=/supplier/oracle/apps/po/suppmgmt/webui/SupplierCreationPG", null, OAWebBeanConstants.KEEP_MENU_CONTEXT, null,

null, true, // Retain AM null, // Do not display breadcrumbs OAWebBeanConstants.IGNORE_MESSAGES); } Go to SEARCH AM create a method for EDIT public void XXEDIT (String s1, String s2) { SupplierVOImpl vo= getSupplierVO1(); String wclause="Supplier_id='"+s1+"'"; vo.setWhereClause(wclause); SuppSiteVOImpl vo1=getSuppSiteVO1(); String wclause1="SUPPLIER_SITE_ID='"+s2+"'"; vo1.setWhereClause(wclause1); vo.executeQuery(); vo1.executeQuery(); Go to creation controller write the code under process request SupplierAMImpl am=(SupplierAMImpl)pageContext.getApplicationModule(webBean); if (pageContext.getParameter("PSuppid")!=null) { String s1=pageContext.getParameter("PSuppid"); String s2=pageContext.getParameter("PSuppsiteid"); am.XXEDIT(s1,s2); OAMessageTextInputBean b=(OAMessageTextInputBean)webBean.findChildRecursive("Requestor"); b.setDisabled(true); } else { am.invokeMethod("XXCreateSupplier");

am.XXDefaultRequestor(pageContext, webBean);

DELETE one more coloum for delete GO to search page of advance table create Sortable header Prompt ----delete Create one item in the coloum Item style-----image Image URI---deleteicon_enabled.gif Action type---- fire action Event------DELETE Parameters Name a.psupplierid b.psuppliersiteid Submit ---------true Go to search page controller (process form request) Import import oracle.apps.fnd.framework.webui.OADialogPage; import java.util.*; if ("Delete".equals(pageContext.getParameter(EVENT_PARAM))) { String sid=pageContext.getParameter("psid"); String ssiteid=pageContext.getParameter("pssiteid"); OAException m = new OAException("PO","XX_SUPPLIER_DELETE"); OADialogPage dpage =new OADialogPage(OAException.WARNING,m,null,"",""); dpage.setOkButtonItemName("DeleteYes"); viewinstence view attribute

${oa.supplierserachvo1.supplierid} $ {oa.suppliersearhvo1.suppliersiteid}

dpage.setOkButtonToPost(false); //it is fir get the actions ...yes or no dpage.setNoButtonToPost(true); dpage.setPostToCallingPage(true); // for come back to search page java.util.Hashtable param=new java.util.Hashtable(1); param.put("p1",sid); param.put("p2",ssiteid); dpage.setFormParameters(param); pageContext.redirectToDialogPage(dpage); } if (pageContext.getParameter("DeleteYes")!=null) { System.out.println("I am ready to delete this record"); String sid=pageContext.getParameter("p1"); String ssiteid=pageContext.getParameter("p2"); System.out.println("sid is "+sid); System.out.println("Supplier site id is "+ssiteid); Serializable[] p={sid,ssiteid}; am.invokeMethod("XXDeleteSupplierSite",p); In supplier search AM we have to write the code Import import oracle.jbo.domain.Number; import oracle.jbo.RowSetIterator; import java.sql.PreparedStatement; import java.sql.SQLException; import java.sql.ResultSet; public void XXDeleteSupplierSite(String sid, String ssiteid) { int s1=Integer.parseInt(sid); /// convert to numbers int s2=Integer.parseInt(ssiteid); SupplierSitesVOImpl vo=getSupplierSitesVO1(); SupplierSitesVORowImpl row =null; RowSetIterator deleteiter=vo.createRowSetIterator("deleteiter");

int n = vo.getRowCount(); if ( n > 0) { deleteiter.setRangeStart(0); deleteiter.setRangeSize(n); for (int i=0; i<n ; i++) { row=(SupplierSitesVORowImpl)deleteiter.getRowAtRangeIndex(i); Number a=row.getSupplierId(); Number b=row.getSupplierSiteId(); if(a.compareTo(s1)==0 && b.compareTo(s2)==0) { row.remove(); this.XXApply(); break; } } } deleteiter.closeRowSetIterator(); GO to suppleri search CO write the code if (pageContext.getParameter("CreateSupplier")!=null) { pageContext.setForwardURL("OA.jsp? page=/Venkat/oracle/apps/po/suppmgmt/webui/SupplierCreationPG", null, OAWebBeanConstants.KEEP_MENU_CONTEXT, null, null, true, // Retain AM null, // Do not display breadcrumbs OAWebBeanConstants.IGNORE_MESSAGES); } Go to supplier creation CO write the code for BACK button

if(pageContext.getParameter("Back")!=null) { pageContext.setForwardURL("OA.jsp? page=/Venkat/oracle/apps/po/suppmgmt/webui/SupplierSearchPG", null, OAWebBeanConstants.KEEP_MENU_CONTEXT, null, null, true, // Retain AM null, // Do not display breadcrumbs OAWebBeanConstants.IGNORE_MESSAGES); }

You might also like