(Herramienta que actúa como complemento para auditar tus fórmulas. Dar clic en imagen para Descargar)
Siguiendo con el artículo de la semana pasada, vamos entonces a verificar y conocer cómo trabaja la función SUMMARIZE.
Nota: Si no has visto hasta este momento la Parte 1 de este artículo, te recomendamos que lo hagas
PASO 1: Descargar DAX Studio
La mejor recomendación que puedo brindarles es descargar DAX Studio. Es un complemento creado por diversos profesionales de SQL Server para poder, de alguna forma, auditar tu fórmula de DAX con Power Pivot.
Una vez descargado e instalado, debe aparecerte lo siguiente dentro de Excel:
PASO 2: Lanzar DAX Studio
Es necesario que tengamos un modelo de datos de Power Pivot creado dentro de nuestro archivo de Excel.
También necesitamos posicionarnos en una tabla dinámica y luego dar clic en el ícono de DAX Studio:
luego de darle clic obtenemos lo siguiente:
PASO 3: La forma correcta de probar una fórmula
Tenemos que tomar en cuenta que DAX solo nos devuelve lo que son expresiones de tabla, por lo que la fórmula que queremos auditar nos va a servir.
La fórmula es la siguiente:
SUMMARIZE( Ventas, Ventas[Vendedor], «Nombre», CALCULATE( SUM( Ventas[Venta]) ) * CALCULATE( MAX( Bonos[Bono]),
FILTER( Bonos,
SUM( Ventas[Venta]) >= Bonos[Venta]) ) )
Hagamos lo siguiente:
y al darle clic a “Run (Grid)” obtenemos un error:
probablemente tengamos dudas sobre porqué no funciona y la razón es que en el lenguaje DAX existen ciertas cosas que están implícitas en Power Pivot. Una de ellas es “EVALUATE”, la cual le indica al sistema que dicha fórmula debe de ser evaluado (tan sencillo, no?). Existen otras declaraciones como DEFINE, para definir una expresión, pero no lo veremos en este caso.
Vamos a ver entonces el resultado de utilizar DAX Studio:
PASO 4: Analizar la tabla resultante
Esta es la parte donde realmente podemos entender qué es lo que ha hecho SUMMARIZE.
SUMMARIZE ha tomado como tabla base la tabla ‘Ventas’ (para el contexto de filas). De ella entonces ha tomado solamente la columna Vendedor y luego ha creado una nueva columna llamada “Nombre” la cual se calcula de acuerdo a la siguiente fórmula:
CALCULATE( SUM( Ventas[Venta]) ) * CALCULATE( MAX( Bonos[Bono]),
FILTER( Bonos,
SUM( Ventas[Venta]) >= Bonos[Venta]) )
que es la multiplicación de las ventas por el bono (%) ganado por dichas ventas.
Así entonces, obtenemos una tabla con 2 columnas:
- El nombre del vendedor
- El dinero que se ha ganado por bonos
de esta forma es que trabajamos con fórmulas como SUMMARIZE para poder tener un mejor panorama de cómo se está calculando nuestra fórmula en DAX.
Puedes descargar el archivo de Excel 2013 utilizado desde el siguiente enlace: