Compartilhar via


Adicionar filtros de conjunto de dados, de região de dados e de grupo a um relatório paginado (Construtor de Relatórios)

Aplica-se a: Microsoft Report Builder (SSRS) Power BI Report Builder Report Designer no SQL Server Data Tools

Em um relatório paginado, um filtro faz parte de um conjunto de dados, de uma região de dados ou de um grupo de regiões de dados criado por você para limitar os dados usados no relatório. Os filtros são uma forma de ajudar a controlar os dados do relatório se você não puder alterar a consulta do conjunto de dados. Por exemplo, você pode querer um filtro se estiver usando um conjunto de dados compartilhado.

Os filtros ajudam a controlar os dados exibidos e processados em um relatório. É possível especificar filtros para um conjunto de dados, uma região de dados ou um grupo, em qualquer combinação.

Para obter mais informações, confira Adicionar um filtro a um conjunto de dados (Construtor de Relatórios) e Exemplos de equações de filtro (Construtor de Relatórios).

Observação

Você pode criar e modificar arquivos de definição de relatório paginado (.rdl) no Construtor de Relatórios da Microsoft, Construtor de Relatórios do Power BI e no Designer de Relatórios no SQL Server Data Tools.

Escolha quando definir um filtro

Especifique os filtros para itens de relatório quando você não puder filtrar dados na origem. Por exemplo, use filtros de relatório quando a fonte de dados não suporta parâmetros de consulta. Ou use os filtros de relatório quando você precisar executar procedimentos armazenados e não puder modificar a consulta ou quando um instantâneo de relatório com parâmetros exibir dados personalizados para usuários diferentes.

Você pode filtrar os dados do relatório antes ou depois de recuperá-los para gerar um conjunto de dados de relatório. Para filtrar os dados antes de recuperá-los, altere a consulta de cada conjunto de dados. Ao filtrar os dados da consulta, você filtra os dados na fonte de dados, reduzindo o volume de dados que precisa ser recuperado e processado em um relatório. Para filtrar os dados depois de recuperá-los, crie expressões de filtro no relatório. É possível definir expressões de filtro para um conjunto de dados, uma região de dados ou um grupo, incluindo grupos de detalhes. Você também pode incluir parâmetros em expressões de filtro. Essa ação fornece uma maneira de filtrar dados para valores específicos ou para usuários específicos. Por exemplo, você pode filtrar um valor que identifique o usuário que está exibindo o relatório.

Escolha onde definir um filtro

Determine onde você deseja definir um filtro pelo efeito que deseja obter em seu relatório. No tempo de execução, o processador de relatório aplica filtros na seguinte ordem: no conjunto de dados e na região de dados e nos grupos de cima para baixo em cada hierarquia de grupo. Em uma tabela, matriz e lista, os filtros para grupos de linha, grupos de coluna e grupos adjacentes são aplicados de forma independente. Em um gráfico, os filtros para grupos de categoria e grupos de série são aplicados de forma independente. Quando o processador de relatório aplica o filtro, todas as equações de filtros são aplicadas na ordem em que elas foram definidas na página Filtro da caixa de diálogo Propriedades para cada item de relatório, que é o equivalente a combiná-los com as operações boolianas AND.

A lista a seguir compara o efeito de definir filtros em itens de relatório diferentes:

  • No conjunto de dados: defina o filtro no conjunto de dados quando desejar que uma ou mais regiões de dados associadas a um único conjunto de dados sejam filtradas da mesma maneira. Por exemplo, defina o filtro no conjunto de dados associado a uma tabela que exibe os dados de vendas e um gráfico que exibe os mesmos dados.

  • Na região de dados: defina um filtro na região de dados quando quiser que uma ou mais regiões de dados associadas a um único conjunto de dados forneçam uma exibição diferente do conjunto de dados. Por exemplo, defina o filtro em uma região de dados Tabela para exibir as dez principais lojas para vendas e uma região de dados Tabela diferente para exibir as dez últimas lojas para vendas no mesmo relatório.

  • Nos grupos de colunas ou linhas em uma região de dados Tablix: defina um filtro em um grupo quando quiser incluir ou excluir determinados valores para uma expressão de grupo controlar quais valores de grupo são exibidos na tabela, matriz ou lista.

  • No grupo de detalhes em uma região de dados Tablix: defina um filtro no grupo de detalhes para uma região de dados quando tiver vários grupos de detalhes para uma região de dados e quiser que cada grupo de detalhes exiba um conjunto de dados diferente do conjunto de dados.

  • Nos grupos de categorias ou séries em uma região de dados Gráfico: defina um valor em um grupo de séries ou categorias quando quiser incluir ou excluir determinados valores para uma expressão de grupo, a fim de controlar quais os valores exibidos no gráfico.

Voltar ao início

Entenda uma equação de filtro

Em tempo de execução, o processador de relatório converte o valor para o tipo de dados especificado e usa o operador especificado para comparar a expressão e o valor. A lista a seguir descreve cada parte da equação de filtro:

  • Expressão: define o que você está filtrando. Geralmente, esse campo é um campo de conjunto de dados.

  • Tipo de Dados: especifica o tipo de dados a ser usado quando a equação de filtro é avaliada em tempo de execução pelo processador de relatórios. O tipo de dados selecionado deve ser um dos tipos de dados com suporte do esquema de definição de relatórios.

  • Operador: define como comparar as duas partes da equação do filtro.

  • Valor: define a expressão a ser usada na comparação.

As seções a seguir descrevem cada parte da equação de filtro.

Expression

Quando o processador de relatório avalia a equação de filtro em tempo de execução, os tipos de dados da expressão e o valor devem ser iguais. O tipo de dados do campo selecionado para Expressão é determinado pela extensão de processamento de dados ou pelo provedor de dados usado para recuperar dados da fonte de dados. O tipo de dados da expressão digitado para Valor é determinado pelos padrões. Os tipos de dados suportados para uma definição de relatório determinam as opções do tipo de dados. O provedor de dados deve converter os valores do banco de dados em um tipo CLR.

Tipo de dados

Para o processador de relatórios comparar os dois valores, os tipos de dados devem ser iguais. A tabela a seguir lista o mapeamento entre os tipos de dados CLR e os tipos de dados de definição de relatórios. Os dados recuperados de uma fonte de dados podem ser convertidos em um tipo de dados diferente até o momento em que os dados são relatados.

Tipo de dados de esquema de definição de relatórios Tipo(s) CLR
Booliano Booliano
DateTime DateTime, DateTimeOffset
Inteiro Int16, Int32, UInt16, Byte, SByte
Valor Flutuante Single, Double, Decimal
Texto String, Char, GUID, Timespan

Em casos em que você deve especificar um tipo de dados, você pode especificar sua própria conversão na parte da expressão Value.

Operador

A tabela a seguir lista os operadores que podem ser usados em uma equação de filtro e o que o processador de relatórios usa para avaliar a equação de filtro.

Operador Ação
Equal, Like, NotEqual, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual Compara a expressão a um valor.
TopN, BottomN Compara a expressão com um valor Integer .
TopPercent, BottomPercent Compara a expressão com um valor Integer ou Float .
Entre Testa se a expressão está entre dois valores, inclusive.
In Testa se a expressão está contida em um conjunto de valores.

Valor

A expressão Value especifica a parte final da equação do filtro. O processador de relatórios converte a expressão avaliada para o tipo de dados especificado e avalia a equação de filtro inteira para determinar se os dados especificados na Expressão são transmitidos pelo filtro.

Para converter para um tipo de dados que não seja um tipo de dados CLR, você deve modificar a expressão para converter explicitamente para um tipo de dados. Você pode usar as funções de conversão listadas na caixa de diálogo Expressão em Funções Comuns, Conversão. Por exemplo, para um campo ListPrice que representa os dados armazenados como um tipo de dados money em uma fonte de dados do SQL Server, a extensão de processamento de dados retornará o valor de campo como um tipo de dados Decimal. Para definir um valor para usar somente valores maiores de US$ 50.000,00 na moeda do relatório, converta o valor para decimal usando a expressão =CDec(50000.00).

Esse valor também pode incluir uma referência de parâmetro para permitir que um usuário selecione um valor interativamente.

Voltar ao Início

Uso de expressões em relatórios (Construtor de Relatórios)
Parâmetros de relatório (Construtor de Relatórios e Designer de Relatórios)