Galera,
boa tarde.
Pessoal, preciso de mais uma ajuda aqui numa coisa.
É simples, mas não achei a solução aqui no fórum e nem na net que seja como meu problema.
É o seguinte, tenho uma list que contém informações de saídas do patrimônio do estoque,
Meu Bean:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Model;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author Andre
*/
public class RelSaidas {
private String nomeSolicitante, dataRetirada;
private String[] itens,setor,quantidade;
public String getDataRetirada() {
return dataRetirada;
}
public void setDataRetirada(String dataRetirada) {
this.dataRetirada = dataRetirada;
}
public String[] getItens() {
return itens;
}
public void setItens(String[] itens) {
this.itens = itens;
}
public String[] getQuantidade() {
return quantidade;
}
public void setQuantidade(String[] quantidade) {
this.quantidade = quantidade;
}
public String[] getSetor() {
return setor;
}
public void setSetor(String[] setor) {
this.setor = setor;
}
public String getNomeSolicitante() {
return nomeSolicitante;
}
public void setNomeSolicitante(String nomeSolicitante) {
this.nomeSolicitante = nomeSolicitante;
}
}
Como puderam ver, tenho 3 arrays de string normais, que estão funcionando perfeitamente.
Só que na hora que eu vou criar meu relatório no ireport, ele cria mas não exibe o conteúdo dos meus arrays, as outras informações ele imprime legal mas o conteúdo do array ele escreve algo como se fosse a identificação do array tipo [Ljava.langString;@91602].
No ireport tenho 3 fields criados F{itens}, F{quantidade}, F{setor}, tudo compila legal…
Só que na hora de exibir ele exibe o conteúdo dos arrays daquela forma.
Estou chamando o relatório assim:
[code] public void geraTermo(List things){
try{
JasperReport pathjrxml = JasperCompileManager.compileReport("../Church/src/reports/rel_saida_patrimonios.jrxml");
JasperPrint printReport = JasperFillManager.fillReport(pathjrxml, null, new JRBeanCollectionDataSource(things));
JasperExportManager.exportReportToPdfFile(printReport, "rel_saida_patrimonios.pdf");
//JasperViewer.viewReport("report1.pdf",false);
JOptionPane.showMessageDialog(null,"Relatório gerado com sucesso!");
}
catch(Exception e){
JOptionPane.showMessageDialog(null, "Erro ao gerar o relatório:"+e);
}
}[/code]
Olá amigo!
Estou tentando fazer via subrelatório como vc me falou, mas agora estou otendo o erro : Erro retreiving value from bean: itens
Eu tenho a variável itens que está devidamente declarada no meu bean…
Só que ele tá dizendo que não acha o valor dela… Mas estou passando por parâmetro da seguinte maneira:
No iReport, com seu relatório principal aberto, utilize o componente Subreport, siga o utilitário respondendo da seguinte maneira:
1- Create a New Subreport
2- Selecione o layout de sua preferência
3- Selecione ‘Empty Datasource’
4- Nada a fazer, clique em Next
5- Nada a fazer também, clique em Next
6- Defina o nome e forma como utilizará o diretório conforme você preferir
7- Marque ‘Use a JRDatasource expression’, clique no botão para abrir o editor de expressões, selecione Fields, então devem aparecer os campos do seu objeto, escolha o que array
8- Clique em finalizar e modele o subrelatório mo preferir
São esses os passos, tente ai e poste os resultados.
Se você já tem o subrelatório pronto, pode fazer escolher a opção apropriada na primeira pergunta, o essencial é definir o connection type e então a data source expression.