Eclipse passando parametro pro Ireport

7 respostas
G

Bom, estou desenvolvendo um programa desktop para um cliente, e gostaria de me informa a respeito dos relatorios.

Gostaria de saber como faço pro eclipse enviar um dado pro ireport criar um relatorio…

ex.:
Tenho o cliente Carlos cadastrado, e quero gerar um relatorio com os dados dele. Mais so quero dele.
Em uma outra ocasiao…puchar do João…quero um relatorio so com os dados dele.

no irporte fica uma coisa genteralizada… gostaria de passa o codigo do cliente…e la o ireport puchava os dados…

Obrigado…

7 Respostas

emmanuelrock

É o seguinte, você monta o corpo do relatório no iReport - criando os campos e a query do relatório - e compila este, ele irá gerar um .jasper. Daí você joga esse ponto .jasper no teu projeto e você criará uma consulta idêntica a crianda na query do relatório, mas com uma claúsula WHERE, onde o nome ou o código seja igual ao do cliente escolhido passado por parâmetro.

Se isto tiver muito avançado dê uma buscada no fórum ou no google sobre “gerando relatório classe java”.

Abraço…

malucocelo

Você vai no IReport e cria um parâmetro, por ex: nomeCli

Na qery do IReport fica algo assim: select nome, idade from cliente where nome = $P{nomeCli}

compila e gera o .jasper

Na sua classe JAVA você chama o .jasper e passa o parâmetro “nomeCli”

carolino

alguem poderia dar mais ou menos um simples exemplo de como chamar o .jasper na classe java?

carolino

consegui rsrs

RenatoDeSouza

Oi amigo!

Me passa o exemplo que vc conseguiu?

carolino

no TipoRelatorio eu passo uma string dizendo se ele vai ser doc, pdf, etc…
no layoutRelatorio eu passo o caminho do .jrxml
as listas que eu passo para esse método vão ser usadas nos subrelatórios

qualquer dúvida… só perguntar

public void gerarRelatorio(TipoRelatorio tipoRelatorio,
			String layoutRelatorio, List<?> representada, List<?> listaDeDadosMonetarios, List<?> listaDeProdutos)
			throws JRException {
		JasperDesign desenho = JRXmlLoader.load(layoutRelatorio);
		JasperReport relatorio = JasperCompileManager.compileReport(desenho);

		JRBeanCollectionDataSource jrRS = new JRBeanCollectionDataSource(
				representada);
		JRBeanCollectionDataSource subDadosMonetariosJrRS = new JRBeanCollectionDataSource(
				listaDeDadosMonetarios);
		JRBeanCollectionDataSource subListaDeProdutosJrRS = new JRBeanCollectionDataSource(
				listaDeProdutos);

		System.out.print("LISTA DE DADOS MONETARIOS = " + listaDeDadosMonetarios);
		

		Map parametros = new HashMap();
		parametros.put("DadosMonetarios", subDadosMonetariosJrRS);
		parametros.put("Embalagens", subListaDeProdutosJrRS);
		
		gerar(relatorio,jrRS,parametros);

	}
protected void gerar(JasperReport relatorio,
			JRBeanCollectionDataSource jrRs, Map parametro) throws JRException {
		JasperPrint impressao = JasperFillManager.fillReport(relatorio,
				parametro, jrRs);
		JasperViewer view = new JasperViewer(impressao, false);
		view.show();

	}
carolino

:-o

Criado 21 de agosto de 2009
Ultima resposta 11 de fev. de 2011
Respostas 7
Participantes 5