Criei um relatório a qual tem um sub relatório.
porem ele da o seguinte erro:
estou usando o seguinte plugin https://github.com/wpivotto/vraptor-jasperreport
http://www.guj.com.br/java/238132-contribuicao-vraptor3---plugin-para-jasperreports
Criei um relatório a qual tem um sub relatório.
porem ele da o seguinte erro:
estou usando o seguinte plugin https://github.com/wpivotto/vraptor-jasperreport
http://www.guj.com.br/java/238132-contribuicao-vraptor3---plugin-para-jasperreports
vc que tá passando essa connection?
[quote=david.cs20]Criei um relatório a qual tem um sub relatório.
porem ele da o seguinte erro:
estou usando o seguinte plugin https://github.com/wpivotto/vraptor-jasperreport
http://www.guj.com.br/java/238132-contribuicao-vraptor3---plugin-para-jasperreports[/quote]
Você não precisa passar conexão nenhuma. Eu costumo fazer assim: Digamos que seu relatório principal exiba os dados de uma venda e seu subrelatório exiba dados do cliente desta venda, dessa forma:
public class Venda {
private Date data;
private CLiente cliente;
private Collection<Produto> produtos;
}
public class RelatorioDeVendas implements Report {
public Collection<Venda> getData() {
return ...;
}
//demais métodos omitidos
}
No iReport quando você adicionar o subreport configure ele assim:
Subreport Expression = $P{SUBREPORT_DIR} + "seu_subreport.jasper"
Connection Type = Use a datasource expression
Data Source Expression = new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{cliente})
Dessa forma seu subreport recebe o field cliente como datasource, poderia passar como parametro também.
Dai basta usar normalmente $F{cliente.nome} se você passou como datasource, ou $P{cliente.nome} se passou por parâmetro.
Agora se seu relatório ou subrelatório executar um sql você deve passar o parâmetro REPORT_CONNECTION dessa forma:
report.addParameter("REPORT_CONNECTION", sua conexao);
seria isso