Erro no ResultSet na classe que gera Relatorio IReport/Jaspe

10 respostas
P

Estou tentando fazer um relatorio com o iReport/Jasper mas toda hora da um erro ... vou colocar meu codigo aqui:

import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.view.*;
import java.sql.*;
import java.util.*;
try
        {
            con.IniciaConexao();
            String query = "select * from OPERACAO";
            ResultSet rs = con.st.executeQuery(query);
            
            JRResultSetDataSource jrRS = new JRResultSetDataSource( rs );
                    
            Map parameters = new HashMap();
            
            parameters.put("CODIGO", ""+rs.getInt("CODIGO"));            
            parameters.put("DESCRICAO", ""+rs.getString("DESCRICAO"));
            
            JasperPrint jprint = JasperManager.fillReport("RelatorioOperacao.jasper", parameters, jrRS);
            JasperViewer.viewReport(jprint,false);
           
            con.FechaConexao();
            
        }
        catch(SQLException e)
        {
		System.out.println("Erro no SQL"+e);
	}
}
Na parte do Jasper nao da erro..porem vi em todos tutoriais q utilizamos o ResultSet depois atribuimos o valor dele no JRResultSetDataSource sem que precisamos utilizar algum comando tipo rs.next(). Porem so na minha classe da o erro se nao utilizar o rs.next(), o erro é "Before ResultSet" . Alguem sabe porque? alguem sabe quais sao as libs que devo importar no NetBeans ? pq esse erro de Before ResultSet acontece so na minha classe? o que devo jogar na lib do java e no meu projeto? sera que o erro é nessas libs? [size="11"][color="red"]* Editado: Lembre-se de utilizar BBCode em seus códigos - Ratinho[/color][/size] :joia:

10 Respostas

C

Tp… quais as libs tu ta importando, e qual versao do jasper tu ta usando ?

OBS: por que tu não passa collections pra o seu report ?

P

E so tirar os parameters.put que funciona…pois nao faz sentido ja que passo o resultset total na linha de baixo…
:lol:

C

entao ja resolvido seu problema ?

P

Com certeza…valeu !!!.. agora vc sabe depois, dentro do IReport como faz para fazer uma expressao…tipo … no meu relatorio tem debito e credito… se for do tipo credito acumula a variavel total_credito… contrario acumula total_debito… onde devo colocar essa expressao?

C

vc coloca na propriedades do seu campo…

sabe aquele if q fazemos em uma linha so?

(condicao)?true:false ??

e essa que tu vai usar!

P

Eu tentei usar ele… mas onde eu coloco essa condicao… eu exibo o total em um Field no fim da pagina… eu tenho que coloca esse IF onde eu declaro os fields? ou onde eu declaro as variaveis do Report?

C

la ond c declara o q vai ter on field $F… sabe ?

P

sei, mas eu nao preciso declarar nenhuma variavel entao?

C

Nao, nao, tu faz a comparacao dentro do eseu field mesmo!

M

Bem use variáveis quando tiver que executar uma operação como somatório de campos e tudo mais.

:joia:

Criado 23 de junho de 2006
Ultima resposta 17 de jul. de 2006
Respostas 10
Participantes 3