Llevo ya unos días implementando los parámetros de campo y creo que para mí han venido para quedarse como los Datamarts con Power BI.
¿Qué son los parámetros de campo?
Son parámetros que permiten al usuario de Power BI, modificar las medidas o dimensiones que se visualizan y analizan en un informe Power BI. Personalmente para mí, esto es un puntazo de los grandes, que dan más dinamismo si se puede a Power BI.
¿Qué tenemos qué hacer para usarlos?
Lo primero que tenemos que hacer es habilitarlos ya que todavía están en versión Preview
1. Para ello, en Power BI Desktop, seleccionamos Archivo - Opciones y configuración - Opciones.
2. En la pantalla que se nos acaba de abrir, hacemos click en Características de versión Preliminar - Parámetros de Campo. Activamos haciendo click sobre el cuadrado de la izquierda.
3. Hacemos click en Aceptar y nos saldrá un pop-up indicando que para que surjan efectos los cambios tenemos que reiniciar Power BI Desktop.
Una vez reiniciado Power BI Desktop, ya podemos empezar a utilizar los parámetros de campo. Antes de crear nuestro primer parámetro de campo, indicar que estos tienen algunas limitaciones todavía y son las siguientes: (Ref.: Limitaciones de los parámetros de campo )
- Los objetos visuales de IA y Q&A no se admiten con la característica.
- No hay ninguna manera de que los usuarios del informe seleccionen la opción "ninguno" o ningún campo. Seleccionar ningún campo en la segmentación o la tarjeta de filtro es el mismo que seleccionar todos los campos.
- Actualmente no se pueden crear parámetros en orígenes de datos de conexión dinámica, sin un modelo local. Sin embargo, con DirectQuery para conjuntos de datos de Power BI y AS (versión preliminar), puede agregar un modelo local para crear parámetros de campo. Obtenga más información sobre DirectQuery para conjuntos de datos de Power BI y AS (versión preliminar).
- Por ahora no se pueden usar medidas implícitas, por lo que si necesita una columna agregada como uno de los campos, debe crear una medida DAX explícita para ella. Obtenga más información sobre medidas implícitas frente a explícitas.
- Actualmente no se pueden usar parámetros de campo como campos vinculados de una página de obtención de detalles o información sobre herramientas. La solución alternativa consiste en usar los campos individuales a los que se hace referencia en el parámetro field en su lugar. Por ejemplo, si el parámetro de campo incluye campos "Customer" y "Product", puede vincular estos dos campos a la página de obtención de detalles o información sobre herramientas para que los objetos visuales con el parámetro field puedan iniciar la página de información sobre herramientas o obtención de detalles.
De las limitaciones nombradas, me gustaría comentar la que he resaltado en amarillo, ya que, como buena práctica, no es aconsejable utilizar las métricas implícitas para nuestros informes de Power BI y más ahora si queremos usar los parámetros de campo.
Ya no me disperso más y vamos a crear un parámetro de campo. Para ello, hacemos click en la pestaña de modelado y podemos observar que disponemos de una flechita la parte de la interfaz de "Parámetro Nuevo". Hacemos click en él y se nos despliegan las siguientes opciones:
En la ventana que se nos ha abierto, seleccionamos el nombre que queremos asignarle al parámetro. Para este primer ejemplo, vamos a realizarlo con medidas explícitas:
- TotalSales
- TotalSalesQuantity
- TotalCost
- Profit
Comentar también que, para este caso, he activado el check de "Agregar segmentación en esta página" para que automáticamente me agregue la misma a la página y pueda dinamizar más la información mostrada en la página. Pulsamos sobre el botón “Crear”.
Automáticamente se nos ha creado en la pantalla la segmentación con el nombre que le hemos asignado al parámetro de campo:
Arrastramos una matriz y añadimos el parámetro que se nos ha creado a la matriz como valores en este caso.
Al no tener ningún parámetro seleccionado en el segmentador, la matriz nos muestra las 4 medidas, pero si seleccionamos una de ellas:
Vemos que la matriz ahora mismo solamente muestra la medida seleccionada. Si seleccionamos 2 medidas:
La matriz nos devuelve las dos medidas.
Pero también podemos crear los parámetros de campo con los atributos de las dimensiones, por ejemplo, en el siguiente parámetro añadimos el nombre de la categoría y el nombre de la subcategoría:
Y al crear la matriz, añadimos al campo fila el parámetro de campo y en valores por ejemplo la medida TotalSales:
Si seleccionamos por ejemplo el valor del parámetro “ProductCategoryName” la matriz se actualiza y nos muestra las ventas totales por categoría de producto:
Y si seleccionamos las dos, nos muestra el icono de + para desplegar el árbol con la jerarquía seleccionada:
Con estos simples pasos siguiendo la interfaz de usuario, ya hemos creado los parámetros de campo, pero… ¿si ya he creado los parámetros de campo y quiero añadir o eliminar parámetros?
Para ello, debemos modificar la sintaxis DAX generada por el asistente. Antes de modificarla, vamos a analizarla ya que eso nos va a ayudar a comprender más su funcionamiento:
Como podemos ver en la fórmula DAX generada, no es más que una generación de una tabla. Como primera columna, el primer argumento es el primer parámetro del segmentador que hemos creado. A continuación la función NAMEOF que nos devuelve el nombre de una medida o columna (https://dax.guide/nameof/). Y en tercer lugar es el orden en el que se muestra en la tabla. Tal y como se puede ver a continuación:
Para añadir nuevos parámetros basta con incluirlos en la fórmula anterior, por ejemplo:
Otra de las posibilidades de trabajar sobre la función DAX es que, aunque en el asistente no nos lo indique, podemos crear una jerarquía para el segmentador. ¿Cómo? Agregando otra columna en la sentencia DAX:Y vemos que en la tabla se ha generado una nueva columna:
Y si arrastramos la nueva columna al segmentador, vemos que se nos ha creado la jerarquía que hemos indicado:
Qué nos permite realizar la segmentación por dicha jerarquía:
En conclusión, los parámetros de campo nos van a aportar más dinamismo y posibilidades para la explotación de la información de la ya dada por Power BI.
¡Nos vemos en los datos!