Classes em iReport

6 respostas
J

Boa tarde…

Estou usando iReport a pouco tempo, e quando pesquisei sobre subrelatórios, notei que há necessidade de usar classes.
Pesquiser sobre classes em ireport, porém, não encontrei nada que pudesse me ajudar.

Gostaria de saber como manipular, com classes, dados no ireport é necessário escrever e depois importa a classe?

Desde já agradeço.

6 Respostas

Cherubini

Bom, não sei se foi isso que entendi que você quer fazer,

você quer enviar dados da sua aplicação java para seu relatório?

se for isso é atraves de collection, usando um List por exemplo.

Você popula seu list e enviar para o jasper

List<Processo> list = this.daoFactory.getProcessoDao().listaTudo();
JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(list);
JasperPrint impressao = JasperFillManager.fillReport(pathJasper+ "/RelatorioProcesso.jasper", parametros,ds);

byte[] bytes = JasperExportManager.exportReportToPdf(impressao);
byte[] arquivo = bytes;

this.clienteOutput.setContentType("application/pdf");
ServletOutputStream sos = this.clienteOutput.getOutputStream();
sos.write(arquivo, 0, arquivo.length);
sos.flush();
sos.close();

até +

J

Na verdade preciso fazer um subrelatório, para criar subrelatório no ireport é necesário criar uma aplicação java?

SuelenLeme

Para vc criar um subrelatorio, não é necessário ter uma aplicação java.
vc vai carregar os dados no seu relatório como? fará conexão direta com o Banco de Dados?
Se for basta criar um subrelatório e adicionar o Select que desejar nele, podendo passar como parâmetro para o subrelatorio a variável que será utilizada no “where” do Select, deixando-o dinâmico.

Até+

J

é dessa forma que estou fazendo, porém quando no select comparo um campo com o parametro ele nao acha o parametro e acusa erro.

SuelenLeme

Pelo visto vc criou o subreport de maneira correta, porém não está passando o parâmetro para ele, no relatório principal, clique com o botão direito no subrelatório e em propriedades, vc irá visualizar várias abas, uma delas é a Sub-Relatorio(Outro), nesta haverá a aba Parâmetro do Relatório, onde vc irá adicionar o nome Parâmetro igual ao que o Subrelatorio está esperando e a expressão do Relário principal que representará o valor do parâmetro. Assim qdo vc executar o relátorio principal o parâmetro será enviado para o subrelatorio para que este possa ser executado. Ah lembrando que tanto o parâmetro enviado do Relatorio principal e o parâmetro esperado pelo subrelatorio devem ser do mesmo tipo.

Espero que dê certo. At+

danielsb2

Acredito que esse vído mata a sua dúvida…

http://www.bukisa.com/videos/126726_made-sub-report-in-ireport

Criado 4 de agosto de 2009
Ultima resposta 10 de ago. de 2009
Respostas 6
Participantes 4