KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > openbravo > erpCommon > info > SalesOrder


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.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
32 public class SalesOrder extends HttpSecureAppServlet {
33   
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
43     if (vars.commandIn("DEFAULT")) {
44       String JavaDoc strNameValue = vars.getRequestGlobalVariable("inpNameValue", "SalesOrder.name");
45       if (!strNameValue.equals("")) vars.setSessionValue("SalesOrder.name", strNameValue + "%");
46       printPageFS(response, vars);
47     } else if (vars.commandIn("KEY")) {
48       String JavaDoc strKeyValue = vars.getRequestGlobalVariable("inpNameValue", "SalesOrder.name");
49       vars.setSessionValue("SalesOrder.name", strKeyValue + "%");
50       SalesOrderData[] data = SalesOrderData.selectKey(this, Utility.getContext(this, vars, "#User_Client", "SalesOrder"), Utility.getContext(this, vars, "#User_Org", "SalesOrder"), strKeyValue + "%");
51       if (data!=null && data.length==1) {
52         printPageKey(response, vars, data);
53       } else printPageFS(response, vars);
54     } else if (vars.commandIn("FRAME1")) {
55       String JavaDoc strNameValue = vars.getGlobalVariable("inpName", "SalesOrder.name", "");
56       printPageFrame1(response, vars, strNameValue);
57     } else if (vars.commandIn("FRAME2")) {
58       String JavaDoc strName = vars.getGlobalVariable("inpKey", "SalesOrder.name", "");
59       String JavaDoc strBpartnerId = vars.getStringParameter("inpBpartnerId");
60       String JavaDoc strDateFrom = vars.getStringParameter("inpDateFrom");
61       String JavaDoc strDateTo = vars.getStringParameter("inpDateTo");
62       String JavaDoc strDescription = vars.getStringParameter("inpDescription");
63       String JavaDoc strCal1 = vars.getStringParameter("inpCal1");
64       String JavaDoc strCalc2 = vars.getStringParameter("inpCalc2");
65       String JavaDoc strOrder = vars.getStringParameter("inpOrder");
66       printPageFrame2(response, vars, strName, strBpartnerId, strDateFrom, strDateTo, strDescription, strCal1, strCalc2, strOrder);
67     } else if (vars.commandIn("FIND")) {
68       String JavaDoc strName = vars.getGlobalVariable("inpKey", "SalesOrder.name", "");
69       String JavaDoc strBpartnerId = vars.getStringParameter("inpBpartnerId");
70       String JavaDoc strDateFrom = vars.getStringParameter("inpDateFrom");
71       String JavaDoc strDateTo = vars.getStringParameter("inpDateTo");
72       String JavaDoc strDescription = vars.getStringParameter("inpDescription");
73       String JavaDoc strCal1 = vars.getStringParameter("inpCal1");
74       String JavaDoc strCalc2 = vars.getStringParameter("inpCalc2");
75       String JavaDoc strOrder = vars.getStringParameter("inpOrder");
76
77       vars.setSessionValue("SalesOrder.initRecordNumber", "0");
78
79       printPageFrame2(response, vars, strName, strBpartnerId, strDateFrom, strDateTo, strDescription, strCal1, strCalc2, strOrder);
80     } else if (vars.commandIn("FRAME3")) {
81       printPageFrame3(response, vars);
82     } else if (vars.commandIn("PREVIOUS")) {
83       String JavaDoc strInitRecord = vars.getSessionValue("SalesOrder.initRecordNumber");
84       String JavaDoc strRecordRange = Utility.getContext(this, vars, "#RecordRangeInfo", "SalesOrder");
85       int intRecordRange = strRecordRange.equals("")?0:Integer.parseInt(strRecordRange);
86       if (strInitRecord.equals("") || strInitRecord.equals("0")) vars.setSessionValue("SalesOrder.initRecordNumber", "0");
87       else {
88         int initRecord = (strInitRecord.equals("")?0:Integer.parseInt(strInitRecord));
89         initRecord -= intRecordRange;
90         strInitRecord = ((initRecord<0)?"0":Integer.toString(initRecord));
91         vars.setSessionValue("SalesOrder.initRecordNumber", strInitRecord);
92       }
93
94       response.sendRedirect(strDireccion + request.getServletPath() + "?Command=FRAME2");
95     } else if (vars.commandIn("NEXT")) {
96       String JavaDoc strInitRecord = vars.getSessionValue("SalesOrder.initRecordNumber");
97       String JavaDoc strRecordRange = Utility.getContext(this, vars, "#RecordRangeInfo", "SalesOrder");
98       int intRecordRange = strRecordRange.equals("")?0:Integer.parseInt(strRecordRange);
99       int initRecord = (strInitRecord.equals("")?0:Integer.parseInt(strInitRecord));
100       if (initRecord==0) initRecord=1;
101       initRecord += intRecordRange;
102       strInitRecord = ((initRecord<0)?"0":Integer.toString(initRecord));
103       vars.setSessionValue("SalesOrder.initRecordNumber", strInitRecord);
104
105       response.sendRedirect(strDireccion + request.getServletPath() + "?Command=FRAME2");
106     } else pageError(response);
107   }
108
109   void printPageFS(HttpServletResponse response, VariablesSecureApp vars) throws IOException, ServletException {
110     if (log4j.isDebugEnabled()) log4j.debug("Output: sale-orders seeker Frame Set");
111     XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/SalesOrder_FS").createXmlDocument();
112
113     response.setContentType("text/html; charset=UTF-8");
114     PrintWriter out = response.getWriter();
115     out.println(xmlDocument.print());
116     out.close();
117   }
118
119   void printPageKey(HttpServletResponse response, VariablesSecureApp vars, SalesOrderData[] data) throws IOException, ServletException {
120     if (log4j.isDebugEnabled()) log4j.debug("Output: sale-orders seeker Frame Set");
121     XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/SearchUniqueKeyResponse").createXmlDocument();
122
123     xmlDocument.setParameter("script", generateResult(data));
124     response.setContentType("text/html; charset=UTF-8");
125     PrintWriter out = response.getWriter();
126     out.println(xmlDocument.print());
127     out.close();
128   }
129
130   String JavaDoc generateResult(SalesOrderData[] data) throws IOException, ServletException {
131     StringBuffer JavaDoc html = new StringBuffer JavaDoc();
132     
133     html.append("\nfunction depurarSelector() {\n");
134     html.append("var clave = \"" + data[0].cOrderId + "\";\n");
135     html.append("var texto = \"" + Replace.replace(data[0].documentno, "\"", "\\\"") + "\";\n");
136     html.append("parent.opener.closeSearch(\"SAVE\", clave, texto);\n");
137     html.append("}\n");
138     return html.toString();
139   }
140
141   void printPageFrame1(HttpServletResponse response, VariablesSecureApp vars, String JavaDoc strNameValue) throws IOException, ServletException {
142     if (log4j.isDebugEnabled()) log4j.debug("Output: Frame 1 of the sale-orders seeker");
143     XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/SalesOrder_F1").createXmlDocument();
144     if (strNameValue.equals("")) {
145     xmlDocument.setParameter("key", "%");
146     } else {
147       String JavaDoc substr;
148       String JavaDoc white = " ";
149       int index = strNameValue.indexOf(white, 0);
150       substr = strNameValue.substring(0,index);
151     xmlDocument.setParameter("key", substr);
152     }
153     xmlDocument.setParameter("calendar", vars.getLanguage().substring(0,2));
154     xmlDocument.setParameter("direction", "var baseDirection = \"" + strReplaceWith + "/\";\n");
155     xmlDocument.setParameter("language", "LNG_POR_DEFECTO=\"" + vars.getLanguage() + "\";");
156     xmlDocument.setParameter("dateFromdisplayFormat", vars.getSessionValue("#AD_SqlDateFormat"));
157     xmlDocument.setParameter("dateFromsaveFormat", vars.getSessionValue("#AD_SqlDateFormat"));
158     xmlDocument.setParameter("dateTodisplayFormat", vars.getSessionValue("#AD_SqlDateFormat"));
159     xmlDocument.setParameter("dateTosaveFormat", vars.getSessionValue("#AD_SqlDateFormat"));
160     response.setContentType("text/html; charset=UTF-8");
161     PrintWriter out = response.getWriter();
162     out.println(xmlDocument.print());
163     out.close();
164   }
165
166   void printPageFrame2(HttpServletResponse response, VariablesSecureApp vars, String JavaDoc strName, String JavaDoc strBpartnerId, String JavaDoc strDateFrom, String JavaDoc strDateTo, String JavaDoc strDescription, String JavaDoc strCal1, String JavaDoc strCalc2, String JavaDoc strOrder) throws IOException, ServletException {
167     if (log4j.isDebugEnabled()) log4j.debug("Output: Frame 2 of the sale-orders seeker");
168     XmlDocument xmlDocument;
169
170     String JavaDoc strRecordRange = Utility.getContext(this, vars, "#RecordRangeInfo", "SalesOrder");
171     int intRecordRange = (strRecordRange.equals("")?0:Integer.parseInt(strRecordRange));
172     String JavaDoc strInitRecord = vars.getSessionValue("SalesOrder.initRecordNumber");
173     int initRecordNumber = (strInitRecord.equals("")?0:Integer.parseInt(strInitRecord));
174
175     if (strName.equals("") && strBpartnerId.equals("") && strDateFrom.equals("") && strDateTo.equals("") && strDescription.equals("") && strCal1.equals("") && strCalc2.equals("") && strOrder.equals("")) {
176       String JavaDoc[] discard = {"sectionDetail", "hasPrevious", "hasNext"};
177       xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/SalesOrder_F2", discard).createXmlDocument();
178       xmlDocument.setData("structure1", SalesOrderData.set());
179     } else {
180       String JavaDoc[] discard = {"withoutPrevious", "withoutNext"};
181       SalesOrderData[] data = SalesOrderData.select(this, Utility.getContext(this, vars, "#User_Client", "SalesOrder"), Utility.getContext(this, vars, "#User_Org", "SalesOrder"), strName, strDescription, strOrder, strBpartnerId, strDateFrom, DateTimeData.nDaysAfter(this,strDateTo, "1"), strCal1, strCalc2, initRecordNumber, intRecordRange);
182       if (data==null || data.length==0 || initRecordNumber<=1) discard[0] = new String JavaDoc("hasPrevious");
183       if (data==null || data.length==0 || data.length<intRecordRange) discard[1] = new String JavaDoc("hasNext");
184       xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/SalesOrder_F2", discard).createXmlDocument();
185       xmlDocument.setData("structure1", data);
186     }
187     xmlDocument.setParameter("direction", "var baseDirection = \"" + strReplaceWith + "/\";\n");
188     response.setContentType("text/html; charset=UTF-8");
189     PrintWriter out = response.getWriter();
190     out.println(xmlDocument.print());
191     out.close();
192   }
193
194   void printPageFrame3(HttpServletResponse response, VariablesSecureApp vars) throws IOException, ServletException {
195     if (log4j.isDebugEnabled()) log4j.debug("Output: Frame 3 of the sale-orders seeker");
196     XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/info/SalesOrder_F3").createXmlDocument();
197
198     response.setContentType("text/html; charset=UTF-8");
199     PrintWriter out = response.getWriter();
200     out.println(xmlDocument.print());
201     out.close();
202   }
203
204   public String JavaDoc getServletInfo() {
205     return "Servlet that presents que sale-orders seeker";
206   } // end of getServletInfo() method
207
}
208
Popular Tags