E aí pessoal,
Estou fazendo nota fiscal no Ireport, gostaria de saber como faço a quebra de paginas?
Na nota fiscal cabe, aproximadamente, 20 itens gostaria que ao ultrapassasse os 20 os demais itens fossem para outra pagina, nao tenho ideia como fazer.
Amigo, é o seguinte, os dados da relatorio não vem de uma select, por exemplo
eu jogo as variaveis em um HashMap e por sua vez encaminha para o jasper, o q estou kerendo fazer eh que ao acrescentar uma qntidade no corpo de itens q ultrapasse um certo valor q eu defini (20 itens) os poximos itens sejam carregados em outra pagina. Gostaria que o relatorio contivesse mais q uma pagina, se necessario.
Tenta mexer nas configurações da página, aumentando a margem e diminuindo o espaço útil. Aí, na tentativa e erro, vai testando até que fiquem 20 por página…
Pelo que eu entendi, a paginação tá funcionando normal né?
Por exemplo, se você tem, no HashMap 160 itens, eles são dividídos (suposição) em 4 páginas com 40 itens cada… mas você quer 20, certo?
Não sei se é válido para a sua aplicação mas uma coisa interessante que já utilizei:
Pra exibição do relatório na tela, eu marcava o parâmetro IGNORE_PAGINATION como true e na tela apareciam, usando o exemplo dado, 160 itens na mesma página. Na hora de imprimir, eu gerava novamente o relatório, marcando o parâmetro citado como false e imprimia normal, em 4 folhas com 4 itens. É um “estilo” interessante e o cliente ficou satisfeito…
[quote=AdrianoPalm]Não sei se é válido para a sua aplicação mas uma coisa interessante que já utilizei:
Pra exibição do relatório na tela, eu marcava o parâmetro IGNORE_PAGINATION como true e na tela apareciam, usando o exemplo dado, 160 itens na mesma página. Na hora de imprimir, eu gerava novamente o relatório, marcando o parâmetro citado como false e imprimia normal, em 4 folhas com 4 itens. É um “estilo” interessante e o cliente ficou satisfeito…[/quote]
estou com um problema um pouco parecido, mas no meu caso não quero paginação quando eu exibo o relatório no formato HTML…pois ele vem igualzinho no PDF, deixando espaços qdo muda página.
esse parametro ae, IGNORE_PAGINATION, fica onde??? tem como postar um exemplo por favor?!
Opa… eu de novo, consegui resolver meu problema, ao invez de usar uma hashmap usei antes, uma ArrayList. Agora em outro relatorio preciso puxar os campos do Banco de Dados, aí tudo bem.
Segue o mesmo principio do outro, peguei os campos os itens e coloquei dentro da banda detail, porem quero especificar um tamanho para a banda, pois ela esta sendo preenchida, e chega ateh o final da pagina e pula p/ outra.
Gostaria que ela chegasse até um ponto e jogasse para outra pagina.
Limitar pela quantidade de itens, não serve pois às vezes a descrição é mais que uma linha. No caso devo limitar a banda Detail.
eu nao cheguei a tentar, mas tenta ver se pela variável, naquele cantos Variables o Page-Count você consegue limitar por ele ou o columns count, acho que o columns e pela linha, mas tenta ai valeu! :roll:
E ai Darkryon
Me diz uma coisa você esta imprimindo estas notas fiscais do ireport em impressora matricial?
Tu usou algum recurso especial para elas serem impressas rapidamente ou esta imprimindo naquela lentidão que os
distemas baseados em windows imprime nas matriciais?
Se tiver alguma dica, ou alguem ai tiver, sobre isso me da um retorno.
Para enviar para impressoras matriciais, importa o conteúdo do jasper para modo texto , gravando num arquivo txt. Depois transforma em um array de bytes e envia pra impressora através de um fileoutputStream que dá certo e fica rápido… o problema que estou tentando resolver é o posicionamento do texto…
E ai leopoldof, como faço isso? importat o contrudo do jasper par amodo texto? E como transformar em um array de bytes? E como mando para a impressora. fieuei meio que viajando agora.
Tu tens como me mandar um exemplo com codigo para mim dar uma olhada???
Desculpe a demora para responder… mas lá no proprio ireport no menu criar, tem uma opção para visualizar texto, então quando executado o .jasper, ele vai gerar um arquivo.txt…depois faz uma rotina pra ler este arquivo texto tipo assim: