Ir ao conteúdo
  • Cadastre-se
Gabiruhfsa

Como colocar endereço dinâmico no SubReport (JasperReport)?

Recommended Posts

Olá Pessoal, é o seguinte...
 
Tem uns dois meses que entrei em um projeto aqui do Instituto para fazer um software para gerenciamento do fluxo de visitantes do meu Campus, além de adicionar, alterar ou excluir esses visitantes, o software também poderia realizar o compilamento de relatórios por data ou por nome de pessoas...
 
Ao gerar o relatório por datas, ele imprime normalmente, assim como o relatório por pessoa...
 
Porém, quando exporto o programa para .jar e executo em outro computador, ele imprime apenas o relatório por data, pois não é necessário colocar o subdiretório dentro do arquivo .jrxml, ao contrário do relatório por pessoa, que não imprime, pois depende de um subdiretório, sendo que o mesmo já vem pré-definido pelo programa iReport.
 
Espero que me ajudem!
 

Código Java:

JasperReport report = JasperCompileManager.compileReport("relatorios/relatorioNome.jrxml");JasperReport reportSub = JasperCompileManager.compileReport("relatorios/relatorioNome_subreport.jrxml");Map<String, Object> parametro = new HashMap<String, Object>();//   parametro.put("SUBREPORT_DIR", reportSub);//   parametro.put("listFluxo", lista.get(0).getListFluxo());JasperPrint print = JasperFillManager.fillReport(report, null, new JRBeanCollectionDataSource(lista));

 

Relatório Master:

<parameter name="SUBREPORT_DIR" class="java.lang.String">	<defaultValueExpression><![CDATA["relatorios\\"]]></defaultValueExpression></parameter>.....<subreport>	<reportElement x="0" y="0" width="555" height="76" uuid="adc1ef25-58d3-4ff1-b108-46b181292c16"/>	<dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{listFluxo})]]></dataSourceExpression>	<subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "relatorioNome_Subreport.jasper"]]></subreportExpression></subreport>

 
Não irei mandar o Subrelatório porque não existe nenhuma configuração de diretório nele.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×