Ver Mensaje Individual
  #1041 (permalink)  
Antiguo 05/11/2008, 12:57
walter_red
 
Fecha de Ingreso: octubre-2008
Mensajes: 1
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Jasper Report + iReport + NetBeans 4

hola a todos, soy nuevo en netbeans e ireport, ojala puedieran ayudarme, mi problema es que no puedo pasarle parametros a mi reporte, ya hice casi todo lo que he leido de este foro y no me funciona:
esto es lo que ya hice, ami reporte le agregue un parametros llamado codigoAuto, en el archivo xml hice esto : WHERE codigo = $P{codigoAuto}
y tengo un archivo java donde tengo esto:
public class AutoCombustible {
private Connection conn;
private final String login = "root"; //usuario de acceso a MySQL
private final String password = "root"; //contraseña de usuario
private String url = "jdbc:mysql://localhost/plantavehicular";
private String codigoAuto;
JasperReport jasperReport;

public AutoCombustible()
{
try
{
Class.forName("com.mysql.jdbc.Driver"); //se carga el driver
conn = DriverManager.getConnection(url,login,password);
}
catch (ClassNotFoundException ex)
{
ex.printStackTrace();
}
catch (SQLException ex)
{
ex.printStackTrace();
}
}

public void runReporte(String codigoAuto)
{
//this.id_contact="";
//this.id_contact = id;

try
{
String master = System.getProperty("user.dir") +
"/src/plantavehicular/reporteAutoCombustible.jasper";

System.out.println("master" + master);
if (master == null)
{
System.out.println("No encuentro el archivo del reporte maestro.");
System.exit(2);
}
JasperReport masterReport = null;
try
{
masterReport = (JasperReport) JRLoader.loadObject(master);
}
catch (JRException e)
{
System.out.println("Error cargando el reporte maestro: " + e.getMessage());
System.exit(3);
}

//este es el parámetro, se pueden agregar más parámetros
//basta con poner mas parametro.put
Map parametro = new HashMap();
parametro.put("codigo",codigoAuto);
//------------------------//
// jasperReport = JasperCompileManager.compileReport(
// System.getProperty("user.dir")+ "/src/plantavehicular/reporteAutoCombustible.jrxml");
//---------------------------//

//Reporte diseñado y compilado con iReport
JasperPrint jasperPrint = JasperFillManager.fillReport(masterReport,parametr o, conn);
//Se lanza el Viewer de Jasper, no termina aplicación al salir
JasperViewer jviewer = new JasperViewer(jasperPrint,false);
jviewer.setTitle("SAN JOSE PC");
jviewer.setVisible(true);
}
catch (Exception j)
{
System.out.println("Mensaje de Error:"+j.getMessage());
}

}
public void cerrar()
{
try
{
conn.close();
}
catch (SQLException ex)
{
ex.printStackTrace();
}
}
}
y una aplicacion grafica con un jtextfield y con un boton
la hacer clic en el boton me debe generar un reporte con el codigo que introduje en el jtextfield: ejemplo
private AutoCombustible jasper;
private String codigo;
y en el constructor:
jasper = new AutoCombustible()
en el boton:
private void button1ActionPerformed(java.awt.event.ActionEvent evt) {
codigo= textCodigo.getText().trim();
jasper.runReporte(codigo);
}

a mo parametro le tengo puesto un defualt
y siempre me imprime el reporte con el parametro default
nose que mas hacer
ayudenme!!!