Ir para conteúdo principal Pular para conteúdo complementar

Below

Below() avalia uma expressão na linha abaixo da linha atual dentro de um segmento de coluna em uma tabela. A linha para a qual ela é calculada depende do valor de offset; se estiver presente, o padrão será a linha diretamente inferior. Para gráficos que não sejam tabelas, Below() avalia a linha abaixo da coluna atual no equivalente de tabela estática do gráfico.

Sintaxe:  

Below([TOTAL] expression [ , offset [,count ]])

Tipo de dados de retorno: dual

Argumentos:  

  • expr: A expressão ou campo que contém os dados a serem medidos.
  • offset: Especificar um offset n, maior que 0, move a avaliação da expressão n linhas acima da atual. A especificação de um deslocamento igual a 0 avaliará a expressão na linha atual. Especificar um número de compensação negativa faz a função Above atuar como a função Below com o número de compensação positiva correspondente.
  • count: Especificando um terceiro argumento count maior que 1, a função retornará uma série de valores count, um para cada uma das linhas da tabela count, contado para cima a partir da célula original. Dessa forma, a função pode ser usada como um argumento para qualquer uma das funções de intervalo especiais. Funções de intervalo
  • TOTAL: Se a tabela for unidimensional ou se o qualificador TOTAL for usado como argumento, o segmento de coluna atual será sempre igual à coluna inteira.

    Definindo o escopo de agregação

Na primeira linha de um segmento de coluna, um valor NULL é retornado, já que não há uma linha acima dela.

Nota informativaUm segmento de coluna é definido como um subconjunto consecutivo de células que contêm os mesmos valores para as dimensões na ordem de classificação atual. As funções de inter-registro de gráficos são computadas no segmento de coluna, excluindo a dimensão mais à direita no gráfico de tabela estática equivalente. Se houver apenas uma dimensão no gráfico ou se o qualificador TOTAL for especificado, a expressão avalia a tabela completa.
Nota informativaSe a tabela ou o equivalente de tabela tiver várias dimensões verticais, o segmento de coluna atual incluirá somente linhas com os mesmos valores que a linha atual em todas as colunas de dimensão, exceto na coluna que mostrar a última dimensão na ordem de classificação entre os campos.

Limitações:  

  • As chamadas recursivas retornarão NULL.

  • A classificação por valores y em gráficos ou por colunas de expressão em tabelas não é permitida quando essa função de gráfico é usada em qualquer uma das expressões do gráfico. Essas alternativas de classificação estão, portanto, automaticamente desabilitadas. Quando você usar essa função de gráfico em uma visualização ou tabela, a classificação da visualização será revertida para a entrada classificada dessa função.

Exemplos e resultados:  

Exemplo 1:  

Exemplo de saída de tabela
Customer Sum(Sales) Below(Sum(Sales)) Sum(Sales) + Below(Sum(Sales)) Below offset 3 Higher?
- 2566 - - 1344 -
Astrida 587 539 1126 - Higher
Betacab 539 683 1222 - -
Canutility 683 757 1440 - -
Divadip 757 - - - -

Na representação do gráfico da tabela mostrada para o exemplo 1, a tabela é criada a partir da dimensão Customer e das medidas: Sum(Sales) e Below(Sum(Sales)).

A coluna Below(Sum(Sales)) retorna NULL para a linha Customer contendo Divadip, porque não há nenhuma linha abaixo dela. O resultado para a linha Canutility mostra o valor de Sum(Sales) para Divadip, o resultado para Betacab mostra o valor para Sum(Sales) para Canutility e assim por diante.

A tabela também mostra medidas mais complexas, que podem ser usadas nas colunas rotuladas: Sum(Sales)+Below(Sum(Sales)), Below +Offset 3 e Higher?. Estas expressões funcionam conforme descrito nos parágrafos a seguir.

Para a coluna rotulada Sum(Sales)+Below(Sum(Sales)), a linha para Betacab mostra o resultado da soma dos valores Sum(Sales) para as linhas Astrida + Astrida (539+587). O resultado da linha Betacab mostra o resultado da adição de valores de Sum(Sales) para Canutility + Betacab (539+683).

A medição rotulada Below +Offset 3 criada usando a expressão Sum(Sales)+Below(Sum(Sales), 3) tem o argumento offset, definido como 3 e tem o efeito de obter o valor na linha três linhas abaixo da linha atual. Ele soma o valor Sum(Sales) para o atual Customer ao valor Customertrês linhas abaixo. Os valores para as três linhas inferiores Customer são null.

A medida rotulada Higher? é criada a partir da expressão:IF(Sum(Sales)>Below(Sum(Sales)), 'Higher'). Isto compara os valores da linha atual na medida Sum(Sales) com a linha abaixo dela. Se a linha atual for um valor maior, o texto "Higher" será a saída.

Nota de dicaEssa função também pode ser usada para gráficos além de tabelas, como gráficos de barra.
Nota de dicaPara outros tipos de gráficos, converta o gráfico para o equivalente de tabela simples, para que você possa facilmente interpretar a qual linha a função está relacionada.

Para gráficos com mais de uma dimensão, os resultados de expressões que contêm as funções Above, Below, Top e Bottom dependem da ordem em que as dimensões da coluna são classificadas pelo QlikView. O QlikView avalia as funções com base nos segmentos de coluna que resultam da dimensão que é classificada por último. A ordem de classificação da coluna é controlada no painel de propriedades em Classificação e não é necessariamente a ordem em que as colunas aparecem na tabela.Consulte o Exemplo 2 na função Above para obter mais detalhes.

Exemplo 2:  

A função Below pode ser usada como entrada para as funções range. Por exemplo: RangeAvg (Below(Sum(Sales),1,3)).

Nos argumentos para a função Below(), offset é definido como 1 e count é definido como 3. A função encontra os resultados da expressão Sum(Sales) nas três linhas imediatamente abaixo da linha atual no segmento de coluna (onde há uma linha). Estes três valores são usados como entrada para a função RangeAvg(), que encontra a média de valores na variação de números fornecidos.

Uma tabela com Customer como dimensão gera os seguintes resultados para a expressão.

Exemplo de saída de tabela
Customer RangeAvg (Below(Sum(Sales),1,3))
Astrida 659.67
Betacab 720
Canutility 757
Divadip -

Dados usados nos exemplos:

Monthnames:

LOAD * INLINE [

Month, Monthnumber

Jan, 1

Feb, 2

Mar, 3

Apr, 4

May, 5

Jun, 6

Jul, 7

Aug, 8

Sep, 9

Oct, 10

Nov, 11

Dec, 12

];

Sales2013:

crosstable (Month, Sales) LOAD * inline [

Customer|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec

Astrida|46|60|70|13|78|20|45|65|78|12|78|22

Betacab|65|56|22|79|12|56|45|24|32|78|55|15

Canutility|77|68|34|91|24|68|57|36|44|90|67|27

Divadip|57|36|44|90|67|27|57|68|47|90|80|94

] (delimiter is '|');

Para obter os meses para classificar na ordem correta, ao criar seus gráficos, acesse a aba Sort das propriedades do gráfico e marque a caixa de seleção Expression em Sort by. Na caixa de expressões, escreva Monthnumber.

Esta página ajudou?

Se você encontrar algum problema com esta página ou seu conteúdo - um erro de digitação, uma etapa ausente ou um erro técnico - informe-nos como podemos melhorar!

Participe do Programa de Modernização do Analytics

Remove banner from view

Modernize sem comprometer seus valiosos aplicativos QlikView com o Programa de Modernização do Analytics. Clique aqui para mais informações ou entre em contato: ampquestions@qlik.com