Título: Primeiro Relatório Com Ireport
Autor: Daniel Vidal
Nível: Básico
---------------------------------------
Olá galera!!!
Dando continuidade às "aulas" de iReport, vou mostrar à vocês como fazer seu primeiro relatório.
Antes de fazer qualquer coisa, precisamos definir o que queremos que seja relatado, certo?
Nesse caso, irei usar um exemplo de uma locadora de vídeos, onde existem algumas tabelas que usarei para fazer minha query e aí sim poder gerar meu relatório.
Nossa locadora possui apenas duas tabelas:
* LC_PRODUTORA
-- ID_PRODUTORA
-- NOME_PRODUTORA
* LC_TITULO
-- ID_TITULO
-- NOME_TITULO
-- ID_PRODUTORA
-- DIRETOR
-- SINOPSE
-- LEGENDADO
-- DUBLADO
Agora iremos definir nosso "problema":
Nosso relatório irá listar quais filmes possuímos em nossa locadora e suas respectivas produtoras.
1. Criando um novo relatório
Primeiramente devemos criar um novo relatório, indo em
ARQUIVO >> NOVO DOCUMENTO...
Digite o nome do relatório na tela que irá aparecer.
2. Criar a QUERY
Para digitar nossa query, demos ir em
DATA >> QUERY DO RELATÓRIO...
Abaixo segue a query:
CODE
SELECT PROD.NOME_PRODUTORA AS PRODUTORA,
TIT.NOME_TITULO AS TITULO,
TIT.DIRETOR AS DIRETOR,
TIT.SINOPSE AS SINOPSE,
TIT.DUBLADO AS DUBLADO,
TIT.LEGENDADO AS LEGENDADO
FROM LC_TITULO TIT, LC_PRODUTORA PROD
WHERE PROD.ID_PRODUTORA = TIT.ID_PRODUTORA
ORDER BY PRODUTORA, TITULO
Reparem que existe um CHECKBOX escrito "Obter Automaticamente os Campos"..
Pois bem, esse recurso é muito importante, pois ele transforma todos os dados que vem no select para uma expressão, que será usada na criação do relatório e sem elas não é possível voltar dado algum...
Ele é executado a cada vez que você digitar algo, mas caso você não queira essa execução constante, você pode executar a ação clicando em "Campos Prontos" ao final de digitar sua query.
3. Definir o layout do relatório
Quero que o cabeçalho apareça em todas as páginas, portanto irei usar a banda "Page Header" para faze-lo.
O "Column Header" vai abrigar os labels das colunas.
No "Detail" ficarão os fields (expressões) que voltam da query. São aquelas expressões que abordamos no tópico 2.
Minha divisão de página ficará assim:
Para "sumir" com as outras bandas, basta clicar com o botão direito fora do escopo do relatório e clicar em "propriedades da banda" onde uma tela se abrirá e você poderá zerar ou definir o tamanho (em pixels) que sua banda terá no eixo vertical.
Para simplificar isso, basta clicar e arrastar para cima ou para baixo a linha abaixo do nome da banda que desejar almentar/diminuir.
4. Organizando os Fields
Agora seu relatório está pronto para ser criado.
Na verdade falta colocar os labels e as expressões que tudo estará terminado!
Os fields são as expressões que retornarão as linhas de seu relatório, e para que elas sejam dinâmicas, deverão estar na banda "Detail".
Para colocar essas expressões la, basta arrastar da janela dos fields até a banda.
Imagem onde já arrastei todas as expressões...
Dica: Para deixar a banda do tamanho certo, basta dar clique duplo na linha debaixo da banda que deseja ajustar. Isso fará com que ela cole no field mais abaixo que tiver.
Vamos criar os labels.
No menu superior, tem um botão com a letra
T que significa texto, ou seja, qualquer texto digitado aparecerá no relatório..
Para escrever um texto, crie do tamanho que desejar o textfield e clique com o botão direito nele.
Vá em
PROPRIEDADES >> (ABA) TEXTO ESTÁTICO.
Digite seu texto e pronto, feche a janela, pois ela não possui botão salvar, pois isso ela faz automaticamente.
Pra efeito de formatação, centralizei o textfield no botão de centralizar (igualzinho qualquer editor de texto) e cliquei em
PROPRIEDADES >> (ABA) BORDAS onde colocarei borda inferior no textfield para deixar meu relatório mais organizado.
Também vou fazer meu cabeçalho com os Textsfields.
Meu layout ficou assim:
5. Gerando seu relatório
CRIAR >> EXECUTAR RELATÓRIO (USAR CONEXÃO ATIVA)
Esse termo de usar conexão ativa, significa que os dados serão os vindos do banco de dados..
Enfim, vejam só como ficou...
Como vocês puderam notar, a sinopse, autor e título ficaram incompletos por não terem espaço para aparecerem por completos.
Para suprir esse problema, basta clicar com o botão direito e ir em PROPRIEDADES >> (ABA) CAMPO TEXTO e marcar o checkbox "Aumentar quando exceder" e também o "Branco quando for nulo", o que evita que os dados que forem nulos, apareçam a palavra
null no relatório.
Espero ter ajudado em alguma coisa...