<%@ page import="com.savvion.sbm.bizmanage.aim.*"%> <%@ page import="com.savvion.sbm.bizmanage.api.*"%> <%@ page import="com.savvion.sbm.bizmanage.bscdesigner.*"%> <%@ page import="com.savvion.sbm.bizmanage.bscdesigner.adapters.*"%> <%@ page import="com.savvion.sbm.bizmanage.util.*"%> <%@ page import="com.savvion.sbm.bpmportal.bizsite.util.PropsUtil" %> <%@ page import="com.savvion.sbm.bizmanage.util.BizManageConfiguration" %> <%@ page import="com.savvion.sbm.bpmportal.util.DateTimeUtils"%> <%@ page import="com.savvion.sbm.bpmportal.util.PortalConfig"%> <%@ page import="com.savvion.sbm.bpmportal.util.PortalNumberFormatUtil"%> <%@ page import="com.savvion.sbm.bpmportal.util.UtilManager"%> <%@ page import="com.savvion.sbm.bpmportal.bizsite.util.ServletUtil"%> <%@ page import="java.math.*"%> <%@ page import="java.util.*"%> <%@ page import="java.text.*"%> <%@ page errorPage = "mgmnt_error.jsp"%> <%@ page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8" %> <%@ taglib uri="/bpmportal/tld/bpmportal.tld" prefix="sbm" %> <%@ include file="../common/include_tag.jspf" %> <%! public final static int COLUMN_INSTANCE_NAME = 0; public static final int DESCENDING = -1; public static final int ASCENDING = 1; %> <% bizManage.setRequest(request); bizManage.setResponse(response); String srchBasedOn = "attrRadio"; boolean isReport = false; srchBasedOn = request.getParameter("srchRadiobutton"); if(srchBasedOn != null && "repRadio".equals(srchBasedOn)) isReport = true; else isReport = false; String appName = bizManage.getUTFString("appliSelect"); String reportName = ""; if(isReport) { reportName = bizManage.getUTFString("selReport"); } HashMap w_instanceMap = null; ArrayList attrList = null; String instanceName = ""; String creatorName = ""; String priority = ""; String strFromStDt = ""; String strToStDt = ""; String strFromDueDt = ""; String strToDueDt = ""; if(appName != null && !"".equals(appName)) { String ptId = bizManage.getPTIDFromPTName(appName); //Get other filter parameters.... instanceName = bizManage.getUTFString("instanceName"); if(instanceName == null || "*".equals(instanceName)) instanceName = ""; creatorName = bizManage.getUTFString("creatorName"); if(creatorName == null || "*".equalsIgnoreCase(creatorName)) creatorName = ""; priority = bizManage.getUTFString("prioritySelect"); if(priority == null || "-1".equalsIgnoreCase(priority)) priority = ""; String strStDt = request.getParameter("startDateSelect"); strFromStDt = request.getParameter("startDateFrom"); strToStDt = request.getParameter("startDateTo"); strFromDueDt = request.getParameter("dueDateFrom"); strToDueDt = request.getParameter("dueDateTo"); //convert all dates to long.... long fromStDt = 0; long toStDt = 0; long fromDueDt = 0; long toDueDt = 0; try { if(strFromStDt != null && !"".equals(strFromStDt)) fromStDt = DateTimeUtils.getLong(bizManage.getDateFormatter(),strFromStDt.trim()); else fromStDt = 0; if(strToStDt != null && !"".equals(strToStDt)) toStDt = DateTimeUtils.getLong(bizManage.getDateFormatter(),strToStDt.trim()); else toStDt = 0; if(strFromDueDt != null && !"".equals(strFromDueDt)) fromDueDt = DateTimeUtils.getLong(bizManage.getDateFormatter(),strFromDueDt.trim()); else fromDueDt = 0; if(strToDueDt != null && !"".equals(strToDueDt)) toDueDt = DateTimeUtils.getLong(bizManage.getDateFormatter(),strToDueDt.trim()); else toDueDt = 0; } catch(Exception e) {} ArrayList w_DataSlotList = (ArrayList)session.getAttribute("AllDsList"); if(w_DataSlotList == null) w_DataSlotList = new ArrayList(); String dsList = bizManage.getUTFString("selDataslots"); attrList = new ArrayList(); if(dsList != null) { StringTokenizer strTok = new StringTokenizer(dsList,"|"); while(strTok.hasMoreTokens()) { String dsId = (String)strTok.nextToken(); if(dsId == null) continue; int idx = -1; try { idx = Integer.parseInt(dsId.trim()); } catch(Exception e) { } if(w_DataSlotList != null && idx != -1) { Dataslot ds = (Dataslot)w_DataSlotList.get(idx+1); if(ds != null) { attrList.add(ds); } } } } if(!isReport) { //Call getInstanceList with default filter parameters w_instanceMap = bizManage.getInstanceList(ptId,instanceName,creatorName,priority,fromStDt,toStDt,fromDueDt,toDueDt,attrList); } else { ArrayList reportparameter=bizManage.getReportParameters(appName,reportName,false); HashMap newValues = new HashMap(); if(bizManage.reportHasParameters(appName,reportName,false)) { for(int i=0 ;i < reportparameter.size() ;i++) { ParameterDesc paramdesc=(ParameterDesc)reportparameter.get(i); String paramName = bizManage.getUTFString("param"+Integer.toString(i)+"name") ; String paramValue = null; if(paramdesc.isDate()) { paramValue = bizManage.getUTFString("param"+String.valueOf(i)+"value"); } else { paramValue = bizManage.getUTFString("param"+Integer.toString(i)+"value"); } if(paramName != null) newValues.put(paramName,(paramValue == null ? "" : paramValue)); } } w_instanceMap = bizManage.getInstanceList(appName, reportName,newValues); //Set the attrList... ArrayList tList = PIListView.getAttrFromReport(appName,reportName,ptId,bizManage); attrList = (ArrayList)tList.get(0); HashMap map = (HashMap)tList.get(1); instanceName = (map.get("process_instance_name") == null ? "" : (String)map.get("process_instance_name")); creatorName = (map.get("creator") == null ? "": (String)map.get("creator")); priority = (map.get("priority") == null ? "" : (String)map.get("priority")); String stdt = (map.get("STARTTIME") == null ? "" : (String)map.get("STARTTIME")); String duedt = (map.get("DUEDATE") == null ? "" : (String)map.get("DUEDATE")); fromStDt = 0; toStDt = 0; fromDueDt = 0; toDueDt = 0; } String srchCriteria = appName+" ^"+ptId+" ^"+creatorName+" ^"+priority+" ^"+fromStDt+" ^"+toStDt+" ^"+fromDueDt+" ^"+toDueDt+" ^"+instanceName+" ^"+new Boolean(isReport).toString()+" ^"+reportName+" "; session.setAttribute("InstanceSearchCriteria",srchCriteria); session.setAttribute("InstanceResult",w_instanceMap); session.setAttribute("InstanceAttrList",attrList); session.setAttribute("AppliName",appName); } else { attrList = (ArrayList)session.getAttribute("InstanceAttrList"); appName = (String)session.getAttribute("AppliName"); if(request.getParameter("refresh") != null && "true".equals(request.getParameter("refresh")) && session.getAttribute("InstanceSearchCriteria") != null) { String crtieria = (String)session.getAttribute("InstanceSearchCriteria"); StringTokenizer strTok = new StringTokenizer(crtieria,"^"); ArrayList lst = new ArrayList(); while(strTok.hasMoreTokens()) { String strVal = (String)strTok.nextToken(); if(strVal == null) strVal = ""; lst.add(strVal.trim()); } creatorName = (String)lst.get(2); if(creatorName == null) creatorName = ""; priority = (String)lst.get(3); if(priority == null) priority = ""; strFromStDt = (String)lst.get(4); strToStDt = (String)lst.get(5); strFromDueDt = (String)lst.get(6); strToDueDt = (String)lst.get(7); instanceName = (String)lst.get(8); String isRpt = (String)lst.get(9); if(isRpt != null && "true".equalsIgnoreCase(isRpt)) isReport = true; else isReport = false; reportName = (String)lst.get(10); if(reportName == null) reportName=""; reportName=reportName.trim(); if(!isReport) { w_instanceMap = bizManage.getInstanceList((String)lst.get(1),instanceName,creatorName,priority,Long.parseLong(strFromStDt.trim()),Long.parseLong(strToStDt.trim()),Long.parseLong(strFromDueDt.trim()),Long.parseLong(strToDueDt.trim()),attrList); } else { ArrayList reportparameter=bizManage.getReportParameters(appName,reportName,false); HashMap newValues = new HashMap(); if(bizManage.reportHasParameters(appName,reportName,false)) { for(int i=0 ;i < reportparameter.size() ;i++) { ParameterDesc paramdesc=(ParameterDesc)reportparameter.get(i); String paramName = bizManage.getUTFString("param"+Integer.toString(i)+"name") ; String paramValue = null; if(paramdesc.isDate()) { paramValue = bizManage.getUTFString("param"+String.valueOf(i)+"value"); } else { paramValue = bizManage.getUTFString("param"+Integer.toString(i)+"value"); } if(paramName != null) newValues.put(paramName,(paramValue == null ? "" : paramValue)); } } w_instanceMap = bizManage.getInstanceList(appName, reportName,newValues); } session.setAttribute("InstanceResult",w_instanceMap); } else { w_instanceMap = (HashMap)session.getAttribute("InstanceResult"); } if(w_instanceMap == null) { bizManage.log("Application selected is either null or blank"); } } int pageSize = PortalConfig.self().getConfig().getPageSize(); PIListView w_piListView = new PIListView(bizManage,pageSize,10,attrList); String currPage = request.getParameter("currentPage"); String currSet = request.getParameter("currentSet"); String currSort = request.getParameter("currentSortCol"); String currSortOrder = request.getParameter("currentSortOrder"); Paginator w_paginator = null; //Get Current page set details int currSt = 1; if(currSet == null || "".equals(currSet) || "0".equals(currSet)) { currSt = 1; } else { try { currSt = Integer.parseInt(currSet.trim()); } catch(Exception e) { currSt = 1; } } //Get Current page details int currPg = 1; if(currPage == null || "".equals(currPage) || "0".equals(currPage)) { if(currSt == 1) currPg = 1; else currPg = (currSt - 1) * w_piListView.NO_ITEMS_PER_PAGE; } else { try { currPg = Integer.parseInt(currPage.trim()); } catch(Exception e) { currPg = 1; } } //Get Current sort details int currSrt = COLUMN_INSTANCE_NAME; if(currSort == null || "".equals(currSort)) { currSrt = COLUMN_INSTANCE_NAME; } else { if("0".equals(currSort.trim())) { currSrt = COLUMN_INSTANCE_NAME; } } //Get Current sort order details int currSrtOrd = ASCENDING; if(currSortOrder == null || "".equals(currSortOrder)) { currSrtOrd = ASCENDING; } else { if("1".equalsIgnoreCase(currSortOrder)) currSrtOrd = ASCENDING; else if("-1".equalsIgnoreCase(currSortOrder)) currSrtOrd = DESCENDING; else currSrtOrd = ASCENDING; } //Get pagination details from session if (session.getAttribute("Paginator") != null) { w_paginator = (Paginator)session.getAttribute("Paginator"); } else { w_paginator = new Paginator(new SearchResultData(),w_piListView.NO_ITEMS_PER_PAGE,w_piListView.NO_PAGES_PER_SET); session.setAttribute("Paginator",w_paginator); } //Set the pagination w_piListView.setPaginator(w_paginator); w_piListView.setListItems(w_piListView.convertHashMap2ArrayList(w_instanceMap,attrList)); if (w_paginator != null) w_paginator.sort(currSrt,ParameterDataType.VARCHAR,(currSrtOrd == DESCENDING ? false : true)); SearchResultData srchData = w_paginator.getPageItem(currPg); Object[][] rowData = srchData.getRowData(); boolean recFound = true; double d1 = new Double(w_piListView.NO_ITEMS_PER_PAGE).doubleValue(); double d2 = new Double(w_piListView.NO_PAGES_PER_SET).doubleValue(); double d3 = new Double(w_paginator.getCount()).doubleValue(); double d = d3/(d1* d2); double w_lastSet = Math.ceil(d3/(d1* d2)); double w_lastPg = Math.ceil(d3/d1); if(rowData == null || rowData.length == 0) recFound = false; %> <sbm:message key="InstanceList" /> - <sbm:message key="SBM" /> <%@ include file="../common/include_css_static.jsp" %> <%@ include file="../common/include_top.jsp" %>
<%@ include file="../common/include_body.jsp" %>
<% String menu1 = "1"; String submenu1 = "3"; %> <%@ include file="../common/include_menu_static.jsp" %>
<% if(ServletUtil.isBreadcrumbEnabled(request)) {%> <% } %>
" class="ScrnButton" onmouseover="this.className='ScrnButtonHover';" onmouseout="this.className='ScrnButton';" onclick="document.InstanceResults.actionToPerform.value='save';" /> " class="ScrnButton" onmouseover="this.className='ScrnButtonHover';" onmouseout="this.className='ScrnButton';" onclick="return removeInstances(document.InstanceResults,'chk','ResultTable');"/> " class="ScrnButton" onmouseover="this.className='ScrnButtonHover';" onmouseout="this.className='ScrnButton';" /> " class="ScrnButton" onmouseover="this.className='ScrnButtonHover';" onmouseout="this.className='ScrnButton';" onclick="MM_goToURL('self','../management/instance_search.jsp?appliSelect=<%=appName%>&actionToPerform=select');return document.MM_returnValue" /> " class="ScrnButton" onmouseover="this.className='ScrnButtonHover';" onmouseout="this.className='ScrnButton';" onclick="document.InstanceResults.actionToPerform.value='update';" /> " class="ScrnButton" onmouseover="this.className='ScrnButtonHover';" onmouseout="this.className='ScrnButton';" onclick="return removeAllInstances(document.InstanceResults);" />
<%@ include file="../common/include_copyright_static.jsp" %>
<%@ include file="../common/include_bottom.jsp" %>
<% String[] cols = srchData.getColumnName(); if(cols != null && cols.length > 0) { for(int i=1;i < cols.length;i++) { if(cols[i] != null) { %> <% } } } %> <% if(recFound) { int colCount = srchData.getColumnName().length; //String[] cols = srchData.getColumnName(); for(int nCounter = 0; nCounter < rowData.length; nCounter++) { %> "> <% for(int i=0;i < cols.length-1;i++) { //Get the dataslot details from column Name Dataslot w_ds = null; String nm = cols[i+1]; for(int dsCount=0;dsCount < attrList.size();dsCount++) { w_ds = (Dataslot)attrList.get(dsCount); if(w_ds != null && w_ds.getName().equals(cols[i+1])) break; } if(w_ds != null) { String val = UtilManager.escapeHTML((String)rowData[nCounter][i+1]); if(w_ds.getType().equalsIgnoreCase(Dataslot.BOOLEAN) || w_ds.getType().equalsIgnoreCase(Dataslot.ABL_LOGICAL)) { if(val.equalsIgnoreCase("0")) val = "No"; else val = "Yes"; %> <% } else if(w_ds.getType().equalsIgnoreCase(Dataslot.DATETIME)) { if(val != null && !"".equals(val.trim())) { val = bizManage.getDate(Long.valueOf(val), appName, w_ds.getName()); } %> <% } else if(w_ds.getType().equalsIgnoreCase(Dataslot.ABL_DATETIME)) { if(val != null && !"".equals(val.trim())) { try { java.util.GregorianCalendar cal = com.progress.util.DateTimeTzHelper.convertOEStrTimeToGregCal(val); if (cal != null && cal.getTime() != null) val = bizManage.getDate(cal.getTime().getTime(), appName, w_ds.getName()); } catch (Exception ex) {} } %> <% } else if(w_ds.getType().equalsIgnoreCase(Dataslot.XML)) { String conval = null; if(val != null) conval = bizManage.getXML(val); %> <% } else if(w_ds.getType().equalsIgnoreCase(Dataslot.STRING) && w_ds.isMultiLine()) { %> <% } else if(w_ds.getType().equalsIgnoreCase(Dataslot.URL)) { %> <% } else if(w_ds.getType().equalsIgnoreCase(Dataslot.LONG)) { val = (val == null) ? " " : PortalNumberFormatUtil.prepareLocalizedNumber(Long.parseLong(val), bizManage.getLocale()); %> <% } else if(w_ds.getType().equalsIgnoreCase(Dataslot.DOUBLE)) { val = (val == null) ? " " : PortalNumberFormatUtil.prepareLocalizedNumber(Double.parseDouble(val), bizManage.getLocale()); %> <% } else if(w_ds.getType().equalsIgnoreCase(Dataslot.DECIMAL)) { val = (val == null) ? " " : PortalNumberFormatUtil.prepareLocalizedNumber(new BigDecimal(val), bizManage.getLocale()); %> <% } else { %> <% } } } %> <% } } else { %> <% } %>
<% if(currSrt == COLUMN_INSTANCE_NAME && currSrtOrd == ASCENDING) { %> <% } else if(currSrt == COLUMN_INSTANCE_NAME && currSrtOrd == DESCENDING) { %> <% } else { %> <% } %>
"> ">
<%= bizManage.getDataslotLabel(appName, cols[i]) %>
<%=BalScorecardHelper.getSrNo4Display(w_piListView.NO_ITEMS_PER_PAGE*(currPg - 1) + nCounter+1)%> ><%=(val == null) ? " " : val%> " /><%=(val == null) ? " " : val%> " /><%=(val == null) ? " " : val%> " /><%=(val == null) ? " " : val%> " />" /> <%=(val == null) ? " " : val%> " /> <%= val %> <%= val %> <%= val %> <%=(val == null) ? " " : val%> " />


<% if(!recFound) { %> <% } else { %> <% } %>
: <    >     <%=(w_instanceMap == null) ? 0 : w_instanceMap.size()%>: <% if(currSt == 1) { %> <  <% } else { %> <  <% } int endIdx = 0; int stIdx = (currSt - 1)*w_piListView.NO_PAGES_PER_SET + 1; if(w_lastPg > currSt*w_piListView.NO_PAGES_PER_SET) { endIdx = currSt*w_piListView.NO_PAGES_PER_SET; } else { endIdx = new Double(w_lastPg).intValue(); } for(int l = stIdx;l <= endIdx;l++) { if(currPg != l) { %> <%=l%>  <% } else { %>  <%=l%>  <% } } if(currSt < w_lastSet) { %> >    <% } else { %> >    <% } %> <%=(w_instanceMap == null) ? 0 : w_instanceMap.size()%>
<% if((attrList != null && attrList.size() > 0) && recFound) { %>
<%=w_piListView.getHTMLString4ModifyAll(attrList,bizManage.getJSCalendarDateFormat(), appName)%>
" class="SegInBtn" onmouseover="this.className='SegInBtnHover';" onmouseout="this.className='SegInBtn';" onclick="return clickedApply(document.InstanceResults,'chk','ResultTable');">
<% } else{%> <% } %>