Relatorio não preenche-Socorro

2 respostas
Soraynha
Ola galera estou pra ficar maluca, criei um relatorio no ireport, o qual executa perfeitamente ao compilar, porem quando chamo de dentro da aplicação apenas aparece a mensagem o documento não contem paginas, ja mexi no código de varias formas e nada alguem tem alguma ideia do que seja???? Por favor tenho que terminar isso pra ontem.
package Relatorios;

import codigos.ConnectarBancoDeDados;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;
import java.awt.Color;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.logging.Level;
import java.util.logging.Logger;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperRunManager;
import net.sf.jasperreports.view.JasperViewer;

/**
 *
 * @author Nadja
 */
public class NewClass {
    private static ConnectarBancoDeDados conn=new ConnectarBancoDeDados();
    private static StringBuffer consulta=new StringBuffer();



 public static void main(String args[]) {
   
    try{
        //cria a conexão com o banco de dados
    ConnectarBancoDeDados conn = new ConnectarBancoDeDados();
    System.out.println("Gerando relatório...");
    File arq=new File("relatorios\consulta_carteira.txt");
    FileReader reader = new FileReader(arq);
    BufferedReader leitor = new BufferedReader(reader);
    String query="";
    while(leitor.ready()){
    query =query+leitor.readLine();
    }
    ResultSet rs = conn.Consultar( query );
/* implementação da interface JRDataSource para DataSource ResultSet */
    JRResultSetDataSource jrRS = new JRResultSetDataSource( rs );
    HashMap parameterMap =new HashMap();    
      //o Nome do parâmetro e o valor é passado ao HashMap
    parameterMap.put("parametro","[CPF removido]" );
                //pega o caminho físico até o arquivo .jasper
     String path = "relatorios\carteira_associado.jasper";
                //chama fillReport
     JasperPrint jasperPrint =JasperFillManager.fillReport(path, parameterMap,jrRS);
    // JasperRunManager.runReportToPdfFile(path, parameterMap, jrRS);
     JasperViewer viewer = new JasperViewer(jasperPrint,false);
     viewer.setVisible(true);
    }catch (JRException ex) {
        ex.printStackTrace();
                Logger.getLogger(NewClass.class.getName()).log(Level.SEVERE, null, ex);
    }catch(FileNotFoundException ef){
        ef.printStackTrace();
    }catch(IOException ei){

    }
}
 }

2 Respostas

fabiocsilva

Você pode estar usando uma conexão diferente no iReport ou então pode ter definido um parâmetro lá com um valor padrão que “funciona”.
O parâmetro “parametro” é mesmo fixo como no código abaixo?

parameterMap.put("parametro","[CPF removido]" );
Soraynha

o parametro ñ é fixo coloquei esse valor apenas para teste é q na verdade vou chamar esse metodo de um interface grafica com o parametro no construtor!!!

Criado 24 de março de 2010
Ultima resposta 24 de mar. de 2010
Respostas 2
Participantes 2