KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > openbravo > erpCommon > ad_reports > ReportRefundSalesDimensionalAnalyses


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
20 package org.openbravo.erpCommon.ad_reports;
21
22 import org.openbravo.erpCommon.utility.*;
23 import org.openbravo.erpCommon.businessUtility.WindowTabs;
24 import org.openbravo.erpCommon.businessUtility.Tree;
25 import org.openbravo.erpCommon.businessUtility.TreeData;
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 java.util.*;
31 import javax.servlet.*;
32 import javax.servlet.http.*;
33
34 import org.openbravo.utils.Replace;
35 import org.openbravo.erpCommon.ad_combos.OrganizationComboData;
36
37
38 import org.openbravo.erpCommon.utility.DateTimeData;
39
40 public class ReportRefundSalesDimensionalAnalyses extends HttpSecureAppServlet {
41
42
43   public void init (ServletConfig config) {
44     super.init(config);
45     boolHist = false;
46   }
47
48   public void doPost (HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException {
49     VariablesSecureApp vars = new VariablesSecureApp(request);
50
51     if (!Utility.hasProcessAccess(this, vars, "", "RV_ReportRefundSalesDimensionalAnalyses")) {
52       bdError(response, "AccessTableNoView", vars.getLanguage());
53       return;
54     }
55
56     if (vars.commandIn("DEFAULT", "DEFAULT_COMPARATIVE")){
57       String JavaDoc strDateFrom = vars.getGlobalVariable("inpDateFrom", "ReportRefundSalesDimensionalAnalyses|dateFrom", "");
58       String JavaDoc strDateTo = vars.getGlobalVariable("inpDateTo", "ReportRefundSalesDimensionalAnalyses|dateTo", "");
59       String JavaDoc strDateFromRef = vars.getGlobalVariable("inpDateFromRef", "ReportRefundSalesDimensionalAnalyses|dateFromRef", "");
60       String JavaDoc strDateToRef = vars.getGlobalVariable("inpDateToRef", "ReportRefundSalesDimensionalAnalyses|dateToRef", "");
61       String JavaDoc strPartnerGroup = vars.getGlobalVariable("inpPartnerGroup", "ReportRefundSalesDimensionalAnalyses|partnerGroup", "");
62       String JavaDoc strcBpartnerId = vars.getInGlobalVariable("inpcBPartnerId_IN", "ReportRefundSalesDimensionalAnalyses|partner", "");
63       String JavaDoc strProductCategory = vars.getGlobalVariable("inpProductCategory", "ReportRefundSalesDimensionalAnalyses|productCategory", "");
64       String JavaDoc strmProductId = vars.getInGlobalVariable("inpmProductId_IN", "ReportRefundSalesDimensionalAnalyses|product", "");
65       String JavaDoc strNotShown = vars.getInGlobalVariable("inpNotShown", "ReportRefundSalesDimensionalAnalyses|notShown", "");
66       String JavaDoc strShown = vars.getInGlobalVariable("inpShown", "ReportRefundSalesDimensionalAnalyses|shown", "");
67       String JavaDoc strOrg = vars.getGlobalVariable("inpOrg", "ReportRefundSalesDimensionalAnalyses|org", "0");
68       String JavaDoc strsalesrepId = vars.getGlobalVariable("inpSalesrepId", "ReportRefundSalesDimensionalAnalyses|salesrep", "");
69       String JavaDoc strmWarehouseId = vars.getGlobalVariable("inpmWarehouseId", "ReportRefundSalesDimensionalAnalyses|warehouseId", "");
70       String JavaDoc strOrder = vars.getGlobalVariable("inpOrder","ReportRefundSalesDimensionalAnalyses|order","Normal");
71       String JavaDoc strMayor = vars.getGlobalVariable("inpMayor", "ReportRefundSalesDimensionalAnalyses|mayor", "");
72       String JavaDoc strMenor = vars.getGlobalVariable("inpMenor", "ReportRefundSalesDimensionalAnalyses|menor", "");
73       String JavaDoc strRatioMayor = vars.getGlobalVariable("inpRatioMayor", "ReportRefundSalesDimensionalAnalyses|ratioMayor", "");
74       String JavaDoc strRatioMenor = vars.getGlobalVariable("inpRatioMenor", "ReportRefundSalesDimensionalAnalyses|ratioMenor", "");
75       String JavaDoc strComparative = "";
76       if (vars.commandIn("DEFAULT_COMPARATIVE")) strComparative = vars.getRequestGlobalVariable("inpComparative", "ReportRefundSalesDimensionalAnalyses|comparative");
77       else strComparative = vars.getGlobalVariable("inpComparative", "ReportRefundSalesDimensionalAnalyses|comparative", "N");
78       printPageDataSheet(response, vars, strComparative, strDateFrom, strDateTo, strPartnerGroup, strcBpartnerId, strProductCategory, strmProductId, strNotShown, strShown, strDateFromRef, strDateToRef, strOrg, strsalesrepId, strmWarehouseId, strOrder, strMayor, strMenor, strRatioMayor, strRatioMenor);
79     }else if (vars.commandIn("EDIT_HTML", "EDIT_HTML_COMPARATIVE")) {
80       String JavaDoc strDateFrom = vars.getRequestGlobalVariable("inpDateFrom", "ReportRefundSalesDimensionalAnalyses|dateFrom");
81       String JavaDoc strDateTo = vars.getRequestGlobalVariable("inpDateTo", "ReportRefundSalesDimensionalAnalyses|dateTo");
82       String JavaDoc strDateFromRef = vars.getRequestGlobalVariable("inpDateFromRef", "ReportRefundSalesDimensionalAnalyses|dateFromRef");
83       String JavaDoc strDateToRef = vars.getRequestGlobalVariable("inpDateToRef", "ReportRefundSalesDimensionalAnalyses|dateToRef");
84       String JavaDoc strPartnerGroup = vars.getRequestGlobalVariable("inpPartnerGroup", "ReportRefundSalesDimensionalAnalyses|partnerGroup");
85       String JavaDoc strcBpartnerId = vars.getRequestInGlobalVariable("inpcBPartnerId_IN", "ReportRefundSalesDimensionalAnalyses|partner");
86       String JavaDoc strProductCategory = vars.getRequestGlobalVariable("inpProductCategory", "ReportRefundSalesDimensionalAnalyses|productCategory");
87       String JavaDoc strmProductId = vars.getRequestInGlobalVariable("inpmProductId_IN", "ReportRefundSalesDimensionalAnalyses|product");
88       String JavaDoc strNotShown = vars.getInStringParameter("inpNotShown");
89       String JavaDoc strShown = vars.getInStringParameter("inpShown");
90       String JavaDoc strOrg = vars.getGlobalVariable("inpOrg", "ReportRefundSalesDimensionalAnalyses|org", "0");
91       String JavaDoc strsalesrepId = vars.getRequestGlobalVariable("inpSalesrepId", "ReportRefundSalesDimensionalAnalyses|salesrep");
92       String JavaDoc strmWarehouseId = vars.getRequestGlobalVariable("inpmWarehouseId", "ReportRefundSalesDimensionalAnalyses|warehouseId");
93       String JavaDoc strOrder = vars.getRequestGlobalVariable("inpOrder","ReportRefundSalesDimensionalAnalyses|order");
94       String JavaDoc strMayor = vars.getStringParameter("inpMayor", "");
95       String JavaDoc strMenor = vars.getStringParameter("inpMenor", "");
96       String JavaDoc strRatioMayor = vars.getStringParameter("inpRatioMayor", "");
97       String JavaDoc strRatioMenor = vars.getStringParameter("inpRatioMenor", "");
98       String JavaDoc strComparative = vars.getStringParameter("inpComparative", "N");
99       printPageHtml(response, vars, strComparative, strDateFrom, strDateTo, strPartnerGroup, strcBpartnerId, strProductCategory, strmProductId, strNotShown, strShown, strDateFromRef, strDateToRef, strOrg, strsalesrepId, strmWarehouseId, strOrder, strMayor, strMenor, strRatioMayor, strRatioMenor);
100     } else pageErrorPopUp(response);
101   }
102
103   void printPageDataSheet(HttpServletResponse response, VariablesSecureApp vars, String JavaDoc strComparative, String JavaDoc strDateFrom, String JavaDoc strDateTo, String JavaDoc strPartnerGroup, String JavaDoc strcBpartnerId, String JavaDoc strProductCategory, String JavaDoc strmProductId, String JavaDoc strNotShown, String JavaDoc strShown, String JavaDoc strDateFromRef, String JavaDoc strDateToRef, String JavaDoc strOrg, String JavaDoc strsalesrepId, String JavaDoc strmWarehouseId, String JavaDoc strOrder, String JavaDoc strMayor, String JavaDoc strMenor, String JavaDoc strRatioMayor, String JavaDoc strRatioMenor) throws IOException, ServletException {
104     if (log4j.isDebugEnabled()) log4j.debug("Output: dataSheet");
105     String JavaDoc discard[]={"selEliminarHeader1"};
106     String JavaDoc strCommand = "EDIT_PDF";
107     if (strComparative.equals("Y")) {
108       discard[0] = "selEliminarHeader2";
109       strCommand = "EDIT_PDF_COMPARATIVE";
110     }
111     XmlDocument xmlDocument=null;
112     xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_reports/ReportRefundSalesDimensionalAnalysesFilter", discard).createXmlDocument();
113
114     ToolBar toolbar = new ToolBar(this, vars.getLanguage(), "ReportRefundSalesDimensionalAnalysesFilter", false, "", "", "",false, "ad_reports", strReplaceWith, false, true);
115     toolbar.prepareSimpleToolBarTemplate();
116     xmlDocument.setParameter("toolbar", toolbar.toString());
117
118     try {
119       KeyMap key = new KeyMap(this, vars, "ReportRefundSalesDimensionalAnalyses.html");
120       xmlDocument.setParameter("keyMap", key.getReportKeyMaps());
121     } catch (Exception JavaDoc ex) {
122       throw new ServletException(ex);
123     }
124     try {
125       WindowTabs tabs = new WindowTabs(this, vars, "org.openbravo.erpCommon.ad_reports.ReportRefundSalesDimensionalAnalyses");
126       xmlDocument.setParameter("parentTabContainer", tabs.parentTabs());
127       xmlDocument.setParameter("mainTabContainer", tabs.mainTabs());
128       xmlDocument.setParameter("childTabContainer", tabs.childTabs());
129       xmlDocument.setParameter("theme", vars.getTheme());
130       NavigationBar nav = new NavigationBar(this, vars.getLanguage(), "ReportRefundSalesDimensionalAnalyses.html", classInfo.id, classInfo.type, strReplaceWith, tabs.breadcrumb());
131       xmlDocument.setParameter("navigationBar", nav.toString());
132       LeftTabsBar lBar = new LeftTabsBar(this, vars.getLanguage(), "ReportRefundSalesDimensionalAnalyses.html", strReplaceWith);
133       xmlDocument.setParameter("leftTabs", lBar.manualTemplate());
134     } catch (Exception JavaDoc ex) {
135       throw new ServletException(ex);
136     }
137     {
138       OBError myMessage = vars.getMessage("ReportRefundSalesDimensionalAnalyses");
139       vars.removeMessage("ReportRefundSalesDimensionalAnalyses");
140       if (myMessage!=null) {
141         xmlDocument.setParameter("messageType", myMessage.getType());
142         xmlDocument.setParameter("messageTitle", myMessage.getTitle());
143         xmlDocument.setParameter("messageMessage", myMessage.getMessage());
144       }
145     }
146
147     xmlDocument.setParameter("calendar", vars.getLanguage().substring(0,2));
148     xmlDocument.setParameter("language", "LNG_POR_DEFECTO=\"" + vars.getLanguage() + "\";");
149     xmlDocument.setParameter("direction", "var baseDirection = \"" + strReplaceWith + "/\";\n");
150     xmlDocument.setParameter("dateFrom", strDateFrom);
151     xmlDocument.setParameter("dateFromdisplayFormat", vars.getSessionValue("#AD_SqlDateFormat"));
152     xmlDocument.setParameter("dateFromsaveFormat", vars.getSessionValue("#AD_SqlDateFormat"));
153     xmlDocument.setParameter("dateTo", strDateTo);
154     xmlDocument.setParameter("dateTodisplayFormat", vars.getSessionValue("#AD_SqlDateFormat"));
155     xmlDocument.setParameter("dateTosaveFormat", vars.getSessionValue("#AD_SqlDateFormat"));
156     xmlDocument.setParameter("dateFromRef", strDateFromRef);
157     xmlDocument.setParameter("dateFromRefdisplayFormat", vars.getSessionValue("#AD_SqlDateFormat"));
158     xmlDocument.setParameter("dateFromRefsaveFormat", vars.getSessionValue("#AD_SqlDateFormat"));
159     xmlDocument.setParameter("dateToRef", strDateToRef);
160     xmlDocument.setParameter("dateToRefdisplayFormat", vars.getSessionValue("#AD_SqlDateFormat"));
161     xmlDocument.setParameter("dateToRefsaveFormat", vars.getSessionValue("#AD_SqlDateFormat"));
162     xmlDocument.setParameter("cBpGroupId", strPartnerGroup);
163     xmlDocument.setParameter("mProductCategoryId", strProductCategory);
164     xmlDocument.setParameter("adOrgId", strOrg);
165     xmlDocument.setParameter("salesRepId", strsalesrepId);
166     xmlDocument.setParameter("mWarehouseId", strmWarehouseId);
167     xmlDocument.setParameter("normal", strOrder);
168     xmlDocument.setParameter("amountasc", strOrder);
169     xmlDocument.setParameter("amountdesc", strOrder);
170     xmlDocument.setParameter("ratioasc", strOrder);
171     xmlDocument.setParameter("ratiodesc", strOrder);
172     xmlDocument.setParameter("mayor", strMayor);
173     xmlDocument.setParameter("menor", strMenor);
174     xmlDocument.setParameter("ratioMayor", strRatioMayor);
175     xmlDocument.setParameter("ratioMenor", strRatioMenor);
176     xmlDocument.setParameter("comparative", strComparative);
177     xmlDocument.setParameter("command", strCommand);
178     try {
179       ComboTableData comboTableData = new ComboTableData(vars, this, "TABLEDIR", "C_BP_Group_ID", "", "", Utility.getContext(this, vars, "#User_Org", "ReportRefundSalesDimensionalAnalyses"), Utility.getContext(this, vars, "#User_Client", "ReportRefundSalesDimensionalAnalyses"), 0);
180       Utility.fillSQLParameters(this, vars, null, comboTableData, "ReportRefundSalesDimensionalAnalyses", strPartnerGroup);
181       xmlDocument.setData("reportC_BP_GROUPID","liststructure", comboTableData.select(false));
182       comboTableData = null;
183     } catch (Exception JavaDoc ex) {
184       throw new ServletException(ex);
185     }
186
187
188     try {
189       ComboTableData comboTableData = new ComboTableData(vars, this, "TABLEDIR", "M_Product_Category_ID", "", "", Utility.getContext(this, vars, "#User_Org", "ReportRefundSalesDimensionalAnalyses"), Utility.getContext(this, vars, "#User_Client", "ReportRefundSalesDimensionalAnalyses"), 0);
190       Utility.fillSQLParameters(this, vars, null, comboTableData, "ReportRefundSalesDimensionalAnalyses", strProductCategory);
191       xmlDocument.setData("reportM_PRODUCT_CATEGORYID","liststructure", comboTableData.select(false));
192       comboTableData = null;
193     } catch (Exception JavaDoc ex) {
194       throw new ServletException(ex);
195     }
196
197     xmlDocument.setData("reportAD_ORGID", "liststructure", OrganizationComboData.selectCombo(this, vars.getRole()));
198     try {
199       ComboTableData comboTableData = new ComboTableData(vars, this, "TABLE", "SalesRep_ID", "AD_User SalesRep", "", Utility.getContext(this, vars, "#User_Org", "ReportRefundSalesDimensionalAnalyses"), Utility.getContext(this, vars, "#User_Client", "ReportRefundSalesDimensionalAnalyses"), 0);
200       Utility.fillSQLParameters(this, vars, null, comboTableData, "ReportRefundSalesDimensionalAnalyses", strsalesrepId);
201       xmlDocument.setData("reportSalesRep_ID","liststructure", comboTableData.select(false));
202       comboTableData = null;
203     } catch (Exception JavaDoc ex) {
204       throw new ServletException(ex);
205     }
206
207     xmlDocument.setData("reportCBPartnerId_IN", "liststructure", ReportRefundSalesDimensionalAnalysesData.selectBpartner(this, Utility.getContext(this, vars, "#User_Org", ""), Utility.getContext(this, vars, "#User_Client", ""), strcBpartnerId));
208     xmlDocument.setData("reportMProductId_IN", "liststructure", ReportRefundSalesDimensionalAnalysesData.selectMproduct(this, Utility.getContext(this, vars, "#User_Org", ""), Utility.getContext(this, vars, "#User_Client", ""), strmProductId));
209     try {
210       ComboTableData comboTableData = new ComboTableData(vars, this, "TABLEDIR", "M_Warehouse_ID", "", "", Utility.getContext(this, vars, "#User_Org", "ReportSalesDimensionalAnalyze"), Utility.getContext(this, vars, "#User_Client", "ReportSalesDimensionalAnalyze"), 0);
211       Utility.fillSQLParameters(this, vars, null, comboTableData, "ReportSalesDimensionalAnalyze", strmWarehouseId);
212       xmlDocument.setData("reportM_WAREHOUSEID","liststructure", comboTableData.select(false));
213       comboTableData = null;
214     } catch (Exception JavaDoc ex) {
215       throw new ServletException(ex);
216     }
217
218
219
220
221     if (vars.getLanguage().equals("en_US")) {
222       xmlDocument.setData("structure1", ReportRefundSalesDimensionalAnalysesData.selectNotShown(this, strShown));
223       xmlDocument.setData("structure2", strShown.equals("")?new ReportRefundSalesDimensionalAnalysesData[0]:ReportRefundSalesDimensionalAnalysesData.selectShown(this, strShown));
224     } else {
225       xmlDocument.setData("structure1", ReportRefundSalesDimensionalAnalysesData.selectNotShownTrl(this,vars.getLanguage(), strShown));
226       xmlDocument.setData("structure2", strShown.equals("")?new ReportRefundSalesDimensionalAnalysesData[0]:ReportRefundSalesDimensionalAnalysesData.selectShownTrl(this,vars.getLanguage(),strShown));
227     }
228
229     response.setContentType("text/html; charset=UTF-8");
230     PrintWriter out = response.getWriter();
231     out.println(xmlDocument.print());
232     out.close();
233   }
234
235   void printPageHtml(HttpServletResponse response, VariablesSecureApp vars, String JavaDoc strComparative, String JavaDoc strDateFrom, String JavaDoc strDateTo, String JavaDoc strPartnerGroup, String JavaDoc strcBpartnerId, String JavaDoc strProductCategory, String JavaDoc strmProductId, String JavaDoc strNotShown, String JavaDoc strShown, String JavaDoc strDateFromRef, String JavaDoc strDateToRef, String JavaDoc strOrg, String JavaDoc strsalesrepId, String JavaDoc strmWarehouseId, String JavaDoc strOrder, String JavaDoc strMayor, String JavaDoc strMenor, String JavaDoc strRatioMayor, String JavaDoc strRatioMenor) throws IOException, ServletException{
236     if (log4j.isDebugEnabled()) log4j.debug("Output: print html");
237     XmlDocument xmlDocument=null;
238     String JavaDoc strOrderby = "";
239     String JavaDoc[] discard = {"", "", "", "", "","",""};
240     String JavaDoc[] discard1={"selEliminarBody1", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard", "discard"};
241     if (strComparative.equals("Y")) discard1[0] = "selEliminarBody2";
242     String JavaDoc strTitle = "";
243     strTitle = Utility.messageBD(this, "From", vars.getLanguage()) + " "+strDateFrom+" " + Utility.messageBD(this, "To", vars.getLanguage()) + " "+strDateTo;
244     if (!strPartnerGroup.equals("")) strTitle = strTitle + ", " + Utility.messageBD(this, "ForBPartnerGroup", vars.getLanguage()) + " "+ReportRefundSalesDimensionalAnalysesData.selectBpgroup(this, strPartnerGroup);
245     if (!strProductCategory.equals("")) strTitle = strTitle+", " + Utility.messageBD(this, "ProductCategory", vars.getLanguage()) + " "+ReportRefundSalesDimensionalAnalysesData.selectProductCategory(this, strProductCategory);
246     if (!strsalesrepId.equals("")) strTitle = strTitle+", " + Utility.messageBD(this, "TheSalesRep", vars.getLanguage()) + " "+ReportRefundSalesDimensionalAnalysesData.selectSalesrep(this, strsalesrepId);
247     if (!strmWarehouseId.equals("")) strTitle = strTitle+" " + Utility.messageBD(this, "And", vars.getLanguage()) + " " + Utility.messageBD(this, "TheWarehouse", vars.getLanguage()) + " "+ReportRefundSalesDimensionalAnalysesData.selectMwarehouse(this, strmWarehouseId);
248
249     ReportRefundSalesDimensionalAnalysesData[] data = null;
250     String JavaDoc[] strShownArray = {"", "", "", "", "", "", ""};
251     if (strShown.startsWith("(")) strShown = strShown.substring(1, strShown.length()-1);
252     if (!strShown.equals("")) {
253       strShown = Replace.replace(strShown, "'", "");
254       strShown = Replace.replace(strShown, " ", "");
255       StringTokenizer st = new StringTokenizer(strShown, ",", false);
256       int intContador = 0;
257       while (st.hasMoreTokens()){
258         strShownArray[intContador] = st.nextToken();
259         intContador++;
260       }
261
262     }
263     String JavaDoc[] strTextShow = {"", "", "", "", "","",""};
264     int intDiscard = 0;
265     int intAuxDiscard = -1;
266     for (int i = 0; i<7; i++){
267       if (strShownArray[i].equals("1")) {
268         strTextShow[i] = "C_BP_GROUP.NAME";
269         intDiscard++;
270       }
271       else if (strShownArray[i].equals("2")) {
272         strTextShow[i] = "AD_COLUMN_IDENTIFIER(to_char('C_Bpartner'), to_char( C_BPARTNER.C_BPARTNER_ID), to_char( 'es_ES'))";
273         intDiscard++;
274       }
275       else if (strShownArray[i].equals("3")) {
276         strTextShow[i] = "M_PRODUCT_CATEGORY.NAME";
277         intDiscard++;
278       }
279       else if (strShownArray[i].equals("4")) {
280         strTextShow[i] = "AD_COLUMN_IDENTIFIER(to_char('M_Product'), to_char( M_PRODUCT.M_PRODUCT_ID), to_char( 'es_ES'))";
281         intAuxDiscard = i;
282       }
283       else if (strShownArray[i].equals("5")) {
284         strTextShow[i] = "C_ORDER.DOCUMENTNO";
285         intDiscard++;
286       }
287       else if (strShownArray[i].equals("6")) {
288         strTextShow[i] = "AD_USER.FIRSTNAME||' '||' '||AD_USER.LASTNAME";
289         intDiscard++;
290       }
291       else if (strShownArray[i].equals("7")) {
292         strTextShow[i] = "M_WAREHOUSE.NAME";
293         intDiscard++;
294       }
295       else {
296         strTextShow[i] = "''";
297         discard[i] = "display:none;";
298       }
299     }
300     if (intDiscard != 0){
301       int k=1;
302       strOrderby = " ORDER BY NIVEL"+k+",";
303       while (k<intDiscard){
304         strOrderby = strOrderby+"NIVEL"+k+",";
305         k++;
306       }
307       if (k==1){
308         if (strOrder.equals("Normal")){
309           strOrderby = " ORDER BY NIVEL"+k;
310         } else if (strOrder.equals("Amountasc")){
311           strOrderby = " ORDER BY LINENETAMT ASC";
312         } else if (strOrder.equals("Amountdesc")){
313           strOrderby = " ORDER BY LINENETAMT DESC";
314         } else if (strOrder.equals("Ratioasc")){
315           strOrderby = " ORDER BY RATIO ASC";
316         } else if (strOrder.equals("Ratiodesc")){
317           strOrderby = " ORDER BY RATIO DESC";
318         }else{
319           strOrderby = "1";
320         }
321       } else{
322         if (strOrder.equals("Normal")){
323           strOrderby += "NIVEL"+k;
324         } else if (strOrder.equals("Amountasc")){
325           strOrderby += "LINENETAMT ASC";
326         } else if (strOrder.equals("Amountdesc")){
327           strOrderby += "LINENETAMT DESC";
328         } else if (strOrder.equals("Ratioasc")){
329           strOrderby += "RATIO ASC";
330         } else if (strOrder.equals("Ratiodesc")){
331           strOrderby += "RATIO DESC";
332         } else{
333           strOrderby = "1";
334         }
335       }
336
337     } else{
338       strOrderby = " ORDER BY 1";
339     }
340     String JavaDoc strHaving = "";
341     if (!strMayor.equals("") && !strMenor.equals("")) {strHaving = " HAVING SUM(LINENETAMT) > "+strMayor+" AND SUM(LINENETAMT) < "+strMenor;}
342     else if (!strMayor.equals("") && strMenor.equals("")) {strHaving = " HAVING SUM(LINENETAMT) > "+strMayor;}
343     else if (strMayor.equals("") && !strMenor.equals("")) {strHaving = " HAVING SUM(LINENETAMT) < "+strMenor;}
344     else{}
345     if (strHaving.equals("")){
346       if (!strRatioMayor.equals("") && !strRatioMenor.equals("")) {strHaving = " HAVING DIVIDE(SUM(REFUNDAMT), (SUM(LINENETAMT)+SUM(REFUNDAMT)))*100 > "+strRatioMayor+" AND DIVIDE(SUM(REFUNDAMT), (SUM(LINENETAMT)+SUM(REFUNDAMT)))*100 < "+strRatioMenor;}
347       else if (!strRatioMayor.equals("") && strRatioMenor.equals("")) {strHaving = " HAVING DIVIDE(SUM(REFUNDAMT), (SUM(LINENETAMT)+SUM(REFUNDAMT)))*100 > "+strRatioMayor;}
348       else if (strRatioMayor.equals("") && !strRatioMenor.equals("")) {strHaving = " HAVING DIVIDE(SUM(REFUNDAMT), (SUM(LINENETAMT)+SUM(REFUNDAMT)))*100 < "+strRatioMenor;}
349       else{}
350     } else {
351       if (!strRatioMayor.equals("") && !strRatioMenor.equals("")) {strHaving = " AND DIVIDE(SUM(REFUNDAMT), (SUM(LINENETAMT)+SUM(REFUNDAMT)))*100 > "+strRatioMayor+" AND DIVIDE(SUM(REFUNDAMT), (SUM(LINENETAMT)+SUM(REFUNDAMT)))*100 < "+strRatioMenor;}
352       else if (!strRatioMayor.equals("") && strRatioMenor.equals("")) {strHaving = " AND DIVIDE(SUM(REFUNDAMT), (SUM(LINENETAMT)+SUM(REFUNDAMT)))*100 > "+strRatioMayor;}
353       else if (strRatioMayor.equals("") && !strRatioMenor.equals("")) {strHaving = " AND DIVIDE(SUM(REFUNDAMT), (SUM(LINENETAMT)+SUM(REFUNDAMT)))*100 < "+strRatioMenor;}
354       else{}
355     }
356     strOrderby = strHaving + strOrderby;
357     if (strComparative.equals("Y")){
358       data = ReportRefundSalesDimensionalAnalysesData.select(this, strTextShow[0], strTextShow[1], strTextShow[2], strTextShow[3], strTextShow[4], strTextShow[5], strTextShow[6], Tree.getMembers(this, TreeData.getTreeOrg(this, vars.getClient()), strOrg), Utility.getContext(this, vars, "#User_Client", "ReportRefundInvoiceCustomerDimensionalAnalyses"), strDateFrom, DateTimeData.nDaysAfter(this, strDateTo,"1"), strPartnerGroup, strcBpartnerId, strProductCategory, strmProductId, strsalesrepId, strmWarehouseId, strDateFromRef, DateTimeData.nDaysAfter(this, strDateToRef,"1"), strOrderby);
359     } else {
360       data = ReportRefundSalesDimensionalAnalysesData.selectNoComparative(this, strTextShow[0], strTextShow[1], strTextShow[2], strTextShow[3], strTextShow[4], strTextShow[5], strTextShow[6], Tree.getMembers(this, TreeData.getTreeOrg(this, vars.getClient()), strOrg), Utility.getContext(this, vars, "#User_Client", "ReportRefundInvoiceCustomerDimensionalAnalyses"), strDateFrom, DateTimeData.nDaysAfter(this, strDateTo,"1"), strPartnerGroup, strcBpartnerId, strProductCategory, strmProductId, strsalesrepId, strmWarehouseId, strOrderby);
361     }
362
363     if (data.length == 0 || data == null){
364       //discard1[0] = "selEliminar1";
365
data = ReportRefundSalesDimensionalAnalysesData.set();
366     } else {
367       int contador = intDiscard;
368       if (intAuxDiscard != -1) contador = intAuxDiscard;
369       int k = 1;
370       if (strComparative.equals("Y")){
371         for (int j = contador; j>0; j--){
372           discard1[k] = "fieldTotalQtyNivel"+String.valueOf(j);
373           discard1[k+12] = "fieldTotalRefundQtyNivel"+String.valueOf(j);
374           discard1[k+24] = "fieldUomsymbol"+String.valueOf(j);
375           discard1[k+6] = "fieldTotalRefQtyNivel"+String.valueOf(j);
376           discard1[k+18] = "fieldTotalRefRefundQtyNivel"+String.valueOf(j);
377           k++;
378         }
379       } else {
380         for (int j = contador; j>0; j--){
381           discard1[k] = "fieldNoncomparativeTotalQtyNivel"+String.valueOf(j);
382           discard1[k+10] = "fieldNoncomparativeTotalRefundQtyNivel"+String.valueOf(j);
383           discard1[k+20] = "fieldNoncomparativeUomsymbol"+String.valueOf(j);
384           k++;
385         }
386       }
387
388     }
389     xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_reports/ReportRefundSalesDimensionalAnalysesEdition", discard1).createXmlDocument();
390
391     xmlDocument.setParameter("eliminar2", discard[1]);
392     xmlDocument.setParameter("eliminar3", discard[2]);
393     xmlDocument.setParameter("eliminar4", discard[3]);
394     xmlDocument.setParameter("eliminar5", discard[4]);
395     xmlDocument.setParameter("eliminar6", discard[5]);
396     xmlDocument.setParameter("eliminar7", discard[6]);
397     xmlDocument.setParameter("title", strTitle);
398     xmlDocument.setParameter("constante", "100");
399     if (strComparative.equals("Y")){
400       xmlDocument.setData("structure1", data);
401     } else {
402       xmlDocument.setData("structure2", data);
403     }
404     response.setContentType("text/html; charset=UTF-8");
405     PrintWriter out = response.getWriter();
406     out.println(xmlDocument.print());
407     out.close();
408   }
409
410   public String JavaDoc getServletInfo() {
411     return "Servlet ReportRefundSalesDimensionalAnalyses. This Servlet was made by Jon Alegría";
412   } // end of getServletInfo() method
413
}
414
415
Popular Tags