Amigos eu so quero uma coisa simples, no meu ireport fazer um SELECT* FROM tabela WHERE codigo IN(1,5,2,6)
SELECT* FROM tabela WHERE codigo IN($P{codigos})
ja tentei passar esse codigos, como List, Collection, String e nada… alguem pode me ajudar como eu faco isso??
obrigado
Vou fazer uma sutil alteração que acho que vai dar certo…
SELECT* FROM tabela WHERE codigo IN([color=red]$P!{codigos}[/color])
Para testar no ireport vai na parte de parametesrs e em codigos coloca no valor como default “1,5,2,6” e em parameter class type coloca a classe java.util.List.
Precisar de algo a mais posta aqui e vamos tentando até funcionar.
F
fabioebner
Cara se eu colocar no "Default Value Expression" 5,11
ele me retorna
Errors compiling C:\relatorios\RGruposPeriodo.jasper!
Compilation exceptions: com.jaspersoft.ireport.designer.compiler.ErrorsCollector@14837a5 net.sf.jasperreports.engine.JRException: Errors were encountered when compiling report expressions class file: 1. Syntax error on token ",", invalid AssignmentOperator value = (java.util.List)(5,11); //$JR_EXPR_ID=1$ ^ 2. Syntax error on token ",", invalid AssignmentOperator value = (java.util.List)(5,11); //$JR_EXPR_ID=1$ ^ 3. Syntax error on token ",", invalid AssignmentOperator value = (java.util.List)(5,11); //$JR_EXPR_ID=1$ ^ 3 errors at net.sf.jasperreports.engine.design.JRAbstractCompiler.compileReport(JRAbstractCompiler.java:191) at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:494) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997)
Compilation running time: 1.235
se eu nao deixar como default e pedir para inserir a hora de visualizar ele da o seguinte erro:
Fera acho que talvez estejamos falando de coisas um pouco diferente…
A query está no relatório ou está sendo executada na aplicação?!?!
A possível solução que eu passei é colocando a query dentro do ireport…
SELECT* FROM tabela WHERE codigo IN($P[color=red]![/color]{codigos}) … tem que colocar a exclamação
O parametro codigos tem que ser do tipo [color=red]String [/color]e valor default que passei tem que estar entre aspas duplas [color=red]"[/color]1,5,2,6[color=red]"[/color]
Na a aplicação em que eu trabalho está dessa forma e funciona legalzinho…
Se feito essas alterações não funcionar não sei mais o que pode ser.
F
fabioebner
:*** valeu meu querido
A
arqueiros
Funcionou??!??!?!
Coloca como resolvido vai ajudar muito quem tiver problemas desse tipo…
Abs
B
blackout
Pessoal,
Estou com esse mesmo problema, mesmo cenario.
No Dafault Value Expression eu simplesmente coloquei um 0, simplesmente pra ter alguma coisa ja que o iReport obriga a isso.
Mas quando faco o isso o grafico nao eh impresso na tela, se eu mudar para valores estaticos, funciona.
Alguem sabe o porque? Minha query para gerar esse grafico esta da seguinte maneira:
SELECT I.ESTADO,
ROUND((COUNT(I.ID) / (SELECT COUNT(*) FROM CURSO_INSTITUICAO))* 100, 0) AS PORCENTAGEM,
COUNT(C.ID) AS QUANTIDADE_POR_ESTADO
FROM INSTITUICAOENSINO I, CURSOSUPERIOR C, CURSO_INSTITUICAO CI
WHERE CI.INSTITUICAOENSINOID = I.ID
AND CI.CURSOSUPERIORID = C.ID
AND C.ID IN ( $P!{curso_id} )
GROUP BY I.ESTADO