| 1 19 package org.openbravo.erpCommon.ad_callouts; 20 21 import org.openbravo.base.secureApp.HttpSecureAppServlet; 22 import org.openbravo.base.secureApp.VariablesSecureApp; 23 import org.openbravo.xmlEngine.XmlDocument; 24 import java.io.*; 25 import java.math.BigDecimal ; 26 import javax.servlet.*; 27 import javax.servlet.http.*; 28 29 import org.openbravo.erpCommon.utility.DateTimeData; 30 31 public class SL_Journal_Period extends HttpSecureAppServlet { 32 33 static final BigDecimal ZERO = new BigDecimal (0.0); 34 35 public void init (ServletConfig config) { 36 super.init(config); 37 boolHist = false; 38 } 39 40 public void doPost (HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException { 41 VariablesSecureApp vars = new VariablesSecureApp(request); 42 if (vars.commandIn("DEFAULT")) { 43 String strChanged = vars.getStringParameter("inpLastFieldChanged"); 44 String strWindowId = vars.getStringParameter("inpWindowId"); 45 if (log4j.isDebugEnabled()) log4j.debug("CHANGED: " + strChanged); 46 String strDateAcct = vars.getStringParameter("inpdateacct"); 47 String strDateDoc = vars.getStringParameter("inpdatedoc"); 48 String strcPeriodId = vars.getStringParameter("inpcPeriodId"); 49 String strTabId = vars.getStringParameter("inpTabId"); 50 try { 51 printPage(response, vars, strDateAcct, strDateDoc, strcPeriodId, strWindowId, strChanged, strTabId); 52 } catch (ServletException ex) { 53 pageErrorCallOut(response); 54 } 55 } else pageError(response); 56 } 57 58 void printPage(HttpServletResponse response, VariablesSecureApp vars, String strDateAcctNew, String strDateDocNew, String strcPeriodIdNew, String strWindowId, String strChanged, String strTabId) throws IOException, ServletException { 59 if (log4j.isDebugEnabled()) log4j.debug("Output: dataSheet"); 60 XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_callouts/CallOut").createXmlDocument(); 61 String stradClientId = vars.getClient();; 62 String strDateAcct = strDateAcctNew; 63 String strcPeriodId = strcPeriodIdNew; 64 if (strChanged.equals("inpdatedoc")){ 66 strDateAcct = strDateDocNew; 67 strChanged = "inpdateacct"; 68 } 69 if (strChanged.equals("inpdateacct")){ 71 strcPeriodId = SLJournalPeriodData.period(this, stradClientId, strDateAcct); 72 if(strcPeriodId.equals("")) strcPeriodId = strcPeriodIdNew; 73 } 74 if (strChanged.equals("inpcPeriodId") && !strcPeriodId.equals("")){ 75 SLJournalPeriodData [] data = SLJournalPeriodData.select(this, strcPeriodId); 77 String PeriodType = data[0].periodtype; 78 String StartDate = data[0].startdate; 79 String EndDate = data[0].enddate; 80 if (PeriodType.equals("S")){ if (DateTimeData.compare(this, StartDate, strDateAcct).equals("1") || DateTimeData.compare(this, EndDate, strDateAcct).equals("-1")) 83 strDateAcct = EndDate; 84 } 85 } 86 StringBuffer resultado = new StringBuffer (); 87 resultado.append("var calloutName='SL_Journal_Period';\n\n"); 88 resultado.append("var respuesta = new Array("); 89 resultado.append("new Array(\"inpdateacct\", \"" + strDateAcct + "\"),"); 90 resultado.append("new Array(\"inpcPeriodId\", \"" + strcPeriodId + "\")"); 91 92 resultado.append(");"); 93 xmlDocument.setParameter("array", resultado.toString()); 94 xmlDocument.setParameter("frameName", "frameAplicacion"); 95 response.setContentType("text/html; charset=UTF-8"); 96 PrintWriter out = response.getWriter(); 97 out.println(xmlDocument.print()); 98 out.close(); 99 } 100 } 101 | Popular Tags |