Crear columnas calculadas

Completado

Puede escribir una fórmula DAX para agregar una columna calculada a cualquier tabla de un modelo. Una fórmula de columna calculada debe devolver un valor escalar o único.

Las columnas calculadas de los modelos de importación tienen una desventaja: aumentan el tamaño de almacenamiento del modelo y pueden prolongar el tiempo de actualización de los datos. La razón es que las columnas calculadas vuelven a calcularse cuando tienen dependencias de fórmulas en tablas actualizadas.

En la vista de datos, en el panel Campos, asegúrese de que esté seleccionada la tabla Due Date. Antes de crear una columna calculada, cambie primero el nombre de la columna Date a Due Date.

Ahora puede agregar una columna calculada a la tabla Due Date. Para crear una columna calculada, en la cinta contextual Herramientas de tabla, desde el grupo Cálculos, seleccione Nueva columna.

Una imagen muestra la cinta contextual Herramientas de tabla para la tabla Due Date. Desde dentro del grupo Cálculos, se resalta el comando Nueva columna.

En la barra de fórmulas, escriba la siguiente definición de columna calculada y, a continuación, presione ENTRAR.

Due Fiscal Year =
"FY"
    & YEAR('Due Date'[Due Date])
        + IF(
            MONTH('Due Date'[Due Date]) > 6,
            1
        )

La definición de columna calculada agrega la columna Due Fiscal Year a la tabla Due Date. En los pasos siguientes se describe cómo evalúa Microsoft Power BI la fórmula de columna calculada:

  1. El operador de adición (+) se evalúa antes que el operador de concatenación de texto (&).
  2. La función DAX YEAR devuelve el valor de número entero del año de la fecha de vencimiento.
  3. Si la función DAX IF devuelve el valor cuando el número de mes de la fecha de vencimiento es 7-12 (de julio a diciembre), se devuelve en blanco. Por ejemplo, como el año financiero de Adventure Works es de julio a junio, los últimos seis meses del año natural usarán el año natural siguiente como año financiero.
  4. El valor del año se agrega al valor devuelto por la función IF, que es el valor uno o BLANK. Si el valor está en blanco, se convierte implícitamente en cero (0) para permitir que la suma genere el valor del año fiscal.
  5. El valor de texto literal "FY" se concatena con el valor del año fiscal, que se convierte implícitamente en texto.

Agregue una segunda columna calculada usando la siguiente definición:

Due Fiscal Quarter =
'Due Date'[Due Fiscal Year] & " Q"
    & IF(
        MONTH('Due Date'[Due Date]) <= 3,
        3,
        IF(
            MONTH('Due Date'[Due Date]) <= 6,
            4,
            IF(
                MONTH('Due Date'[Due Date]) <= 9,
                1,
                2
            )
        )
    )

La definición de columna calculada agrega la columna Due Fiscal Quarter a la tabla Due Date. La función IF devuelve el número de trimestre (el trimestre 1 es julio-septiembre) y el resultado se concatena con el valor de columna Due Fiscal Year y el texto literal Q.

Agregue una tercera columna calculada usando la siguiente definición:

Due Month =
FORMAT('Due Date'[Due Date], "yyyy mmm")

La definición de columna calculada agrega la columna Due Month a la tabla Due Date. La función DAX FORMAT convierte el valor de la columna Due Date a texto mediante una cadena de formato. En ese caso, la cadena de formato genera una etiqueta que describe el año y el nombre abreviado del mes.

Nota

Existen muchos formatos de fecha y hora definidos por el usuario. Para obtener más información, vea Personalizar formatos de fecha y hora con la función FORMAT.

Agregue una cuarta columna calculada usando la siguiente definición:

Due Full Date =
FORMAT('Due Date'[Due Date], "yyyy mmm, dd")

Agregue una quinta columna calculada mediante la siguiente definición:

MonthKey =
(YEAR('Due Date'[Due Date]) * 100) + MONTH('Due Date'[Due Date])

La columna calculada MonthKey multiplica el año de la fecha de vencimiento por el valor 100 y, a continuación, agrega el número de mes de la fecha de vencimiento. Se genera un valor numérico que se puede usar para ordenar los valores de texto de Due Month en orden cronológico.

Compruebe que la tabla Due Date tiene seis columnas. La primera columna se agregó cuando se creó la tabla calculada y las otras cinco se agregaron como columnas calculadas.

Una imagen muestra la tabla Due Date en la vista de datos. Hay seis columnas y las siete primeras filas son visibles.

Para completar el diseño de la tabla Due Date, puede hacer lo siguiente:

  • Ordenar la columna Due Full Date por la columna Due Date
  • Ordenar la columna Due Month por la columna MonthKey
  • Ocultar la columna MonthKey
  • Crear una jerarquía denominada Fiscal con los siguientes niveles:
    • Due Fiscal Year
    • Due Fiscal Quarter
    • Due Month
    • Due Full Date
  • Marcar la tabla Due Date como una tabla de fechas mediante la columna Due Date.