Referência de funções de agregação (Construtor de Relatórios 3.0 e SSRS)
Para incluir valores agregados no relatório, é possível usar funções de agregação internas em expressões. A função de agregação padrão para campos numéricos é SUM. É possível editar a expressão e usar uma função de agregação interna diferente ou especificar outro escopo. O escopo identifica qual conjunto de dados deve ser usado no cálculo.
À medida que o processador de relatório combina os dados e o layout do relatório, as expressões de cada item do relatório são avaliadas. Ao exibir cada página do relatório, você vê os resultados de cada expressão nos itens de relatório renderizados.
A seguinte tabela lista as categorias de funções internas que você pode incluir em uma expressão:
Funções de agregação internas
Restrições em campos internos, coleções e funções de agregação
Restrições em agregados aninhados
Calculando valores em uso
Recuperando contagens de linhas
Procurando valores de outro conjunto de dados
Recuperando valores dependentes de classificação
Recuperando agregações do servidor
Recuperando nível recursivo
Testando para escopo
Para determinar os escopos válidos para uma função, consulte o tópico de referência da função individual. Para obter mais informações e exemplos, consulte Compreendendo o escopo das expressões para totais, agregações e coleções internas (Construtor de Relatórios 3.0 e SSRS).
Observação |
---|
É possível criar e modificar definições de relatórios (.rdl) no Report Builder 3.0 e no Designer de Relatórios no Business Intelligence Development Studio. Cada ambiente de criação fornece diferentes maneiras de criar, abrir e salvar relatórios e itens relacionados. Para obter mais informações, consulte Projetando e implementando relatórios usando o Designer de Relatórios (Reporting Services) na Web em microsoft.com. |
Funções de agregação internas
As seguintes funções internas calculam valores resumidos para um conjunto de dados numéricos não nulos no escopo padrão ou no escopo nomeado.
Função |
Descrição |
---|---|
Retorna a média de todos os valores numéricos não nulos especificados pela expressão, avaliados no escopo fornecido. |
|
Retorna uma contagem de valores não nulos especificados pela expressão, avaliados no contexto do escopo fornecido. |
|
Retorna uma contagem de todos os valores não nulos distintos especificados pela expressão, avaliados no contexto do escopo fornecido. |
|
Retorna o valor máximo de todos os valores numéricos não nulos especificados pela expressão, no contexto do escopo fornecido. É possível usar essa função para especificar o valor máximo de um eixo do gráfico para controlar a escala. |
|
Retorna o valor mínimo de todos os valores numéricos não nulos especificados pela expressão, no contexto do escopo fornecido. É possível usar essa função para especificar o valor mínimo de um eixo do gráfico para controlar a escala. |
|
Retorna o desvio padrão de todos os valores numéricos não nulos especificados pela expressão, avaliados no escopo fornecido. |
|
Retorna o desvio padrão da população de todos os valores numéricos não nulos especificados pela expressão, avaliados no contexto do escopo fornecido. |
|
Retorna a soma de todos os valores numéricos não nulos especificados pela expressão, avaliados no escopo fornecido. |
|
Retorna a união de todos os valores de dados espaciais não nulos do tipo SqlGeometry or SqlGeography especificados pela expressão e avaliados no contexto do escopo fornecido. |
|
Retorna a variação de todos os valores numéricos não nulos especificados pela expressão, avaliados no escopo fornecido. |
|
Retorna a variação da população de todos os valores numéricos não nulos especificados pela expressão, avaliados no contexto do escopo fornecido. |
Voltar ao início
Restrições em campos internos, coleções e funções de agregação
A tabela a seguir resume as restrições em locais no relatório em que é possível adicionar expressões que contêm referências a coleções internas globais.
Local no relatório |
Campos |
Parâmetros |
ReportItems |
PageNumber TotalPages |
DataSource DataSet |
Variáveis |
RenderFormat |
---|---|---|---|---|---|---|---|
Cabeçalho de página Rodapé de página |
Sim |
Sim |
No máximo um Observação 1 |
Sim |
Sim |
Sim |
Sim |
Corpo |
Sim Observação 2 |
Sim |
Apenas itens no escopo atual ou em um escopo contentor Observação 3 |
Não |
Sim |
Sim |
Sim |
Parâmetro de relatório |
Não |
Apenas parâmetros anteriores da lista Observação 4 |
Não |
Nenhum |
Nenhum |
Nenhum |
Nenhum |
Campo |
Sim |
Sim |
Não |
Não |
Não |
Não |
Não |
Parâmetro de consulta |
Não |
Sim |
Não |
Não |
Não |
Não |
Não |
Expressão de grupo |
Sim |
Sim |
Não |
Não |
Sim |
Não |
Não |
Expressão de classificação |
Sim |
Sim |
Não |
Não |
Sim |
Sim Observação 5 |
Não |
Expressão de filtro |
Sim |
Sim |
Não |
Não |
Sim |
Sim Observação 6 |
Não |
Código |
Não |
Sim Observação 7 |
Não |
Não |
Não |
Não |
Não |
Report.Language |
Não |
Sim |
Não |
Não |
Não |
Não |
Não |
Variáveis |
Sim |
Sim |
Não |
Não |
Sim |
Escopo atual ou contentor |
Não |
Agregados |
Sim |
Sim |
Apenas cabeçalho da página/rodapé da página |
Apenas em agregações de item de relatório |
Sim |
Não |
Não |
Funções Lookup |
Sim |
Sim |
Sim |
Não |
Sim |
Não |
Não |
Observação 1. ReportItems deve existir na página de relatório renderizada ou o seu valor será Nulo. Se a visibilidade de um item de relatório depender de uma expressão que é avaliada como False, o item de relatório não existirá na página.
Observação 2. Se uma referência de campo usada em um escopo de grupo não estiver incluída na expressão de grupo, o valor do campo será indefinido, a menos que haja apenas um valor no escopo. Para especificar um valor, use Primeiro ou Último e o escopo de grupo.
Observação 3. Expressões que incluem uma referência a ReportItems podem especificar valores para outros ReportItems no mesmo escopo de grupo ou em um escopo de grupo contentor.
Observação 4. Os valores de propriedade de parâmetros anteriores podem ser nulos.
Observação 5. Somente em classificações de Membro. Não é possível usar em expressões de classificação de região de dados.
Observação 6. Somente em filtros de Membro. Não é possível usar em região de dados ou em expressões de filtro de conjunto de dados.
Observação 7. A coleção Parâmetros não é inicializada até o bloco de Código ser processado. Portanto, os métodos não podem ser usados para controlar parâmetros na inicialização.
Observação 8. O tipo de dados de todas as agregações, exceto Count e CountDistinct, deve ser o mesmo ou nulo, para todos os valores.
Voltar ao início
Restrições em agregados aninhados
A tabela a seguir resume as restrições nas quais as funções de agregação podem especificar outras funções de agregação como agregados aninhados.
Contexto |
RunningValue |
RowNumber |
First Last |
Previous |
Sum e outras funções de classificação prévia |
Agregados de ReportItem |
Funções Lookup |
Função de agregação |
---|---|---|---|---|---|---|---|---|
Valor em uso |
Não |
Não |
Não |
Não |
Sim |
Não |
Sim |
Não |
First Último |
Não |
Não |
Não |
Não |
Sim |
Não |
Não |
Não |
Previous |
Sim |
Sim |
Sim |
Não |
Sim |
Não |
Sim |
Não |
Sum e outras funções de classificação prévia |
Não |
Não |
Não |
Não |
Sim |
Não |
Sim |
Não |
Agregados de ReportItem |
Não |
Não |
Não |
Não |
Não |
Não |
Não |
Não |
Funções Lookup |
Sim |
Sim Observação 1 |
Sim Observação 1 |
Sim Observação 1 |
Sim Observação 1 |
Sim Observação 1 |
Não |
Não |
Função de agregação |
Não |
Não |
Não |
Não |
Não |
Não |
Não |
Não |
- Observação 1. As funções de agregação só serão permitidas na expressão Source de uma função Lookup se a função Lookup não estiver contida em um agregado. As funções de agregação não são permitidas nas expressões Destination ou Result de uma função Lookup.
Voltar ao início
Calculando valores em uso
As funções internas a seguir calculam os valores em uso de um conjunto de dados. RowNumber é semelhante a RunningValue pois retorna o valor em uso de uma contagem que é incrementada para cada linha no escopo contentor. O parâmetro do escopo dessas funções deve especificar um escopo de contenção que controle quando a contagem é reiniciada.
Função |
Descrição |
---|---|
Retorna uma contagem contínua do número de linhas para o escopo especificado. A função RowNumber reinicia a contagem em 1, não em 0. |
|
Retorna uma agregação contínua de todos os valores numéricos não nulos especificados pela expressão, avaliados para o escopo fornecido. |
Voltar ao início
Recuperando contagens de linhas
A função interna a seguir calcula o número de linhas no escopo fornecido. Use esta função para contar todas as linhas, inclusive as linhas com valores nulos.
Função |
Descrição |
---|---|
Retorna o número de linhas no escopo especificado, inclusive as linhas com valores nulos. |
Voltar ao início
Procurando valores de outro conjunto de dados
As funções de pesquisa a seguir recuperam valores de um conjunto de dados especificado.
Função |
Descrição |
---|---|
Retorna um valor de um conjunto de dados para uma expressão especificada. |
|
Retorna um conjunto de valores de um conjunto de dados para uma expressão especificada. |
|
Retorna o conjunto de primeiros valores correspondentes para um conjunto de nomes de um conjunto de dados que contém pares de nome/valor. |
Voltar ao início
Recuperando valores dependentes de classificação
As funções internas a seguir retornam o primeiro, o último ou o valor anterior de um escopo fornecido. Estas funções dependem da ordem de classificação dos valores dos dados. Use estas funções, por exemplo, para localizar o primeiro e o último valor em uma página para criar um cabeçalho de página em estilo de dicionário. Use Previous para comparar um valor em uma linha com o valor da linha anterior dentro de um escopo específico, por exemplo, para localizar valores de porcentagem ano a ano em uma tabela.
Função |
Descrição |
---|---|
Retorna o primeiro valor no escopo fornecido da expressão especificada. |
|
Retorna o último valor no escopo fornecido da expressão especificada. |
|
Retorna o valor ou o valor agregado especificado para a instância anterior de um item do escopo especificado. |
Voltar ao início
Recuperando agregações do servidor
A função interna a seguir recupera agregações personalizadas do provedor de dados. Por exemplo, usando um tipo de dados do Analysis Services, é possível recuperar agregações calculadas no servidor de fonte de dados para uso em um cabeçalho de grupo.
Função |
Descrição |
---|---|
Retorna uma agregação personalizada da expressão especificada, conforme definido pelo provedor de dados. |
Voltar ao início
Testando para escopo
A função interna a seguir testa o contexto atual de um item de relatório para verificar se ele é membro de um escopo específico.
Função |
Descrição |
---|---|
Indica se a instância atual de um item está dentro do escopo especificado. |
Voltar ao início
Recuperando nível recursivo
A função interna a seguir recupera o nível atual quando uma hierarquia recursiva é processada. Use o resultado dessa função com a propriedade Padding em uma caixa de texto para controlar o nível de recuo de uma hierarquia visual para um grupo recursivo. Para obter mais informações, consulte Criando grupos de hierarquias recursivas (Construtor de Relatórios 3.0 e SSRS).
Função |
Descrição |
---|---|
Retorna o nível atual de profundidade em uma hierarquia recursiva. |
Voltar ao início