Hola tengo un problema al generar un informe y un par de dudas sobre JasperReport.
Primero, trabajo con Netbeans 5.5, una base de datos Mysql y para generar los informes utilizo iReport 2.0.0 (la última versión).
Segundo, tengo el archivo "ultimoRecorrido.xml" pronto, lo ejecuto usando una conexion activa y funciona perfectamente. La sentencia sql la paso en la opción "base de datos" de iReport y es la siguiente:
"select * from recorridos where r_fecha = all(select max(r_fecha) from recorridos)"
Por lo tanto me va a listar el ultimo recorrido realizado.
Ya compilado, copio el archivo "ultimoRecorrido.jasper" a "C:\XML"
Tercero, en una clase de java me genero el el siguiente código para cargar el informe desde una ventana:
public class informe extends Conexion{
private static informe instancia;
public static informe getInstancia(){
if(instancia == null) {
instancia = new informe();
}
return instancia;
}
public void ultimoRecorrido(){
try {
abrirConexion();
String fileName = "C:\\XML\\ultimoRecorrido.jasper";
JasperPrint jasperPrint = JasperFillManager.fillReport(fileName, new HashMap());
JasperViewer jviewer = new JasperViewer(jasperPrint,false);
jviewer.show();
cerrarConexion();
} catch (JRException e) {
}
}
Esta clase hereda a la clase "Conexion" que es donde hago la conexion con la base de datos. Ahora, investigando y viendo ejemplos, veo que le pasan parametros por medio de un HashMap, en mi caso no necesito ya que no manejo ninguno, es por eso que le paso un "new HashMap()". Ahora bien, cuando ejecuto el programa, el método me da error en el JasperPrint y me dice:
"jasperPrint is not a krown variable in current context"
He buscado por todos lados y no encuentro solución a mi problema.
Por favor, si alguien puede darme una mano le agradezco muchisimo.
Saludos a todos