Ireport+Eclipse+Passa o ID

Bom… tenho um relatorio onde eu uso um parametro para como condição para o meu sql do ireport.

Estou passando o parametro e ele ta indo… mais o ireport nao pucha os dados do banco pra jogar no pdf
coloquei o parametro no pdf so pra ve se o valor ta indo… e o pior que ta… ou seja… do eclipse para o ireport ta ok
agora o problema é dentro do ireport.

É estritamente necessario passar a conexao? Eu gostaria de passar so o valor e o ireport se virar pra fazer o resto…!!!

package br.com.Decom.Util;

import java.awt.Dialog.ModalityType;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.HashMap;
import java.util.Map;

import javax.swing.JDialog;

import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.view.JRViewer;

public class ExecutaRelatorio {

	/**
	 * @param args
	 * @throws JRException
	 * @throws ClassNotFoundException
	 * @throws SQLException
	 */

	public static void main(String[] args) throws JRException,
			ClassNotFoundException, SQLException {
		
		Long idComprova = 1L;//valor apenas para fase e teste.
		
		// TODO Auto-generated method stub
		System.out.println("Gerando relatório...");
 

		JasperReport pathjrxml = JasperCompileManager
				.compileReport("Relatorios/ComprovacaoDiarias.jrxml");

		Map parametros = new HashMap();
	
		parametros.put("idComprovacaoViagem", idComprova);

		JasperPrint print = JasperFillManager.fillReport(pathjrxml, parametros); // exportacao do relatorio para outro formato, no caso PDF
		JasperExportManager.exportReportToPdfFile(print,"Relatorios/ComprovacaoDiarias.pdf");

 	        JasperViewer jrv = new JasperViewer(print);
	 	jrv.setVisible(true);

		System.out.println("Relatório gerado."); 
	}
}

ae no pdf aparece o numero “1” mais nao aparece os dados que era pra atraves dele buscar…
exemplo : “select nome, idade from pessoa where id = 1”
qndo eu executo direto do ireport, aparece o prompt e digito o numero 1 e ae ele aparece tudo normal…

E você realmente possui um $P{idComprovacaoViagem} no iReport? Tem certeza que não é um $F{idComprovacaoViagem}?

tenho sim… ta como - $P{idComprovacaoViagem}

SELECT
    
...

FROM
   
...


WHERE
     comprovaviagem.`id` = $P{idComprovacaoViagem}