%@ page language="java" contentType="text/html;charset=GBK" %><%@
page import="java.util.*"%><%@
page import="java.net.URLDecoder"%><%@
page import="com.amarsoft.are.*"%><%@
page import="com.amarsoft.are.jbo.*"%><%@
page import="com.amarsoft.are.lang.DataElement"%><%@
page import="com.amarsoft.are.lang.StringX"%><%@
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.Request"%><%@
page import="com.amarsoft.awe.dw.ui.htmlfactory.*"%><%@
page import="com.amarsoft.awe.dw.ui.htmlfactory.imp.*"%>
<%@page import="com.amarsoft.awe.util.ObjectConverts"%>
<%@page import="com.tenwa.list.filtersql.*"%>
<%
/*
本页面,为Ajax调用页面,无刷新运行
功能:实现列表保存,删除操作,目前不支持保存操作
*/
String sJbo = "";
boolean isSerializJbo = "1".equals(Request.GBKSingleRequest("isSerializJbo",request));//是否序列化jbo
String sRefreshRowIndex = Request.GBKSingleRequest("RefreshRowIndex",request);
int iRefreshRowIndex = -1;
if(sRefreshRowIndex.trim().length()>0&&sRefreshRowIndex.matches("[0-9]+"))
iRefreshRowIndex = Integer.parseInt(sRefreshRowIndex);
//ARE.getLog().trace("isSerializJbo = " + isSerializJbo);
String sCurPage = Request.GBKSingleRequest("curpage",request);
String sRowCount = Request.GBKSingleRequest("rowcount",request);
String sTableIndex = Request.GBKSingleRequest("index",request);
String sSortIndex = Request.GBKSingleRequest("SYS_SortIndex",request);//排序字段序号
String sSortDirect = Request.GBKSingleRequest("SYS_SortDirect",request);//排序方向
int iCurPage = 0;
if(sCurPage.matches("[0-9]+"))
iCurPage = Integer.parseInt(sCurPage);
int iRowCount = -1;
if(sRowCount.trim().length()>0){
iRowCount = Integer.parseInt(sRowCount);
}
//ARE.getLog().trace("iRowCount = " + iRowCount);
String sASD = Request.GBKSingleRequest("SERIALIZED_ASD",request);
ASDataObject asObj = Component.getDataObject(sASD);
//获得查询参数
String sArgsValue = asObj.getParamstr();
List initParameters = asObj.getInitParameters(); //初始参数
List parameters = new ArrayList();
parameters.addAll(initParameters);
//ARE.getLog().trace("initParameters size = " + initParameters.size());
if(!StringX.isSpace(sArgsValue)){
sArgsValue = ASDataWindow.getTrueParams(asObj.getJboWhere(),sArgsValue);
}
//ARE.getLog().trace("sArgsValue = " + sArgsValue);
String sOrigJboWhere = asObj.getJboWhere();
String[]customerFilter=null;
BaseASFilterCustomWhereClauses customFilter=(BaseASFilterCustomWhereClauses)asObj.getFilterCustomWhereClauses();
if(customFilter!=null){
asObj.appendJboWhere(customFilter.getWhereClauses(asObj, request));
}
if(asObj.Filters!=null){
for(int k=0;k0)sColName = sColFilterRefId.toUpperCase();//sColName = sColFilterRefId;
//ARE.getLog().trace("sColName = " + sColName);
String option = "";//Request.GBKSingleRequest("DOFILTER_DF_"+ sColName +"_1_OP",request);
String value = "";//Request.GBKSingleRequest("DOFILTER_DF_"+ sColName +"_1_VALUE",request);
String value2 = "";
if(request.getParameter("DOFILTER_DF_"+ sColName +"_1_OP")!=null){
option = URLDecoder.decode(request.getParameter("DOFILTER_DF_"+ sColName +"_1_OP").toString(),"UTF-8");
//ARE.getLog().trace("option=" + option);
}
if(request.getParameter("DOFILTER_DF_"+ sColName +"_1_VALUE")!=null){
value = URLDecoder.decode(request.getParameter("DOFILTER_DF_"+ sColName +"_1_VALUE").toString(),"UTF-8");
//ARE.getLog().trace("value1 = " + value);
}
if(request.getParameter("DOFILTER_DF_"+ sColName +"_2_VALUE")!=null){
value2 = URLDecoder.decode(request.getParameter("DOFILTER_DF_"+ sColName +"_2_VALUE").toString(),"UTF-8");
//ARE.getLog().trace("value2 = " + value2);
if(value2==null || "".equals(value2)){
value2="undefined";
}
}
if(null!=customFilter){
if(customFilter.checkFilter(sColName)){
value="";
value2="";
}
}
if(option.equalsIgnoreCase("In"))
asFilter.sFilterInputs[0][1] = "_@$^_" + value;//从request中取值
else if(option.equalsIgnoreCase("Area")){
//ARE.getLog().trace("asFilter.sFilterInputs[0].length="+asFilter.sFilterInputs[0].length+",value2=" + value2);
asFilter.sFilterInputs[0][1] = value;//从request中取值
asFilter.sFilterInputs[1][1] = value2;//从request中取值
}else
asFilter.sFilterInputs[0][1] = value;//从request中取值
for(int t=0;t