Relatorio Ireport

6 respostas
V

Ola boa tarde,
Estou com um problema pois estou fazendo um relatorio de um balanço patrimonial, como vcs podem ver abaixo esta repetindo todo conteudo sendo que eu não preciso de repetir quero q aparece somente uma vez. De uma olhada na imagem e veja q o ativo repete, esta repetindo por diversas paginas e nao só o ativo , mas todos os dados q estao abaixo dele, e na verdade preciso de somente uma. Eu só quero q apareça até o “total passivo”.

Onde:

1º sobreport - Ativo e as suas contas
2º sobreport - Total Ativo
3º sobreport - Passivo e suas contas
4º sobreport - passivo Circulante
5º sobreport - Patrimonio Liquido e capital social
6º sobreport - Lucro ou Prejuizo
7º sobreport - Total Patrimonio Liquido
8º sobreport - Total Passivo

Desde ja agradeço pela atenção.

6 Respostas

fbahia32

Olá v.marcos

o campo que vc nao quer que repita, coloca ele fora do DETAIL lá no Ireport, pois o DETAIL é como se fosse um iterator, vamos dizer assim.

Testa ai, e me diz se funcionou.

V

Ola fbahia32,

Eu não quero q repita nenhum subrelatorio, soh tenho varios subrelatorios, pq são varias consultas diferentes.
Onde vc me sugere colocar? pq ja coloquei em ‘Title’ e não deu certo.
Inclusive os dados q estao em negrito estao na barra TITLE.

Obrigado pela atenção…

V

Olá boa tarde,
Gente ainda estou com este problema, vou postar os subrelatorios, para ajudar vcs a entenderem o problema, para q possam me ajudar…
E para vcs verem onde esta cada campo e as bands q eu utilizo.
1º subrelatorio

1º subrelatorio

2º subrelatorio

3º subrelatorio

4º subrelatorio

5º subrelatorio

6º subrelatorio

7º subrelatorio

8º subrelatorio

Eu quero q cada subrelatorio só apareça uma vez. Nunca repetir como esta repetindo agora.

Ah outra duvida tem como eu fazer uma consulta em um campo Text Field? , ao invez de eu fazer um subrelatorio, se tiver jeito, eu posso fazer só a consulta no campo.

Gerva

Solução 1
Você pode criar uma classe que retorne o dado da consulta, aí você chama do text field passando o algum id que a classe vai identificar.

Exemplo:
executaQuery(1) - retorna o resultado da query do subReport1
executaQuery(2) - retorna o resultado da query do subReport2

Solução 2
Cria uma query gigante com subselects, joins, etc…

Solução 3
Executa todas as query’s no java, armazena tudo numa collection e chama o jasper passando ela no lugar da conexão :B

São essas as que eu bolei…

V

Olá Gerva,

Vlw pela sugestao, mas eu resolvi o erro e foi ate mais simple do que a sua sugestao, mas agradeço pela atençao.
Eu percebi q o erro tava no relatorio principal, ai foi soh eu fazer uma consulta q retornasse o id da conta e deu tudo certo.
A maneira foi:
select descricao from planoContas where conta = ‘1’

vlw abraços…

Gerva

Na verdade o objetivo mesmo das sugestões que te enviei é diminuir a quantidade de subReports…
Particularmente usaria a classe que executa as query’s xD

Mas se assim já resolveu blz hehe

Criado 17 de novembro de 2011
Ultima resposta 21 de nov. de 2011
Respostas 6
Participantes 3