Vraptor + jasper + plugin Vraptor-jasperportes

2 respostas
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

2 Respostas

Lucas_Cavalcanti

vc que tá passando essa connection?

wpivotto

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

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

Criado 13 de junho de 2012
Ultima resposta 13 de jun. de 2012
Respostas 2
Participantes 3