1 19 package org.openbravo.erpCommon.info; 20 21 import org.openbravo.base.secureApp.*; 22 import org.openbravo.xmlEngine.XmlDocument; 23 import org.openbravo.erpCommon.utility.Utility; 24 import java.io.*; 25 import javax.servlet.*; 26 import javax.servlet.http.*; 27 import org.openbravo.utils.Replace; 28 29 import org.openbravo.erpCommon.utility.DateTimeData; 30 31 import org.openbravo.erpCommon.ad_combos.CashBookComboData; 32 33 34 public class CashJournal extends HttpSecureAppServlet { 35 36 37 public void init (ServletConfig config) { 38 super.init(config); 39 boolHist = false; 40 } 41 42 public void doPost (HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException { 43 VariablesSecureApp vars = new VariablesSecureApp(request); 44 45 if (vars.commandIn("DEFAULT")) { 46 String strNameValue = vars.getRequestGlobalVariable("inpNameValue", "CashJournal.name"); 47 if (!strNameValue.equals("")) vars.setSessionValue("CashJournal.name", strNameValue + "%"); 48 printPageFS(response, vars); 49 } else if (vars.commandIn("KEY")) { 50 String strKeyValue = vars.getRequestGlobalVariable("inpNameValue", "CashJournal.name"); 51 vars.setSessionValue("CashJournal.name", strKeyValue + "%"); 52 CashJournalData[] data = CashJournalData.selectKey(this, vars.getLanguage(), Utility.getContext(this, vars, "#User_Client", "CashJournal"), Utility.getContext(this, vars, "#User_Org", "CashJournal"), strKeyValue + "%"); 53 if (data!=null && data.length==1) { 54 printPageKey(response, vars, data); 55 } else printPageFS(response, vars); 56 } else if (vars.commandIn("FRAME1")) { 57 String strNameValue = vars.getGlobalVariable("inpName", "CashJournal.name", ""); 58 printPageFrame1(response, vars, strNameValue); 59 } else if (vars.commandIn("FRAME2")) { 60 String strName = vars.getGlobalVariable("inpKey", "CashJournal.name", ""); 61 String strCashBook = vars.getStringParameter("inpCashbook"); 62 String strInvoice = vars.getStringParameter("inpcDebtPaymentId"); 63 String strDateFrom = vars.getStringParameter("inpDateFrom"); 64 String strDateTo = vars.getStringParameter("inpDateTo"); 65 String strCal1 = vars.getStringParameter("inpCal1"); 66 String strCalc2 = vars.getStringParameter("inpCalc2"); 67 String strAbsAmount = vars.getStringParameter("inpAbsAmount"); 68 printPageFrame2(response, vars, strName, strCashBook, strInvoice, strDateFrom, strDateTo, strCal1, strCalc2, strAbsAmount); 69 } else if (vars.commandIn("FIND")) { 70 String strName = vars.getGlobalVariable("inpKey", "CashJournal.name", ""); 71 String strCashBook = vars.getStringParameter("inpCashbook"); 72 String strInvoice = vars.getStringParameter("inpcDebtPaymentId"); 73 String strDateFrom = vars.getStringParameter("inpDateFrom"); 74 String strDateTo = vars.getStringParameter("inpDateTo"); 75 String strCal1 = vars.getStringParameter("inpCal1"); 76 String strCalc2 = vars.getStringParameter("inpCalc2"); 77 String strAbsAmount = vars.getStringParameter("inpAbsAmount"); 78 79 vars.setSessionValue("CashJournal.initRecordNumber", "0"); 80 81 printPageFrame2(response, vars, strName, strCashBook, strInvoice, strDateFrom, strDateTo, strCal1, strCalc2, strAbsAmount); 82 } else if (vars.commandIn("FRAME3")) { 83 printPageFrame3(response, vars); 84 } else if (vars.commandIn("PREVIOUS")) { 85 String strInitRecord = vars.getSessionValue("CashJournal.initRecordNumber"); 86 String strRecordRange = Utility.getContext(this, vars, "#RecordRangeInfo", "CashJournal"); 87 int intRecordRange = strRecordRange.equals("")?0:Integer.parseInt(strRecordRange); 88 if (strInitRecord.equals("") || strInitRecord.equals("0")) vars.setSessionValue("CashJournal.initRecordNumber", "0"); 89 else { 90 int initRecord = (strInitRecord.equals("")?0:Integer.parseInt(strInitRecord)); 91 initRecord -= intRecordRange; 92 strInitRecord = ((initRecord<0)?"0":Integer.toString(initRecord)); 93 vars.setSessionValue("CashJournal.initRecordNumber", strInitRecord); 94 } 95 96 response.sendRedirect(strDireccion + request.getServletPath() + "?Command=FRAME2"); 97 } else if (vars.commandIn("NEXT")) { 98 String strInitRecord = vars.getSessionValue("CashJournal.initRecordNumber"); 99 String strRecordRange = Utility.getContext(this, vars, "#RecordRangeInfo", "CashJournal"); 100 int intRecordRange = strRecordRange.equals("")?0:Integer.parseInt(strRecordRange); 101 int initRecord = (strInitRecord.equals("")?0:Integer.parseInt(strInitRecord)); 102 if (initRecord==0) initRecord=1; 103 initRecord += intRecordRange; 104 strInitRecord = ((initRecord<0)?"0":Integer.toString(initRecord)); 105 vars.setSessionValue("CashJournal.initRecordNumber", strInitRecord); 106 107 response.sendRedirect(strDireccion + request.getServletPath() + "?Command=FRAME2"); 108 } else pageError(response); 109 } 110 111 void printPageFS(HttpServletResponse response, VariablesSecureApp vars) throws IOException, ServletException { 112 if (log4j.isDebugEnabled()) log4j.debug("Output: business partners seeker Frame Set"); 113 XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/CashJournal_FS").createXmlDocument(); 114 115 response.setContentType("text/html; charset=UTF-8"); 116 PrintWriter out = response.getWriter(); 117 out.println(xmlDocument.print()); 118 out.close(); 119 } 120 121 void printPageKey(HttpServletResponse response, VariablesSecureApp vars, CashJournalData[] data) throws IOException, ServletException { 122 if (log4j.isDebugEnabled()) log4j.debug("Output: Invoices seeker Frame Set"); 123 XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/SearchUniqueKeyResponse").createXmlDocument(); 124 125 xmlDocument.setParameter("script", generateResult(data)); 126 response.setContentType("text/html; charset=UTF-8"); 127 PrintWriter out = response.getWriter(); 128 out.println(xmlDocument.print()); 129 out.close(); 130 } 131 132 String generateResult(CashJournalData[] data) throws IOException, ServletException { 133 StringBuffer html = new StringBuffer (); 134 135 html.append("\nfunction depurarSelector() {\n"); 136 html.append("var clave = \"" + data[0].clave + "\";\n"); 137 html.append("var texto = \"" + Replace.replace(data[0].nameCash, "\"", "\\\"") + "\";\n"); 138 html.append("parent.opener.closeSearch(\"SAVE\", clave, texto);\n"); 139 html.append("}\n"); 140 return html.toString(); 141 } 142 143 void printPageFrame1(HttpServletResponse response, VariablesSecureApp vars, String strNameValue) throws IOException, ServletException { 144 if (log4j.isDebugEnabled()) log4j.debug("Output: Frame 1 of the business partners seeker"); 145 XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/CashJournal_F1").createXmlDocument(); 146 if (strNameValue.equals("")) { 147 xmlDocument.setParameter("key", "%"); 148 } else { 149 xmlDocument.setParameter("key", strNameValue); 150 } 151 xmlDocument.setParameter("calendar", vars.getLanguage().substring(0,2)); 152 xmlDocument.setParameter("direction", "var baseDirection = \"" + strReplaceWith + "/\";\n"); 153 xmlDocument.setParameter("language", "LNG_POR_DEFECTO=\"" + vars.getLanguage() + "\";"); 154 xmlDocument.setParameter("dateFromdisplayFormat", vars.getSessionValue("#AD_SqlDateFormat")); 155 xmlDocument.setParameter("dateFromsaveFormat", vars.getSessionValue("#AD_SqlDateFormat")); 156 xmlDocument.setParameter("dateTodisplayFormat", vars.getSessionValue("#AD_SqlDateFormat")); 157 xmlDocument.setParameter("dateTosaveFormat", vars.getSessionValue("#AD_SqlDateFormat")); 158 xmlDocument.setData("structure2", CashBookComboData.select(this)); 159 response.setContentType("text/html; charset=UTF-8"); 160 PrintWriter out = response.getWriter(); 161 out.println(xmlDocument.print()); 162 out.close(); 163 } 164 165 void printPageFrame2(HttpServletResponse response, VariablesSecureApp vars, String strName, String strCashBook, String strInvoice, String strDateFrom, String strDateTo, String strCal1, String strCalc2, String strAbsAmount) throws IOException, ServletException { 166 if (log4j.isDebugEnabled()) log4j.debug("Output: Frame 2 of the cash journal seeker"); 167 XmlDocument xmlDocument; 168 169 String strRecordRange = Utility.getContext(this, vars, "#RecordRangeInfo", "CashJournal"); 170 int intRecordRange = (strRecordRange.equals("")?0:Integer.parseInt(strRecordRange)); 171 String strInitRecord = vars.getSessionValue("CashJournal.initRecordNumber"); 172 int initRecordNumber = (strInitRecord.equals("")?0:Integer.parseInt(strInitRecord)); 173 174 if (strName.equals("") && strCashBook.equals("") && strInvoice.equals("") && strDateFrom.equals("") && strDateTo.equals("") && strCal1.equals("") && strCalc2.equals("") && strAbsAmount.equals("")) { 175 String [] discard = {"sectionDetail", "hasPrevious", "hasNext"}; 176 xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/CashJournal_F2", discard).createXmlDocument(); 177 xmlDocument.setData("structure1", CashJournalData.set()); 178 } else { 179 String [] discard = {"withoutPrevious", "withoutNext"}; 180 CashJournalData[] data = CashJournalData.select(this, vars.getLanguage(), Utility.getContext(this, vars, "#User_Client", "CashJournal"), Utility.getContext(this, vars, "#User_Org", "CashJournal"), strName, strCashBook, strInvoice, strDateFrom, DateTimeData.nDaysAfter(this,strDateTo, "1"), strCal1, strCalc2, strAbsAmount, initRecordNumber, intRecordRange); 181 if (data==null || data.length==0 || initRecordNumber<=1) discard[0] = new String ("hasPrevious"); 182 if (data==null || data.length==0 || data.length<intRecordRange) discard[1] = new String ("hasNext"); 183 xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/CashJournal_F2", discard).createXmlDocument(); 184 xmlDocument.setData("structure1", data); 185 } 186 xmlDocument.setParameter("direction", "var baseDirection = \"" + strReplaceWith + "/\";\n"); 187 response.setContentType("text/html; charset=UTF-8"); 188 PrintWriter out = response.getWriter(); 189 out.println(xmlDocument.print()); 190 out.close(); 191 } 192 193 void printPageFrame3(HttpServletResponse response, VariablesSecureApp vars) throws IOException, ServletException { 194 if (log4j.isDebugEnabled()) log4j.debug("Output: Frame 3 of the business partners seeker"); 195 XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/CashJournal_F3").createXmlDocument(); 196 197 response.setContentType("text/html; charset=UTF-8"); 198 PrintWriter out = response.getWriter(); 199 out.println(xmlDocument.print()); 200 out.close(); 201 } 202 203 public String getServletInfo() { 204 return "Servlet that presents the business partners seeker"; 205 } } 207 | Popular Tags |