Ireport + sql

2 respostas
K

Ola pessoal,

a minha duvida é simples eu acho kkkk, para quem ja é familiarizado com o Ireport.
Eu quero saber se é possivel pegar dados de duas querys diferentes e passar por parametro.

Eu tenho dados de Funcionarios em duas tabelas no banco de dados e quero colocar tudo em um relatorio só. É possivel?

meu codigo para vcs entenderem como funciona.
no meu codigo so estou passando um dos querys pq se eu colocar outro da pau.

em consulta do relatorio no ireport eu uso o codigo $P!{query}

no java

conexao(); 
				String arq = DataBaseOperations.arquivos()+"FormAdminFuncionario-Funcionario.jrxml";   
	
			Map<String, Object> parametros = new HashMap<String, Object>();   
				
				Object query = "SELECT * FROM funcionario where nome=$P{nome}";
				//Object queryFunc = "SELECT * FROM func where nome=$P{nome}";
				parametros.put("nome", nomeParametro);  
				parametros.put("query", query);
				//parametros.put("query", queryFunc);
		    	
		    	InputStream input = null;
				try {
					input = new FileInputStream(new File(arq));
				} catch (FileNotFoundException e3) {
					// TODO Auto-generated catch block
					e3.printStackTrace();
				}   
		    	JasperDesign design = null;
				try {
					design = JRXmlLoader.load(input);
				} catch (JRException e2) {
					// TODO Auto-generated catch block
					e2.printStackTrace();
				}   
		    	JasperReport report = null;
				try {
					report = JasperCompileManager.compileReport(design);
				} catch (JRException e1) {
					// TODO Auto-generated catch block
					e1.printStackTrace();
				} 
		    	JasperPrint impressao = null;
				try {
					impressao = JasperFillManager.fillReport(report, parametros, con);
				} catch (JRException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}   
		    	JasperViewer viewer = new JasperViewer(impressao,false);   
		    	viewer.setVisible(true);

2 Respostas

K

resolvido pessoal
é so separar a query por ,

"SELECT * FROM funcionario, func where …;
abrs

brunosales85

Fala galera!
To com um problema! e o codigo desse camarada aí parece a solucao!

String arq = DataBaseOperations.arquivos()+"FormAdminFuncionario-Funcionario.jrxml";

mas nesse codigo o Funcionario.jrxml já eh um arquivo que estava criado ? ou foi criado a partir desta aplicação ?
E se ele ja estava criado, como devo preparar o meu jrxml pra receber um query da aplicação ?

nao sei se fui claro!

Obrigado!!

Criado 23 de março de 2009
Ultima resposta 1 de jul. de 2009
Respostas 2
Participantes 2