<%@ 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(""); } %>