Obtenga más información sobre el contexto de fila
Ahora que ha creado columnas calculadas, puede obtener información sobre cómo se evalúan sus fórmulas.
La fórmula de una columna calculada se evalúa para cada fila de la tabla. Además, se hace en el contexto de la fila; es decir, la fila actual. Observe la definición de la columna calculada Due Fiscal Year:
Due Fiscal Year =
"FY"
& YEAR('Due Date'[Due Date])
+ IF(
MONTH('Due Date'[Due Date]) <= 6,
1
)
Cuando se evalúa la fórmula para cada fila, la referencia de columna 'Due Date'[Due Date]
devuelve el valor de columna para esa fila. Es posible que se haya familiarizado con este concepto al trabajar con fórmulas en tablas de Excel.
Sin embargo, el contexto de fila no se extiende más allá de la tabla. Si la fórmula necesita hacer referencia a columnas de otras tablas, el usuario tiene dos opciones:
- Si las tablas están relacionadas, directa o indirectamente, puede utilizar la función DAX
RELATED
oRELATEDTABLE
. La funciónRELATED
recupera el valor en el lado "uno" de la relación, mientras que la funciónRELATEDTABLE
recupera los valores en el lado "varios". La funciónRELATEDTABLE
devuelve un objeto de tabla. - Cuando las tablas no están relacionadas, puede utilizar la función DAX
LOOKUPVALUE
.
En general, intente utilizar la función RELATED
siempre que sea posible. Por lo general, funcionará mejor que la función LOOKUPVALUE
, debido a las formas de almacenar e indexar los datos de relaciones y columnas.
Ahora, agregue la siguiente definición de columna calculada a la tabla Sales:
Discount Amount =
(
Sales[Order Quantity]
* RELATED('Product'[List Price])
) - Sales[Sales Amount]
La definición de columna calculada agrega la columna Discount Amount a la tabla Sales. Power BI evalúa la fórmula de una columna calculada para cada fila de la tabla Sales. Los valores de Order Quantity y Sales Amount se recuperan en el contexto de la fila. Sin embargo, como la columna List Price pertenece a la tabla Product, la función RELATED
es necesaria para recuperar el valor del precio de lista para el producto en venta.
El contexto de fila se usa cuando se evalúan las fórmulas de columnas calculadas. También se utilizan cuando se emplea una clase de funciones, conocida como funciones de iterador. Las funciones de iterador proporcionan flexibilidad para crear resúmenes sofisticados. Las funciones del iterador se describen en un módulo posterior.