Below - função de gráfico

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:  

Argumento Descrição
expr A expressão ou campo que contém os dados a serem medidos.
offset

Especificar um offsetn, maior que 1 move a avaliação da expressão para as linhas n abaixo da linha atual.

A especificação de um deslocamento igual a 0 avaliará a expressão na linha atual.

Especificando um número de compensação negativa faz a função Below funcionar como a função Above com o número de compensação positiva correspondente.

count

Ao especificar um terceiro parâmetro count maior que 1, a função retornará uma série de valores count, um para cada count linhas da tabela, contado para baixo 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.

Consulte: 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: Um 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 simples 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: Se 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.

Exemplos e resultados:  

Exemplo 1:  

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 - - - -
Gráfico de tabela para o Exemplo 1.

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 soma dos valores 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.

Dica: Essa função também pode ser usada para gráficos além de tabelas, como gráficos de barra.
Dica: Para 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:  

Resultado

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 em 1 e count, é definido em 3. A função encontra os resultados da expressãoSum(Sales) nas três linhas imediatamente abaixo da linha atual no segmento da 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 dá os seguintes resultados para a expressão RangeAvg().

 
Astrida
Betacab
Canutility
Divadip:
659.67
720
757
-

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.