SQL Server Reporting Services — Dicas: quebras de página e geração de documentos PDF

NetCoders
netcoders
Published in
3 min readApr 13, 2014
image002

Contando com uma ampla gama de recursos para a elaboração de sofisticadas análises, o Reporting Services é uma solução da Microsoft para a criação e o gerenciamento de relatórios no ambiente corporativo. Extremamente flexível, esta ferramenta possibilita inclusive a exportação de relatórios para formatos como planilhas do Excel e documentos PDF. Muito embora represente um dos serviços que compõem o SQL Server, o Reporting Services também pode ser empregado na produção de relatórios que acessem outras bases relacionais (como Oracle, por exemplo), bancos multidimensionais do Analysis Services ou, mesmo, fontes de dados como XML e Web Services.

Maiores informações a respeito do Reporting Services podem ser obtidas a partir do link:

O objetivo deste post é apresentar dicas envolvendo a geração de relatórios através do Reporting Services (tomando como base para isto a versão 2008 desta ferramenta):

  • A primeira dica descreve como desabilitar a quebra de página em um relatório, algo que pode ser bastante útil em se tratando da exibição de uma listagem de dados a partir de uma aplicação Web;
  • Já a segunda dica está relacionada à exportação de relatórios no padrão PDF, sendo que a mesma detalha como evitar a geração de uma página em branco no final de um arquivo criado neste formato.

Desativando a quebra de página em relatórios do Reporting Services

O Reporting Services permite a construção de relatórios que façam uso de paginação na apresentação de valores, com isto acontecendo de uma forma bastante simplificada.

No entanto, existirão situações em que será necessário desativar este mecanismo, como nos casos em que uma listagem de valores é apresentada a partir de uma página em uma solução Web. A solução em tais cenários dependerá dos seguintes procedimentos:

  • Zerar o valor da propriedade InteractiveHeight, de forma que a altura do relatório cresça dinamicamente e não esteja limitada a uma medida específica;
  • Acessar o arquivo .rdl do relatório através de um editor de texto. Em termos práticos, um arquivo .rdl nada mais é do que um documento XML contendo as definições de um relatório. Localizar então todos os elementos de nome “BreakLocation”, alterando o valor dos mesmos para “None” (conforme indicado na Listagem 1).

[code language=”xml” highlight=”3"]

<BreakLocation>None</BreakLocation>

[/code]

Listagem 1: Desativando a quebra de página a partir da propriedade BreakLocation

Evitando a geração de páginas em branco na exportação para o formato PDF

Relatórios gerados a partir do Reporting Services podem ser exportados em formatos como PDF e planilhas do Excel, por exemplo. No caso específico de documentos PDF, esta é uma opção voltada à criação de arquivos que procura coibir ações de usuários buscando alterar o conteúdo gerado inicialmente.

Este processo de geração de relatórios poderá resultar, em inúmeras situações, na obtenção de arquivos com uma página em branco no final. A solução para este problema consiste em alterar o valor da propriedade ConsumeContainerWhitespace do objeto Report para “true” (via janela Properties do Visual Studio).

Conclusão

Procurei com este post apresentar algumas dicas que podem ser úteis na resolução de problemas envolvendo o uso do Reporting Services. Espero que este conteúdo possa ser útil no dia-a-dia.

Até uma próxima oportunidade!

Renato Groffe

--

--