Power BI: Crie relatórios paginados com exportações separadas

Por Luiz Antonio Sgargeta
Power BI: Crie relatórios paginados com exportações separadas

Quantas vezes você lutou para encontrar o meio termo entre um relatório que parece fenomenal quando impresso, mas tem tudo que um usuário pode precisar em uma exportação do Excel? O Power BI Report Builder tem alguns recursos que podem permitir o melhor dos dois mundos, com alguns truques simples. Portanto, ao final deste tutorial, você terá criado dois Tablix, configurado a visibilidade condicional com base no formato de renderização do relatório e definido o dimensionamento condicional no Excel Tablix (usando gráficos ocultos!) Para evitar páginas em branco.

Parte 1: configurar dois Tablix no Power BI

Seu primeiro Tablix será a visualização de página ou visualização de PDF. Seu segundo Tablix será a exportação do Excel.

Com a primeira tabela, tenho três linhas vinculadas ao agrupamento de cabeçalho, uma linha para meus detalhes e uma linha final para os totais. A primeira linha é para Região, que é meu grupo mais alto. A segunda linha é o espaço em branco, porque quero uma separação visual entre os Estados; a terceira linha é meu agrupamento de estado e cabeçalhos combinados.

Parece ótimo! Mas quando exporto o relatório, embora ainda pareça muito bom, meus usuários de relatório realmente não podem classificar ou filtrar os dados. Região e estado estão na mesma coluna, e meus cabeçalhos de dados são repetidos para cada estado.

É por isso que preciso de uma segunda versão apenas para Excel. Como tal, meu segundo Tablix é uma tabela muito simples sem agrupamentos – os grupos que tenho na tabela de exibição de página agora são apenas campos regulares na segunda tabela. Meus usuários também queriam muitos dados adicionais para detalhamento , portanto, este Tablix tem várias colunas extras que não estão presentes no Tablix de visualização de página / PDF. Eu adoro esse truque, porque é uma situação comum – você quer uma versão de um relatório para imprimir, mas os usuários querem tantas colunas extras que não cabem em uma página! Normalmente, você acaba borrando o conteúdo ou tornando a fonte muito pequena, ou seu relatório é muito largo e não pode ser impresso. Esse mesmo conceito pode ser usado nessa situação para ter colunas visíveis condicionalmente!

Agora que temos nossas duas tabelas, precisamos definir quando cada uma estará visível.

Parte 2: Configurar Visibilidade Condicional

O Power BI Report Builder tem dois recursos que nos permitirão mostrar ou ocultar as tabelas com base em como o relatório está sendo processado para o usuário. Primeiro, ele tem visibilidade baseada em expressão . No Painel de Propriedades, com sua visualização de página Tablix selecionada, você deve ver uma propriedade de visibilidade quase na parte inferior.

Escolha Expressão no menu suspenso e criaremos nossa expressão com base em quando queremos que o tablix seja oculto. Neste caso, nós queremos que ela seja escondida quando estamos a exportar para o Excel, o que nos leva à segunda funcionalidade Report Builder tem – um construído – em campo que irá preencher com o relatório de tornar formato chamado RenderFormat.Name. Você pode encontrá-lo em “Campos internos” no construtor de expressão.

Nossa expressão para ocultar esta tabela é a seguinte:

= Globais! RenderFormat.Name = “EXCELOPENXML”

Nota: Dependendo da versão que você tem, seu arquivo de configuração RSReportServer pode chamar esses formatos por um nome diferente. Se “EXCELOPENXML” não funcionar, você pode tentar “EXCEL”. Se isso ainda não funcionar, talvez você precise verificar seu arquivo de configuração.

Repita os mesmos passos para a segunda tabela, aquela que queremos mostrar no Excel. Nossa expressão para isso será:

= Globals! RenderFormat.Name <> “EXCELOPENXML”

Em outras palavras, se o relatório estiver sendo renderizado em qualquer lugar, exceto no Excel, essa tabela deve ser ocultada.

Quando você testar isso, se suas duas tabelas tiverem a mesma largura e você não tiver nenhuma página em branco…. Parabéns! Você pode pular a Etapa 3, pronto! Mas se você tivesse que adicionar colunas como eu fiz, e sua visualização de design se pareça com esta e todas as outras páginas do PDF estiverem em branco, continue comigo … nós resolveremos isso!

Parte 3: Configurar Dimensionamento Condicional com Gráficos no Power BI

Nosso problema agora é que, embora nosso Tablix do Excel esteja oculto na visualização de página, o Report Builder vê aqueles 3,5 polegadas extras de espaço em branco adjacentes ao Tablix de visualização de página e adiciona a página extra para exibi-la. Eu poderia tornar cada coluna menor, mas, infelizmente, os usuários do meu relatório terão que expandir as colunas toda vez que exportarem para o Excel e quiserem visualizar os dados.

Adicione uma linha extra apenas à sua tabela de visualização do Excel, clique em “Inserir” e escolha “Gráfico”. Clique dentro da primeira célula de sua linha em branco e escolha qualquer um dos gráficos oferecidos. 

Não estamos adicionando nenhum dado a ele, mas colocar o gráfico dentro desta célula abriu algumas novas opções no painel Propriedades. Esses são os dois que usaremos, Altura Dinâmica e Largura Dinâmica.

Primeiro, defina a Altura Dinâmica como 0. Quando o relatório for renderizado, esta linha terá uma altura de zero, então ninguém será capaz de ver nossos gráficos falsos.

Em seguida, definiremos a largura dinâmica para uma expressão que parecerá um pouco familiar, já que usamos algo parecido para visibilidade condicional.

= IIf (Globals! RenderFormat.Name = “EXCELOPENXML”, “1in”, “. 5in”)

No meu caso, escolhi colunas de 1 ”de largura ao exportar, mas você deve escolher um tamanho que se ajuste bem aos seus dados. Você pode tornar cada um um tamanho personalizado, mas antes de fazer qualquer alteração, vamos copiar e colar nosso gráfico em todas as células em branco na linha 1.

Uma vez que a primeira linha é preenchida com gráficos falsos, você pode começar a encolher as larguras das colunas para caber.

Por fim, veja também em nosso outro artigo Power BI: o que é e o que você pode fazer com ele.

Ver mais artigos

Entre em Contato

Vamos juntos transformar sua dor
em solução!

#moveFast