1 19 package org.openbravo.erpCommon.ad_forms; 20 21 import org.openbravo.erpCommon.utility.ToolBar; 22 23 import org.openbravo.base.secureApp.*; 24 import org.openbravo.xmlEngine.XmlDocument; 25 import java.io.*; 26 import javax.servlet.*; 27 import javax.servlet.http.*; 28 import org.openbravo.utils.Replace; 29 import java.sql.Connection ; 30 import java.util.*; 31 import org.openbravo.erpCommon.utility.SequenceIdData; 32 33 import org.openbravo.erpCommon.utility.*; 34 import org.openbravo.erpCommon.ad_combos.*; 35 import org.openbravo.erpCommon.businessUtility.WindowTabs; 36 37 38 39 public class RemittanceCancel extends HttpSecureAppServlet { 40 41 42 public void init (ServletConfig config) { 43 super.init(config); 44 boolHist = false; 45 } 46 47 public void doPost (HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException { 48 VariablesSecureApp vars = new VariablesSecureApp(request); 49 50 if (vars.commandIn("DEFAULT")) { 51 String strDesde = vars.getGlobalVariable("inpDesde", "RemittanceCancel.inpDesde",""); 54 String strHasta = vars.getGlobalVariable("inpHasta", "RemittanceCancel.inpHasta",""); 55 String strRemittanceId = vars.getGlobalVariable("inpRemittanceId", "RemittanceCancel.inpRemittanceId",""); 56 if (log4j.isDebugEnabled()) log4j.debug("FRAME1--inpDesde:"+strDesde+" inpHasta:"+strHasta+"inpRemittanceId:"+strRemittanceId); 57 printPage(response, vars, strDesde, strHasta, strRemittanceId); 59 } else if (vars.commandIn("FIND")) { 68 String strDesde = vars.getStringParameter("inpDesde"); 69 String strHasta = vars.getStringParameter("inpHasta"); 70 String strRemittanceId = vars.getStringParameter("inpRemittanceId"); 71 if (!strDesde.equals("")) vars.setSessionValue("RemittanceCancel.inpDesde",strDesde); 72 else vars.removeSessionValue("RemittanceCancel.inpDesde"); 73 if (!strHasta.equals("")) vars.setSessionValue("RemittanceCancel.inpHasta",strDesde); 74 else vars.removeSessionValue("RemittanceCancel.inpHasta"); 75 if (!strRemittanceId.equals("")) vars.setSessionValue("RemittanceCancel.inpRemittanceId",strRemittanceId); 76 else vars.removeSessionValue("RemittanceCancel.inpRemittanceId"); 77 if (log4j.isDebugEnabled()) log4j.debug("FIND--inpDesde:"+strDesde+" inpHasta:"+strHasta+"inpRemittanceId:"+strRemittanceId); 78 printPage(response, vars, strDesde, strHasta, strRemittanceId); 80 } else if (vars.commandIn("CANCEL")) { 81 String strMessage = processCancel(vars); 82 vars.setSessionValue("RemittanceCancel.message", strMessage); 83 response.sendRedirect(strDireccion + request.getServletPath()); 84 } else if (vars.commandIn("RETURN")) { 85 String strMessage = processReturn(vars); 86 vars.setSessionValue("RemittanceCancel.message", strMessage); 87 response.sendRedirect(strDireccion + request.getServletPath()); 88 }else pageError(response); 89 } 90 91 String processReturn(VariablesSecureApp vars) throws IOException, ServletException { 92 if (log4j.isDebugEnabled()) log4j.debug("processReturn"); 93 String strRemittanceLineId = vars.getInStringParameter("inpcRLId"); 94 String strDateAcct = vars.getRequiredStringParameter("inpDateAcct"); 95 96 if (strRemittanceLineId.equals("")) return ""; 97 Connection conn = null; 98 99 String strDPMID = ""; 100 String messageResult = ""; 101 102 try { 103 conn = this.getTransactionConnection(); 104 if (strRemittanceLineId.startsWith("(")) strRemittanceLineId = strRemittanceLineId.substring(1, strRemittanceLineId.length()-1); 105 if (!strRemittanceLineId.equals("")) { 106 strRemittanceLineId = Replace.replace(strRemittanceLineId, "'", ""); 107 StringTokenizer st = new StringTokenizer(strRemittanceLineId, ",", false); 108 109 Integer line = null; 110 while (st.hasMoreTokens()) { 111 String strRLId = st.nextToken().trim(); 112 RemittanceCancelData.setReturned(conn, this, strRLId); 113 if (strDPMID.equals("")) { 114 strDPMID = SequenceIdData.getSequence(this, "C_DP_Management", vars.getClient()); 115 line = new Integer (RemittanceCancelData.getLineDPM(this, strDPMID)); 116 String strDocumentNo = Utility.getDocumentNo(this, vars.getClient(), "C_DP_Management", true); 117 RemittanceCancelData.insertDPManagement(conn, this, strDPMID, vars.getClient(), vars.getOrg(), vars.getUser(), strDocumentNo, strDateAcct, strRLId); 118 } 119 line += 10; 120 String strLID = SequenceIdData.getSequence(this, "C_DP_ManagementLine", vars.getClient()); 121 RemittanceCancelData.returnDPOriginal(conn, this, strLID, vars.getClient(), vars.getOrg(), vars.getUser(), strDPMID,strRLId, line.toString()); 122 123 line += 10; 124 strLID = SequenceIdData.getSequence(this, "C_DP_ManagementLine", vars.getClient()); 125 RemittanceCancelData.returnDPGenerated(conn, this, strLID, vars.getClient(), vars.getOrg(), vars.getUser(), strDPMID,strRLId, line.toString()); 126 } 127 if (log4j.isDebugEnabled()) log4j.debug("*********************dpmid: "+strDPMID); 128 if (!strDPMID.equals("")){ 130 132 RemittanceCancelData.process800140(conn, this, strDPMID); 133 134 159 } 160 161 } else { 162 messageResult = Utility.messageBD(this, "ProcessRunError", vars.getLanguage()); 163 } 164 releaseCommitConnection(conn); 165 } catch (Exception e) { 166 try { 167 releaseRollbackConnection(conn); 168 } catch (Exception ignored) {} 169 e.printStackTrace(); 170 log4j.warn("Rollback in transaction"); 171 return Utility.messageBD(this, "ProcessRunError", vars.getLanguage()); 172 } 173 return messageResult.equals("")?Utility.messageBD(this, "Success", vars.getLanguage()):messageResult; 174 } 175 176 String processCancel(VariablesSecureApp vars) throws IOException, ServletException { 177 if (log4j.isDebugEnabled()) log4j.debug("processCancel"); 178 String strRemittanceLineId = vars.getInStringParameter("inpcRLId"); 179 String strDateAcct = vars.getRequiredStringParameter("inpDateAcct"); 180 181 if (strRemittanceLineId.equals("")) return ""; 182 Connection conn = null; 183 184 String strSettlementID = ""; 185 String messageResult = ""; 186 String strDocumentNo = ""; 187 188 189 try { 190 conn = this.getTransactionConnection(); 191 if (strRemittanceLineId.startsWith("(")) strRemittanceLineId = strRemittanceLineId.substring(1, strRemittanceLineId.length()-1); 192 if (!strRemittanceLineId.equals("")) { 193 strRemittanceLineId = Replace.replace(strRemittanceLineId, "'", ""); 194 StringTokenizer st = new StringTokenizer(strRemittanceLineId, ",", false); 195 while (st.hasMoreTokens()) { 196 String strRLId = st.nextToken().trim(); 197 if (log4j.isDebugEnabled()) log4j.debug("RemittanceLineId"+strRLId); 198 if (strSettlementID.equals("")) 199 { 200 String strOrg = RemittanceCancelData.selectOrg(this, strRLId); 201 strSettlementID = SequenceIdData.getSequence(this, "C_Settlement", vars.getClient()); 202 strDocumentNo = Utility.getDocumentNo(this, vars.getClient(), "C_Settlement", true); 203 RemittanceCancelData.insertSettlement(conn, this, strSettlementID, vars.getClient(), strOrg, vars.getUser(), strDocumentNo, strDateAcct, strRLId); 204 if (log4j.isDebugEnabled()) log4j.debug("Inserted Settlement "+strSettlementID); 205 } 206 RemittanceCancelData.cancel(conn, this, strSettlementID, strRLId); 207 if (log4j.isDebugEnabled()) log4j.debug("Canceled "+strSettlementID); 208 } 209 if (!strSettlementID.equals("")){ 212 String pinstance = SequenceIdData.getSequence(this, "AD_PInstance", vars.getClient()); 213 if (log4j.isDebugEnabled()) log4j.debug("call c_settlement_post pinstnce "+pinstance); 215 RemittanceCancelData.process800025(conn, this, strSettlementID); 216 218 219 248 } 249 } 250 releaseCommitConnection(conn); 251 } catch (Exception e) { 252 try { 253 releaseRollbackConnection(conn); 254 } catch (Exception ignored) {} 255 e.printStackTrace(); 256 log4j.debug("Rollback in transaction"); 257 return Utility.messageBD(this, "ProcessRunError", vars.getLanguage()); 258 } 259 return messageResult.equals("")?Utility.messageBD(this, "Success", vars.getLanguage())+" Settlemt doc No. "+strDocumentNo:messageResult; 260 } 261 262 373 374 375 void printPage(HttpServletResponse response, VariablesSecureApp vars, String strDesde, String strHasta, String strRemittanceId) throws IOException, ServletException { 376 if (log4j.isDebugEnabled()) log4j.debug("Output: Frame 1 of the CancelRemittance seeker"); 377 XmlDocument xmlDocument; 378 RemittanceCancelData data[]=RemittanceCancelData.select(this, vars.getLanguage(), Utility.getContext(this, vars, "#User_Client", "RemittanceCancel"), 379 Utility.getContext(this, vars, "#User_Org", "RemittanceCancel"), 380 strRemittanceId,strDesde,strHasta); 381 382 if (data.length!=0) { 383 xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_forms/RemittanceCancel").createXmlDocument(); 384 xmlDocument.setData("structure1", data); 385 } else { 386 String [] discard = {"sectionDetail"}; 387 xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_forms/RemittanceCancel",discard).createXmlDocument(); 388 } 389 391 ToolBar toolbar = new ToolBar(this, vars.getLanguage(), "RemittanceCancel", false, "", "", "",false, "ad_forms", strReplaceWith, false, true, true); 392 toolbar.prepareSimpleToolBarTemplate(); 393 xmlDocument.setParameter("toolbar", toolbar.toString()); 394 395 xmlDocument.setParameter("calendar", vars.getLanguage().substring(0,2)); 396 xmlDocument.setParameter("language", "LNG_POR_DEFECTO=\"" + vars.getLanguage() + "\";"); 397 xmlDocument.setParameter("direction", "var baseDirection = \"" + strReplaceWith + "/\";\n"); 398 xmlDocument.setParameter("dateFromdisplayFormat", vars.getSessionValue("#AD_SqlDateFormat")); 399 xmlDocument.setParameter("dateFromsaveFormat", vars.getSessionValue("#AD_SqlDateFormat")); 400 xmlDocument.setParameter("dateTodisplayFormat", vars.getSessionValue("#AD_SqlDateFormat")); 401 xmlDocument.setParameter("dateTosaveFormat", vars.getSessionValue("#AD_SqlDateFormat")); 402 try { 404 KeyMap key = new KeyMap(this, vars, "RemittanceCancel.html"); 405 xmlDocument.setParameter("keyMap", key.getFormKeyMaps()); 406 } catch (Exception ex) { 407 throw new ServletException(ex); 408 } 409 try { 410 WindowTabs tabs = new WindowTabs(this, vars, "org.openbravo.erpCommon.ad_forms.RemittanceCancel"); 411 xmlDocument.setParameter("parentTabContainer", tabs.parentTabs()); 412 xmlDocument.setParameter("mainTabContainer", tabs.mainTabs()); 413 xmlDocument.setParameter("childTabContainer", tabs.childTabs()); 414 xmlDocument.setParameter("theme", vars.getTheme()); 415 NavigationBar nav = new NavigationBar(this, vars.getLanguage(), "RemittanceCancel.html", classInfo.id, classInfo.type, strReplaceWith, tabs.breadcrumb()); 416 xmlDocument.setParameter("navigationBar", nav.toString()); 417 LeftTabsBar lBar = new LeftTabsBar(this, vars.getLanguage(), "RemittanceCancel.html", strReplaceWith); 418 xmlDocument.setParameter("leftTabs", lBar.manualTemplate()); 419 } catch (Exception ex) { 420 throw new ServletException(ex); 421 } 422 { 423 OBError myMessage = vars.getMessage("RemittanceCancel"); 424 vars.removeMessage("RemittanceCancel"); 425 if (myMessage!=null) { 426 xmlDocument.setParameter("messageType", myMessage.getType()); 427 xmlDocument.setParameter("messageTitle", myMessage.getTitle()); 428 xmlDocument.setParameter("messageMessage", myMessage.getMessage()); 429 } 430 } 431 432 434 if (!strRemittanceId.equals("")) xmlDocument.setParameter("remittanceId",strRemittanceId); 435 436 xmlDocument.setData("reportRemittance_ID","liststructure", RemittanceComboData.selectNoCanceled(this, vars.getLanguage(), vars.getUserClient(), vars.getUserOrg())); 437 if (!strDesde.equals("")) xmlDocument.setParameter("desde",strDesde); 438 if (!strHasta.equals("")) xmlDocument.setParameter("hasta",strHasta); 439 440 response.setContentType("text/html; charset=UTF-8"); 441 PrintWriter out = response.getWriter(); 442 out.println(xmlDocument.print()); 443 out.close(); 444 } 445 446 public String getServletInfo() { 447 return "Servlet that presents the MaterialTransactions seeker"; 448 } } 450 | Popular Tags |