%@ page language="java" contentType="text/html;charset=GBK" %><%@
page import="java.util.*"%><%@
page import="com.amarsoft.are.jbo.*"%><%@
page import="com.amarsoft.awe.control.model.*"%><%@
page import="com.amarsoft.awe.dw.*"%><%@
page import="com.amarsoft.awe.dw.ui.actions.IDataAction"%><%@
page import="com.amarsoft.awe.dw.ui.info.DefaultAction"%><%@
page import="com.amarsoft.awe.dw.ui.util.*"%><%@
page import="com.amarsoft.awe.dw.ui.util.ConvertXmlAndJava"%><%@
page import="com.amarsoft.awe.dw.ui.util.Request"%><%@
page import="com.amarsoft.awe.dw.ui.validator.client.*"%><%@
page import="com.amarsoft.awe.dw.ui.htmlfactory.*"%><%@
page import="com.amarsoft.awe.dw.ui.htmlfactory.imp.*"%><%@
page import="com.amarsoft.awe.util.ObjectConverts"%>
<%
String sJbo = Request.GBKSingleRequest("SERIALIZED_JBO",request);
String sASD = Request.GBKSingleRequest("SERIALIZED_ASD",request);
//sASD = Component.getDataObject(sASD);
String sPostEvents = Request.GBKSingleRequest("POST_EVENTS",request);//前台执行脚本
String sFormId = Request.GBKSingleRequest("SYS_FORMID",request);//获得formid,目的为了重新刷新局部页面
String sAction = Request.GBKSingleRequest("SYS_ACTION",request);//获得动作名称
String sBpData = Request.GBKSingleRequest("SYS_BPDATA",request);//获得动作数据
String sUpdatedFields = Request.GBKSingleRequest("UPDATED_FIELD",request);//获得保存过的字段
if(sBpData.equals("undefined"))
sBpData = "";
IDataAction action = new DefaultAction(request,sUpdatedFields);
boolean result = action.run(sJbo,sASD,sAction,ConvertXmlAndJava.xml2java(sBpData));
if(result){
ASDataObject asd = action.getAsObj();//重新获得asdataobject对象
//重新设置验证规则
//asd.setValidateRules(com.amarsoft.awe.dw.ui.validator.ValidateRule.getRules(asd,"EDIT",""));
BizObject bizOjb = action.getBizObjects()[0];//重新获得jbo对象
sJbo = ObjectConverts.getString(bizOjb);//获得新的序列化后的字符串
//重新赋值
out.println("", "<\\/script>");
out.println("parent.setItemValue(dwindex,0,'"+ attribute.getName().toUpperCase() +"','"+ sValue +"');");
out.println("var iOldFieldIndex = parent.getDisplayFieldIndex(dwindex,'"+attribute.getName().toUpperCase()+"');");
out.println("parent.ARRAY_OLD[dwindex][iOldFieldIndex] = '"+sValue+"'");
out.println("}");
}
//序列化到hidden
out.println("parent.getObj(dwindex,'SERIALIZED_JBO').value='"+sJbo+"';");
out.println("parent.getObj(dwindex,'SERIALIZED_ASD').value='"+sASD+"';");
}
//刷新验证规则
JQueryForm validCode = new JQueryForm(action.getAsObj().getDONO(),asd.getValidateTagList());
validCode.setJsPreObjectName("parent.");
String sValidCode = "parent._user_validator["+ sFormId.substring(8) +"] = " + validCode.generate(request.getContextPath(),sFormId,asd.getValidateRules()).replaceAll("\n","") ;
out.println(sValidCode);
//System.out.println("sValidCode = " + sValidCode);
//如果有返回结果,则存入数组
//System.out.println("action.getResultInfo()=" +action.getResultInfo());
out.println("parent.aDWResultError[dwindex]='';");
if(action.getResultInfo()!=null)
out.println("parent.aDWResultInfo[dwindex]='"+ com.amarsoft.awe.dw.ui.util.WordConvertor.convertJava2Js(action.getResultInfo()) +"';");
//最后提示保存成功并执行event事件
out.println("parent.updateSuccess('数据保存成功!','"+ sPostEvents.replaceAll("'","\\\\'") +"');");
out.println("parent.document.getElementById('UPDATED_FIELD').value='';");
out.println("");
}else{
out.println("");
}
%>