Relatório Ireport Dinâmico

Como faço para gerar um Relatório Ireport Dinâmico, quero que a consulta seja passada ao relatorio por uma classe.O que devo fazer?
Desde já agradeço!!

desde que o número de colunas seja fixo, dá pra passar o sql inteiro via parametro para o jasperreports. aí onde iria teu sql no relatorio vc coloca algo como $!P{sql}

vc esta falando de tabelas dinamicas? crosstab??

neste casso o número de colunas não precisa ser fixos…

mas de qq forma, acho melhor deixar o sql no Jasper, e só passar os parametro que precisa para efetuar o select…

Usando $!P{sql} o dá erro no ireport parametro não encontrado, na classe que eu chamo o relatorio tenho um metodo retornaQuery(), que retorna uma string de consulta consigo utiliza-lá em outras classes mas como faço para passar como parametro pro ireport

Consegui coloquei uma query no ireport ao inves de passar os parametros e chamei o metodo retorna query na classe que chama o relatorio