LASTNONBLANKVALUE

La función LASTNONBLANKVALUE devuelve el último valor resultado de evaluar una expresión que no sea un Blank, aplicándose esta expresión a una tabla ordenada según los valores de una cierta columna.

Sintaxis

LASTNONBLANKVALUE(
    column,
    expression
)

Parámetros
  • column: Columna cuyos valores determinan el orden de la tabla.
  • expression: Expresión evaluada para cada fila de la tabla.
Valor devuelto

La función LASTNONBLANKVALUE devuelve una tabla conteniendo una única columna con un único valor correspondiente al último valor devuelto por la expresión que no sea un Blank.

Información adicional

La columna puede ser una referencia a una columna o una tabla conteniendo una única columna.

La columna indicada se agrega al contexto de filtro para la evaluación de la expresión. Es decir, la expresión se va a evaluar en el contexto de filtro creado por cada valor de la columna.

Antes de evaluar la expresión, la tabla se ordena según los valores de la columna indicada.

Ejemplos

Para ver cómo funcionan las funciones LASTNONBLANK y LASTNONBLANKVALUE, partimos de la siguiente tabla:

Tabla de datos

Podemos comprobar cómo las dos últimas columnas incluyen celdas vacías. Leemos la tabla desde Power BI y creamos dos medidas aplicando ambas funciones usando como expresión el producto del ancho y el alto:

LASTNONBLANK = 
    LASTNONBLANK(
        data[Valor],
        CALCULATE(SUM(data[Ancho]) * SUM(data[Alto]))
    )

En la expresión anterior encerramos la expresión en la función CALCULATE para que se evalúe en el contexto de fila creado por cada valor de la columna indicada.

LASTNONBLANKVALUE = 
    LASTNONBLANKVALUE(
        data[Valor],
        SUM(data[Ancho]) * SUM(data[Alto])
    )

En esta segunda expresión no es necesario usar la función CALCULATE pues la función LASTNONBLANKVALUE ya fuerza a que la expresión incluida como segundo argumento se calcule en el contexto de fila de cada valor de la columna.

Ahora, llevamos ambas medidas a una tarjeta de varias filas:

Medidas creadas

Comprobamos claramente las diferencias entre ambas funciones: LASTNONBLANK devuelve valores de la columna indicada. Concretamente devuelve el último valor para el que la expresión no devuelva un valor Blank (el 5 correspondiente a la penúltima fila). Es importante insistir en que, para el cálculo de la función, la tabla se va a ordenar según los valores de la columna. En este ejemplo las filas ya están ordenadas según este criterio, pero el resultado obtenido sería diferente si el orden fuese otro.

Por el contrario, LASTNONBLANKVALUE devuelve el resultado de la expresión. Concretamente el último valor obtenido no Blank tras recorrer la tabla ordenada según los valores de la columna.

Categoría
Inteligencia de tiempo
Enviado por admin el Mié, 19/02/2020 - 21:53