Bottom - función de gráfico

Bottom() evalúa una expresión situada en la última fila (inferior) de un segmento de columna en una tabla. La fila para la que se calcula depende del valor de offset. Si está presente, se tomará de forma predeterminada la fila inferior. Para los gráficos que no sean tablas, la evaluación se realiza en la última fila de la columna actual en el equivalente de tabla simple del gráfico.

Sintaxis:  

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

Tipo de datos que devuelve: dual

Argumentos:  

Argumento Descripción
expr La expresión o el campo que contiene los datos que se han de medir.
offset

Al especificar un offset n mayor que 1, la evaluación de la expresión se mueve n filas por encima de la fila inferior.

Especificar un número de offset (desplazamiento) negativo hará que la función Bottom sea equivalente a una función Top con el correspondiente número de offset positivo.

count

Si se especifica un tercer parámetro count mayor que 1, la función devolverá más de un rango de valores count, uno por cada una de las últimas filas count del segmento de columna actual. De esta manera, la función puede utilizarse como argumento en cualquiera de las funciones de rango especiales. Funciones de rango

TOTAL

Si la tabla es unidimensional o si se utiliza el cualificador TOTAL como argumento, el segmento de columna actual es siempre igual a la columna entera.

Vea: Definir el ámbito de agregación

Nota: Un segmento de columna se define como un subconjunto consecutivo de celdas que tienen los mismos valores para las dimensiones en la ordenación actual. Las funciones inter-registro se calculan en el segmento de columna excluida la dimensión más a la derecha del gráfico de tabla simple equivalente. Si solo hay una dimensión en el gráfico o si se especifica el calificador TOTAL, la expresión se evalúa en toda la tabla.
Nota: Si la tabla o el equivalente de tabla tiene múltiples dimensiones verticales, el segmento de columna actual incluirá sólo filas con los mismos valores que la fila actual en todas las columnas de dimensión, excepto para la columna que muestra la última dimensión en el orden de campos interno.

Limitaciones:  

Las llamadas recursivas devolverán NULL.

Ejemplos y resultados:  

Ejemplo: 1

Customer Sum(Sales) Bottom(Sum(Sales)) Sum(Sales) + Bottom(Sum(Sales)) Bottom offset 3
  2566 757 3323 3105
Astrida 587 757 1344 1126
Betacab 539 757 1296 1078
Canutility 683 757 1440 1222
Divadip 757 757 1514 1296
El gráfico de tabla para el Ejemplo 1.

En la representación del gráfico de tabla mostrado en este ejemplo, la tabla se crea a partir de la dimensión Customer y las medidas: Sum(Sales) y Bottom(Sum(Sales)).

La columna Bottom(Sum(Sales)) devuelve 757 para todas las filas porque éste es el valor de la fila inferior: Divadip.

La tabla también muestra medidas más complejas: una creada a partir de Sum(Sales)+Bottom(Sum(Sales)) y otra etiquetada Bottom offset 3, que se crea utilizando la expresión Sum(Sales)+Bottom(Sum(Sales), 3) y tiene el argumento offset establecido en 3. Agrega el valor Sum(Sales) para la fila actual al valor de la tercera fila desde la última fila, es decir, la fila actual más el valor de Betacab.

Ejemplo: 2

En las representaciones de los gráficos de tabla mostrados en este ejemplo, se han añadido más dimensiones a los gráficos: Month y Product. Para gráficos con más de una dimensión, los resultados de las expresiones que contienen las funciones Above, Below, Top y Bottom dependen del orden en que QlikView clasifica las dimensiones de columna. QlikView evalúa las funciones basándose en los segmentos de columna que resultan de la dimensión que se ordena en último lugar. El criterio de ordenación de columnas se controla en el panel de propiedades, en Ordenación y no es necesariamente el orden en el que las columnas aparecen en una tabla.

En la primera tabla, la expresión se evalúa basándose en Month y, en la segunda, basándose en Product. La medida End value contiene la expresión Bottom(Sum(Sales)). La fila inferior de Month es Dec, y el valor de Dec ambos valores de Product mostrados en la tabla, es 22. (Algunas filas no se muestran, para ahorrar espacio.)

Customer Product Month Sum(Sales) End value
      2566 -
Astrida AA Jan 46 22
Astrida AA Feb 60 22
Astrida AA Mar 70 22
... ... ... ... ...
Astrida AA Sep 78 22
Astrida AA Oct 12 22
Astrida AA Nov 78 22
Astrida AA Dec 22 22
Astrida BB Jan 46 22
Primera tabla para el ejemplo 2. El valor de Bottom para la medida End value basado en Month (Dec).
Customer Product Month Sum(Sales) End 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
Segunda tabla para el ejemplo 2. El valor de Bottom para la medida End value basado en Product (BB paraAstrida).

Le remitimos al Ejemplo: 2 de la función Above para más detalles.

Ejemplo: 3

Resultado

La función Bottom puede utilizarse como entrada para las funciones de rango. Por ejemplo: RangeAvg (Bottom(Sum(Sales),1,3)).

En los argumentos de la función Bottom(), offset se establece en 1 y count se establece en 3. La función busca los resultados de la expresión Sum(Sales) en las tres filas que comienzan con la fila inmediatamente encima de la fila inferior del segmento de columna (debido al valor offset=1) y en las dos filas encima (donde hay una fila). Estos tres valores se utilizan como entrada para la función RangeAvg(), que buscará la media de los valores en el rango de números proporcionado.

Una tabla con el valor Customer como dimensión ofrecerá los resultados siguientes para la expresión RangeAvg().

 
Astrida
Betacab
Canutility
Divadip:
659,67
659,67
659,67
659,67

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 ordenar los meses correctamente cuando cree sus gráficos, diríjase a la página Sort del panel de propiedades, y seleccione la casilla Expression en Sort by. En el cuadro de expresión, escriba Monthnumber.