KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > openbravo > erpCommon > ad_forms > CallAcctServer


1 /*
2  *************************************************************************
3  * The contents of this file are subject to the Openbravo Public License
4  * Version 1.0 (the "License"), being the Mozilla Public License
5  * Version 1.1 with a permitted attribution clause; you may not use this
6  * file except in compliance with the License. You may obtain a copy of
7  * the License at http://www.openbravo.com/legal/license.html
8  * Software distributed under the License is distributed on an "AS IS"
9  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
10  * License for the specific language governing rights and limitations
11  * under the License.
12  * The Original Code is Openbravo ERP.
13  * The Initial Developer of the Original Code is Openbravo SL
14  * All portions are Copyright (C) 2001-2006 Openbravo SL
15  * All Rights Reserved.
16  * Contributor(s): ______________________________________.
17  ************************************************************************
18 */

19 package org.openbravo.erpCommon.ad_forms;
20
21 import org.openbravo.erpCommon.utility.SequenceIdData;
22 import org.openbravo.erpCommon.businessUtility.WindowTabs;
23 import org.openbravo.erpCommon.reference.*;
24 import org.openbravo.erpCommon.ad_background.*;
25 import org.openbravo.erpCommon.utility.*;
26 import org.openbravo.base.secureApp.HttpSecureAppServlet;
27 import org.openbravo.base.secureApp.VariablesSecureApp;
28 import org.openbravo.xmlEngine.XmlDocument;
29 import java.io.*;
30 import javax.servlet.*;
31 import javax.servlet.http.*;
32
33
34 public class CallAcctServer extends HttpSecureAppServlet {
35   
36
37   public final String JavaDoc [] TableIds = {"318","407","392","800019","800060","319", "321", "323", "259", "224", "800176"};
38
39   public void doPost (HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException {
40     VariablesSecureApp vars = new VariablesSecureApp(request);
41     String JavaDoc adProcessId = CallAcctServerData.processID(this);
42     PeriodicBackground acctServer = getBackgroundProcess(adProcessId);
43     if (vars.commandIn("DEFAULT")) {
44       String JavaDoc strTableId = vars.getStringParameter("inpadTableId", "");
45       printPage(response,vars, strTableId, "");
46     } else if (vars.commandIn("CANCELAR")) {
47       String JavaDoc strTableId = vars.getStringParameter("inpadTableId", "");
48       acctServer.cancelDirectProcess();
49       printPage(response,vars, strTableId, "");
50     } else if (vars.commandIn("REFRESH_INFO")) {
51       String JavaDoc strMessage = "";
52       if (!acctServer.getOut().equals("")) {
53         strMessage = acctServer.getOut();
54         acctServer.clearLastLog();
55       } else if (!acctServer.isProcessing()) {
56         strMessage = "ENDOFPROCESS";
57       }
58       printPageAjax(response,vars, strMessage);
59     } else if (vars.commandIn("RUN")) {
60       String JavaDoc strTableId = vars.getStringParameter("inpadTableId");
61       if (log4j.isDebugEnabled()) log4j.debug(strTableId);
62       printPageLog(response, vars, strTableId, acctServer, adProcessId);
63     } else pageError(response);
64   }
65
66   private void printPage(HttpServletResponse response, VariablesSecureApp vars, String JavaDoc strTableId, String JavaDoc strMessage) throws IOException, ServletException{
67     XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_forms/CallAcctServer").createXmlDocument();
68
69     ToolBar toolbar = new ToolBar(this, vars.getLanguage(), "CallAcctServer", false, "", "", "",false, "ad_forms", strReplaceWith, false, true);
70     toolbar.prepareSimpleToolBarTemplate();
71     xmlDocument.setParameter("toolbar", toolbar.toString());
72
73     try {
74       WindowTabs tabs = new WindowTabs(this, vars, "org.openbravo.erpCommon.ad_forms.CallAcctServer");
75       xmlDocument.setParameter("parentTabContainer", tabs.parentTabs());
76       xmlDocument.setParameter("mainTabContainer", tabs.mainTabs());
77       xmlDocument.setParameter("childTabContainer", tabs.childTabs());
78       xmlDocument.setParameter("theme", vars.getTheme());
79       NavigationBar nav = new NavigationBar(this, vars.getLanguage(), "CallAcctServer.html", classInfo.id, classInfo.type, strReplaceWith, tabs.breadcrumb());
80       xmlDocument.setParameter("navigationBar", nav.toString());
81       LeftTabsBar lBar = new LeftTabsBar(this, vars.getLanguage(), "CallAcctServer.html", strReplaceWith);
82       xmlDocument.setParameter("leftTabs", lBar.manualTemplate());
83     } catch (Exception JavaDoc ex) {
84       throw new ServletException(ex);
85     }
86     {
87       OBError myMessage = vars.getMessage("CallAcctServer");
88       vars.removeMessage("CallAcctServer");
89       if (myMessage!=null) {
90         xmlDocument.setParameter("messageType", myMessage.getType());
91         xmlDocument.setParameter("messageTitle", myMessage.getTitle());
92         xmlDocument.setParameter("messageMessage", myMessage.getMessage());
93       }
94
95     xmlDocument.setParameter("direction", "var baseDirection = \"" + strReplaceWith + "/\";\n");
96     xmlDocument.setParameter("language", "LNG_POR_DEFECTO=\"" + vars.getLanguage() + "\";");
97     xmlDocument.setParameter("body", (strMessage.equals("")?"":"alert('" + strMessage + "');"));
98
99
100     
101     AcctServerData[] data = AcctServerData.selectTables(this, vars.getLanguage(), Utility.getContext(this, vars, "#User_Org", ""), Utility.getContext(this, vars, "#User_Client", ""));
102     if (log4j.isDebugEnabled()) log4j.debug("select tables org:"+Utility.getContext(this, vars, "#User_Org", "")+", Client:"+Utility.getContext(this, vars, "#User_Client", "")+",lang:"+vars.getLanguage());
103     if (log4j.isDebugEnabled()) log4j.debug("lenght:"+data.length);
104     xmlDocument.setData("reportadTableId", "liststructure", data);
105
106     xmlDocument.setParameter("adTableId", strTableId);
107
108     response.setContentType("text/html; charset=UTF-8");
109     PrintWriter out = response.getWriter();
110     out.println(xmlDocument.print());
111     out.close();
112     }
113   }
114
115   private void printPageLog(HttpServletResponse response, VariablesSecureApp vars, String JavaDoc strTableId, PeriodicBackground acctServer, String JavaDoc adProcessId) throws IOException, ServletException{
116     String JavaDoc adPinstanceId = SequenceIdData.getSequence(this, "AD_PInstance", vars.getClient());
117     PInstanceProcessData.insertPInstance(this, adPinstanceId, adProcessId, "0", "N", vars.getUser(), vars.getClient(), vars.getOrg());
118     PInstanceProcessData.insertPInstanceParamNumber(this, adPinstanceId, "10", "AD_Table_ID", strTableId, vars.getClient(), vars.getOrg(), vars.getUser());
119     
120     response.setContentType("text/html; charset=UTF-8");
121     PrintWriter out = response.getWriter();
122     out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
123     out.println("<html>");
124     out.println("<head>");
125     out.println("<link REL=\"stylesheet\" TYPE=\"text/css\" HREF=\"" + strReplaceWith + "/css/aplication.css\" TITLE=\"Style\"/>");
126     out.println("<title>Log</title>");
127     out.println("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">");
128     out.println("<SCRIPT language=\"JavaScript\" type=\"text/javascript\">var baseDirection = \"" + strReplaceWith + "/\";</SCRIPT>");
129     out.println("<script language=\"JavaScript\" SRC=\"" + strReplaceWith + "/js/messages.js\" type=\"text/javascript\"></script>");
130     out.println("<script language=\"JavaScript\" SRC=\"" + strReplaceWith + "/js/utils.js\" type=\"text/javascript\"></script>");
131     out.println("<script language=\"JavaScript\" SRC=\"" + strReplaceWith + "/js/ajax.js\" type=\"text/javascript\"></script>");
132     out.println("<SCRIPT language=\"JavaScript\" type=\"text/javascript\">LNG_POR_DEFECTO = \"" + vars.getLanguage() + "\";</SCRIPT>");
133     out.println("<SCRIPT language=\"JavaScript\" type=\"text/javascript\">\n");
134     out.println("var id=0;\n");
135     out.println("var finish=false;\n");
136     out.println("function callback() {\n");
137     out.println(" var strText = \"\";\n");
138     out.println(" if (getReadyStateHandler(xmlreq)) {\n");
139     out.println(" try {\n");
140     out.println(" if (xmlreq.responseText) strText = xmlreq.responseText;\n");
141     out.println(" } catch (e) {\n");
142     out.println(" }\n");
143     out.println(" if (strText!=null && strText.indexOf(\"ENDOFPROCESS\")==-1) {\n");
144     out.println(" if (strText != \"\") \n");
145     out.println(" layer(\"messageText\", strText, true, true);\n");
146     out.println(" id = setTimeout(\"refreshData();\", 800);\n");
147     out.println(" document.getElementById('messageText').style.cursor='wait';\n");
148     out.println(" } else if (strText==null) {\n");
149     out.println(" id = setTimeout(\"refreshData();\", 800);\n");
150     out.println(" document.getElementById('messageText').style.cursor='wait';\n");
151     out.println(" } else if (!finish) {\n");
152     out.println(" clearTimeout(id);\n");
153     out.println(" finish=true;\n");
154     out.println(" document.getElementById('messageText').style.cursor='default';\n");
155     out.println(" alert(\"" + Utility.messageBD(this, "ProcessOK", vars.getLanguage()) + "\");\n");
156     out.println(" }\n");
157     out.println(" }\n");
158     out.println(" return true;\n");
159     out.println("}\n");
160     out.println("function refreshData() {\n");
161     out.println(" return submitXmlHttpRequest(callback, document.forms[0], \"REFRESH_INFO\", \"CallAcctServer.html\", false);\n");
162     out.println("}\n");
163     out.println("</SCRIPT>\n");
164     out.println("</head>");
165     out.println("<body leftmargin=\"0\" topmargin=\"0\" marginwidth=\"0\" marginheight=\"0\" onLoad=\"refreshData();\">");
166     out.println("<form name=\"frmMain\" action=\"\" method=\"post\"><input type=\"hidden\" name=\"Command\"></forms>\n");
167     out.println("<H1>Log</H1>");
168     out.println("<HR>");
169     out.println("<span id=\"messageText\"></span>");
170     out.println("</body>");
171     out.println("</html>");
172     out.close();
173
174     if (acctServer.directLaunch(vars, adPinstanceId)) {
175       while(acctServer.isDirectProcess() && !acctServer.isProcessing()){ if (log4j.isDebugEnabled()) log4j.debug("Waiting fot the beginning of the thread");};
176     }
177   }
178
179   public void printPageAjax(HttpServletResponse response, VariablesSecureApp vars, String JavaDoc strMessage) throws IOException, ServletException {
180     response.setContentType("text/plain; charset=UTF-8");
181     response.setHeader("Cache-Control", "no-cache");
182     PrintWriter out = response.getWriter();
183     out.println(strMessage);
184     out.close();
185   }
186
187   public String JavaDoc getServletInfo() {
188     return "Servlet that calls the contabilization process";
189   } // end of getServletInfo() method
190
}
191
Popular Tags