Contenidos
Nivel: intermedio
DAX es un lenguaje complicado; en la superficie es engañosamente simple, pero bajo el capó puede volverse rápidamente complejo y puede llevar muchos años dominarlo. Si alguna vez ha escrito una fórmula y ha cruzado los dedos cuando presiona Enter, entonces ya sabe a qué me refiero. Si está leyendo este artículo, sin duda ya está en su propio viaje de aprendizaje de DAX.
A medida que se vuelva más competente en DAX, comenzará a escribir fórmulas más complejas que se comportan de manera diferente según los filtros de sus imágenes. Un ejemplo es el informe de pérdidas y ganancias que compartí en 2020. Este informe contiene una fórmula bastante complicada. Se construyó lenta y metódicamente, paso a paso, hasta que funcionó como se deseaba. Esta es la mejor manera de escribir DAX. Si quieres ver cómo lo hago, vuelve al artículo vinculado arriba y mira el video. Si bien recomiendo esto como el mejor enfoque para escribir fórmulas, la realidad es que a veces necesitará volver a una fórmula que escribió anteriormente y depurar esa fórmula. Tal vez no esté funcionando correctamente, o tal vez necesite mejorarlo por alguna razón. Cualquiera sea la razón, hoy les comparto mi técnica para depurar fórmulas complejas usando consejos sobre herramientas.
Por qué es necesario
DAX es complicado de depurar por varias razones. En primer lugar, no existe una capacidad de evaluación paso a paso, como las que existen en VBA, Excel y otros lenguajes de programación. La segunda razón es que las fórmulas DAX dependen en gran medida del comportamiento del filtro (contexto del filtro) que proviene de sus imágenes. Si no comprende el contexto del filtro, no puede depurar sus fórmulas. En el caso del ejemplo de P&L que estoy usando para este artículo hoy, hay 3 comportamientos de filtrado diferentes provenientes de lo visual que pueden influir en el resultado final. Estas son las tres primeras variables que se muestran a continuación.
En este artículo, le mostraré cómo configurar la información sobre herramientas para un objeto visual de Matrix para que pueda «ver» lo que está sucediendo con esta fórmula a través del proceso de depuración.
Configurar una información sobre herramientas para depurar
Los siguientes son los pasos para configurar la información sobre herramientas para depurar las fórmulas de DAX (hay un video completo de todos estos pasos más abajo en la página).
- Cree una medida para cada una de las variables intermedias en la fórmula DAX. En la fórmula anterior, escribí medidas para las 3 variables, CalcType, DisplayDetailCode e isSubHeaderVisible.
- Cree una página de informe de información sobre herramientas (Nueva página -> Formato -> Información de la página -> Información sobre herramientas).
- Configure el tamaño de la página para que se adapte al contenido de la información sobre herramientas que desea mostrar.
- Agregue un objeto visual de Matrix a la página de información sobre herramientas y luego agregue las medidas que creó para los valores intermedios en el paso 1 a Valores.
- Opcionalmente, agregue un cuadro de texto a la página de información sobre herramientas y copie la fórmula DAX final que está depurando en el cuadro de texto.
- Ajuste el tamaño de la página de información sobre herramientas si es necesario para que todo el contenido sea visible.
- Asigne un nombre a la página de información sobre herramientas. Llamé al mío como información sobre herramientas.
- Regrese a la página con el objeto visual usando la fórmula final de DAX.
- Si es una tabla o una matriz, vaya a Formato -> Información sobre herramientas. Cree la información sobre herramientas, seleccione el tipo de información sobre herramientas como página de informe y luego proporcione el nombre de la página de información sobre herramientas en el marcador de posición.
Eso es. Ahora puede pasar el cursor sobre los valores en la Matriz y observar los valores intermedios y la fórmula final para verificar si es correcta o no.
Vídeo
He grabado todo el proceso que describí anteriormente en el siguiente video.