OAF知识点整理

1、processFormRequest不能更改webBean的属性

2、row.setNewRowState(Row.STATUS_NEW/STATUS_INITIALIZED);

两种状态的区别:

  a.STATUS_NEW 会对新增的行进行有效的验证,如有必填项,若未填写,则新增失败,
    而 STATUS_INITIALIZED 不会进行验证
  b.在新增后设置STATUS_INITIALIZED状态,表示新增行处于脱管状态,不参与事务提交,不参与验证,
直到页面进行更新,然后OA框架自动把状态设回为STATUS_NEW,以重新参与事物和验证


对VO增加语句为:

EmployeesVOImpl vo = (EmployeesVOImpl)getEmployeesVO1();//获取VO
if (!vo.isPreparedForExecution())//判断是否已经执行
{
  vo.executeQuery();//首先必须执行VO
}
Row row = vo.createRow();//创建一个新行
row.setNewRowState(Row.STATUS_NEW); //给创建的新行赋类型
vo.insertRow(row);//将新创建的行加入到VO里
//现在的vo(缓存中的数据),状态是持久状态(提交后直接保存至数据库)
新增的列一般没有删除图标,需要在VO里的删除图标加一个默认值,因为只有执行查询语句才会给删除
列赋值或在createRow();后设置值row.setAttribute("deleteFlag",true);



对VO删除语句为:

1)、得到row:Row 
row = (XXXVORowImpl)deleteIter.getRowAtRangeIndex(i);
或Row[] rows = vo.getFilteredRows("OutPlanDetId", detailId);//rows[i]
2)删除并其提交
row.remove();
getTransaction().commit();



3、item中的disable的属性设置true

界面不能修改,在代码也获得不到值(pageContext.getParameter("techTrialDate");),获取不到值,只能抓取标签


4、隐藏LOV及下拉框对应的Value值的控件

这种设置方法是不形成html标签,因此也无法获取input内的value,所以要在PG里设置CSS属性或者设置item style为formvalue

OAMessageTextInputBean sAppPropCodeValue = 
            (OAMessageTextInputBean)webBean.findChildRecursive("SAppPropCodeValue");
sAppPropCodeValue.setRendered(false);


5、命名规范:cux.oracle.apps.inv001(这个是需求上的缩写).*** 

前面加INV,是因为在运行的时候,会去数据库中查找对应的应用模块INV

6、table每个字段必须有vo映射,控件有个required设置为yes表示为必填项

7、LOV常用的三个事件:lovPrepare、lovFilter、lovUpdate 

lovPrepare:点击查询图标(手电筒)触发事件(通常这里传入客户过滤条件的参数值)
lovFilter:点击弹出页面中的开始按钮触发事件,因此通常在这里加客户过滤条件。
lovUpdate:选择查询结果数据返回到 主Page页面后触发


        String event = pageContext.getParameter("event");
        if (pageContext.isLov
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值