Evaluación de un valor de una lista

En ciertas ocasiones solo deseamos realizar un cálculo con un valor concreto de un campo. Por ejemplo, supongamos que tenemos en los campos Month y Year de la tabla Calendar los meses y años, y en el campo SalesAmount de la tabla Sales los importes de venta. Y supongamos que, por el motivo que sea, queremos llevar a una matriz las ventas por mes y año pero mostrando solo las cifras para el año 2003.

Con este objetivo podemos utilizar la función SELECTEDVALUE que devuelve el valor de una columna si el contexto ha reducido el número de valores distintos a uno. Definimos, por lo tanto, la siguiente medida:

Sales 2003 =

IF(

    SELECTEDVALUE('Calendar'[Year]) = 2003;

    SUM(Sales[SalesAmount]);

    "N/A"

)

En ella estamos comprobando si el valor único (en el caso de ser único) de la columna Year es 2003. En caso positivo, devolvemos la suma de los importes de venta (contextualizados para dicho año). En caso negativo, devolvemos un "N/A". Llevando esto a una matriz tenemos:

Ventas por mes y año

Tal y como vemos, solo se devuelve la suma de las ventas cuando el valor que toma la columna Year es único y cuando éste toma el valor 2003.

Funciones DAX involucradas
Enviado por admin el Vie, 04/01/2019 - 19:50