校验基于EO的VO中的字段是否发生变化
I have a table region and there are multiple records fetching from a Entity based VO. Now I have updated one row or any of row, I require to display once changed records on next page. How can I display? I want to capture row status type thing while pressing the save button.
if(row.getEntity(0).getPostState()==2){
//your logic
}
xxPerPhonesVORowImpl updatedRow = (xxPerPhonesVORowImpl)EmpContactsVO.getCurrentRow();
System.out.println("Row Status : " + updatedRow.getxxPerPhonesEO().getEntityState());
if(updatedRow.getxxPerPhonesEO().getEntityState() == EntityImpl.STATUS_NEW ) {
System.out.println("Row Status : Row # " + i + " : Modified value : " + updatedRow.getEntity(0).getEntityState());
}
最佳答案:
ssue resolved by creating a new field (IS_SUBMITTED) in database table to Flag the record status with the default value as N (update all the existing records if there are any in the table);
Step 1 : Go to properties on your EO and navigate to Java and check Data Manipulation
Step 2 : Go to your EOImpl class and search for doDML method
Step 3 : Under doDML method add below code to set EO Attribute value;
if (getIsSubmitted().equals("N")) {
setIsSubmitted("M"); //where as M stands for Modified
}
Step 4 : Under your Controller Class @ PFR, write code for loop and set the attribute status like below;
OAApplicationModule am = pageContext.getApplicationModule(webBean);
if (pageContext.getParameter("SubmitButton") != null ) {
am.invokeMethod("apply"); //saving the records so the EOImpl will set the is_submitted to 'M' wherever the record modified state found
OAViewObject EmpPhoneVO = (OAViewObject)am.findViewObject("xxPerPhonesVO1");
int empPhoneRowCnt = EmpPhoneVO.getRowCount();
EmpPhoneVO.first();
for (int i=1; i<=empPhoneRowCnt; i++){
OARow empPhoneRow = (OARow)EmpPhoneVO.getCurrentRow();
String lPhoneValidated = "Y";
// your validation if any
if (lPhoneValidated.equals("Y")) {
System.out.println("IsSubimtted After Get : " + empPhoneRow.getAttribute("IsSubmitted"));
if (empPhoneRow.getAttribute("IsSubmitted").equals("M")){
empPhoneRow.setAttribute("IsSubmitted","S");
}
System.out.println("IsSubimtted After Set : " + empPhoneRow.getAttribute("IsSubmitted"));
OAException submitMessage = new OAException("Employee Contact Details : Row # " + i + " : Submitted for Approval to Employee Relation Officer.",
OAException.CONFIRMATION );
pageContext.putDialogMessage(submitMessage);
}
EmpPhoneVO.next();
}
}
参考资料:
How to get Row Status of VO Rows
校验基于EO的VO中的字段是否发生变化的更多相关文章
- OAF 中的EO 和VO
EO :oracle.apps.fnd.framework.server.OAEntityImpl VO:oracle.apps.fnd.framework.server.OAViewRowImpl ...
- 关于VO中的Attribute的问题
对于新手来说,有些时候会遇到VO中的Attribute的各种问题; 总结如下:1,你页面上输入了值,但是点击保存之后值并不能存到数据库,这个是因为该字段在VO中不是基于EO的 2,你将一个VO中的E ...
- 前端必备HTTP技能之HTTP请求头响应头中常用字段详解(转)
作为一名前端开发人员,肯定少不了要和网络打交道,因为要从服务器端拉取数据,从服务端获取数据最常用的方式还是通过HTTP请求.给服务器发请求的时候有请求头,接受服务器响应的时候有响应头,客户端和服务器端 ...
- mysql向表中某字段后追加一段字符串:
mysql向表中某字段后追加一段字符串:update table_name set field=CONCAT(field,'',str) mysql 向表中某字段前加字符串update table_n ...
- sql 查询表中所有字段的名称
最近工作用到SQL语句查询表中所有字段的名称,网上查询,发现不同数据库的查询方法不同,例如: SQL server 查询表的所有字段名称:Select name from syscolumns Whe ...
- 解决SQL server 2014 修改表中的字段,无法保存的问题。
修改PROJECT表中的字段,保存时,弹出上面的窗体,无法保存. 解决方法为:[工具]->[选项]->[设计器]中,去掉“阻止保存要求重新创建表的更改”前的勾选.
- Elasticsearch入门必备——ES中的字段类型以及常用属性
使用Elasticsearch时,了解字段的概念,是必不可少的.毕竟无论是es还是传统的数据库,都无法弱化字段的类型. 背景知识 在Es中,字段的类型很关键: 在索引的时候,如果字段第一次出现,会自动 ...
- mongoDB删除表中一个字段
使用update命令 update命令 update命令格式: db.collection.update(criteria,objNew,upsert,multi) 参数说明: criteria:查询 ...
- easyui datagrid中datetime字段的显示和增删改查问题
datagrid中datetime字段的异常显示: 使用过easyui datagrid的应该都知道,如果数据库中的字段是datetime类型,绑定在datagrid显式的时候会不正常显示,一般需要借 ...
随机推荐
- 使用Dataset构建数据到lgb中
训练数据要放到Dataset中供lgb使用,构建数据如下: import lightgbm as lgb import numpy as np # 训练数据,500个样本,10个维度 train_da ...
- HTML实例 - 购物商场页面
效果图 代码 https://coding.net/u/James_Lian/p/Shopping-page/git 示例 https://coding.net/u/James_Lian/p/Shop ...
- MVC项目,bootstrap升级后index.d.ts编译出错
安装最新的Typescript组件 下载链接 https://www.microsoft.com/en-us/download/details.aspx?id=48593
- Myeclipse 2013 professional 破解
破解前要先关闭Myeclipse2013 1.(1)输入usercode可以随便输入,(2)然后选择Myeclipse的版本,(3)点击systemid按钮 2.然后点击Tools菜单栏下的Rebui ...
- Shell特殊变量介绍与实践 $0
2.$0特殊变量的作用及变量实践$0的作用为取出执行脚本的名称(包括路径) ,下面是该功能的实践.范例4-4:获取脚本的名称及路径. [root@salt-client- sh1]# cat n1.s ...
- 给所有开发者的React Native详细入门指南
建议先下载好资料后,再阅读本文.demo代码和资料下载 目录 一.前言 二.回答一些问题 1.为什么写此教程 2.本文适合哪些人看 3.如何使用本教程 4.需要先学习JavaScript.HTML.C ...
- 有关Oracle统计信息的知识点
一.什么是统计信息 统计信息主要是描述数据库中表,索引的大小,规模,数据分布状况等的一类信息.例如,表的行数,块数,平均每行的大小,索引的leaf blocks,索引字段的行数,不同值的大小等,都属于 ...
- linux创建新用户后shell无法自动补全命令或使用基本的shell命令
新建一用户lqding,切换到该用户下 root@lqding:~# su - lqding$$ echo $USERlqding$ ^[[A 提示符仅仅是一个$,很奇怪.输入命令,用TAB键也无法补 ...
- jdk eclipse SDK下载安装及配置教程
原文地址https://blog.csdn.net/dr_neo/article/details/49870587 最新鲜最详细的Android SDK下载安装及配置教程 最近Neo突发神经,想要将学 ...
- 禁止或强制使用堆分配---《C++必知必会》 条款34
有时候,指明一些特定类的对象不应该被分配到堆(heap)上是个好主意.通常这是为了确保该对象的析构函数一定会得到调用.维护对象本身(body object)的引用计数的句柄对象(handle obje ...