Top

Top() avalia uma expressão na primeira linha (superior) 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 superior. Para gráficos que não sejam tabelas, a avaliação Top() é feita na primeira linha da coluna atual, no equivalente de tabela estática do gráfico.

Syntax:  

Top([TOTAL] expr [ , offset [,count ]])

Return data type: dual

Arguments:  

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

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

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

count Especificando um terceiro parâmetro count maior que 1, a função retornará um intervalo de valores de count, um para cada uma das últimas linhas de count do segmento de coluna atual. 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

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 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: 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.

Limitations:  

As chamadas recursivas retornarão NULL.

Examples and results:  

Example: 1

Customer Sum(Sales) Top(Sum(Sales)) Sum(Sales) + Top(Sum(Sales)) Top offset 3
  2566 587 3153 3249
Astrida 587 587 1174 1270
Betacab 539 587 1126 1222
Canutility 683 587 1270 1366
Divadip 757 587 1344 1440

Na representação do gráfico da tabela mostrada neste exemplo, a tabela é criada a partir da dimensãno Customer e das medições: Sum(Sales) e Top(Sum(Sales)).

A coluna Top(Sum(Sales)) retorna 587 para as todas as linhas, porque esse é o valor da primeira linha: Astrida.

A tabela também mostra medições mais complexas: uma criada a partir de Sum(Sales)+Top(Sum(Sales)) e uma rotulada como Top offset 3, que é criada usando a expressão Sum(Sales)+Top(Sum(Sales), 3) e tem o argumento offset definido como 3. Ela acrescenta o valor Sum(Sales) da linha atual ao valor da terceira linha a partir da linha superior, isto é, a linha atual mais o valor de Canutility.

Example: 2

Nas representações dos gráficos de tabela mostrados neste exemplo, foram adicionadas mais dimensões aos gráficos: Month e Product. 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. (Algumas linhas não são exibidas, para economizar espaço).

Customer Product Month Sum(Sales) First value
      2566 -
Astrida AA Jan 46 46
Astrida AA Feb 60 46
Astrida AA Mar 70 46
... ... ... ... ...
Astrida AA Sep 78 46
Astrida AA Oct 12 46
Astrida AA Nov 78 46
Astrida AA Dec 22 46
Astrida BB Jan 46 46
Primeira tabela do Exemplo 2. O valor de Top para a medida de First value baseada em Month (Jan).
Customer Product Month Sum(Sales) First value
      2566 -
Astrida AA Jan 46 46
Astrida BB Jan 46 46
Astrida AA Feb 60 60
Astrida BB Feb 60 60
Astrida AA Mar 70 70
Astrida BB Mar 70 70
Astrida AA Apr 13 13
Astrida BB Apr 13 13
O valor de Top para a medida de First value baseada em Product (AA para Astrida).

Consulte o Exemplo: 2 na função Above para obter mais detalhes.

Example: 3

Resultado

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

Nos argumentos da função Top(), offset está definido como 1 e count está definido como 3. A função encontra os resultados da expressão Sum(Sales) em três linhas, com a linha abaixo da linha inferior no segmento de coluna (porque offset=1), e as duas linhas abaixo (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:
603
603
603
603

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.