1 19 package org.openbravo.erpCommon.ad_reports; 20 21 import org.openbravo.erpCommon.utility.*; 22 import org.openbravo.erpCommon.businessUtility.WindowTabs; 23 import org.openbravo.base.secureApp.HttpSecureAppServlet; 24 import org.openbravo.base.secureApp.VariablesSecureApp; 25 import org.openbravo.xmlEngine.XmlDocument; 26 import java.io.*; 27 import javax.servlet.*; 28 import javax.servlet.http.*; 29 30 import org.openbravo.erpCommon.utility.ComboTableData; 31 import org.openbravo.erpCommon.utility.ToolBar; 32 33 import org.openbravo.erpCommon.utility.DateTimeData; 34 35 public class ReportProjectBuildingSite extends HttpSecureAppServlet { 36 37 38 public void doPost (HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException { 39 VariablesSecureApp vars = new VariablesSecureApp(request); 40 41 if (!Utility.hasProcessAccess(this, vars, "", "RV_ReportProjectBuildingSite")) { 42 bdError(response, "AccessTableNoView", vars.getLanguage()); 43 return; 44 } 45 46 if (vars.commandIn("DEFAULT")){ 47 String strdateFrom = vars.getGlobalVariable("inpDateFrom", "ReportProjectBuildingSite|DateFrom", ""); 48 String strdateTo = vars.getGlobalVariable("inpDateTo", "ReportProjectBuildingSite|DateTo", ""); 49 String strcProjectId = vars.getGlobalVariable("inpcProjectId", "ReportProjectBuildingSite|cProjectId", ""); 50 String strcBpartnerId = vars.getInGlobalVariable("inpcBPartnerId_IN", "ReportProjectBuildingSite|cBPartnerId_IN", ""); 51 String strmCategoryId = vars.getInGlobalVariable("inpmProductCategoryId", "ReportProjectBuildingSite|mCategoryId", ""); 52 String strProjectkind = vars.getInGlobalVariable("inpProjectkind", "ReportProjectBuildingSite|Projectkind", ""); 53 String strProjectstatus = vars.getInGlobalVariable("inpProjectstatus", "ReportProjectBuildingSite|Projectstatus", ""); 54 String strProjectphase = vars.getInGlobalVariable("inpProjectphase", "ReportProjectBuildingSite|Projectphase", ""); 55 String strProduct = vars.getInGlobalVariable("inpmProductId_IN", "ReportProjectBuildingSite|mProductId_IN", ""); 56 String strProjectpublic = vars.getGlobalVariable("inpProjectpublic", "ReportProjectBuildingSite|Projectpublic", ""); 57 String strSalesRep = vars.getGlobalVariable("inpSalesRepId", "ReportProjectBuildingSite|SalesRepId", ""); 58 String strcRegionId = vars.getInGlobalVariable("inpcRegionId", "ReportProjectBuildingSite|cRegionId", ""); 59 printPageDataSheet(response, vars, strdateFrom, strdateTo, strcBpartnerId, strcProjectId, strmCategoryId, strProjectkind, strProjectphase, strProjectstatus, strProjectpublic, strcRegionId, strSalesRep, strProduct); 60 }else if(vars.commandIn("FIND")){ 61 String strdateFrom = vars.getRequestGlobalVariable("inpDateFrom", "ReportProjectBuildingSite|DateFrom"); 62 String strdateTo = vars.getRequestGlobalVariable("inpDateTo", "ReportProjectBuildingSite|DateTo"); 63 String strcProjectId = vars.getRequestGlobalVariable("inpcProjectId", "ReportProjectBuildingSite|cProjectId"); 64 String strcBpartnerId = vars.getRequestInGlobalVariable("inpcBPartnerId_IN", "ReportProjectBuildingSite|cBPartnerId_IN"); 65 String strmCategoryId = vars.getRequestInGlobalVariable("inpmProductCategoryId", "ReportProjectBuildingSite|mCategoryId"); 66 String strProjectkind = vars.getRequestInGlobalVariable("inpProjectkind", "ReportProjectBuildingSite|Projectkind"); 67 String strProjectstatus = vars.getRequestInGlobalVariable("inpProjectstatus", "ReportProjectBuildingSite|Projectstatus"); 68 String strProjectphase = vars.getRequestInGlobalVariable("inpProjectphase", "ReportProjectBuildingSite|Projectphase"); 69 String strProduct = vars.getRequestInGlobalVariable("inpmProductId_IN", "ReportProjectBuildingSite|mProductId_IN"); 70 String strProjectpublic = vars.getRequestGlobalVariable("inpProjectpublic", "ReportProjectBuildingSite|Projectpublic"); 71 String strSalesRep = vars.getRequestGlobalVariable("inpSalesRepId", "ReportProjectBuildingSite|SalesRepId"); 72 String strcRegionId = vars.getRequestInGlobalVariable("inpcRegionId", "ReportProjectBuildingSite|cRegionId"); 73 printPageDataSheet(response, vars, strdateFrom, strdateTo, strcBpartnerId, strcProjectId, strmCategoryId, strProjectkind, strProjectphase, strProjectstatus, strProjectpublic, strcRegionId, strSalesRep, strProduct); 74 } else if (vars.commandIn("PDF")){ 75 String strdateFrom = vars.getRequestGlobalVariable("inpDateFrom", "ReportProjectBuildingSite|DateFrom"); 76 String strdateTo = vars.getRequestGlobalVariable("inpDateTo", "ReportProjectBuildingSite|DateTo"); 77 String strcProjectId = vars.getRequestGlobalVariable("inpcProjectId", "ReportProjectBuildingSite|cProjectId"); 78 String strcBpartnerId = vars.getRequestInGlobalVariable("inpcBPartnerId_IN", "ReportProjectBuildingSite|cBPartnerId_IN"); 79 String strmCategoryId = vars.getRequestInGlobalVariable("inpmProductCategoryId", "ReportProjectBuildingSite|mCategoryId"); 80 String strProjectkind = vars.getRequestInGlobalVariable("inpProjectkind", "ReportProjectBuildingSite|Projectkind"); 81 String strProjectstatus = vars.getRequestInGlobalVariable("inpProjectstatus", "ReportProjectBuildingSite|Projectstatus"); 82 String strProjectphase = vars.getRequestInGlobalVariable("inpProjectphase", "ReportProjectBuildingSite|Projectphase"); 83 String strProduct = vars.getRequestInGlobalVariable("inpmProductId_IN", "ReportProjectBuildingSite|mProductId_IN"); 84 String strProjectpublic = vars.getRequestGlobalVariable("inpProjectpublic", "ReportProjectBuildingSite|Projectpublic"); 85 String strSalesRep = vars.getRequestGlobalVariable("inpSalesRepId", "ReportProjectBuildingSite|SalesRepId"); 86 String strcRegionId = vars.getRequestInGlobalVariable("inpcRegionId", "ReportProjectBuildingSite|cRegionId"); 87 printPageDataPDF(response, vars, strdateFrom, strdateTo, strcBpartnerId, strcProjectId, strmCategoryId, strProjectkind, strProjectphase, strProjectstatus, strProjectpublic, strcRegionId, strSalesRep, strProduct); 88 }else pageErrorPopUp(response); 89 } 90 91 void printPageDataSheet(HttpServletResponse response, VariablesSecureApp vars, String strdateFrom, String strdateTo, String strcBpartnerId, String strcProjectId, String strmCategoryId, String strProjectkind, String strProjectphase, String strProjectstatus, String strProjectpublic,String strcRegionId, String strSalesRep, String strProduct) throws IOException, ServletException { 92 if (log4j.isDebugEnabled()) log4j.debug("Output: dataSheet"); 93 String discard[]={"sectionPartner"}; 94 String strTitle = ""; 95 XmlDocument xmlDocument=null; 96 if (vars.commandIn("DEFAULT")){ 97 xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_reports/ReportProjectBuildingSite").createXmlDocument(); 98 99 ToolBar toolbar = new ToolBar(this, vars.getLanguage(), "ReportProjectBuildingSite", false, "", "", "openServletNewWindow('PDF', false, 'ReportProjectBuildingSitePDF.pdf', 'ReportProjectBuildingSite', null, false, '750', '1024', true);return false;",false, "ad_reports", strReplaceWith, false, true); 100 toolbar.prepareSimpleToolBarTemplate(); 101 xmlDocument.setParameter("toolbar", toolbar.toString()); 102 103 try { 104 KeyMap key = new KeyMap(this, vars, "ReportProjectBuildingSite.html"); 105 xmlDocument.setParameter("keyMap", key.getReportKeyMaps()); 106 } catch (Exception ex) { 107 throw new ServletException(ex); 108 } 109 try { 110 WindowTabs tabs = new WindowTabs(this, vars, "org.openbravo.erpCommon.ad_reports.ReportProjectBuildingSite"); 111 xmlDocument.setParameter("parentTabContainer", tabs.parentTabs()); 112 xmlDocument.setParameter("mainTabContainer", tabs.mainTabs()); 113 xmlDocument.setParameter("childTabContainer", tabs.childTabs()); 114 xmlDocument.setParameter("theme", vars.getTheme()); 115 NavigationBar nav = new NavigationBar(this, vars.getLanguage(), "ReportProjectBuildingSite.html", classInfo.id, classInfo.type, strReplaceWith, tabs.breadcrumb()); 116 xmlDocument.setParameter("navigationBar", nav.toString()); 117 LeftTabsBar lBar = new LeftTabsBar(this, vars.getLanguage(), "ReportProjectBuildingSite.html", strReplaceWith); 118 xmlDocument.setParameter("leftTabs", lBar.manualTemplate()); 119 } catch (Exception ex) { 120 throw new ServletException(ex); 121 } 122 { 123 OBError myMessage = vars.getMessage("ReportProjectBuildingSite"); 124 vars.removeMessage("ReportProjectBuildingSite"); 125 if (myMessage!=null) { 126 xmlDocument.setParameter("messageType", myMessage.getType()); 127 xmlDocument.setParameter("messageTitle", myMessage.getTitle()); 128 xmlDocument.setParameter("messageMessage", myMessage.getMessage()); 129 } 130 } 131 132 133 134 xmlDocument.setParameter("calendar", vars.getLanguage().substring(0,2)); 135 xmlDocument.setParameter("dateFrom", strdateFrom); 136 xmlDocument.setParameter("dateFromdisplayFormat", vars.getSessionValue("#AD_SqlDateFormat")); 137 xmlDocument.setParameter("dateFromsaveFormat", vars.getSessionValue("#AD_SqlDateFormat")); 138 xmlDocument.setParameter("dateTo", strdateTo); 139 xmlDocument.setParameter("dateTodisplayFormat", vars.getSessionValue("#AD_SqlDateFormat")); 140 xmlDocument.setParameter("dateTosaveFormat", vars.getSessionValue("#AD_SqlDateFormat")); 141 xmlDocument.setParameter("paramBPartnerId", strcBpartnerId); 142 xmlDocument.setParameter("cProjectId", strcProjectId); 143 xmlDocument.setParameter("projectName", ReportProjectBuildingSiteData.selectProject(this, strcProjectId)); 144 xmlDocument.setParameter("mProductCatId", strmCategoryId); 145 xmlDocument.setParameter("cProjectKind", strProjectkind); 146 xmlDocument.setParameter("cRegionId", strcRegionId); 147 xmlDocument.setParameter("cProjectPhase", strProjectphase); 148 xmlDocument.setParameter("cProjectStatus", strProjectstatus); 149 xmlDocument.setParameter("cProjectPublic", strProjectpublic); 150 xmlDocument.setParameter("salesRep", strSalesRep); 151 try { 152 ComboTableData comboTableData = new ComboTableData(vars, this, "LIST", "C_Project_kind", "Projectkind", "", Utility.getContext(this, vars, "#User_Org", "ReportProjectBuildingSite"), Utility.getContext(this, vars, "#User_Client", "ReportProjectBuildingSite"), 0); 153 Utility.fillSQLParameters(this, vars, null, comboTableData, "ReportProjectBuildingSite", strProjectkind); 154 xmlDocument.setData("reportC_PROJECTKIND","liststructure", comboTableData.select(false)); 155 comboTableData = null; 156 } catch (Exception ex) { 157 throw new ServletException(ex); 158 } 159 160 try { 161 ComboTableData comboTableData = new ComboTableData(vars, this, "LIST", "C_Project_phase", "Projectphase", "", Utility.getContext(this, vars, "#User_Org", "ReportProjectBuildingSite"), Utility.getContext(this, vars, "#User_Client", "ReportProjectBuildingSite"), 0); 162 Utility.fillSQLParameters(this, vars, null, comboTableData, "ReportProjectBuildingSite", strProjectphase); 163 xmlDocument.setData("reportC_PROJECTKIND","liststructure", comboTableData.select(false)); 164 comboTableData = null; 165 } catch (Exception ex) { 166 throw new ServletException(ex); 167 } 168 169 try { 170 ComboTableData comboTableData = new ComboTableData(vars, this, "LIST", "C_Project_status", "ProjectStatus", "", Utility.getContext(this, vars, "#User_Org", "ReportProjectBuildingSite"), Utility.getContext(this, vars, "#User_Client", "ReportProjectBuildingSite"), 0); 171 Utility.fillSQLParameters(this, vars, null, comboTableData, "ReportProjectBuildingSite", strProjectstatus); 172 xmlDocument.setData("reportC_PROJECTSTATUS","liststructure", comboTableData.select(false)); 173 comboTableData = null; 174 } catch (Exception ex) { 175 throw new ServletException(ex); 176 } 177 178 try { 179 ComboTableData comboTableData = new ComboTableData(vars, this, "LIST", "C_Project_public", "ProjectPrivate", "", Utility.getContext(this, vars, "#User_Org", "ReportProjectBuildingSite"), Utility.getContext(this, vars, "#User_Client", "ReportProjectBuildingSite"), 0); 180 Utility.fillSQLParameters(this, vars, null, comboTableData, "ReportProjectBuildingSite", strProjectpublic); 181 xmlDocument.setData("reportC_PROJECTPUBLIC","liststructure", comboTableData.select(false)); 182 comboTableData = null; 183 } catch (Exception ex) { 184 throw new ServletException(ex); 185 } 186 187 xmlDocument.setData("reportC_PRODUCTCATREGORY","liststructure",SubCategoryProductData.select(this)); 188 189 try { 190 ComboTableData comboTableData = new ComboTableData(vars, this, "TABLEDIR", "C_Region_ID", "", "C_Region of Country", Utility.getContext(this, vars, "#User_Org", "Account"), Utility.getContext(this, vars, "#User_Client", "ReportSalesOrderProvided"), 0); 191 Utility.fillSQLParameters(this, vars, null, comboTableData, "ReportSalesOrderProvided", strcRegionId); 192 xmlDocument.setData("reportC_REGIONID","liststructure", comboTableData.select(false)); 193 comboTableData = null; 194 } catch (Exception ex) { 195 throw new ServletException(ex); 196 } 197 198 try { 199 ComboTableData comboTableData = new ComboTableData(vars, this, "TABLE", "", "AD_User SalesRep", "", Utility.getContext(this, vars, "#User_Org", "ReportProjectBuildingSite"), Utility.getContext(this, vars, "#User_Client", "ReportProjectBuildingSite"), 0); 200 Utility.fillSQLParameters(this, vars, null, comboTableData, "ReportSalesOrderProvided", strSalesRep); 201 xmlDocument.setData("reportSALESREP","liststructure", comboTableData.select(false)); 202 comboTableData = null; 203 } catch (Exception ex) { 204 throw new ServletException(ex); 205 } 206 207 xmlDocument.setData("reportCBPartnerId_IN", "liststructure", ReportProjectBuildingSiteData.selectBpartner(this, Utility.getContext(this, vars, "#User_Org", ""), Utility.getContext(this, vars, "#User_Client", ""), strcBpartnerId)); 208 xmlDocument.setData("reportMProductId_IN", "liststructure", ReportProjectBuildingSiteData.selectMproduct(this, Utility.getContext(this, vars, "#User_Org", ""), Utility.getContext(this, vars, "#User_Client", ""), strProduct)); 209 } else { 210 ReportProjectBuildingSiteData[] data = ReportProjectBuildingSiteData.select(this, Utility.getContext(this, vars, "#User_Client", "ReportProjectBuildingSite"), Utility.getContext(this, vars, "#User_Org", "ReportProjectBuildingSite"), strdateFrom, DateTimeData.nDaysAfter(this, strdateTo,"1"), strcBpartnerId, strcProjectId, strmCategoryId, strProjectkind, strProjectphase, strProjectstatus, strProjectpublic, strcRegionId, strSalesRep, strProduct); 211 212 if (data == null || data.length == 0){ 213 xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_reports/ReportProjectBuildingSitePop", discard).createXmlDocument(); 214 xmlDocument.setData("structure1", ReportProjectBuildingSiteData.set()); 215 } 216 else { 217 xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_reports/ReportProjectBuildingSitePop").createXmlDocument(); 218 xmlDocument.setData("structure1", data); 219 } 220 if (!strProjectpublic.equals("")) strTitle += ", " + Utility.messageBD(this, "WithInitiativeType", vars.getLanguage()) + " " + ReportProjectBuildingSiteData.selectProjectpublic(this, vars.getLanguage(), strProjectpublic); 221 if (!strdateFrom.equals("")) strTitle += ", " + Utility.messageBD(this, "From", vars.getLanguage()) + " "+strdateFrom; 222 if (!strdateTo.equals("")) strTitle += " " + Utility.messageBD(this, "To", vars.getLanguage()) + " "+strdateTo; 223 if (!strSalesRep.equals("")) strTitle += ", " + Utility.messageBD(this, "ForTheSalesRep", vars.getLanguage()) + " " + ReportProjectBuildingSiteData.selectSalesRep(this, Utility.getContext(this, vars, "#User_Org", "ReportProjectBuildingSite"), Utility.getContext(this, vars, "#User_Client", "ReportProjectBuildingSite"), strSalesRep); 224 xmlDocument.setParameter("title", strTitle); 225 } 226 xmlDocument.setParameter("language", "LNG_POR_DEFECTO=\"" + vars.getLanguage() + "\";"); 227 xmlDocument.setParameter("direction", "var baseDirection = \"" + strReplaceWith + "/\";\n"); 228 response.setContentType("text/html; charset=UTF-8"); 229 PrintWriter out = response.getWriter(); 230 out.println(xmlDocument.print()); 231 out.close(); 232 } 233 234 void printPageDataPDF(HttpServletResponse response, VariablesSecureApp vars, String strdateFrom, String strdateTo, String strcBpartnerId, String strcProjectId, String strmCategoryId, String strProjectkind, String strProjectphase, String strProjectstatus, String strProjectpublic,String strcRegionId, String strSalesRep, String strProduct) throws IOException, ServletException { 235 if (log4j.isDebugEnabled()) log4j.debug("Output: PDF"); 236 String discard[]={"sectionPartner"}; 237 String strTitle = ""; 238 XmlDocument xmlDocument=null; 239 240 ReportProjectBuildingSiteData[] data = ReportProjectBuildingSiteData.select(this, Utility.getContext(this, vars, "#User_Client", "ReportProjectBuildingSite"), Utility.getContext(this, vars, "#User_Org", "ReportProjectBuildingSite"), strdateFrom, DateTimeData.nDaysAfter(this, strdateTo,"1"), strcBpartnerId, strcProjectId, strmCategoryId, strProjectkind, strProjectphase, strProjectstatus, strProjectpublic, strcRegionId, strSalesRep, strProduct); 241 242 if (data == null || data.length == 0){ 243 xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_reports/ReportProjectBuildingSitePDF", discard).createXmlDocument(); 244 xmlDocument.setData("structure1", ReportProjectBuildingSiteData.set()); 245 } 246 else { 247 xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_reports/ReportProjectBuildingSitePDF").createXmlDocument(); 248 xmlDocument.setData("structure1", data); 249 } 250 if (!strProjectpublic.equals("")) strTitle += ", " + Utility.messageBD(this, "WithInitiativeType", vars.getLanguage()) + " " + ReportProjectBuildingSiteData.selectProjectpublic(this, vars.getLanguage(), strProjectpublic); 251 if (!strdateFrom.equals("")) strTitle += ", " + Utility.messageBD(this, "From", vars.getLanguage()) + " "+strdateFrom; 252 if (!strdateTo.equals("")) strTitle += " " + Utility.messageBD(this, "To", vars.getLanguage()) + " "+strdateTo; 253 if (!strSalesRep.equals("")) strTitle += ", " + Utility.messageBD(this, "ForTheSalesRep", vars.getLanguage()) + " " + ReportProjectBuildingSiteData.selectSalesRep(this, Utility.getContext(this, vars, "#User_Org", "ReportProjectBuildingSite"), Utility.getContext(this, vars, "#User_Client", "ReportProjectBuildingSite"), strSalesRep); 254 255 xmlDocument.setData("structure1", data); 256 String strResult = xmlDocument.print(); 257 if (log4j.isDebugEnabled()) log4j.debug(strResult); 258 renderFO(strResult, response); 259 260 } 261 262 public String getServletInfo() { 263 return "Servlet ReportProjectBuildingSite. This Servlet was made by Eduardo Argal"; 264 } } 266 267 | Popular Tags |