Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Java (http://www.forosdelweb.com/f45/)
-   -   Jasper Report + iReport + NetBeans 4 (http://www.forosdelweb.com/f45/jasper-report-ireport-netbeans-4-a-280528/)

muabdib 16/02/2007 10:55

cont. problema formato excel
 
hola, tambien agradecería mucho que alguien me indicara los pasos correctos que tengo que dar para generar el xls de forma correcta con el ireport...por si estoy metiendo la pata...

Saludos.

czazueta 21/02/2007 10:30

Re: Jasper Report + iReport + NetBeans 4
 
DestruKtor:

Hola estoy empezando con el iReport, y quiero insertar una grafica, pero no puedo graficar varios puntos, solo grafico el primer punto, me podrias ayudar, o alguien del foro me podria decir como hacerle..

Saludos y Gracias,

newpamslain 27/02/2007 15:54

Re: Jasper Report + iReport + NetBeans 4
 
Holas, a todos recien estoy aprendiendo a usar el iReports
tengo uan duda
tengo p.e. dos tablas Tabla Mascota, tabla Persona y ambos tienen como campo CODIGO, como lo invocaria utilizanod los textfield??

OItra pregutna, se puede ingresar varios querys al ireport os imolemente uno? si se pueden varios xfavor enseñenmelos pliz
txss! =):-)
pamela r.s

camilum 05/03/2007 09:34

Re: Jasper Report + iReport + NetBeans 4
 
Tengo el siguiente error:

Mensaje de error ==> Class not found when loading object from file : C:\codigos\Poyrcto\Proyecto\build\web\Reportes\env ia_rut.jasper
Causa del error ==> java.lang.ClassNotFoundException: org.apache.commons.collections.SequencedHashMap

Con esto no muestra el reporte, caul puede ser el problema que esta causando el error ?
y este es mi codigo:

protected void handleSubmit(HttpServletRequest request, HttpServletResponse response) throws IOException {

PrintWriter out = null;
String reReporte = request.getParameter("reporte");
String rut = request.getParameter("rut");
System.out.println("el nombre del reporte es "+reReporte);

try {
Connection con = DbPoolManager.getConnection("mysql_");
String rptfilename = "/Reportes/"+reReporte;
HashMap params = new HashMap();
params.put("rut_fun", rut);
JasperPrint jasperprint = JasperFillManager.fillReport(getServletContext().g etRealPath("/") + rptfilename, params, con);
byte[] pdfasbytes = JasperExportManager.exportReportToPdf(jasperprint) ;
ServletOutputStream outstream = response.getOutputStream();
response.setContentType("application/pdf");
response.setContentLength(pdfasbytes.length);
response.setHeader("Content-disposition", "inline; \"envia_rut.pdf\"");
outstream.write(pdfasbytes);
} catch (Exception ne) {
out = response.getWriter();

out.println("<html>");
out.println("\t<body>");
out.println("\t\t<br /><br />");
out.println("\t\tA ocurrido un error no es posible "
+ "despelgar el reporte "
+ "en este momento.");
out.println("\t\t<br /><br />");
out.println("\t\tMensaje de error ==> " + ne.getLocalizedMessage());
out.println("\t\t<br />");
out.println("\t\tCausa del error ==> " + ne.getCause());
out.println("\t</body>");
out.println("</html>");
} finally {
try {

} catch (Exception e) {
e.printStackTrace();

}
}
}

panic 05/03/2007 12:06

Re: Filtro dinamico en la consulta
 
Cita:

Iniciado por Shu_A (Mensaje 1148072)
Hola a todos!!!
Mi objetivo ahora es poder establecer un filtro desde una pagina .jsp, y en funcion de los valores que quiera filtrar el usuario, crear un predicado adecuado a ese filtro para que muestre esos registros en el informe.

El problema es que no se como hacer que el predicado en el ireport sea dinamico. De hecho creo que no se puede, pero alguien aporto una idea importante, y es poner en la consulta unicamente un parametro en el que le pasaras la consulta entera. De este modo podriamos generar la consulta dinamica en JAVA (cosa mucho mas facil) y mandarsela al ireport.

Se comento en este foro que no funcionaba porque a la consulta se le añadian las comillas simples indicando que es cadena, y que esto no funcionaba. Y alguien dio la solucion de poner $P!{SQL_QUERY}... He realizado todos estos pasos. Solo tengo un parametro en la consulta (exactamente como se indica arriba) y le paso la consulta desde JAVA, pero me sale el siguiente error:

Error preparing statement for executing the report query : $P!{SQL_QUERY}

Haber si pudierais ayudarme, ya que es importante para mi. Muchas gracias.

Saludos. (Shu)


Hola que tal!!!
Alguin sabe si es posible hacer los filtros dinamicos que menciona Shu_A, si es asi, podrian ser tan amables de explicarme detalladamente como se hacen porfavor

JAMCH 05/03/2007 13:49

Re: Jasper Report + iReport + NetBeans 4
 
Camilum, para obtener el path en donde tenes el archivo .jasper yo utilizo una clase del jfree report, es una utilidad que obtiene el classpath de la clase que le pasas por parámetro por ejemplo (no me acuerdo exactmamente cual es pero bajate el jar y buscalo ahí) el metodo es getRelativeSource(Clase.class);
esto te retorna una Url con el camino de la clase desde ahi puedes moverte con . o .. por la estructura de directorios de tu app. Cuando posibilidad de ver mi codigo te lo adjunto en un nuevo post, por ahora es en lo que puedo ayudar.
Suerte.

JAMCH 05/03/2007 13:52

Re: Filtro dinamico en la consulta
 
Cita:

Iniciado por panic (Mensaje 1917060)
Hola que tal!!!
Alguin sabe si es posible hacer los filtros dinámicos que menciona Shu_A, si es asi, podrian ser tan amables de explicarme detalladamente como se hacen porfavor

Yo utilizo en vez de la consulta le paso una lista con los objetos, utilizando hibernate, por lo que los filtros los manejo como cualquier lista por pantalla, ya que primero armo la lista y después se la paso al reporte para que la muestre.

panic 06/03/2007 13:42

Re: Filtro dinamico en la consulta
 
Cita:

Iniciado por JAMCH (Mensaje 1917262)
Yo utilizo en vez de la consulta le paso una lista con los objetos, utilizando hibernate, por lo que los filtros los manejo como cualquier lista por pantalla, ya que primero armo la lista y después se la paso al reporte para que la muestre.

JAMCH nuna he utilizado el el hibernate, por favor explicame como pasas los objetos y si los recibes como parametros en el reporte, o como se maneja. Te agradeceria mucho si me puedes poner algunos codigos fuentes.

GRACIAS POR TU RESPUESTA.

JAMCH 06/03/2007 20:58

Re: Filtro dinamico en la consulta
 
Cita:

Iniciado por panic (Mensaje 1918832)
JAMCH nuna he utilizado el el hibernate, por favor explicame como pasas los objetos y si los recibes como parametros en el reporte, o como se maneja. Te agradeceria mucho si me puedes poner algunos codigos fuentes.

GRACIAS POR TU RESPUESTA.

Al momento no tengo las fuentes a mi alcance ya que estoy de licencia pero para este lunes te las mando, postea tu correo o pídelo a este correo [email protected], mejor me envías la petición así no me olvido. saludos.

faps79 09/03/2007 05:02

Problemas con un crosstab
 
Hola a todos, soy novísisimo en esto y tengo problema q no se resolver.
Tengo en un subreport en el cual me he definido un grupo.
Pues bien necesito sacar un cross tab para cada elemento perteneciente al grupo, el problema es que si no activo la opción de "Use a dataset to fill the crosstab" cuando lo ejecuto me sale este error:
Error*filling*print...
net.sf.jasperreports.engine.JRException:*Crosstab* data*has*already*been*processed. ****at*net.sf.jasperreports.crosstabs.fill.calcula tion.BucketingService.addData(BucketingService.jav a:286) ****at*net.sf.jasperreports.engine.fill.JRFillCros stab$JRFillCrosstabDataset.customIncrement(JRFillC rosstab.java:642) ****at*net.sf.jasperreports.engine.fill.JRFillElem entDataset.increment(JRFillElementDataset.java:169 )
...

Pero cuando activo la opción este error ya no aparece, sin embargo como os comentaba no me saca ningún valor. El problema es q no se como se usa lo referente a lo del subdata set (si es q es esta la solución)

Si alguien sabe como solucionarlo que me eche un cable, gracias

romisc 13/03/2007 06:50

Re: Jasper Report + iReport + NetBeans 4
 
Hola, estoy empezando con Jasper report y genere mi archivo .jasper con ireport. Para llamarlo desde netbeans 5.5 use el sgte codigo.
public class Reporte extends javax.swing.JFrame {
/** Creates new form Reporte */
public Reporte() {
initComponents();
}

/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents() {
cmdImprimir = new javax.swing.JButton();
txtParam = new javax.swing.JTextField();

setDefaultCloseOperation(javax.swing.WindowConstan ts.EXIT_ON_CLOSE);
cmdImprimir.setText("Reporte");
cmdImprimir.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdImprimirActionPerformed(evt);
}
});

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout .Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.G roupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(148, 148, 148)
.addComponent(cmdImprimir))
.addGroup(layout.createSequentialGroup()
.addGap(82, 82, 82)
.addComponent(txtParam, javax.swing.GroupLayout.PREFERRED_SIZE, 217, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap(101, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout .Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(90, 90, 90)
.addComponent(cmdImprimir)
.addGap(18, 18, 18)
.addComponent(txtParam, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(149, Short.MAX_VALUE))
);
pack();
}// </editor-fold>

private void cmdImprimirActionPerformed(java.awt.event.ActionEv ent evt) {
try
{

//Ruta de Archivo Jasper
String fileName="D:\\Mis Documentos\\POSSUMUS\\Ejemplos jasperreport\\banco1.jasper";
//Ruta de archivo pdf de destino
String destFileNamePdf="C:\\rep_cli.pdf";
//Ruta de archivo xls de destino
String destFileNameXls="C:\\rep_cli.xls";

//Pasamos parametros al reporte Jasper.
Map parameters = new HashMap();
parameters.put("P_bco_Codigo",txtParam.getText());


//Preparacion del reporte (en esta etapa se inserta el valor del query en el reporte).
JasperPrint jasperPrint=JasperFillManager.fillReport(fileName, parameters, getConnection());

//Creación del PDF
JasperExportManager.exportReportToPdfFile(jasperPr int, destFileNamePdf);

//Creación del XLS
JRXlsExporter exporter = new JRXlsExporter();
exporter.setParameter(JRExporterParameter.JASPER_P RINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_F ILE_NAME, destFileNameXls);
exporter.setParameter(JRXlsExporterParameter.IS_ON E_PAGE_PER_SHEET, Boolean.TRUE);
exporter.exportReport();

System.exit(0);
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Reporte().setVisible(true);
}
});
}

private static Connection getConnection() throws ClassNotFoundException, SQLException {
//Configuración de la conexión.
String driver = "com.mysql.jdbc.Driver";
String connectString = "jdbc:mysql://localhost:3306/logistica";
String user = "root";
String password = "root";

Class.forName(driver);
Connection conn = DriverManager.getConnection(connectString, user, password);

//Retornamos la conexión establecida.
return conn;
}

// Variables declaration - do not modify
private javax.swing.JButton cmdImprimir;
private javax.swing.JTextField txtParam;
// End of variables declaration

}
Pero me da el sqte error
warning: [path] bad path element "D:\Download\JasperReports\jasperreports-1.3.1\lib\log4j-core.jar": no such file or directory

Garcias

hansguevara 13/03/2007 11:06

Re: Jasper Report + iReport + NetBeans 4
 
aver yo soy nuevo en esto de java, tengo los konocimientos basikos ,

y bueno para un proyecto quiero implementar reportes y yo no se mucho del iReport no se si alguien tiene un tutorial o algo para realizarlo.

yo lo que quiero es pasarle parametros komo u ArrayList o algo y generar el reporte.

estaba intentando con servlets para que me muestre en una pagina el reporte, pero no llego a la solucion.

public static void main(String []args) throws ServletException, IOException
{



HttpServletResponse response;
HttpSession session;
String pageResp;
session.setAttribute("mensaje","hansitus");

pageResp="bienvenido.jsp";//esta es mi pagina que cree que recibia parametros
response.sendRedirect(pageResp);
}

pero me sale u error, en el response y session, yo lo que quiero es que un boton de mi JFrame al hacer el evento me genere un reporte.
no se si fui claro,

alguien que tenga un tutorial de iReport, o si me ayudan a la solucion del jsp.
GRACIAS DE ANTEMANO

MI CORREO ES [email protected]

sito-ito 14/03/2007 16:36

Re: Jasper Report + iReport + NetBeans 4
 
Hola, me gustaria saber como se pueden hacer un INDICE de contenidos con Ireport.

Pues una cosa asi :

capitulo 1 .................................. 1
capitulo 2 ................................. 2
...
..

Pero claro sin saber antes de empezar en que pagina esta cada capitulo.

Otro asunto es como hacer una portada para el reporte sin que meta nada de las otras bandas???

Por favor lo del indice me hace mucha falta !!

exorcite 16/03/2007 04:54

Re: Jasper Report + iReport + NetBeans 4
 
Hola gente, necesito vuestra ayuda. Tengo un report sencillo que lo visualizo en PDF y lo hace correcto, pero en cliente el mismo report sale con otro tipo de letra y claro, hay partes del texto que ni aparecen. ¿Como lo podria solucionar?

candysx 16/03/2007 16:42

Re: Jasper Report + iReport + NetBeans 4
 
Hola a todos, necesito una super ayuda, apenas estoy empezando a usar iReports 1.3.1 y necesito saber si alguno de ustedes sabe si puedo usar objetos de mi base de datos aqui, como son paquetes de pl/sql. Estoy usando una base de Datos Oracle 10g. Pero tengo no puedo mandar llamar mis paquetes alguien podria decirme como??

Muchisimas Gracias y espero puedan ayudarme.

Saludos

DestruKtor 20/03/2007 07:58

Re: Jasper Report + iReport + NetBeans 4
 
Hola a todos,

Aqui expongo un problema haber si alguien sugiere una solucion.

En un reporte me e visto en la necesidad de incluir un codigo de barras de 2 dimenciones PDF417, desde hace unas versiones atras ireport trae un componente para aquello utilizando las clases barbecue http://barbecue.sourceforge.net/ , pero tal como se indica en el proyecto el timpre pdf417 solo esta en version alfa y no esta terminada su implementacion.
por ejemplo no maneja nivel de correccion de errores y compactacion binaria de la data. y precisamente el timpre a generar debe tener tales caracteristicas.

busque algunas clases que si lo soportaran y encontre http://sourceforge.net/projects/pdf417lib/ pero este tampoco soporta comprecion binaria y me a dado problemas con los caracteres especiales,
este otro proyecto si lo soporta http://barcode4j.krysalis.org/ pero se me cae cuando la cadena a codificar es muy extensa y tb problemas con caracteres especiales.

Alguien a trabajado con alguna clase que genere el timpre con nivel ec=5 compactacion binaria???

si no, habra q esperar se termine desarrollar barbacue, para usar barcodes 2d de forma correcta.

DestruKtor 21/03/2007 16:20

Re: Jasper Report + iReport + NetBeans 4
 
pues el que busca siempre encuentra, y resulta que itext en su ultimas versiones soporta pdf417 con compactación binaria.

más detalles pues lean la documentación de itext

KARU06 22/03/2007 15:23

Re: Jasper Report + iReport + NetBeans 4
 
Hola a todos!!!


Destructor o quien pueda ayudarme:

Estoy manejando dos subreportes, los cuales estan dentro de un grupo cada uno.. El problema es este: Necesito mostrar 19 registros de cada subreporte en la 1era hoja es decir:
1
2 // del subreporte 1
...
19

1
2 //del subreporte 2
...
19

Los 38 registros deben ser presentados en la misma hoja..logre hacer que cada subreporte me presente 19 registros :si: ... El problema es que no me presenta ambos subreportes en la misma hoja...

Si alguien tiene la solucion se lo agradeceria muchisiiiiisiiiiimoooooo!!!!!!!!!!!!!:'(

pachequin 26/03/2007 19:08

Re: iReport + Barcode + Sun One
 
Cita:

Iniciado por msq (Mensaje 1893459)
Hola; estoy trabajando con iReport para diseñar informes y mi aplicación web Java es desplegada en servidor Sun One 7. Tengo problemas para visualizar informes que contienen códigos de barras (el resto de informes se visualizan correctamente); el error producido es el siguiente:

WARNING ( 1373): CORE3283: stderr: net.sf.jasperreports.engine.JRException: No appropriate image writer found for the "jpeg" format.
WARNING ( 1373): CORE3283: stderr: at net.sf.jasperreports.engine.util.JRJdk14ImageEncod er.encode(JRJdk14ImageEncoder.java:95)
...

He revisado varios foros, y tutoriales, y creo tener bien configurado todo el entorno, de hecho, los informes sin códigos de barras me funcionan correctamente; supongo q el error tendrá q ver con el tipo de barcode utilizado... (en mi caso code39)... Por cierto, este error sólo se produce en Sun ONe (no en JBoss ni en WebSphere).

¿Algun caso parecido? Gracias. Saludos.


hquinn 28/03/2007 10:22

Re: Jasper Report + iReport + NetBeans 4
 
hola a todos! Apenas estoy comenzando a trabajar con iReport y jasper reports y tengo una duda muy simple. Es posible agregarle una hoja extra a un reporte? Como se puede hacer esto? El reporte que necesito hacer consta de dos hojas, pero no encuentro alguna opcion de agregarle la segunda hoja.
Alguna idea?
Gracias

CRONOSJU 31/03/2007 10:36

Diferencias
 
Hola a todos,
Quisiera saber como cuales son las diferencias entre las librerias: jasperreport-javaflow y el jasperreport-applet.

AICS 02/04/2007 20:44

Re: Jasper Report + iReport + NetBeans 4
 
Hola que tal. como casi todos escribo aqui para pedir ayuda, ojalá pudiera ayudar pero todo lo que se lo aprendi en este foro, y por eso GRACIAS.

Lo que se necesita es un reporte contable donde se reportan los totales por año de las cuentas.

La duda es: ¿cómo diseño un reporte en el cual no son fijos ni el numero de columnas ni el número de filas?
para el año actual sería algo así

cuenta TOTAL2006 TOTAL2007
00001 1000 2000
00002 2000 1000

pero para el año siguiente podría ser

cuenta TOTAL2006 TOTAL2007 TOTAL2008
00001 1000 2000 3000
00002 2000 1000 4000
00003 0 0 3000

de antemano gracias.

CRONOSJU 03/04/2007 12:23

Re: Jasper Report + iReport + NetBeans 4
 
Hola AICS,
Bueno para ser breve.
1.- Tienes que tener las consultas que te arrojen la información organizada de este forma:
CUENTA AÑO CANTIDAD
00001 2004 $ 15000
00001 2005 $ 36000
00001 2006 $ 46000
00002 2005 $ 20000
00003 2007 $ 25000
...

Esta se logra con la consulta de SQL. checkea un poco eso
2.- En el ireport hay un asistente para realizar CROSSTAB (Tablas cruzadas), solo tienes que seguir los pasos que son intuitivos.
Espero que te haya ayudado en algo, y disculpa por no ser mas específico estoy de salida. Escribe otra vez al foro si necesitas algo mas.
Y por favor ayudenme con lo de arriba, mi interrogante es, cual es la diferencia entre las librerias: jasperreports-1.3.0-javaflow.jar y jasperreports-1.3.0-applet.jar. Cual es la función que cumple cada una de ellas.

DeathEvn 03/04/2007 21:29

Problema: Filas de la banda de detalle superpuestas
 
¡Saludos fraternos a todos! ¡Qué tal mis amigos!, justo ahora tengo un problema con Jasper Reports, resulta que quiero enviarle un DefaultTableModel como DataSource a mi reporte, todo va bien, hasta el momento de visualizar el reporte en mi aplicación con ayuda del JasperViewer.

Todo funciona perfecto cuando los datos en la tabla no son muchos, de forma tal que el reporte sólo conste de una página. En tanto que cuando los datos en la tabla son numerosos, cuando debería lógicamente pasar a una nueva página en el reporte, debido a la falta de espacio en la página actual, los siguientes registros se montan unos sobre otros y la que debería ser una nueva página con el detail faltante se monta sobre el detail de la página anterior, con lo cual al final tengo un reporte de una sola página, con los datos de la banda de detalle hechos un desastre.

He probado algunas variantes del reporte (incluida una con subreportes) y nada parece funcionar, el resultado es el mismo. Si alguien pudiese darme una solución se lo agradecería realmente.

Saludos a todos
DeathEvn

renevielma 04/04/2007 07:03

Re: Jasper Report + iReport + NetBeans 4
 
hola
he visto que algunos introducen la ruta completa del jrxml y otros no.
yo he creado un package 'reportes' en la raíz del proyecto, pero aún así no encuentra el archivo jrxml:
String jrxml = new String("reportes/prueba.jrxml");

tengo que colocar la ruta completa para que lo encuentre:
String jrxml = new String("/home/user/workspace/sigaa/src/reportes/prueba.jrxml");

es un proyecto web por lo tanto la raíz comienza en src/

sería ideal no tener que ingresar la ruta completa del jrxml en el sistema

como hago aquí ?

gracias desde ya.

novatajasper 04/04/2007 09:22

Ayuda por favor!!!!
 
Hola a todos.... les explico mi problema y espero que alguno de uds me pueda ayudar, tengo 2 base de datos en postgre y necesito consultar una tabla de cada base de datos, la informacion del reporte debe ser aquellos datos que aparecen en una tabla pero que no esten en la otra, me explique??... Bueno como necesito manejar 2 conexiones pues nose como poder hacerlo aca en ireport... Ya he intentado con subreports pasando una conexion como parametro, pero no me funciona me sale vacio, el parametro como q llega null. Por favor en realidad necesito ayuda con esto.... Gracias de antemano!!!

DeathEvn 04/04/2007 13:15

Re: Problema: Filas de la banda de detalle superpuestas
 
Cita:

Iniciado por DeathEvn (Mensaje 1955264)
¡Saludos fraternos a todos! ¡Qué tal mis amigos!, justo ahora tengo un problema con Jasper Reports, resulta que quiero enviarle un DefaultTableModel como DataSource a mi reporte, todo va bien, hasta el momento de visualizar el reporte en mi aplicación con ayuda del JasperViewer.

Todo funciona perfecto cuando los datos en la tabla no son muchos, de forma tal que el reporte sólo conste de una página. En tanto que cuando los datos en la tabla son numerosos, cuando debería lógicamente pasar a una nueva página en el reporte, debido a la falta de espacio en la página actual, los siguientes registros se montan unos sobre otros y la que debería ser una nueva página con el detail faltante se monta sobre el detail de la página anterior, con lo cual al final tengo un reporte de una sola página, con los datos de la banda de detalle hechos un desastre.

He probado algunas variantes del reporte (incluida una con subreportes) y nada parece funcionar, el resultado es el mismo. Si alguien pudiese darme una solución se lo agradecería realmente.

Respondiéndome a mí mismo. Ya he podido solucionar el problema en cuestión. Resulta que tenía un error de diseño en el reporte, una novatada supongo. Originalmente yo deseaba diseñar un reporte con un detalle en forma de tabla y para esto había definido en las propiedades del reporte un cierto número de columnas para el mismo. Resulta que diseñé la tabla de la banda detail de tal forma que cada una de las columnas del DefaultTableModel que estaba pasando como DataSource ocupase una columna del reporte. He ahí mi error, resulta que las columnas del reporte tienen otra funcionalidad, y pues la solución fue editar nuevamente las propiedades de mi reporte y establecer el número de columnas a 1.

KNinfa 08/04/2007 16:59

Problema con .JAR
 
Hola a todos, soy nuevo en el foro. Espero que alguien pueda ayudarme, tengo un marrón encima... Estoy nerviosísimo. Para resumir, NO TENGO NI IDEA DE Java, sólo las ideas básicas y algo de JavaScript. Pero resulta que en el trabajo me han pedido que haga informes con IReport y luego que puedan visualizarse desde un JAR, y pasarles parámetros, etc. Según me han explicado, sólo hace falta hacer una clase que llame al reporte o informe, y eso. En fin, que yo, como pude (ya os digo que ni idea), investigué, aprendí a utilizar el IReport, y gracias a este foro y algunas otras páginas, he conseguido crear un jar, el cual que yo sepa necesita un archivo de manifiesto que como mínimo le indique una clase que será la MAIN, necesita además una clase que contendrá lo necesario para abrir el informe, y además el archivo del informe (en este caso .jasper). Pero no sé, creo que no es así... Yo lo que hice fue copiar el archivo .java correspondiente al informe (se guarda cada vez que se ejecuta el informe), y con la herramienta "javac" creé la clase. Se creó correctamente.
Pero al crear el .jar, me da un error, del tipo "no se encuentra clase main-thread", o algo así.
Necesito saber cómo hacer un jar correctamente, lo que se necesita.
Por favor, ayudadme si podéis, sólo quiero saber cómo visualizar el informe con un .jar, estoy un poco desesperado.
Muchas gracias, a todos

KNinfa 08/04/2007 17:06

Re: Jasper Report + iReport + NetBeans 4
 
Clase:
Código:

import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.fill.*;
import net.sf.jasperreports.engine.data.*;
import java.util.*;
import java.math.*;
import java.text.*;
import java.io.*;
import java.net.*;
public class ZReporte_Ej extends JREvaluator
{
    private JRFillParameter parameter_REPORT_LOCALE = null;
    private JRFillParameter parameter_REPORT_TIME_ZONE = null;
    private JRFillParameter parameter_REPORT_VIRTUALIZER = null;
    private JRFillParameter parameter_REPORT_SCRIPTLET = null;
    private JRFillParameter parameter_REPORT_PARAMETERS_MAP = null;
    private JRFillParameter parameter_REPORT_CONNECTION = null;
    private JRFillParameter parameter_REPORT_CLASS_LOADER = null;
    private JRFillParameter parameter_REPORT_DATA_SOURCE = null;
    private JRFillParameter parameter_REPORT_URL_HANDLER_FACTORY = null;
    private JRFillParameter parameter_IS_IGNORE_PAGINATION = null;
    private JRFillParameter parameter_REPORT_FORMAT_FACTORY = null;
    private JRFillParameter parameter_REPORT_MAX_COUNT = null;
    private JRFillParameter parameter_REPORT_RESOURCE_BUNDLE = null;
    private JRFillField field_Tfno = null;
    private JRFillField field_FAlta = null;
    private JRFillField field_NIFProveedor = null;
    private JRFillField field_Razon = null;
    private JRFillField field_Direccion = null;
    private JRFillVariable variable_PAGE_NUMBER = null;
    private JRFillVariable variable_COLUMN_NUMBER = null;
    private JRFillVariable variable_REPORT_COUNT = null;
    private JRFillVariable variable_PAGE_COUNT = null;
    private JRFillVariable variable_COLUMN_COUNT = null;

    public void customizedInit(
        Map pm,
        Map fm,
        Map vm
        )
    {
        initParams(pm);
        initFields(fm);
        initVars(vm);
    }

    private void initParams(Map pm)
    {
        parameter_REPORT_LOCALE = (JRFillParameter)pm.get("REPORT_LOCALE");
        parameter_REPORT_TIME_ZONE = (JRFillParameter)pm.get("REPORT_TIME_ZONE");
        parameter_REPORT_VIRTUALIZER = (JRFillParameter)pm.get("REPORT_VIRTUALIZER");
        parameter_REPORT_SCRIPTLET = (JRFillParameter)pm.get("REPORT_SCRIPTLET");
        parameter_REPORT_PARAMETERS_MAP = (JRFillParameter)pm.get("REPORT_PARAMETERS_MAP");
        parameter_REPORT_CONNECTION = (JRFillParameter)pm.get("REPORT_CONNECTION");
        parameter_REPORT_CLASS_LOADER = (JRFillParameter)pm.get("REPORT_CLASS_LOADER");
        parameter_REPORT_DATA_SOURCE = (JRFillParameter)pm.get("REPORT_DATA_SOURCE");
        parameter_REPORT_URL_HANDLER_FACTORY = (JRFillParameter)pm.get("REPORT_URL_HANDLER_FACTORY");
        parameter_IS_IGNORE_PAGINATION = (JRFillParameter)pm.get("IS_IGNORE_PAGINATION");
        parameter_REPORT_FORMAT_FACTORY = (JRFillParameter)pm.get("REPORT_FORMAT_FACTORY");
        parameter_REPORT_MAX_COUNT = (JRFillParameter)pm.get("REPORT_MAX_COUNT");
        parameter_REPORT_RESOURCE_BUNDLE = (JRFillParameter)pm.get("REPORT_RESOURCE_BUNDLE");
    }

    private void initFields(Map fm)
    {
        field_Tfno = (JRFillField)fm.get("Tfno");
        field_FAlta = (JRFillField)fm.get("FAlta");
        field_NIFProveedor = (JRFillField)fm.get("NIFProveedor");
        field_Razon = (JRFillField)fm.get("Razon");
        field_Direccion = (JRFillField)fm.get("Direccion");
    }

    private void initVars(Map vm)
    {
        variable_PAGE_NUMBER = (JRFillVariable)vm.get("PAGE_NUMBER");
        variable_COLUMN_NUMBER = (JRFillVariable)vm.get("COLUMN_NUMBER");
        variable_REPORT_COUNT = (JRFillVariable)vm.get("REPORT_COUNT");
        variable_PAGE_COUNT = (JRFillVariable)vm.get("PAGE_COUNT");
        variable_COLUMN_COUNT = (JRFillVariable)vm.get("COLUMN_COUNT");
    }

    public Object evaluate(int id) throws Throwable
    {
        Object value = null;

        switch (id)
        {
            case 0 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 1 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 2 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 3 :
            {
                value = (java.lang.Integer)(new Integer(0));
                break;
            }
            case 4 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 5 :
            {
                value = (java.lang.Integer)(new Integer(0));
                break;
            }
            case 6 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 7 :
            {
                value = (java.lang.Integer)(new Integer(0));
                break;
            }
            case 8 :
            {
                value = (java.lang.String)(((java.lang.String)field_NIFProveedor.getValue()));
                break;
            }
            case 9 :
            {
                value = (java.lang.String)(((java.lang.String)field_Razon.getValue()));
                break;
            }
            case 10 :
            {
                value = (java.lang.String)(((java.lang.String)field_Direccion.getValue()));
                break;
            }
            case 11 :
            {
                value = (java.lang.Integer)(((java.lang.Integer)field_Tfno.getValue()));
                break;
            }
          default :
          {
          }
        }
        return value;
    }

    public Object evaluateOld(int id) throws Throwable
    {
        Object value = null;

        switch (id)
        {
            case 0 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 1 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 2 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 3 :
            {
                value = (java.lang.Integer)(new Integer(0));
                break;
            }
            case 4 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 5 :
            {
                value = (java.lang.Integer)(new Integer(0));
                break;
            }
            case 6 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 7 :
            {
                value = (java.lang.Integer)(new Integer(0));
                break;
            }
            case 8 :
            {
                value = (java.lang.String)(((java.lang.String)field_NIFProveedor.getOldValue()));
                break;
            }
            case 9 :
            {
                value = (java.lang.String)(((java.lang.String)field_Razon.getOldValue()));
                break;
            }
            case 10 :
            {
                value = (java.lang.String)(((java.lang.String)field_Direccion.getOldValue()));
                break;
            }
            case 11 :
            {
                value = (java.lang.Integer)(((java.lang.Integer)field_Tfno.getOldValue()));
                break;
            }
          default :
          {
          }
        }
        return value;
    }

    public Object evaluateEstimated(int id) throws Throwable
    {
        Object value = null;

        switch (id)
        {
            case 0 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 1 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 2 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 3 :
            {
                value = (java.lang.Integer)(new Integer(0));
                break;
            }
            case 4 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 5 :
            {
                value = (java.lang.Integer)(new Integer(0));
                break;
            }
            case 6 :
            {
                value = (java.lang.Integer)(new Integer(1));
                break;
            }
            case 7 :
            {
                value = (java.lang.Integer)(new Integer(0));
                break;
            }
            case 8 :
            {
                value = (java.lang.String)(((java.lang.String)field_NIFProveedor.getValue()));
                break;
            }
            case 9 :
            {
                value = (java.lang.String)(((java.lang.String)field_Razon.getValue()));
                break;
            }
            case 10 :
            {
                value = (java.lang.String)(((java.lang.String)field_Direccion.getValue()));
                break;
            }
            case 11 :
            {
                value = (java.lang.Integer)(((java.lang.Integer)field_Tfno.getValue()));
                break;
            }
          default :
          {
          }
        }
        return value;
    }
}

Manifiesto:
Código:

Main-Class: ZReporte_Ej extends JREvaluator
Muchas gracias por adelantado de nuevo.

KNinfa 09/04/2007 03:10

Agh
 
Perdón, el manifiesto tiene esto:

Código:

Main-Class: ZReporte_Ej
¿Alguien puede ayudarme?

aheredia 09/04/2007 17:48

Re: Jasper Report + iReport + NetBeans 4
 
Hola a todos, soy nueva en jasper report y jsp y tengo un problema al pasar un parámetro desde un jsp a mi reporte en jasper, mi código es el siguiente:

<%@ page import="net.sf.jasperreports.engine.export.*"%>
<%@ page import="net.sf.jasperreports.engine.*"%>
<%@ page import="net.sf.jasperreports.engine.fill.*" %>
<%@ page import="net.sf.jasperreports.view.*"%>
<%@ page import="java.util.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="javax.naming.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.lang.*" %>
<%@ page contentType="text/html; charset=iso-8859-1" language="java"import="java.sql.*" errorPage="" %>
<%@ include file="Connections/oracle.jsp" %>

<%
//Recepción de parámetros generales
String reporte = request.getParameter("reporte");
String usuario = request.getParameter("user");
String fecha = request.getParameter("fecha");
String strtmp = request.getParameter("str1");
//Conexión
Driver Drivercon_report = (Driver)Class.forName(MM_oracle_DRIVER).newInstanc e();
Connection Conncon_report = DriverManager.getConnection(MM_oracle_STRING,MM_or acle_USERNAME,MM_oracle_PASSWORD);

//Consulta a la base de datos
PreparedStatement Statementcon_report = Conncon_report.prepareStatement("SELECT * FROM gedetrep WHERE pdrnom = upper('"+reporte+"') order by pdrord");

ResultSet con_report = Statementcon_report.executeQuery();

boolean con_report_isEmpty = !con_report.next();
boolean con_report_hasData = !con_report_isEmpty;
Object con_report_data;
int con_report_numRows = 0;
int Repeat1__numRows = 10;
int Repeat1__index = 0;
con_report_numRows += Repeat1__numRows;


//Preparacion del reporte (en esta etapa se inserta el nombre del reporte).
String filejasper = reporte+".jasper";
String JasperFilesSource = "/reportes/";

//Asignación de Parámetros
Map parameters = new HashMap();
String TIPO = "NUMBER";

if (TIPO == "NUMBER"){
parameters.put("ARTCOD", strtmp);

}

//Cargamos la definicion del reporte *.jasper
File reportFile = new File(application.getRealPath("/reportes/"+reporte+".jasper"));
JasperPrint jasperPrint=JasperFillManager.fillReport(reportFil e.getPath(), parameters, Conncon_report);

//Nombre archivo resultado.
String PdfFilesSource = "/reportes/"+usuario+"_"+reporte+fecha+".pdf";

//Creacion del html
JRPdfExporter exporter = new JRPdfExporter();
exporter.setParameter(JRExporterParameter.JASPER_P RINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_F ILE_NAME,application.getRealPath(PdfFilesSource));
exporter.exportReport();


//Leer el archivo.
File f = new File (application.getRealPath(PdfFilesSource));

//Obtener el Nombre del archivo.
String name = f.getName().substring(f.getName().lastIndexOf("/") + 1,f.getName().length());

//Configurar cabecera y nombre de archivo a desplegar en DialogBox.
response.setHeader("Content-Disposition", "attachment; filename=\" " + name + "\"");

InputStream in = new FileInputStream(f);
ServletOutputStream outs = response.getOutputStream();

int bit = 256;
int i = 0;

while ((bit) >= 0) {
bit = in.read();
outs.write(bit);
}
outs.flush();
outs.close();
in.close();
%>

<%
con_report.close();
Statementcon_report.close();
Conncon_report.close();
%>

Mi problema es que en el "parameters.put("ARTCOD", strtmp);" si yo le envío directamente el valor del parámetro, el reporte me genera normalmente, pero si le envío el valor con la variable que almacena el valor recibido desde el url no me retorna ningún valor en el pdf.

Por favor ayudenme urgente que ya voy varios días en esto, seguramente es una bobada pero no consigo solucionar el problema.

Saludos a todos

jockbrera 11/04/2007 07:46

Re: Jasper Report + iReport + NetBeans 4
 
String TIPO = "NUMBER";

if (TIPO == "NUMBER"){
parameters.put("ARTCOD", strtmp);

}


Nunca va entrar en esa condicion.

Una cadena no podes comparar de esa forma. Usa el metodo TIPO.equals("NUMBER")

novatajasper 12/04/2007 09:54

Parametro ArrayList
 
Alguien ha pasado como parametro un array? Necesito hacerlo pero no se como crear una variable que sirva de indice para imprimir sus valores en la banda de detalle... Hago algo como esto $P{lista}.get($V{con}.intValue()).toString() pero solo me imprime el primer elemento de la lista, no se como hacer que la variable $V{con} sea un contador que recorra todo el array. Porfa si alguien me puede ayudar se lo agradeceria mucho.

RicardoJB 16/04/2007 09:39

Cortes de control
 
Hola gente, como están? Bueno, soy nuevo en este foro, y más o menos nuevo con jasper report... y la verdad que me hace renegar cada dos por tres, pero bueno... hay que bancarselas, arremangarse las mangas y pelearla...
Bueno, escribo porque me encargaron una funcionalidad y q no se como implementarla con jasper e ireport... lo q tengo q hacer es ir imprimiendo como sub detalle de varias cuentas contables... si, ya sé q suena tonto, y quizás se podría hacer con subreports... pero no los sé hacer funcionar cuando no estoy trabajando con una conexión a la base de datos, es decir cuando le paso un collection... si hay alguien q me pueda ayudar se le agradezco desde ya...
Suerte...

mina_1119 16/04/2007 10:55

Como Puedo Agregar Paginas En Un Reporte
 
HOLA BUEN DIA!!

ESPERO Y ALGUIEN ME PUEDA AYUDAR. MI PROBLEMA ES EL SIGUIENTE:
TENGO Q GENERAR UN REPORTE EN IREPORT PERO ESTE REPORTE CONSTA DE 3 PAGINAS :neurotico . ¿COMO PUEDO HARCE PARA AGREGAR TANTAS PAGINAS SEAN NECESARIAS AL MISMO ARCHIVO DE REPORTE? :'(

DE ANTEMANO GRACIAS POR SU AYUDA..

angelicaherreno 18/04/2007 13:45

Eclipse-Ireport-Tomcat
 
Hola a todos, posteo esta pregunta porque ya tengo rato intentando arreglar mi error pero no puedo. La situacion es la siguiente estoy generando un reporte el cual e llamado reporte principal en este reporte inserto varios subreportes..... cuando lo compilo desde ireport el reporte... se genera bien. Al momento de llamarlo desde un servlet me genera el siguiente error

Could not load object from location : .\SubReporte1.jasper

El cuento es que los subreportes se encuentran en la misma carpeta donde se encuentra el reporte principal.

Billetin 18/04/2007 16:52

Re: HTML a PDF, Jasper Report la Solucion?
 
Hola a todos, soy nuevo en este foro y todo esto de los reportes y java.

Tengo un problemita:
Ya tengo resuelto el problema del reporte, por medio de JSP genero el reporte en HTML, con texto justificado, negrita, etc. Pero necesito en base a ese reporte HTML generar un PDF.

Jasper Report es la solución? Y si es asi, que debo hacer?

Gracias y espero pronta respuesta.

germanvalenciavargas 19/04/2007 08:45

Re: Empezando con jasperreport
 
Cita:

Iniciado por saiberg (Mensaje 1205697)
Hola.

Estuve creando un reporte con ireport y al tratar de ejecutarlo desde un jsp (mi máquina es un fedora 4) me lanza el siguiente conjunto de errores...

org.apache.jasper.JasperException: No se puede compilar la clase para JSP
org.apache.jasper.compiler.DefaultErrorHandler.jav acError(java.lang.String, java.lang.Exception) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.compiler.ErrorDispatcher.javacEr ror(java.lang.String, java.lang.Exception) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.compiler.Compiler.generateClass( java.lang.String[]) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.compiler.Compiler.compile(boolea n, boolean) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.compiler.Compiler.compile(boolea n) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.compiler.Compiler.compile() (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.JspCompilationContext.compile() (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.servlet.JspServletWrapper.servic e(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, boolean) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.String, java.lang.Throwable, boolean) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.servlet.JspServlet.service(javax .servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
javax.servlet.http.HttpServlet.service(javax.servl et.ServletRequest, javax.servlet.ServletResponse) (/usr/lib/libservletapi5-5.0.30.jar.so)
org.apache.catalina.valves.ErrorReportValve.invoke (org.apache.catalina.Request, org.apache.catalina.Response, org.apache.catalina.ValveContext) (/usr/lib/libcatalina-5.0.30.jar.so)
org.apache.coyote.tomcat5.CoyoteAdapter.service(or g.apache.coyote.Request, org.apache.coyote.Response) (/usr/lib/libcatalina-5.0.30.jar.so)
org.apache.coyote.http11.Http11Processor.process(j ava.io.InputStream, java.io.OutputStream) (/usr/lib/libtomcat-http11-5.0.30.jar.so)
org.apache.coyote.http11.Http11Protocol$Http11Conn ectionHandler.processConnection(org.apache.tomcat. util.net.TcpConnection, java.lang.Object[]) (/usr/lib/libtomcat-http11-5.0.30.jar.so)
org.apache.tomcat.util.net.TcpWorkerThread.runIt(j ava.lang.Object[]) (/tmp/libtomcat-util-5.0.30.jar.sovnjsj4.so)
org.apache.tomcat.util.threads.ThreadPool$ControlR unnable.run() (/tmp/libtomcat-util-5.0.30.jar.sovnjsj4.so)
java.lang.Thread.run() (/usr/lib/libgcj.so.6.0.0)

causa raíz

Compile failed; see the compiler error output for details.
org.apache.tools.ant.taskdefs.Javac.compile() (/usr/lib/libant-1.6.2.jar.so)
org.apache.tools.ant.taskdefs.Javac.execute() (/usr/lib/libant-1.6.2.jar.so)
org.apache.jasper.compiler.Compiler.generateClass( java.lang.String[]) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.compiler.Compiler.compile(boolea n, boolean) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.compiler.Compiler.compile(boolea n) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.compiler.Compiler.compile() (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.JspCompilationContext.compile() (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.servlet.JspServletWrapper.servic e(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, boolean) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, java.lang.String, java.lang.Throwable, boolean) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
org.apache.jasper.servlet.JspServlet.service(javax .servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) (/usr/lib/libjasper5-compiler-5.0.30.jar.so)
javax.servlet.http.HttpServlet.service(javax.servl et.ServletRequest, javax.servlet.ServletResponse) (/usr/lib/libservletapi5-5.0.30.jar.so)
org.apache.catalina.valves.ErrorReportValve.invoke (org.apache.catalina.Request, org.apache.catalina.Response, org.apache.catalina.ValveContext) (/usr/lib/libcatalina-5.0.30.jar.so)
org.apache.coyote.tomcat5.CoyoteAdapter.service(or g.apache.coyote.Request, org.apache.coyote.Response) (/usr/lib/libcatalina-5.0.30.jar.so)
org.apache.coyote.http11.Http11Processor.process(j ava.io.InputStream, java.io.OutputStream) (/usr/lib/libtomcat-http11-5.0.30.jar.so)
org.apache.coyote.http11.Http11Protocol$Http11Conn ectionHandler.processConnection(org.apache.tomcat. util.net.TcpConnection, java.lang.Object[]) (/usr/lib/libtomcat-http11-5.0.30.jar.so)
org.apache.tomcat.util.net.TcpWorkerThread.runIt(j ava.lang.Object[]) (/tmp/libtomcat-util-5.0.30.jar.sovnjsj4.so)
org.apache.tomcat.util.threads.ThreadPool$ControlR unnable.run() (/tmp/libtomcat-util-5.0.30.jar.sovnjsj4.so)
java.lang.Thread.run() (/usr/lib/libgcj.so.6.0.0)


¿Alguna orientación al respecto?, lo agradecería mucho.


Saludos,

Esteban.


RicardoJB 19/04/2007 11:44

Re: Eclipse-Ireport-Tomcat
 
Cita:

Iniciado por angelicaherreno (Mensaje 1973740)
Hola a todos, posteo esta pregunta porque ya tengo rato intentando arreglar mi error pero no puedo. La situacion es la siguiente estoy generando un reporte el cual e llamado reporte principal en este reporte inserto varios subreportes..... cuando lo compilo desde ireport el reporte... se genera bien. Al momento de llamarlo desde un servlet me genera el siguiente error

Could not load object from location : .\SubReporte1.jasper

El cuento es que los subreportes se encuentran en la misma carpeta donde se encuentra el reporte principal.


HOLA, mira angelicaherreno, cuando insertas un subreport en un report le tenes q decir de donde va a levantar el .jarper del subreport, esto se puede hacer como una constante o como una variable (recomendable). (hay un wizard que es de bastante ayuda)
Si lo hacés de la última forma que comenté cuando crees el map de parametros, el que le pasas al agente que te crea el pdf, le tenes que incluir la dirección de donde tenes el .jaspert del subreport...
Espero que te sirva...
Otra cosa, si alguien sabe si se pueden manejar cortes de control con JR que me avise... desde ya gracias. :arriba:

romisc 23/04/2007 08:43

ireport + convertir variables
 
Hola a todos, cuando yo traigo un campo boolean, el cual cdo visulizo el informe me aparece "true" o "false", el problema seria que yo en cambio de "true" o "false" me aparezca, lo ideal seria un tilde, o si no que aparezca "si" o "no"

Saludos

francisco_ggz 29/04/2007 18:09

Jasper Report + iReport + NetBeans 4
 
Hola que tal a todos, soy nuevo en esto, asi que quiero ver si alguien me puede echar la mano con lo siguiente, estoy trabajando con Netbeans 5.5 necesito hacer unos reportes y me recomendaron utilizar el iReport, la cual descargue la version 1.3.2. Ok, ya tengo mi reporte diseñado, etc, lo siguiente, estube leyendo en un manual que necesito anexar las siguientes librerias:
jasperrreports-1.0.1.jar
commons-digester.jar
commons-beanutils.jar
commons-collections.jar
commons-logging.jar
itext-1.02b.jar
poi-2-0-final-20040126.jar

Pero por la version del programa tengo unas librerias mas recientes, sin tanto rollo, al anexar estos archivos dentro de C:\Archivos de programa\Java\jdk1.5.0_07\jre\lib\ext
y compilar cualquier proyecto o archivo en el netbeans me marca este error:

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.commons.logging.LogFactory.release(Ljav a/lang/ClassLoader;)V
at org.apache.jasper.JspC.execute(JspC.java:1159)
at org.netbeans.modules.web.project.ant.JspC.main(Jsp C.java:45)
at org.netbeans.modules.web.project.ant.JspCSingle.ma in(JspCSingle.java:100)
C:\Archivos de programa\netbeans-5.5\enterprise3\apache-tomcat-5.5.17\webapps\ROOT\_DOT\nbproject\build-impl.xml:372: The following error occurred while executing this line:
C:\Archivos de programa\netbeans-5.5\enterprise3\apache-tomcat-5.5.17\webapps\ROOT\_DOT\nbproject\build-impl.xml:353: Java returned: 1

Espero alguien me explique esto, gracias. y de igual forma en lo que sepa con todo gusto les echaré la mano

prixy 01/05/2007 10:26

Re: Jasper Report + iReport + NetBeans 4
 
alguien me puede ayudar estoy trabajando con iReport y Java Studio Creator y tengo el siguiente erro cuando ejecuto mi aplicacion:

StandardWrapperValve[prueba]: Servlet.service() for servlet prueba threw exception
java.lang.NoClassDefFoundError: org/eclipse/jdt/internal/compiler/env/INameEnvironment
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Cla ss.java:2328)
at java.lang.Class.getConstructor0(Class.java:2640)
at java.lang.Class.newInstance0(Class.java:321)
at java.lang.Class.newInstance(Class.java:303)
at net.sf.jasperreports.engine.design.JRDefaultCompil er.getCompiler(JRDefaultCompiler.java:178)
at net.sf.jasperreports.engine.design.JRDefaultCompil er.loadEvaluator(JRDefaultCompiler.java:193)
at net.sf.jasperreports.engine.fill.JRFillDataset.cre ateCalculator(JRFillDataset.java:382)
at net.sf.jasperreports.engine.fill.JRBaseFiller.<ini t>(JRBaseFiller.java:451)
at net.sf.jasperreports.engine.fill.JRVerticalFiller. <init>(JRVerticalFiller.java:91)
at net.sf.jasperreports.engine.fill.JRVerticalFiller. <init>(JRVerticalFiller.java:73)
at net.sf.jasperreports.engine.fill.JRFiller.createFi ller(JRFiller.java:113)
at net.sf.jasperreports.engine.fill.JRFiller.fillRepo rt(JRFiller.java:57)
at net.sf.jasperreports.engine.JasperFillManager.fill Report(JasperFillManager.java:247)
at prueba.visualizarReporte(prueba.java:116)
at prueba.doPost(prueba.java:77)
at prueba.doGet(prueba.java:66)
at javax.servlet.http.HttpServlet.service(HttpServlet .java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet .java:820)
at org.apache.catalina.core.ApplicationFilterChain.se rvletService(ApplicationFilterChain.java:397)
at org.apache.catalina.core.StandardWrapperValve.invo ke(StandardWrapperValve.java:278)
at org.apache.catalina.core.StandardPipeline.doInvoke (StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(S tandardPipeline.java:536)
at org.apache.catalina.core.StandardContextValve.invo keInternal(StandardContextValve.java:240)
at org.apache.catalina.core.StandardContextValve.invo ke(StandardContextValve.java:179)
at org.apache.catalina.core.StandardPipeline.doInvoke (StandardPipeline.java:566)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipel ine.java:73)
at org.apache.catalina.core.StandardHostValve.invoke( StandardHostValve.java:182)
at org.apache.catalina.core.StandardPipeline.doInvoke (StandardPipeline.java:566)
at com.sun.enterprise.web.VirtualServerPipeline.invok e(VirtualServerPipeline.java:120)
at org.apache.catalina.core.ContainerBase.invoke(Cont ainerBase.java:939)
at org.apache.catalina.core.StandardEngineValve.invok e(StandardEngineValve.java:137)
at org.apache.catalina.core.StandardPipeline.doInvoke (StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(S tandardPipeline.java:536)
at org.apache.catalina.core.ContainerBase.invoke(Cont ainerBase.java:939)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(Co yoteAdapter.java:239)
at com.sun.enterprise.web.connector.grizzly.Processor Task.invokeAdapter(ProcessorTask.java:667)
at com.sun.enterprise.web.connector.grizzly.Processor Task.processNonBlocked(ProcessorTask.java:574)
at com.sun.enterprise.web.connector.grizzly.Processor Task.process(ProcessorTask.java:844)
at com.sun.enterprise.web.connector.grizzly.ReadTask. executeProcessorTask(ReadTask.java:287)
at com.sun.enterprise.web.connector.grizzly.ReadTask. doTask(ReadTask.java:212)
at com.sun.enterprise.web.connector.grizzly.TaskBase. run(TaskBase.java:252)
at com.sun.enterprise.web.connector.grizzly.WorkerThr ead.run(WorkerThread.java:75)

por fa si alguien sabe como puedo corregirlo gracias:molesto:

bele 02/05/2007 08:10

Re: Eclipse-Ireport-Tomcat
 
Cita:

Iniciado por RicardoJB (Mensaje 1975031)
HOLA, mira angelicaherreno, cuando insertas un subreport en un report le tenes q decir de donde va a levantar el .jarper del subreport, esto se puede hacer como una constante o como una variable (recomendable). (hay un wizard que es de bastante ayuda)
Si lo hacés de la última forma que comenté cuando crees el map de parametros, el que le pasas al agente que te crea el pdf, le tenes que incluir la dirección de donde tenes el .jaspert del subreport...
Espero que te sirva...
Otra cosa, si alguien sabe si se pueden manejar cortes de control con JR que me avise... desde ya gracias. :arriba:

Hola!! me acabo de registrar en el foro porque me parece muy interesante. Concretamente me identifico con la duda de angelicaherrero, porque me pasa exactamente igual, y he intentado hacer lo que dices RicardoJB, pero sigue saliéndome lo mismo. Soy novata en esto de los reports y voy algo lenta, jeje!!
Bueno pues desde el servlet invoco al report mediante JasperRunManager, y yo se pasarle la ruta del "report padre", pero no la del subreport, yo suponía que eso ya quedaba configurado desde iReport, pero por lo visto no, porque me sigue saliendo "Could not load object from location : subreport1.jasper".

Si habeis aclarado esto y sabeis como se hace me vendría muy bien que me lo comentarais.

Un saludo y gracias de antemano.

Glaco 04/05/2007 12:50

Re: Jasper Report + iReport + NetBeans 4
 
Hola... me super urge que alguien me ilumine el camino para poder realizar los siguiente.

Por requerimientos del cliente, necesitamos generar un PDF que, al ser abierto, no solo tenga la informacion que trae de las queries sino que el usuario pueda introducir en campos de texto dispuestos para ello, informacion adicional. No necesita esta info guardarse en ningun lado, solo es para que en el momento de mandar imprimir, esta aparezca junto con la que vino de queries.

Es posible esto realizarlo desde iReport o no? Sera que tendremos que dejar las "rayitas" para que el usuario escriba la info a mano despues de mandar a imprimir?mmmm... no se me hace una solucion muy elegante que digamos...

Gracias mil por su ayuda

Ariel Ibancovichi:-)

Quique7 04/05/2007 20:32

Re: Jasper Report + iReport + NetBeans 4
 
Hola, espero alguien pueda ayudarme

instale el iReport y aparentemente sin problemas pero al abrirlo no me muestra el formato que deberia aparecer en el centro "pagina a diseñar" y por lo tanto no puedo guardar nada... :'(

instale la version 1.3.3 pueden darme una idea de que puede estar pasando??

RicardoJB 09/05/2007 10:06

Re: Eclipse-Ireport-Tomcat
 
Cita:

Iniciado por bele (Mensaje 1990471)
Hola!! me acabo de registrar en el foro porque me parece muy interesante. Concretamente me identifico con la duda de angelicaherrero, porque me pasa exactamente igual, y he intentado hacer lo que dices RicardoJB, pero sigue saliéndome lo mismo. Soy novata en esto de los reports y voy algo lenta, jeje!!
Bueno pues desde el servlet invoco al report mediante JasperRunManager, y yo se pasarle la ruta del "report padre", pero no la del subreport, yo suponía que eso ya quedaba configurado desde iReport, pero por lo visto no, porque me sigue saliendo "Could not load object from location : subreport1.jasper".

Si habeis aclarado esto y sabeis como se hace me vendría muy bien que me lo comentarais.

Un saludo y gracias de antemano.

buenas gente, como les va? bueno... bele te responder tu pregunta. Cuando uno inserta un subreport en un report t aparece un wizard donde entre otras cosas te pide como se va a cargar el subreport (te da la opción de mantener una ruta fija, o de establecer un field, o parámetro, q será la dir variable de tu subreport). Bueno, en mi caso yo tengo cargados tanto el report y el subreport en el servidor, y para que t quede un poco más claro te pongo un pequeño codigo de ejemplo:
File reportFile = new File(getServlet().getServletContext().getRealPath( "/reportes/ReporteMaestro.jasper"));
Map parameters = new HashMap();
<<acá les pones los parametros que necesites... luego cargo la dir del subreporte...>>
File fg = new File(getServlet().getServletContext().getRealPath( "/reportes/Subreporte.jasper"));
parameters.put("SUBREPORT", fg.getParent() + "\\");
...
...
bytes = JasperRunManager.runReportToPdf(reportFile.getPath (), parameters, ...)

RicardoJB 09/05/2007 10:12

Re: Jasper Report + iReport + NetBeans 4
 
jaja de nuevo yo, quería terminarte diciendo bele, el código que aparece arriba es el que tengo funcionando... deberia aclararte que en las propiedades del subreporte, hablando desde el entorno de iReport, la variable que toma la dir del jasper del subreport esta definida de la siguiente manera: $F{SUBREPORT_DIR} + "Subreport.jasper"...
Espero q t haya quedado claro, se m complico armar algo con sentido... sino no dudes en consultar de nuevo... suerte....

reneGonzalez 10/05/2007 10:27

Re: Jasper Report + iReport + NetBeans 4
 
Cita:

Iniciado por RicardoJB (Mensaje 1999068)
hablando desde el entorno de iReport, la variable que toma la dir del jasper del subreport esta definida de la siguiente manera: $F{SUBREPORT_DIR} + "Subreport.jasper"...

Buenas...
No había tenido mayores dificultades de Jasper hasta este punto.... como nuestro amigo Jasper no se lleva bien con los path relativos te tenido problemas con un logo y con los subreportes la momento de instalar las apps o cambiarlas de lugar lo que sea....

Esta bien funciona lo del $F{SUBREPORT_DIR}, mas me queda fijo hay una forma de cargar el path desde el mismo Jasper o se debe pasar como parametro al reporte???

bele 11/05/2007 03:38

Re: Jasper Report + iReport + NetBeans 4
 
Cita:

Iniciado por RicardoJB (Mensaje 1999068)
jaja de nuevo yo, quería terminarte diciendo bele, el código que aparece arriba es el que tengo funcionando... deberia aclararte que en las propiedades del subreporte, hablando desde el entorno de iReport, la variable que toma la dir del jasper del subreport esta definida de la siguiente manera: $F{SUBREPORT_DIR} + "Subreport.jasper"...
Espero q t haya quedado claro, se m complico armar algo con sentido... sino no dudes en consultar de nuevo... suerte....

Muchas gracias RicardoJB!!!!!! Me ha ido perfe!!!
Al principio estaba un poco liada, pero cuando vi lo que me decias y miraba mi código... :aplauso:
Pero ahora me ha surgido otro imprevisto. Al principio creí que sería una tonteria, pero me está dando más lata de la cuenta...
Resulta que tengo varios subreport, y el último quiero imprimirlo en página distinta.
- He probado metiendo el subreport en un grupo, y decir que ese grupo se imprima aparte, pero ni caso, imprime al final de lo que había.
- Sí me va poniendo el subreport en el sumario o el título e indicar al report que imprima el sumario y/o titulo aparte, pero lo veo cutre, xq además si pongo pie de página o cabecera ya no lo imprime (pierde el formato que tengo hecho para todo el report)

Entonces a ver si hay alguna opción que no he visto y haga que se produzca el salt de página en toda regla... :risa:

Bueno muchas gracias otra vez y espero que sirva a mucha gente. El foro es la caña!!! Yo si veo algo en lo que pueda ayudar no dudaré en hacerlo :arriba:

Hasta otra :adios:

bele 11/05/2007 04:28

Re: Jasper Report + iReport + NetBeans 4
 
Buenas!! Otra vez estoy aquí
Pues me respondo a mi misma... Que triste cuando me di cuenta de la solución :'( .
Pues resulta que hay una opción que no había visto antes:
Dentro de iReport, en "Editar --> Insert page/colum break", y lo indicas en el lugar del report donde se quiera el salto de página.

Bueno, pues por si alguien le pasa lo mismo que a mi, que espero que no, aquí está la solución. Ah!!! Uso iReport 1.3.1 x si acaso tiene que ver algo!!

Hasta otra :-)


La zona horaria es GMT -6. Ahora son las 12:31.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2025, Jelsoft Enterprises Ltd.