Compartir a través de


Creación de grupos de cálculo

Los grupos de cálculo pueden reducir significativamente el número de medidas redundantes que tiene que crear, ya que permiten definir expresiones DAX como elementos de cálculo que se aplican a las medidas existentes en el modelo. Puede obtener más información sobre los grupos de cálculo en el artículo Grupos de cálculo.

Agregar un nuevo grupo de cálculo

En Power BI Desktop, cuando tenga abierto un modelo local, vaya a la vista de modelo y seleccione el botón Grupo de cálculo de la cinta de opciones. Si aún no está en Explorador de modelos, el panel Datos se abre en la vista Modelo.

Screenshot of calculation groups button in the ribbon.

Si la propiedad Desaconsejar medidas implícitas está desactivada, se le pedirá con una ventana de diálogo que la active para permitir la creación del grupo de cálculo.

Screenshot of dialog window prompting you to enable implicit measures.

Una medida implícita se produce cuando, en la vista de informe, se usa una columna de datos desde el panel Datos directamente en el objeto visual. El objeto visual le permite agregarlo como SUM, AVERAGE, MIN, MAX u otra agregación básica, que se convierte en una medida implícita. La creación de un grupo de cálculo desaconseja la creación de este tipo de medidas implícitas al dejar de mostrar el símbolo de suma junto a las columnas de datos en el panel Datos, y bloquea la adición de las columnas de datos a los objetos visuales directamente en el eje de agregación o como valores. Las medidas implícitas existentes ya creadas en los objetos visuales seguirán funcionando. La propiedad Desaconsejar medidas implícitas debe estar habilitada porque los elementos de cálculo no se aplican a medidas implícitas. Los elementos de cálculo solo se aplican a medidas o medidas explícitas.

Screenshot of Report view and creation of implicit measures.

Una medida o medida explícita se produce al crear una nueva medida y definir la expresión DAX para agregar una columna de datos. Las medidas explícitas también pueden tener lógica condicional y filtros, aprovechando al máximo lo que puede hacer con DAX. Tutorial: Puede aprender a Crear sus propias medidas en Power BI Desktop.

Nota:

Los elementos de cálculo pueden crearse de forma que ignoren una medida explícita por el nombre de la medida para escenarios en los que tenga una medida que no desee que cambie el elemento de cálculo.

Una vez que seleccione , o si ya ha habilitado la propiedad Desalentar medidas implícitas, se agrega un grupo de cálculo y puede empezar a definir la expresión DAX del primer elemento de cálculo en la barra de fórmulas DAX.

SELECTEDMEASURE() es una función DAX que actúa como marcador de posición para la medida a la que se aplicará el elemento de cálculo. Puede obtener información sobre la función DAX SELECTEDMEASURE en su artículo.

Screenshot of DAX formula bar and calculation group.

Ejemplo de inteligencia de tiempo

Hay un ejemplo de Inteligencia de tiempo de un grupo de cálculo disponible en el artículo Grupos de cálculo en modelos tabulares de Analysis Services, que podemos utilizar para rellenar algunos elementos de cálculo. El ejemplo se puede agregar a cualquier modelo con valores por fecha y una tabla Fecha marcada como tabla de fechas, o puede descargar Adventure Works DW 2020 PBIX desde el modelo de ejemplo DAX: DAX.

Cambio de nombre de un grupo de cálculo

Para cambiar el nombre del grupo de cálculo, haga doble clic en él en el panel Datos o puede seleccionarlo y usar el panel Propiedades.

Screenshot of how to rename a calculation group.

Cambio de nombre de una columna de grupo de cálculo

Para cambiar el nombre de la columna del grupo de cálculo, haga doble clic en ella en el panel Datos, o bien puede seleccionarla y usar el panel Propiedades. La columna que seleccione es la columna que usará en los objetos visuales o en segmentaciones para aplicar un elemento de cálculo específico.

Screenshot of how to rename a calculation group column.

Cambio de nombre de un elemento de cálculo

El primer elemento de cálculo se creó como SELECTEDMEASURE(), por lo que puede cambiar su nombre haciendo doble clic o utilizando también el panel Propiedades.

Screenshot of how to rename a calculation item.

Creación de elementos de cálculo adicionales

Para crear elementos de cálculo adicionales, puede utilizar el menú contextual que aparece al hacer clic con el botón derecho del ratón en la sección Elementos de cálculo o en el propio grupo de cálculo y seleccionar Nuevo elemento de cálculo, o utilizar el panel Propiedades de la sección Elementos de cálculo.

Screenshot of how to create a new calculation item.

Una vez que he agregado todos los elementos de cálculo de Inteligencia de tiempo, mi grupo de cálculo es similar a la siguiente imagen.

Screenshot of calculation groups once all time intelligence items have been added.

Observe los iconos de triángulo rojo que indican errores. Los errores se deben a que las expresiones DAX de ejemplo usan la tabla Fecha denominada DimDate, por lo que es necesario actualizar las expresiones DAX para que usen el nombre Fecha en su lugar. En la siguiente imagen se muestra la expresión DAX antes de la corrección.

Screenshot of incorrect DAX expression.

Una vez que corrija la expresión DAX, el error desaparece.

Screenshot of corrected DAX expression.

Una vez que realice las correcciones de cada uno de los errores de los elementos de cálculo, los iconos de advertencia de triángulo rojo ya no aparecerán.

Screenshot of corrected DAX expressions in the calculation items area.

Reordenar elementos de cálculo

Para reordenar los elementos de cálculo de la manera lógica que prefiera, puede seleccionar la sección Elementos de cálculo en el panel Propiedades o hacer clic con el botón derecho en el menú contextual del elemento de cálculo para subirlo o bajarlo en la lista.

Screenshot of reordering calculation items.

Adición de una cadena de formato dinámico a un elemento de cálculo

Los elementos de cálculo usan el formato de medida subyacente de forma predeterminada. En su lugar, es posible que queramos mostrar el YOY%como porcentaje. Para ello, seleccione el elemento de cálculo YOY% y, a continuación, active Cadena de formato dinámico en el panel de propiedades, lo que le permite especificar una expresión DAX para crear una cadena de formato. En este ejemplo, no requiere ningún elemento condicional, por lo que simplemente #,#0,00% cambiará el formato a un porcentaje cuando se aplique este elemento de cálculo, como se muestra en la siguiente imagen.

Screenshot of changing format of underlying data items.

Uso del grupo de cálculo en informes

Para usar el nuevo grupo de cálculo en un informe, vaya a la vista de informe, cree un objeto visual Matriz y agregue lo siguiente:

  1. La columna Mes de la tabla Fecha a las filas
  2. El cálculo de tiempo del grupo de cálculo de Inteligencia de tiempo a las columnas
  3. La medida Orders a los valores

Nota:

Si la medida Orders no se crea en el modo, puede usar una medida diferente o ir a la cinta de opciones y elegir Nueva medida con esta expresión DAX.

Orders = DISTINCTCOUNT('Sales Order'[Sales Order])

En la siguiente imagen se muestra cómo compilar un objeto visual.

Screenshot of using calculation groups in reports.

Los elementos de cálculo en las columnas del objeto visual Matriz están mostrando la medida Orders agrupada por cada uno de los elementos de cálculo. También puede aplicar un elemento de cálculo individual a varias medidas agregando la columna del grupo de cálculo a un objeto visual Slicer.

Screenshot of applying individual calculation items to multiple measures.

Uso del elemento de cálculo en medidas

Puede crear una nueva medida con una expresión DAX que usará un elemento de cálculo en una medida específica.

Para crear una medida [Orders YOY%] puede usar el elemento de cálculo con CALCULATE.

Orders YOY% = 
    CALCULATE(
        [Orders],
        'Time Intelligence'[Time Calculation] = "YOY%"
    )

Establecimiento de la prioridad del grupo de cálculo

Por último, si agrega grupos de cálculo adicionales al modelo y desea especificar el orden en el que se aplican a las medidas, puede ajustar la prioridad del grupo de cálculo en el panel de propiedades de la sección Grupos de cálculo, como se muestra en la siguiente imagen.

Screenshot of setting calculation group precedence.

Puede obtener más información sobre la prioridad de los grupos de cálculo en el artículo Grupos de cálculo en modelos tabulares de Analysis Services.

En los artículos siguientes se proporciona más información sobre los modelos de datos y también se describe DirectQuery de forma detallada.

Artículos sobre DirectQuery: