OAF_OAF增删改-删除的实现(案例)

简介: 2014-06-02 Created By BaoXinjian 一、摘要 实现OAF的删除功能delete   二、案例 需求:实现删除功能 1. 建立Delete按钮的连接 2. 修改VO,增加按钮 3.

2014-06-02 Created By BaoXinjian

一、摘要


实现OAF的删除功能delete

 

二、案例


需求:实现删除功能

1. 建立Delete按钮的连接

2. 修改VO,增加按钮

3. 在SearchInvoiceCO.java中添加如下方法

4. 在InvoiceAM中添加如下方法

 

三、案例实现


1. 建立Delete按钮的连接

    

 

2. 修改VO,增加按钮

    

 

3. 在SearchInvoiceCO.java中添加如下方法

 1 public void processFormRequest(OAPageContext pageContext,OAWebBean webBean) {
 2 
 3     super.processFormRequest(pageContext, webBean);
 4 
 5     /**按下删除发票Button,触发AM中的AmDeleteInvoice方法**/
 6 
 7     if ("delete".equals(pageContext.getParameter(EVENT_PARAM))) {
 8 
 9         OAApplicationModule am = pageContext.getApplicationModule(webBean);
10 
11         String InvoiceId = pageContext.getParameter("InvoiceId");
12 
13         Serializable[] parameters = { InvoiceId };
14 
15         am.invokeMethod("AmDeleteInvoice", parameters);
16 
17     }
18 
19 }

 

 

4. 在InvoiceAM中添加如下方法

 1 /**删除Invoice**/
 2 
 3 public void AmDeleteInvoice(String InvoiceId) {
 4 
 5     int InvoiceIdToDelete = Integer.parseInt(InvoiceId);
 6 
 7     OAViewObject vo = (OAViewObject)getInvoiceSummaryVO1();
 8 
 9     InvoiceSummaryVORowImpl row = null;
10 
11     int fetchRowCount = vo.getFetchedRowCount();
12 
13     System.out.print("bxj_count" + fetchRowCount);
14 
15     RowSetIterator deleteIter = vo.createRowSetIterator("deleteIter");
16 
17     if (fetchRowCount > 0) {
18 
19         deleteIter.setRangeStart(0);
20 
21         deleteIter.setRangeSize(fetchRowCount);
22 
23         for (int i = 0; i < fetchRowCount; i++) {
24 
25             row = (InvoiceSummaryVORowImpl)deleteIter.getRowAtRangeIndex(i);
26 
27             Number primaryKey;
28 
29             primaryKey = row.getInvoiceId();
30 
31             if (primaryKey.compareTo(InvoiceIdToDelete) == 0) {
32 
33                 row.remove();
34 
35                 getTransaction().commit();
36 
37                 break;
38 
39             }
40 
41         }
42 
43     }
44 
45     deleteIter.closeRowSetIterator();
46 
47 }

 

Thanks and Regards

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关文章
|
JavaScript 编译器 API
WebApi入门第七章(dom增删改页面元素)
WebApi入门第七章(dom增删改页面元素)
110 0
WebApi入门第七章(dom增删改页面元素)
|
Web App开发 数据库 容器
EntityFramework中常用的数据删除方式速度对比
EntityFramework中常用的数据删除方式速度对比http://www.bieryun.com/3375.html 最近在学EF,目前了解到删除操作有三种方式, 第一,官方推荐的先查询数据,再根据查询的对象,删除对象。
1422 0
|
测试技术
OAF_开发系列24_实现OAF更新记录显示Record History(案例)
20150716 Created By BaoXinjian 一、摘要 OAF页面控件中显示记录历史信息有如下的限制: 1. 首先当然是后台的表结构中必须包含WHO字段列了 2. 基于的视图对象必须是非PL/SQL的可更新VO 3.
1070 0
|
Oracle 关系型数据库
OAF_开发系列20_实现OAF打印功能
ddddd   添加一个页面级的button区域:pagebuttonBar,在之下添加button item ,这里主要设置的参数有:采用默认的oaf的打印按钮的id名称: IcxPrintablePageButton,设置属性集为:/oracle/apps/fnd/attributesets...
1195 0
OAF_开发系列21_实现OAF事物控制TransactionUnitHelper(案例)
20150716 Created By BaoXinjian 一、摘要 TransactionUnitHelper用以创建一个被标记的Transaction,个人感觉类似PLSQL SavePoint用以Commit和Rollback特定交易的作用 主要用法 1.
1125 0
|
关系型数据库 Oracle
OAF_开发系列14_实现OAF代码动态新增控件
dERP技术讨论群: 288307890 技术交流,技术讨论,欢迎加入 Technology Blog Created By Oracle ERP - 鲍新建
1129 0
|
测试技术
OAF_开发系列15_实现OAF组件重用和继承(案例)
20150717 Created By BaoXinjian 一、摘要 组件的重用和继承 如果你想包含共享对象到你的页面中,你可以简单继承它们。 比如,在OAFToolBox Sample Library/Tutorial中,我们创建了一个通用区域(名为OrganizationRN),因此同样的内容不需要编码就可以包含在多个页面中。
948 0
|
关系型数据库 测试技术
OAF_开发系列13_实现OAF通过Vector动态查询设置(案例)
20150715 Created By BaoXinjian 一、摘要 Oracle OAF Guide上介绍的标准客制化查询的方式,在多条件下进行查询 具体实现步骤如下 Step1.在controler中的processRequest 的方法中调用 (1).
1641 0
|
测试技术
OAF_开发系列04_实现OAF查询4种不同的实现方式的比较和实现(案例)
2014-06-02 Created By BaoXinjian 一、摘要 OAF实现查询功能或需求,一般都会采用以下四种方式 (1). ResultBasedSearch 最简单的实现方式,将结果中某些栏位需要查询的栏位的属性search设定为true即可 (2).
1787 0
|
SQL 数据库
OAF_开发系列03_实现OAF如何在保存前判断数据是否存在变更(案例)
2014-06-26 Created By BaoXinjian 一、摘要 在OAF的开发中,可能有这样的需求,在选择保存按钮时,如果存在改动的数据,则提交事务,保存到数据库中; 如果不存在改动的数据,就提示用户当前没有数据可更改; 解决时需要判断页面中所使用的视图对象是否发生过改动,存在多种方法   1. 调用OADBTransaction.isDirty()方法 此方法用于判断当前事务中,视图对象是否发生过变更。
1204 0