[RESOLVIDO]Ajuda (e dúvidas) com IReport

Senhores, bom dia

Comecei a aprender a mexer com o IReport ontem. Até que o desenvolvimento do relatório está legal, pois já trabalhei com desenvolvimento de relatórios usando outras ferramentas.
Este relatório será chamado por uma página JSP e os parametros virão desta página (apesar de que eu não sei como faz isso, mas estou pesquisando como farei…).
Porém, estou precisando de uma ajuda. O select dom meu relatório é esse:

SELECT convert(varchar(30),getdate(),103) AS datadeemissao, a."empr_raza_soci", b."seto_nome", c."cent_cust_nume", e."entr_hard_nume_patr", f."tipo_hard_nome" FROM "Empresa" a INNER JOIN "Saida_Hardware" d ON a."IDempresa" = d."IDempresa" INNER JOIN "Setor" b ON d."IDsetor" = b."IDsetor" INNER JOIN "Entrada_Hardware" e ON d."IDentradahardware" = e."IDentradahardware" INNER JOIN "Tipo_Hardware" f ON e."IDtipohardware" = f."IDtipohardware" INNER JOIN "Centro_Custo" c ON b."IDcentrocusto" = c."IDcentrocusto" WHERE d.IDsaidahardware IN ($P!{IDsaidahardware}) GROUP BY a.empr_raza_soci, b.seto_nome, c.cent_cust_nume, e.entr_hard_nume_patr, f.tipo_hard_nome ORDER BY e.entr_hard_nume_patr ASC

O select está certo, já que eu consigo ver o relatório. Porém, quando eu quero tentar mais de um parametro, não retorna nada.
O teste que eu faço é pela ferramenta do IReport 4.0.1, onde eu peço um prompt do Parametro $P!{IDsaidahardware}. No prompt, se eu colocar o valor 3, o relatório funciona. Se eu colocar no prompt 3,4 , não aparece resultado nenhum.

Aí vem as dúvidas:
Via Prompt eu consigo passar dois valores int distintos para fazer um teste, ou só quando eu passar os valores via página JSP que o relatório será executado como eu quero? Pois no prompt, não consegui colocar dois valores inteiros distintos…

OBS: Se eu substituir o parametro $P!{IDsaidahardware} pela escrita literal 3,4 , funciona. Acredito que estou apanhando mesmo é neste bendito parametro.

Qual o tipo do seu parametro?

Se vc quer vários resultados para o parametro, vai ter que criar algo diferente, exemplo ArrayList de parametros… nao tem como vc atribuir a um String 2 resultados no mesmo momento… é igual java…
String um, dois;

Senhores, obrigado a quem pelo menos leu o tópico.

Após muito pesquisar, consegui colocar a cláusula IN funcionando. O IReport utiliza o parâmetro $X{clausulaINouNOTIN, nomedocampodatabela, nomedoparametro} para tratar os comandos IN ou NOT IN em SQL.
Outro detalhe importante é que é necessário mudar o parâmetro que vai ser passado para java.util.Collection
Com isso, vou colocar o meu comando SQL acertado para o IREPORT

SELECT convert(varchar(30),getdate(),103) AS datadeemissao, a."empr_raza_soci", b."seto_nome", c."cent_cust_nume", e."entr_hard_nume_patr", f."tipo_hard_nome" FROM "Empresa" a INNER JOIN "Saida_Hardware" d ON a."IDempresa" = d."IDempresa" INNER JOIN "Setor" b ON d."IDsetor" = b."IDsetor" INNER JOIN "Entrada_Hardware" e ON d."IDentradahardware" = e."IDentradahardware" INNER JOIN "Tipo_Hardware" f ON e."IDtipohardware" = f."IDtipohardware" INNER JOIN "Centro_Custo" c ON b."IDcentrocusto" = c."IDcentrocusto" WHERE $X{IN,d.IDsaidahardware,IDsaidahardware} /*Aqui está a parte diferente do comando acima postado*/ GROUP BY a.empr_raza_soci, b.seto_nome, c.cent_cust_nume, e.entr_hard_nume_patr, f.tipo_hard_nome ORDER BY e.entr_hard_nume_patr ASC

Agora pode marcar o seu parametro com PROMPT e executar o relatório. Na janela que aparecer, digite o que se deseja, (no meu caso, digitei “3,4”, sem as aspas duplas).

Vou deixar a cláusula SQL mais genérica, pois o que eu postei acima está bem específico pra mim.

Parametro: condicao - java.ulti.Collection

Comando:

select a.campo1, b.campo2 from Tabela1 a, Tabela2 b where a.indice1 = b.indice1 and $X{IN,b.campo2,condicao}

Caso queira usar a cláusula NOT IN, basta mudar o parametro $X para NOT IN. Ficaria assim

select a.campo1, b.campo2 from Tabela1 a, Tabela2 b where a.indice1 = b.indice1 and $X{NOT IN,b.campo2,condicao}

QQ coisa, pod entrar em contato.
VLW!

P.S.: Desculpem pelo double post.