Tenho uma aplicação que o pessoal preenche alguns campos e logo após mostra uma folha personalizada com os dados digitados nos campos. Não é necessário nenhuma query no banco, somente mostrar a página em A4 com as informações digitadas nos campos.
Percebo que é necessário fazer consulta no banco para poder mostrar a pagina, senão a pagina não aparece… Alguém pode me ajudar com isso?
Kra, se você colocar qualquer coisa na band Detail, você terá q usar uma query.
Então, para “enganar” o iReport, faça uma query qualquer, tipo: select 1+1
Não precisa fazer nenhuma gambiarra.
Você pode utilizar parâmetros e uma banda qualquer que não seja Detail (Page Header por exemplo).
Nas propriedades do relatório tem uma opção “When no Data”, apenas escolha “All sections, no detail” e o relatorio vai mostrar tudo que não estiver em bandas Detail.
When no Data band serve exatamente pra quando tu não tem dados, não pra quando tu não tem DataSource; são situações diferentes.
A Query 1 + 1 do parceiro ali iria só fazer tu exibir teu detail vazio, mas com um dado perdido na memória sem impressão.
O grande mal do Jasper é isso: a gente acha um martelo, e sai batendo em tudo pela frente, tudo vira prego.
Cada coisa serve pra uma coisa. Se usar cada coisa pra sua função, o iReport ajuda; senão, ele escangalha com a tua vida.
Sim, eu concordo. Mas concordas que ela não é um relatório alternativo, e sim uma banda?
Não tem cabeçalho, não tem rodapé, não tem uma série de outras características que são necessárias pra impressão dinâmica. E se quiseres passar algo para o relatório? Vai ter que ser por parâmetro, e não como dataSource, o que está completamente errado. Até pq se passar, ela não vai ser impressa.
É nesse sentido que eu falo, usar cada coisa pro seu devido uso, e aí o iReport / Jasper se torna uma ferramenta boa e produtiva, senão dá uma dor de cabeça do cão depois, especialmente pra quem vai ter que dar manutenção.
Abraço!
Não e necessário você realizar nenhuma consulta no banco de dados, você pode obter as informações e passar essas informações para o seu Ireport via JRDataSource.
Sim, eu concordo. Mas concordas que ela não é um relatório alternativo, e sim uma banda?
Não tem cabeçalho, não tem rodapé, não tem uma série de outras características que são necessárias pra impressão dinâmica. E se quiseres passar algo para o relatório? Vai ter que ser por parâmetro, e não como dataSource, o que está completamente errado. Até pq se passar, ela não vai ser impressa.
É nesse sentido que eu falo, usar cada coisa pro seu devido uso, e aí o iReport / Jasper se torna uma ferramenta boa e produtiva, senão dá uma dor de cabeça do cão depois, especialmente pra quem vai ter que dar manutenção.
Abraço![/quote]
Acho que você entendeu mal, não estou falando para usar a banda “No Data”, nas propriedades do relatório existe uma opção “When no Data”, mudando o seu valor para “All Sections, No Detail”, será impresso tudo que estiver fora das detail, assim você pode usar todas as ferramentas do iReport normalmente, inclusive cabeçalho, rodapé e parametros.