Cada página do modelo de relatório pode conter faixas de diferentes tipos, pré-estabelecidos pelo editor. As faixas representam as várias partes da página de um relatório (margem superior, margem inferior, cabeçalho, rodapé, etc.). Algumas faixas são obrigatórias e devem ser utilizadas em todas as páginas, enquanto outras são opcionais. Além de permitir uma melhor organização das páginas, essas faixas funcionam como repositórios dos controles do relatório.
Cada faixa identifica uma determinada área dentro de uma página do modelo em edição, e pode conter uma série de controles. As faixas são representadas visualmente na interface do Report Designer, conforme exibido na figura abaixo, que mostra uma página contendo duas faixas: PageHeader e Detail. Observe que cada tipo de faixa é identificado por um ícone diferente.
Com exceção das faixas que representam as margens superiores e inferiores do relatório (TopMargin e BottomMargin, respectivamente), todas as outras faixas podem ser minimizadas clicando na seta à sua esquerda, o que permite ocultar ou visualizar o conteúdo (controles) de cada uma (ver figura abaixo).
Ocultar ou exibir o conteúdo das faixas não afeta a forma como o relatório final é gerado. Isso é útil caso precise-se de um espaço adicional, já que a quantidade de elementos exibidos será menor, melhorando a visualização.
A quantidade de vezes que uma faixa pode ser incluída em uma página depende de seu tipo. Algumas faixas, como a GroupHeader, podem ser incluídas diversas vezes em uma mesma página, enquanto outras, como a PageHeader e a PageFooter, só podem ser incluídas uma vez. O editor indica quais faixas podem ser inseridas apenas uma vez através da mensagem "one band per page", conforme observado nas faixas PageHeader e PageFooter.
A tabela abaixo lista os tipos de faixas disponíveis e suas descrições:
Faixa |
Descrição |
TopMargin |
Faixa localizada na margem superior de cada página, acima da faixa PageHeader ou ReportHeader. |
ReportHeader |
Faixa localizada na primeira página do relatório que funciona como um cabeçalho, exibindo informações introdutórias. |
PageHeader |
Faixa localizada no topo de cada página, abaixo das faixas TopMargin e ReportHeader. Nessa faixa, geralmente é exibida a numeração da página ou cabeçalhos de tabelas que ocupem várias páginas. |
GroupHeader |
Faixa localizada no início de cada grupo de registros, ou no topo de um grupo, caso ele ocupe diversas páginas. Essa faixa geralmente é utilizada para informar critérios para o agrupamento de dados que será mostrado logo abaixo, na faixa Detail. |
Detail |
Faixa localizada em uma página entre todas as demais faixas. Exibe um único registro (no caso de relatórios que utilizam bancos de dados como fontes de dados) ou controles. |
GroupFooter |
Faixa opcional que pode ser colocada imediatamente abaixo de uma faixa Detail que contenha um agrupamento de dados, como uma tabela, por exemplo, ou no final de uma página, caso o agrupamento ocupe diversas páginas. Essa faixa é utilizada para exibir informações resumidas sobre os dados agrupados, como totalizações. |
ReportFooter |
Faixa localizada na última página do relatório. Pode ser utilizada para exibir informações finais relacionadas ao relatório, como consolidações do relatório como um todo. |
PageFooter |
Faixa localizada no fim de cada página, abaixo da faixa ReportFooter e acima da BottomMargin. Pode ser utilizada para exibição da numeração da página ou de rodapés de tabelas que ocupem diversas páginas. |
BottomMargin |
Faixa localizada na margem inferior de cada página, abaixo da faixa PageFooter. |
As figuras abaixo mostram a posição relativa dos diversos tipos de faixas. São exibidas duas páginas para demonstrar que certas faixas podem ser repetidas, enquanto outras não.
Seguem algumas informações adicionais sobre as faixas e suas utilizações:
• As faixas TopMargin e BottomMargin aparecem em todas as páginas. Em geral, essas faixas são utilizadas para informar o nome do relatório ou para exibir controles de numeração de página, data de emissão, classificação da informação e outros dados que normalmente são exibidos em cabeçalhos ou rodapés de relatórios. Essas faixas são criadas automaticamente e não podem ser excluídas.
• As faixas PageHeader e PageFooter podem ser criadas em qualquer página do relatório, porém apenas uma faixa de cada um desses tipos pode ser incluída por página. Essas faixas são úteis para inserir informações que devem ser impressas em todas as páginas do relatório. Uma vez criada, podem ser editadas ou excluídas a qualquer instante.
• As faixas ReportHeader e ReportFooter são normalmente utilizadas para definir um cabeçalho e um rodapé para o relatório. Uma vez criadas, podem ser editadas ou excluídas a qualquer instante.
• As faixas GroupHeader e GroupFooter podem aparecer diversas vezes na mesma página, e servem para definir títulos (GroupHeader) e totalizações (GroupFooter) para dados agrupados, normalmente exibidos em faixas tipo Detail localizadas entre elas, como mostra o exemplo abaixo. Geralmente, você não precisa criar manualmente essas faixas, pois elas podem ser geradas automaticamente quando são definidos critérios para agrupar dados. Essa funcionalidade será discutida na seção Group and Sort. As faixas podem ser editadas ou excluídas a qualquer instante.
• A faixa Detail, em geral, ocupa a parte central do relatório, e é utilizada para exibir informações gerais, tanto de dados estáticos (incluídos manualmente, como textos, números e imagens) quanto de dados gerados dinamicamente (obtidos através de variáveis, cujos valores são obtidos através de consultas realizadas ao banco de dados quando o relatório é gerado). Assim como as faixas TopMargin e BottomMargin, as faixas do tipo Detail não podem ser excluídas. No caso das faixas Detail, que exibem dados obtidos através de consultas ao banco, o conteúdo da faixa vai depender de quantos registros são retornados. Por exemplo, em uma tabela cujos dados são lidos do banco de dados e que possui 20 linhas com vários registros (colunas), a faixa Detail será gerada automaticamente 20 vezes, uma para cada linha da tabela.
As faixas podem ser adicionadas, editadas ou excluídas através da função Insert Band, exibida no menu ao se clicar duas vezes sobre qualquer seção de uma página (ver figura abaixo). Nesse mesmo menu, a função Delete remove da página a faixa que estiver selecionada.
As faixas incluídas em uma página podem ser editadas ou reordenadas em uma página através da função Edit and Reorder Bands, exibida quando se clica no botão assinalado na figura seguinte. Esse ícone é exibido automaticamente quando se clica sobre qualquer faixa (ou controle) na área de edição. No caso abaixo, a faixa ReportHeader está selecionada, de modo que é mostrada a janela Report Header Tasks com opções aplicáveis para esse tipo de faixa.
Ao selecionar a opção Edit and Reorder Bands, a janela Edit and Reorder Bands será exibida:
As faixas já existentes na página em edição são listadas no lado esquerdo da janela, exibindo em destaque a faixa selecionada (neste caso, ReportHeader), juntamente com outras opções:
• O botão Add permite incluir novas faixas na página. Essas serão inseridas logo abaixo da faixa selecionada. Apenas as faixas que podem ser incluídas, de acordo com a quantidade de faixas que podem estar presentes por página em função do seu tipo, serão exibidas.
• O botão Remove exclui a faixa selecionada da página.
• Os botões com seta para cima e para baixo permitem reordenar as faixas, novamente de acordo com as restrições de cada tipo de faixa (por exemplo, nenhuma faixa pode ser inserida acima da faixa TopMargin ou abaixo da BottomMargin).
• No lado direito da janela, são exibidas as propriedades da faixa selecionada.
• O botão Close fecha a janela Edit and Report Bands e retorna para a janela Tasks.
Observe que as opções exibidas no menu variam de acordo com o tipo de faixa selecionada. Por exemplo, para a faixa GroupFooter, é exibida a janela Group Footer Tasks com tarefas apropriadas para este tipo de faixa (ver figura abaixo).
Através da opção Formatting Rules, também na janela Tasks, é possível criar regras condicionais para a formatação da faixa. Essas regras podem controlar a visibilidade de partes do relatório, dependendo das condições especificadas. Por exemplo, em uma faixa que exibe os produtos e seus respectivos lucros, o valor pode ser exibido em vermelho se o número for negativo.
Produto Faturamento/Ano
A R$ 346,000.00
B -R$ 23,000.00
A opção Keep Together especifica se o conteúdo da faixa pode ser dividido entre páginas. Ou seja, quando o conteúdo da faixa é maior do que o espaço disponível na página, esse parâmetro define se ele poderá ser dividido entre a página onde está e a página seguinte ou se o conteúdo integral deve estar junto na próxima página. Observe que essa propriedade só se aplica aos casos em que o conteúdo de uma faixa não couber na página em que está localizada, quando o relatório é gerado.
A opção Repeat Every Page permite que o cabeçalho ou o rodapé de um grupo seja repetido em todas as páginas do relatório. A opção Print at Bottom especifica se o conteúdo da faixa GroupFooter ou ReportFooter deve ser impressa no final da página ou logo após a última faixa Details. Se essa opção estiver desabilitada, o conteúdo da faixa GroupFooter será impresso logo após o conteúdo da faixa Details e não no fim da página.