Ver Mensaje Individual
  #156 (permalink)  
Antiguo 16/05/2005, 15:57
patasgreen20
 
Fecha de Ingreso: mayo-2005
Mensajes: 13
Antigüedad: 19 años
Puntos: 0
Hola a todos nuevamente a quien me quiera ayudar, tengo un vector[25] con los resultados de un query cada registro tiene 5 campos, estos 5 registros los quiero mandar a imprimir, pero con el siguiente codigo me aparece solo el primer registro, me pueden dar ideas de como hacerlo?

<%@ page errorPage="/base_de_datos/error.jsp" %>
<%@ page import="net.sf.jasperreports.engine.util.JRLoader" %>
<%@ page import="net.sf.jasperreports.engine.*" %>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@include file="conexion.jsp"%>
<%
String cad1="",cad2="",cad3="",cad4="",cad5="",cad6="",ca d7="",cad8="",cad9="",cad10="";
String cad11="",cad12="",cad13="",cad14="",cad15="",cad16 ="",cad17="",cad18="",cad19="",cad20="";
//SE BAJA DE SESSION EL ARREGLO
Vector miVector = (Vector) request.getSession().getAttribute("resultado");
int r=0,x=0;
String arreglo[];
r=miVector.size();
arreglo = new String[r];
int num_reg = r/20;
System.out.print(num_reg);
miVector.toArray(arreglo);

for(int i=0;i<=num_reg;i++){
int j=i*20;
x++;
cad2=arreglo[j+1];
System.out.println("cad2: "+cad2);
cad3=arreglo[j+2];
System.out.println("cad3: "+cad3);
cad4=arreglo[j+3];
System.out.println("cad4: "+cad4);
cad5=arreglo[j+4];
System.out.println("cad5: "+cad5);
cad6=arreglo[j+5];
System.out.println("cad6: "+cad6);
cad7=arreglo[j+6];
if(cad7.equals("1")){
cad7="MASCULINO";
} else {
cad7="FEMENINO";
}
System.out.println("cad7: "+cad7);
cad8=arreglo[j+7];
System.out.println("cad8: "+cad8);
cad9=arreglo[j+8];
System.out.println("cad9: "+cad9);
cad10=arreglo[j+9];
System.out.println("cad10: "+cad10);
cad11=arreglo[j+10];
System.out.println("cad11: "+cad11);
cad12=arreglo[j+11];
System.out.println("cad12: "+cad12);
cad13=arreglo[j+12];
System.out.println("cad13: "+cad13);
cad14=arreglo[j+13];
System.out.println("cad14: "+cad14);
cad15=arreglo[j+14];
System.out.println("cad15: "+cad15);
cad16=arreglo[j+15];
System.out.println("cad16: "+cad16);
cad17=arreglo[j+16];
System.out.println("cad17: "+cad17);
cad18=arreglo[j+17];
System.out.println("cad18: "+cad18);
cad19=arreglo[j+18];
System.out.println("cad19: "+cad19);
cad20=arreglo[j+19];
System.out.println("cad20: "+cad20);


//File reportFile = new File("C:\\jakarta\\webapps\\ROOT\\exa_ED\\reports\ \Reporte.jasper");

File reportFile = new File(application.getRealPath("/exa_ED/reports/Reporte.jasper"));
System.out.println("ESTADO DEL REPORTE "+reportFile.exists()+" "+reportFile.canRead()+" "+reportFile.length()+" "+reportFile.getPath() );

Map parameters = new HashMap();
parameters.put("cad1", cad1);
parameters.put("cad2", cad2);
parameters.put("cad3", cad3);
parameters.put("cad4", cad4);
parameters.put("cad5", cad5);
parameters.put("cad6", cad6);
parameters.put("cad7", cad7);
parameters.put("cad8", cad8);
parameters.put("cad9", cad9);
parameters.put("cad10", cad10);
parameters.put("cad11", cad11);
parameters.put("cad12", cad12);
parameters.put("cad13", cad13);
parameters.put("cad14", cad14);
parameters.put("cad15", cad15);
parameters.put("cad16", cad16);
parameters.put("cad17", cad17);
parameters.put("cad18", cad18);
parameters.put("cad19", cad19);
parameters.put("cad20", cad20);

parameters.put("sql_query", " select * from N3_ALUMNOS ");

byte[] bytes = JasperRunManager.runReportToPdf(reportFile.getPath (),parameters,conna);
System.out.println(bytes.length);
System.out.println(bytes);
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes,0,bytes.length);
ouputStream.flush();
//ESTO LO HAGO PARA QUE CON EL close NO SE DETENGA LA EJECUCION
if(x==num_reg){
System.out.println("Termino");

ouputStream.close();
}
}
Y si pasa registro por registro pero en el acrobat solo me aparece el ultimo?