1 19 package org.openbravo.erpReports; 20 21 import org.openbravo.base.secureApp.*; 22 import org.openbravo.xmlEngine.XmlDocument; 23 import java.io.*; 24 import javax.servlet.*; 25 import javax.servlet.http.*; 26 27 28 public class RptM_Inout extends HttpSecureAppServlet { 29 30 31 public void init (ServletConfig config) { 32 super.init(config); 33 boolHist = false; 34 } 35 36 public void doPost (HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException { 37 VariablesSecureApp vars = new VariablesSecureApp(request); 38 39 if (vars.commandIn("DEFAULT")) { 40 String strmInoutId = vars.getSessionValue("RptM_Inout.inpmInoutId_R"); 41 if (strmInoutId.equals("")) strmInoutId = vars.getSessionValue("RptM_Inout.inpmInoutId"); 42 printPagePartePDF(response, vars, strmInoutId); 43 } else pageError(response); 44 } 45 46 47 void printPagePartePDF(HttpServletResponse response, VariablesSecureApp vars, String strmInoutId) throws IOException,ServletException{ 48 if (log4j.isDebugEnabled()) log4j.debug("Output: pdf"); 49 XmlDocument xmlDocument = xmlEngine.readXmlTemplate("org/openbravo/erpReports/RptM_Inout").createXmlDocument(); 50 51 RptMInoutData[] data = RptMInoutData.select(this, strmInoutId); 52 String strCopies = RptMInoutData.selectCopies(this, strmInoutId); 53 RptMInoutData[] dataPrincipal = RptMInoutData.selectNumCopies(this, strCopies); 54 RptMInoutHeaderData[][] dataHeader = new RptMInoutHeaderData[Integer.valueOf(strCopies).intValue()][]; 55 RptMInoutLinesData[][] dataLines = new RptMInoutLinesData[Integer.valueOf(strCopies).intValue()][]; 56 int contador = 0; 57 for (int i = 0; i<data.length; i++){ 58 String strDocumentCopies = RptMInoutData.selectDocumentcopies(this, data[i].mInoutId); 59 for (int j = 0; j<Integer.valueOf(strDocumentCopies).intValue(); j++){ 60 dataHeader[contador] = RptMInoutHeaderData.select(this, data[i].mInoutId); 61 if (dataHeader[contador] == null || dataHeader[contador].length == 0) dataHeader[j] = new RptMInoutHeaderData[0]; 62 dataLines[contador] = RptMInoutLinesData.select(this, data[i].mInoutId); 63 if (dataLines[contador] == null || dataLines[contador].length == 0) dataLines[j] = new RptMInoutLinesData[0]; 64 contador ++; 65 } 66 } 67 xmlDocument.setData("structure1",dataPrincipal); 68 xmlDocument.setDataArray("reportInoutHeader", "structure1", dataHeader); 69 xmlDocument.setDataArray("reportInoutLines","structure2",dataLines); 70 String strResult = xmlDocument.print(); 71 renderFO(strResult, response); 72 } 73 74 public String getServletInfo() { 75 return "Servlet that presents the RptMInout seeker"; 76 } } 78 | Popular Tags |