校验基于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显式的时候会不正常显示,一般需要借 ...
随机推荐
- inotify+rsync安装配置
环境 系统 IP地址 主服务器 CentOS7.4 192.168.1.1 备份服务器 CentOS7.4 192.168.1.2 一.备份服务器 安装rsync(备) wget https://rs ...
- Ubuntu下安装Nginx详细步骤
Nginx安装之前需要三个支持: 模块依赖性 ①gzip 模块需要 zlib 库 ②rewrite 模块需要 pcre 库 ③ssl 功能需要 openssl 库 预先编译好的包: sudo apt- ...
- 103-advanced-上下文
上下文提供了一种通过组件树传递数据的方法,无需在每个级别手动传递道具. 在典型的React应用程序中,数据通过prop自上而下(父到子)传递,但对于应用程序中许多组件所需的某些类型的道具(例如场所偏好 ...
- 7.如何将python脚本打包为exe形式
先安装pyinstaller,pip install pyinstaller 然后 pyinstaller -F combine.py打包即可
- angry_birds_again_and_again(2014年山东省第五届ACM大学生程序设计竞赛A题)
http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2877 题目描述 The problems ca ...
- No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
一.什么是跨域访问 举个栗子:在A网站中,我们希望使用Ajax来获得B网站中的特定内容.如果A网站与B网站不在同一个域中,那么就出现了跨域访问问题.你可以理解为两个域名之间不能跨过域名来发送请求或者请 ...
- ABP常见问题
System.Data.SqlClient.SqlException (0x80131904): 'OFFSET' 附近有语法错误 解决方案:最新的ABP默认支持的是sql2012以上的版本,对于之前 ...
- 01 - spring mvc 概述及配置DispatcherServlet
1.Spring mvc 基于model2实现,整体框架流程如(图片来自百度): ①web容器接收到http请求,若匹配DispatcherServlet的请求映射路径(web.xml),则容器会交给 ...
- 4gcc编译器
gcc编译器(GNU C Compiler) 现在我们所说的 gcc 是 GUN Compiler Collection的缩写,可以支持多种语言编译,比如 C,C++,Java, pascal 等 g ...
- Ubuntu 安装zookeeper
下载zookeeper Zookeeper下载 下载以后将文件迁移到/home/Hadoop/文件夹下面 hongdada@ubuntu:~/Downloads$ sudo mv zookeepe ...