Planteémonos el siguiente escenario: Queremos mostrar las ventas por país y calcular el porcentaje que éstas suponen con respecto al total. Para esto último creamos la siguiente medida:
VAR __sales = [Sales]
VAR __allSales =
CALCULATE(
[Sales],
ALL(Geography[Country])
)
RETURN
DIVIDE(
__sales,
__allSales
)
Es decir, almacenamos las ventas (sin modificar el contexto) en la variable __sales y las ventas totales (limpiando de filtros la columna Geography[Country]) en la variable __allSales, y devolvemos el cociente de ambas cifras. Si llevamos esta medida a una tabla (junto con la columna Geography[Sales] y la medida [Sales]) el resultado es el que se muestra en la siguiente imagen:
Vemos que en la columna “Sales %” se muestra correctamente el porcentaje que las ventas de cada país suponen con respecto al total. Por ejemplo, las ventas de Noruega (21.122 €) suponen el 2.14 % del total.
Ahora, supongamos que añadimos una segmentación a nuestro informe de forma que podamos filtrar por países. Y seleccionemos un par de ellos:
Comprobamos que nuestra selección ha filtrado la columna Geography[Country], lo que ha producido que, en el objeto visual tabla, solo se estén mostrando los dos países que hemos seleccionado. En la columna “Sales %” se sigue calculando el porcentaje que las ventas de cada país representan con respecto al total. ¿A qué total? Al total correspondiente a las ventas de todos los países, pues es así como hemos creado nuestra variable __allSales:
CALCULATE(
[Sales],
ALL(Geography[Country])
)