Para crear fórmulas de DAX más avanzadas es necesario emplear diversas funciones de agregación, tales como CALCULATE o condicionales IF. Esto puede llevar a que nuestro código DAX se vuelva extenso y difícil de leer y entender.
Con el propósito de facilitar este proceso, los profesionales de SQLBI han desarrollado una aplicación sumamente útil conocida como DAX FORMATTER. Esta aplicación web gratuita nos ayuda a dar formato de manera óptima a nuestras medidas, simplificando la comprensión de las fórmulas complejas
Esta medida da como resultado las ventas acumuladas de los dos últimos años. La llevaremos a DAX Formatter.
Una vez pegada la fórmula en DAX FORMATTER da clic en el botón FORMAT.
Como resultado tendrás un código DAX mejor ordenado por jerarquía de agregaciones que se puede leer más fácilmente.
Con esto lleva tu fórmula a Power BI presionando el botón COPY.
Como segundo ejemplo tenemos una fórmula de medida optimizada dentro de nuestro archivo en Power BI.
DAX formatter nos ayuda a optimizar la interpretación de nuestras medidas, otro gran ejemplo es cuando usamos variables con VAR. Por ejemplo, tenemos la siguiente fórmula para obtener el promedio de ventas los fines de semana.
Promedio de VentaFDS=VARFDS=FILTER(Dim_Fechas,Dim_Fechas[NombreDía]="sábado"||Dim_Fechas[NombreDía]="Domingo")RETURNAVERAGEX(FDS,[Promedio de Venta])
Nuevamente llévala a DAX FORMATTER.
Da clic en FORMAT.
Ya que la fórmula tenga mejor legibilidad cópiala con COPY y llévala a tu archivo de Power BI.
Seguramente esta herramienta te ayudará a mejorar la legibilidad de tu código DAX en tus proyectos en Power BI.
🏅 Como reto de esta clase, aplica esto a 5 fórmulas que hayas creado para que sean más fáciles de leer.
Formateo de Fórmulas DAX con DAX Formatter en Power BI
Es importante saber a cerca de estas herramientas, pero considero que es aún más importante mentalizarnos desde el proceso de aprendizaje de Power Bi tener buenas prácticas de cód. en DAX. La jerarquía y la organización del código lo debemos hacer desde que lo escribimos, así comprendemos mejor la formulación que estamos haciendo y seguramente será más fácil llegar a los resultados esperados.
Si decides mantener todo tu código en bloques de una sola línea, te enfrentarás a lo que en programación se conoce como deuda técnica. A corto plazo, el cálculo funcionará y tu reporte mostrará los números correctos. Sin embargo, a largo plazo, el mantenimiento se volverá una pesadilla. Si un indicador de ventas comienza a mostrar datos anómalos, rastrear el error dentro de una maraña de funciones IF anidadas te tomará el triple de tiempo. Además, la falta de estructura oculta visualmente el orden de evaluación de los contextos de filtro. Sin una indentación clara, es muy fácil confundir qué tabla está siendo afectada por un modificador específico. En equipos de trabajo, entregar un modelo de datos sin formato es considerado una mala práctica profesional, ya que obligas a tus colegas a descifrar tu lógica desde cero en lugar de poder leerla de forma natural y estructurada.
La fórmula que has compartido calcula el promedio de ventas para los cuatro trimestres. Al usar FILTER, estás creando una tabla que solo incluye las filas correspondientes a los cuatro trimestres indicados. Luego, AVERAGEX calcula el promedio de la columna [Promedio de Venta] para esa tabla filtrada.
Sin embargo, puedes simplificar la lógica si estás seguro de que quieres incluir todos los trimestres. Podrías usar simplemente AVERAGE en lugar de AVERAGEX, pero si ya tienes otras condiciones o si la creación de la tabla filtrada es necesaria por otros motivos, tu enfoque está bien. Recuerda revisar cómo se estructuran tus datos para asegurarte de que el filtro se aplique correctamente.