0% found this document useful (0 votes)
736 views

Adding New Row To The Advanced Table in Programatical Way

This document provides steps to programmatically add new rows to an advanced table in an Oracle Application Express (APEX) application. 1. Create a sample page with an advanced table. 2. Add a button to the table footer to add rows. 3. Handle the button click by calling a method in the application module (AM) that inserts a new row into the table's view object (VO).

Uploaded by

Nageswara Reddy
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
736 views

Adding New Row To The Advanced Table in Programatical Way

This document provides steps to programmatically add new rows to an advanced table in an Oracle Application Express (APEX) application. 1. Create a sample page with an advanced table. 2. Add a button to the table footer to add rows. 3. Handle the button click by calling a method in the application module (AM) that inserts a new row into the table's view object (VO).

Uploaded by

Nageswara Reddy
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 3

Adding New Row to the Advanced Table in Programatical way

Adding New Row to the Advanced Table in Programatical way Step 1: Create sample page Step 2: Create one Advanced Table in that page Step 3: Setup the required properties for the page Step 4: Create on footer for the table, in that create one add table row button Step 5: Set the below properties to the Add Table Row button Insert Rows Automatically : False Step 6: Now in the process Request method add the below code public void processRequest(OAPageContext pageContext, OAWebBean webBean) { super.processRequest(pageContext, webBean); sampleAMImpl am = (sampleAMImpl)pageContext.getApplicationModule(webBean); am.invokeMethod("createInsert1"); OAAdvancedTableBean tableBean = (OAAdvancedTableBean)webBean.findIndexedChildRecursive("AdvancedTableBean1"); System.out.println("Advanced Table Bean id--->"+tableBean); OATableFooterBean footerBean = (OATableFooterBean)tableBean.getFooter(); System.out.println("TableFooter bean-->"+footerBean); if(footerBean!=null) { OAAddTableRowBean addTableRowBean = (OAAddTableRowBean)footerBean.findIndexedChild("addTableRow1"); System.out.println("Add Table Row Bean id----->"+addTableRowBean); // Add 5 rows everytime add row button is clicked addTableRowBean.setText("Add 1 Rows"); addTableRowBean.setRows(1); // Handle add row insertion yourself addTableRowBean.setAttributeValue(AUTO_INSERTION, Boolean.FALSE); } } Step 7: In AMImpl Class write the below Code public void createInsert1() { OAViewObject vo =getInsertVO1(); if (!vo.isPreparedForExecution()) { vo.executeQuery();

} } Step 8: Now in the process Form Request method add the below code public void processFormRequest(OAPageContext pageContext, OAWebBean webBean) { super.processFormRequest(pageContext, webBean); OAAdvancedTableBean tableBean = (OAAdvancedTableBean)webBean.findIndexedChildRecursive("AdvancedTableBean1"); System.out.println("Advanced Table Bean id--->"+tableBean); OATableFooterBean footerBean = (OATableFooterBean)tableBean.getFooter(); System.out.println("TableFooter bean-->"+footerBean); if(footerBean!=null) { OAAddTableRowBean addTableRowBean = (OAAddTableRowBean)footerBean.findIndexedChild("addTableRow1"); System.out.println("Add Table Row Bean id----->"+addTableRowBean); if ((tableBean.getName(pageContext).equals(pageContext.getParameter(SOURCE_PARAM))) && (ADD_ROWS_EVENT.equals(pageContext.getParameter(EVENT_PARAM)))) { System.out.println("Add Another row is pressed"); sampleAMImpl am = (sampleAMImpl)pageContext.getApplicationModule(webBean); am.invokeMethod("createAnotherRow1"); System.out.println("Action over"); } } Step 9: In Am Impl Class write the below Code public void createAnotherRow1() { InsertVOImpl studVo = getInsertVO1(); // StudentDetailsVOImpl studVo = getStudentVO1(); System.out.println(" vo class statement"); InsertVORowImpl studrow = (InsertVORowImpl)studVo.createRow(); System.out.println(" vo row impl statement"); studVo.last(); System.out.println("vo.last method"); studVo.next(); System.out.println("vo.next method"); studVo.insertRow(studrow); //'ABC' is HardCod value inserted based on the requirement in this example System.out.println("insert row method"); studVo.setCurrentRow(studrow);

System.out.println("current row method"); studrow.setNewRowState(Row.STATUS_INITIALIZED); System.out.println("Initialized method"); } Step 10: Now Run the page and check the functionality of Add Another Row.

You might also like