Este escrito forma parte de la serie: Escenarios de Modelado con DAX
Algunos de los recursos que he consultado sobre Modelado tabular y DAX los podemos encontrar en Modelos tabulares y DAX – Recursos
En la entrada anterior, DAX: Columnas calculadas vs Medidas – I, hablamos del trabajo con columnas calculadas y algunos de sus inconvenientes. En la entrada siguiente hablaremos sobre medidas en Modelos Tabulares, y así tendremos los elementos que nos permitan poder decidir entre Columnas calculadas y Medidas.
Me gustaría dedicar esta entrada a un aspecto, nada obligatorio, y que no tiene nada que ver con la optimización del modelo tabular; pero que lo considero muy práctico. Hoy, vamos a crear una tabla vacía que nos sirva como contenedor para las medidas que vamos a crear.
La idea es la siguiente:
- Como vimos antes, en las entradas, Introducción a DAX, y DAX: Columnas calculadas vs Medidas – I, las columnas pertenecen a la tabla en la que se han creado, con un nombre que puede coincidir con nombres de otras tablas, que en las expresiones DAX siempre se escribe entre corchetes y, siguiendo las buenas prácticas, su nombre debe ir precedido del nombre de la tabla a la que pertenece.
- Las medidas, por su parte, pertenecen al modelo, tienen nombre único en el modelo que no puede coincidir con el nombre de ninguna de las columnas de ninguna de las tablas y, siguiendo las buenas prácticas, su nombre no debe ir precedido del nombre de tabla alguna, porque no pertenecen a ninguna tabla.
Entonces, visualmente necesitamos «ubicar» las medidas debajo de alguna tabla, insisto, es únicamente de forma visual, para poderlas utilizar en un informe. Las medidas no van a pertenecer a la tabla en la que se creen ni a la tabla a las que se les pueda asignar en el futuro.
En la entrada DAX: medidas Implícitas vs Explícitas, creamos una medida, Cantidad y la asignamos a la tabla Ventas, aunque no pertenezca a la tabla, la dejamos allí.
Tiene mucho sentido crear un contenedor, o varios, para agrupar las medidas que vamos a necesitar en el modelo, según sea su temática.
- A la hora de diseñar los informes es muchísimo más cómodo ir a buscar en un único sitio, en lugar de registrar las distintas tablas.
- Como sólo se trata de un tema visual, práctico, e incluso, estético, es posible modificarlo al gusto del usuario final, devolviendo algunas medidas a la tabla donde originalmente se crearon, como es el caso de la medida Cantidad y la tabla Ventas.
- Se puede redefinir este diseño tantas veces como lo requieran los requisitos, porque no va a afectar en nada, en ninguna de las expresiones que se realicen en la propia medida y en las nuevas medidas que se hagan a partir de una medida base como es en nuestro caso, Cantidad.
Continuamos con el ejemplo que estamos trabajando.
Para crear un contenedor, lo único que necesitamos es crear una tabla, sin asignar contenido a filas y columnas. Para ello, necesitamos crear una nueva consulta desde el menú Inicio, grupo Datos Externos, opción Especificar Datos. Aparece una ventana con opciones para crear una tabla y definir tanto la estructura como el contenido de la misma.
En nuestro caso, sólo necesitamos cambiar el nombre de la tabla, por ejemplo, a _Cálculos, la idea del guión bajo aquí es sólo porque esta tabla se ubique la primera en el panel Campos en Power BI Desktop.
Como resultado de esta acción, obtendremos una consulta que no será necesario editar, por lo que desde las opciones que aparecen debajo, escogemos Cargar.
En la siguiente imagen vemos la nueva tabla extra _Cálculos, que si la expandimos, vemos que tiene una columna, Columna1.
Podemos comprobar en la vista Datos y vemos que sólo existe Columna1 y que no hay contenidos.
Si tenemos curiosidad, podemos ver la consulta correspondiente desde el Editor de consultas. Para ello, vamos al menú Inicio, grupo Datos Externos, opción Editar Consultas y la podemos ver. En estos momentos no podemos eliminar la columna Columna1, porque es la única estructura que sostiene la tabla.
Ya tenemos el contenedor. Ahora vamos a pasar la medida Cantidad, que creamos antes y alojamos en la tabla Ventas, a esta tabla-contenedor para medidas. Para ello, seleccionamos el campo Cantidad de la tabla Ventas, no marcamos la casilla, sino que hacemos clic sobre el nombre para que quede rodeado en color amarillo continuo.
Vamos al menú, ficha Modelado, grupo Propiedades opción Tabla Inicial
Desplegamos las opciones, donde está actualmente Ventas, seleccionamos _Cálculos.
Y ya está la medida en la tabla que queremos
Sólo nos queda eliminar la columna Columna1, que es antiestética y no nos sirve para nada, y ahora sí, una vez que ya tenemos una primera medida, podemos eliminar la columna, que es incluso mejor que ocultarla.
Nos pide opción de confirmación
Y ya está eliminada la columna sobrante
Llegados a este punto, ya estamos listos para trabajar con Medidas creadas con expresiones DAX y que permitan enriquecer el modelo.
En primer lugar, vamos a crear las medidas correspondientes al caso anterior, con las que dejaremos solucionados los problemas que se presentan al trabajar con Columnas calculadas con DAX. Luego, iremos viendo el resto de escenarios.
Espero que resulte de utilidad #HappyDAXing !!! 🙂
En la próxima entrada vamos a ver cómo Crear medidas con DAX en Modelos tabulares con Power BI