# data[].attributes.body
Switch.
Evalúa una expresión en una lista de valores y devuelve una de varias expresiones de resultado posibles
RELATED como su propio nombre lo dice, devolverá el valor relacionado de una tabla a otra tabla. Esto es similar a la función de valor de búsqueda que tenemos en MS Excel, es decir, BUSCARV.

# data[].attributes.body
Related, podemos traer un dato de otra tabla que tengan un campo en comun, le indicamos el  nombre de la tabla y el campo que queremos traer

RELATED('tabla'[nombre del campo])

# data[].attributes.body
La función RELATED devuelve el valor relacionado con la fila siendo considerada de una columna de otra tabla (tabla remota), suponiendo que existe una relación entre la tabla en la que se esté trabajando (tabla actual) y la remota, que esta relación sea de tipo "varios-a-uno" o "uno-a-uno" y que la tabla remota sea la ...

# data[].attributes.body
Evaluates an expression against a list of values and returns one of multiple possible result expressions.
La expresión para el uso es el siguiente:
SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])

Related:
Returns a related value from another table.
La expresión para el uso es el siguiente:
RELATED(<column>)

Time Intelligence:
Data Analysis Expressions (DAX) includes time-intelligence functions that enable you to manipulate data using time periods, including days, months, quarters, and years, and then build and compare calculations over those periods.

Time intelligence functions support calculations to compare and aggregate data over time periods, supporting days, months, quarters, and years. In order to use any time intelligence calculation, you need a well-formed date table.

# data[].attributes.headline
Funciones de inteligencia de tiempo-Neftaly Rosario

# data[].attributes.subject
Funciones de inteligencia de tiempo-Neftaly Rosario

# data[].attributes.body
La característica Expresiones de análisis de datos (DAX) también incluye funciones de inteligencia de tiempo que permiten manipular datos mediante períodos de tiempo (incluidos días, meses, trimestres y años) y, luego, compilar y comparar cálculos durante esos períodos.

En esta categoría

FunciónDescripciónCLOSINGBALANCEMONTH | Evalúa el valor de expression en la última fecha del mes en el contexto actual.
CLOSINGBALANCEQUARTER | Evalúa el valor de expression en la última fecha del trimestre en el contexto actual.
CLOSINGBALANCEYEAR | Evalúa el valor de expression en la última fecha del año en el contexto actual.
DATEADD | Devuelve una tabla que contiene una columna de fechas, desplazada hacia delante o hacia atrás en el tiempo, por el número especificado de intervalos desde las fechas del contexto actual.
DATESBETWEEN | Devuelve una tabla que contiene una columna de fechas que comienza con una fecha de inicio especificada y continúa hasta una fecha de finalización especificada.
DATESINPERIOD | Devuelve una tabla que contiene una columna de fechas que empieza por una fecha de inicio específica y sigue hasta el número y tipo de intervalos de fechas especificados.
DATESMTD | Devuelve una tabla que contiene una columna con las fechas del mes hasta la fecha, en el contexto actual.
DATESQTD | Devuelve una tabla que contiene una columna con las fechas del trimestre hasta la fecha, en el contexto actual.
DATESYTD | Devuelve una tabla que contiene una columna con las fechas del año hasta la fecha, en el contexto actual.
ENDOFMONTH | Devuelve la última fecha del mes del contexto actual para la columna de fechas especificada.
ENDOFQUARTER | Devuelve la última fecha del trimestre del contexto actual para la columna de fechas especificada.
ENDOFYEAR | Devuelve la última fecha del año del contexto actual para la columna de fechas especificada.
FIRSTDATE | Devuelve la primera fecha del contexto actual para la columna de fechas especificada.
FIRSTNONBLANK | Devuelve el primer valor de la columna, column, filtrado por el contexto actual, donde expression no está en blanco.
LASTDATE | Devuelve la última fecha del contexto actual para la columna de fechas especificada.
LASTNONBLANK | Devuelve el último valor de la columna, column, filtrado por el contexto actual, donde expression no está en blanco.
NEXTDAY | Devuelve una tabla que contiene una columna de todas las fechas del día siguiente, en función de la primera fecha especificada en la columna de fechas del contexto actual.
NEXTMONTH | Devuelve una tabla que contiene una columna de todas las fechas del mes siguiente, en función de la primera fecha de la columna de fechas del contexto actual.
NEXTQUARTER | Devuelve una tabla que contiene una columna de todas las fechas del trimestre siguiente, en función de la primera fecha de la columna de fechas del contexto actual.
NEXTYEAR | Devuelve una tabla que contiene una columna de todas las fechas del año siguiente, en función de la primera fecha de la columna de fechas del contexto actual.
OPENINGBALANCEMONTH | Evalúa expression en la primera fecha del mes del contexto actual.
OPENINGBALANCEQUARTER | Evalúa expression en la primera fecha del trimestre del contexto actual.
OPENINGBALANCEYEAR | Evalúa expression en la primera fecha del año en el contexto actual.
PARALLELPERIOD | Devuelve una tabla que contiene una columna de fechas que representa un período paralelo a las fechas de la columna de fechas especificada, en el contexto actual, con las fechas desplazadas un número de intervalos hacia delante o hacia atrás en el tiempo.
PREVIOUSDAY | Devuelve una tabla que contiene una columna de todas las fechas que representan el día anterior a la primera fecha de la columna de fechas, en el contexto actual.
PREVIOUSMONTH | Devuelve una tabla que contiene una columna de todas las fechas del mes anterior, en función de la primera fecha de la columna de fechas del contexto actual.
PREVIOUSQUARTER | Devuelve una tabla que contiene una columna de todas las fechas del trimestre anterior, en función de la primera fecha de la columna de fechas del contexto actual.
PREVIOUSYEAR | Devuelve una tabla que contiene una columna de todas las fechas del año anterior, en función de la última fecha de la columna de fechas del contexto actual.
SAMEPERIODLASTYEAR | Devuelve una tabla que contiene una columna de fechas desplazadas un año atrás en el tiempo desde las fechas de la columna de fechas especificada, en el contexto actual.
STARTOFMONTH | Devuelve la primera fecha del mes del contexto actual para la columna de fechas especificada.
STARTOFQUARTER | Devuelve la primera fecha del trimestre del contexto actual para la columna de fechas especificada.
STARTOFYEAR | Devuelve la primera fecha del año del contexto actual para la columna de fechas especificada.
TOTALMTD | Evalúa el valor de expression del mes hasta la fecha en el contexto actual.
TOTALQTD | Evalúa el valor de expression de las fechas del trimestre hasta la fecha en el contexto actual.
TOTALYTD | Evalúa el valor de year-to-date de expression en el contexto actua

# data[].attributes.body
SWITCH

Evalúa una expresión en una lista de valores y devuelve una de varias expresiones de resultado posibles.

Sintaxis

| SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])

Parámetros

| Término | Definición | Expression | Cualquier expresión DAX que devuelve un único valor escalar, donde la expresión se va a evaluar varias veces (para cada fila o contexto).
| Value | Valor constante con el que van a coincidir los resultados de expression.
| Resultado | Cualquier expresión escalar que se evaluará si los resultados de expression coinciden con el argumento value correspondiente.
| Else | Cualquier expresión escalar que se evaluará si el resultado de expression no coincide con ninguno de los argumentos value.

Ejemplo

En este ejemplo se crea una columna calculada de nombres de meses.

DAX

| = SWITCH([Month], 1, "January", 2, "February", 3, "March", 4, "April"                 , 5, "May", 6, "June", 7, "July", 8, "August"                 , 9, "September", 10, "October", 11, "November", 12, "December"                 , "Unknown month number" )

RELATED

Devuelve un valor relacionado de otra tabla.

Sintaxis

DAX
Copiar

RELATED(<column>)

Parámetros

| Término | Definición | columna | Columna que contiene los valores que quiere recuperar.

Valor devuelto

Valor único que está relacionado con la fila actual.

Notas

·         La función RELATED requiere que haya una relación entre la tabla actual y la tabla con información relacionada. Especifique la columna que contiene los datos que quiere; la función seguirá una relación de varios a uno existente para capturar el valor de la columna especificada en la tabla relacionada. Si no existe ninguna relación, debe crear una.

·         Cuando la función RELATED realiza una búsqueda, examina todos los valores de la tabla especificada, independientemente de los filtros que se puedan haber aplicado.

·         La función RELATED necesita un contexto de fila; por lo tanto, solo se puede usar en una expresión de columna calculada, en la que el contexto de la fila actual es inequívoco, o bien como una función anidada en una expresión que usa una función de recorrido de tabla. Una función de recorrido de tabla, como SUMX, obtiene el valor de la fila actual y, después, busca instancias de ese valor en otra tabla.

·         La función RELATED no se puede utilizar para capturar una columna a través de una relación limitada.

Ejemplo

En el ejemplo siguiente, se crea la medida Ventas por Internet fuera de EE. UU. para generar un informe de ventas que excluya las ventas en Estados Unidos. Para crear la medida, la tabla InternetSales_USD se debe filtrar para excluir todas las ventas que pertenecen a Estados Unidos de la tabla SalesTerritory. Los Estados Unidos, como país, aparece cinco veces en la tabla SalesTerritory; una vez para cada una de las siguientes regiones: Northwest, Northeast, Central, Southwest y Southeast.

El primer enfoque para filtrar las ventas por Internet, con el fin de crear la medida, podría ser agregar una expresión de filtro similar a la siguiente:

DAX
Copiar | FILTER('InternetSales_USD', 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTer

Time Inteligence
La característica Expresiones de análisis de datos (DAX) también incluye funciones de inteligencia de tiempo que permiten manipular datos mediante períodos de tiempo (incluidos días, meses, trimestres y años) y, luego, compilar y comparar cálculos durante esos períodos.
En esta categoría
| Función | Descripción | CLOSINGBALANCEMONTH | Evalúa el valor de expression en la última fecha del mes en el contexto actual.
| CLOSINGBALANCEQUARTER | Evalúa el valor de expression en la última fecha del trimestre en el contexto actual.
| CLOSINGBALANCEYEAR | Evalúa el valor de expression en la última fecha del año en el contexto actual.
| DATEADD | Devuelve una tabla que contiene una columna de fechas, desplazada hacia delante o hacia atrás en el tiempo, por el número especificado de intervalos desde las fechas del contexto actual.
| DATESBETWEEN | Devuelve una tabla que contiene una columna de fechas que comienza con una fecha de inicio especificada y continúa hasta una fecha de finalización especificada.
| DATESINPERIOD | Devuelve una tabla que contiene una columna de fechas que empieza por una fecha de inicio específica y sigue hasta el número y tipo de intervalos de fechas especificados.
| DATESMTD | Devuelve una tabla que contiene una columna con las fechas del mes hasta la fecha, en el contexto actual.
| DATESQTD | Devuelve una tabla que contiene una columna con las fechas del trimestre hasta la fecha, en el contexto actual.
| DATESYTD | Devuelve una tabla que contiene una columna con las fechas del año hasta la fecha, en el contexto actual.
| ENDOFMONTH | Devuelve la última fecha del mes del contexto actual para la columna de fechas especificada.
| ENDOFQUARTER | Devuelve la última fecha del trimestre del contexto actual para la columna de fechas especificada.
| ENDOFYEAR | Devuelve la última fecha del año del contexto actual para la columna de fechas especificada.
| FIRSTDATE | Devuelve la primera fecha del contexto actual para la columna de fechas especificada.
| FIRSTNONBLANK | Devuelve el primer valor de la columna, column, filtrado por el contexto actual, donde expression no está en blanco.
| LASTDATE | Devuelve la última fecha del contexto actual para la columna de fechas especificada.
| LASTNONBLANK | Devuelve el último valor de la columna, column, filtrado por el contexto actual, donde expression no está en blanco.
| NEXTDAY | Devuelve una tabla que contiene una columna de todas las fechas del día siguiente, en función de la primera fecha especificada en la columna de fechas del contexto actual.
| NEXTMONTH | Devuelve una tabla que contiene una columna de todas las fechas del mes siguiente, en función de la primera fecha de la columna de fechas del contexto actual.
| NEXTQUARTER | Devuelve una tabla que contiene una columna de todas las fechas del trimestre siguiente, en función de la primera fecha de la columna de fechas del contexto actual.
| NEXTYEAR | Devuelve una tabla que contiene una columna de todas las fechas del año siguiente, en función de la primera fecha de la columna de fechas del contexto actual.
| OPENINGBALANCEMONTH | Evalúa expression en la primera fecha del mes del contexto actual.
| OPENINGBALANCEQUARTER | Evalúa expression en la primera fecha del trimestre del contexto actual.
| OPENINGBALANCEYEAR | Evalúa expression en la primera fecha del año en el contexto actual.
| PARALLELPERIOD | Devuelve una tabla que contiene una columna de fechas que representa un período paralelo a las fechas de la columna de fechas especificada, en el contexto actual, con las fechas desplazadas un número de intervalos hacia delante o hacia atrás en el tiempo.
| PREVIOUSDAY | Devuelve una tabla que contiene una columna de todas las fechas que representan el día anterior a la primera fecha de la columna de fechas, en el contexto actual.
| PREVIOUSMONTH | Devuelve una tabla que contiene una columna de todas las fechas del mes anterior, en función de la primera fecha de la columna de fechas del contexto actual.
| PREVIOUSQUARTER | Devuelve una tabla que contiene una columna de todas las fechas del trimestre anterior, en función de la primera fecha de la columna de fechas del contexto actual.
| PREVIOUSYEAR | Devuelve una tabla que contiene una columna de todas las fechas del año anterior, en función de la última fecha de la columna de fechas del contexto actual.
| SAMEPERIODLASTYEAR | Devuelve una tabla que contiene una columna de fechas desplazadas un año atrás en el tiempo desde las fechas de la columna de fechas especificada, en el contexto actual.
| STARTOFMONTH | Devuelve la primera fecha del mes del contexto actual para la columna de fechas especificada.
| STARTOFQUARTER | Devuelve la primera fecha del trimestre del contexto actual para la columna de fechas especificada.
| STARTOFYEAR | Devuelve la primera fecha del año del contexto actual para la columna de fechas especificada.
| TOTALMTD | Evalúa el valor de expression del mes hasta la fecha en el contexto actual.
| TOTALQTD | Evalúa el valor de expression de las fechas del trimestre hasta la fecha en el contexto actual.
| TOTALYTD | Evalúa el valor de year-to-date de expression en el contexto actual.

# data[].attributes.headline
SWITCH(), RELATED() and TIME INTELLINGENCE. Esteban CM

# data[].attributes.subject
SWITCH(), RELATED() and TIME INTELLINGENCE. Esteban CM

# data[].attributes.body
Sentencia Switch(): Se utiliza para evaluar una expresión y devuelve un resultado u otro en función del valor resultante de la evaluación, valor que se encontrará entre una lista de opciones.  SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])

Ej:= SWITCH([Month], 1, "January", 2, "February", 3, "March", 4, "April"   , 5, "May", 6, "June", 7, "July", 8, "August", 9, "September", 10, "October", 11, "November", 12,"December"  , "Unknown month number" )

Sentencia Related(): devuelve el valor relacionado con la fila siendo considerada de una columna de otra tabla (tabla remota), suponiendo que existe una relación entre la tabla en la que se esté trabajando (tabla actual) y la remota, que esta relación sea de tipo "varios-a-uno" o "uno-a-uno" y que la tabla remota sea la correspondiente al lado "uno" -es decir, que se trate de una tabla de dimensiones.

En sintesis esta función permite, a partir de una tabla, extraer el campo asociado a cada registro en una tabla de dimensiones relacionada. RELATED(<column>)

Ej: FILTER( 'InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")

Time Intelligence: Son funciones que permiten manipular la data utilizando periodos de tiempo (días, meses, trimestre, año) y luego poder generar y comparar cálculos durante esos períodos.

CLOSINGBALANCEMONTH | Evaluates the expression at the last date of the month in the current context.
CLOSINGBALANCEQUARTER | Evaluates the expression at the last date of the quarter in the current context.
CLOSINGBALANCEYEAR | Evaluates the expression at the last date of the year in the current context.
DATEADD | Returns a table that contains a column of dates, shifted either forward or backward in time by the specified number of intervals from the dates in the current context.
DATESBETWEEN | Returns a table that contains a column of dates that begins with a specified start date and continues until a specified end date.
DATESINPERIOD | Returns a table that contains a column of dates that begins with a specified start date and continues for the specified number and type of date intervals.
DATESMTD | Returns a table that contains a column of the dates for the month to date, in the current context.
DATESQTD | Returns a table that contains a column of the dates for the quarter to date, in the current context.
DATESYTD | Returns a table that contains a column of the dates for the year to date, in the current context.
ENDOFMONTH | Returns the last date of the month in the current context for the specified column of dates.
ENDOFQUARTER | Returns the last date of the quarter in the current context for the specified column of dates.
ENDOFYEAR | Returns the last date of the year in the current context for the specified column of dates.
FIRSTDATE | Returns the first date in the current context for the specified column of dates.
FIRSTNONBLANK | Returns the first value in the column, column, filtered by the current context, where the expression is not blank
LASTDATE | Returns the last date in the current context for the specified column of dates.
LASTNONBLANK | Returns the last value in the column, column, filtered by the current context, where the expression is not blank.
NEXTDAY | Returns a table that contains a column of all dates from the next day, based on the first date specified in the dates column in the current context.
NEXTMONTH | Returns a table that contains a column of all dates from the next month, based on the first date in the dates column in the current context.
NEXTQUARTER | Returns a table that contains a column of all dates in the next quarter, based on the first date specified in the dates column, in the current context.
NEXTYEAR | Returns a table that contains a column of all dates in the next year, based on the first date in the dates column, in the current context.
OPENINGBALANCEMONTH | Evaluates the expression at the first date of the month in the current context.
OPENINGBALANCEQUARTER | Evaluates the expression at the first date of the quarter, in the current context.
OPENINGBALANCEYEAR | Evaluates the expression at the first date of the year in the current context.
PARALLELPERIOD | Returns a table that contains a column of dates that represents a period parallel to the dates in the specified dates column, in the current context, with the dates shifted a number of intervals either forward in time or back in time.
PREVIOUSDAY | Returns a table that contains a column of all dates representing the day that is previous to the first date in the dates column, in the current context.
PREVIOUSMONTH | Returns a table that contains a column of all dates from the previous month, based on the first date in the dates column, in the current context.
PREVIOUSQUARTER | Returns a table that contains a column of all dates from the previous quarter, based on the first date in the dates column, in the current context.
PREVIOUSYEAR | Returns a table that contains a column of all dates from the previous year, given the last date in the dates column, in the current context.
SAMEPERIODLASTYEAR | Returns a table that contains a column of dates shifted one year back in time from the dates in the specified dates column, in the current context.
STARTOFMONTH | Returns the first date of the month in the current context for the specified column of dates.
STARTOFQUARTER | Returns the first date of the quarter in the current context for the specified column of dates.
STARTOFYEAR | Returns the first date of the year in the current context for the specified column of dates.
TOTALMTD | Evaluates the value of the expression for the month to date, in the current context.
TOTALQTD | Evaluates the value of the expression for the dates in the quarter to date, in the current context.
TOTALYTD | Evaluates the year-to-date value of the expression in the current context.

# data[].attributes.headline
  En los lenguajes de programación, un switch case o switch statement, declaración de cambiador o declaración de interruptor, es un tipo de mecanismo de control de selección utilizado para permitir que el valor de una variable o expresión cambie el flujo de control de la ejecución del programa mediante búsqueda y mapa.

# data[].attributes.subject
  En los lenguajes de programación, un switch case o switch statement, declaración de cambiador o declaración de interruptor, es un tipo de mecanismo de control de selección utilizado para permitir que el valor de una variable o expresión cambie el flujo de control de la ejecución del programa mediante búsqueda y mapa.

# data[].attributes.body
¿Cómo se usa el switch?

En la mayoría de lenguajes de programación tenemos la sentencia switch, y funcionan de la misma forma. Esta estructura se utiliza para cuando tenemos decisiones múltiples, es lo equivalente hacer múltiples if else anidados.

# data[].attributes.headline
SwichEn los lenguajes de programación, un switch case o switch statement, declaración de cambiador o declaración de interruptor, es un tipo de mecanismo de control de selección utilizado para permitir que el valor de una variable o expresión cambie el flujo de control de la ejecución del programa mediante búsqueda y mapa.Funcion RelatedLa función RELATED devuelve el valor relacionado con la fila siendo considerada de una columna de otra tabla (tabla remota), suponiendo que existe una relación entre la tabla en la que se esté trabajando (tabla actual) y la remota, que esta relación sea de tipo "varios-a-uno" o "uno-a-uno"  Time IntelligenceEsta función evalúa la expresión a lo largo del intervalo que empieza el primer día del año y termina con la última fecha después de aplicar los filtros especificados.

# data[].attributes.subject
SwichEn los lenguajes de programación, un switch case o switch statement, declaración de cambiador o declaración de interruptor, es un tipo de mecanismo de control de selección utilizado para permitir que el valor de una variable o expresión cambie el flujo de control de la ejecución del programa mediante búsqueda y mapa.Funcion RelatedLa función RELATED devuelve el valor relacionado con la fila siendo considerada de una columna de otra tabla (tabla remota), suponiendo que existe una relación entre la tabla en la que se esté trabajando (tabla actual) y la remota, que esta relación sea de tipo "varios-a-uno" o "uno-a-uno"  Time IntelligenceEsta función evalúa la expresión a lo largo del intervalo que empieza el primer día del año y termina con la última fecha después de aplicar los filtros especificados.

# data[].attributes.headline
RELATED    Returns a related value from another Table.SyntaxDAXRELATED(

# data[].attributes.subject
RELATED    Returns a related value from another Table.SyntaxDAXRELATED(

# data[].attributes.body
Devuelve un valor relacionado de otra tabla.

# data[].attributes.body
Switch, evalua una valor que puede ser calculado o una columna de una tabla que se evlauará iterativamente, cada dato o valor a revisar sera comparado con el valor incial indicado o calculado y si se cumple la comparacion devuelve el resultado indicado para esa condicion, si no se comple se pondra un valor por defecto que indiquemos al final.

SWITCH(
5,
valor=1, "soy uno",
valor=2, "soy dos
valor=5, "soy cinco
BLANK()
)

# data[].attributes.headline
SWITCH()Evalúa una expresión frente a una lista de valores y devuelve una de varias expresiones de resultado posibles.-------SintaxisSWITCH(, , [, , ]…[, ])ejmplo:= SWITCH([Month], 1, "January", 2, "February", 3, "March", 4, "April"                 , 5, "May", 6, "June", 7, "July", 8, "August"                 , 9, "September", 10, "October", 11, "November", 12, "December"                 , "Unknown month number" ) RELATED()Devuelve un valor relacionado de otra tabla.-------SintaxisRELATED()  columna	La columna que contiene los valores que desea recuperar.=  RELATED('SalesTerritory'[SalesTerritoryCountry])     Time intelligence funciones de inteligencia de tiempo  permiten manipular datos utilizando períodos de tiempo, incluidos días, meses, trimestres y años, y luego crear y comparar cálculos durante esos períodos.

# data[].attributes.subject
SWITCH()Evalúa una expresión frente a una lista de valores y devuelve una de varias expresiones de resultado posibles.-------SintaxisSWITCH(, , [, , ]…[, ])ejmplo:= SWITCH([Month], 1, "January", 2, "February", 3, "March", 4, "April"                 , 5, "May", 6, "June", 7, "July", 8, "August"                 , 9, "September", 10, "October", 11, "November", 12, "December"                 , "Unknown month number" ) RELATED()Devuelve un valor relacionado de otra tabla.-------SintaxisRELATED()  columna	La columna que contiene los valores que desea recuperar.=  RELATED('SalesTerritory'[SalesTerritoryCountry])     Time intelligence funciones de inteligencia de tiempo  permiten manipular datos utilizando períodos de tiempo, incluidos días, meses, trimestres y años, y luego crear y comparar cálculos durante esos períodos.

# data[].attributes.body
Evalúa una expresión en una lista de valores y devuelve una de varias expresiones de resultado posibles.

# data[].attributes.body
Time intelligence functions

Las expresiones de análisis de datos (DAX) incluyen funciones de inteligencia de tiempo que le permiten manipular datos utilizando períodos de tiempo, incluidos días, meses, trimestres y años, y luego crear y comparar cálculos durante esos períodos.

ejem:

CLOSINGBALANCEMONTH

Evalúa la expresión en la última fecha del mes en el contexto actual.

Parámetros

ParámetroDefiniciónexpresión | Una expresión que devuelve un valor escalar.
fechas | Una columna que contiene fechas.
filtrar | (opcional) Una expresión que especifica un filtro para aplicar al contexto actual.

Valor de retorno

Un valor escalar que representa la expresión evaluada en la última fecha del mes en el contexto actual.

Observaciones

El argumento de las fechas puede ser cualquiera de los siguientes:

Una referencia a una columna de fecha/hora.

Una expresión de tabla que devuelve una sola columna de valores de fecha/hora.

Una expresión booleana que define una tabla de una sola columna de valores de fecha/hora.

Ejemplo

La siguiente fórmula de ejemplo crea una medida que calcula el 'Valor de inventario de fin de mes' del inventario de productos.
DAX

Copiar

= CLOSINGBALANCEMONTH(SUMX(ProductInventory,ProductInventory[UnitCost]*ProductInventory[UnitsBalance]),DateTime[DateKey])

# data[].attributes.body
Investigar sobre el uso de aplicacion de las sentencias: Switch(), Related () y Time Intelligence

# data[].attributes.body
SWITCH

Evaluates an expression against a list of values and returns one of multiple possible result expressions.

Syntax

DAX

SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])

# data[].attributes.body
Las expresiones de análisis de datos (DAX) incluyen funciones de inteligencia de tiempo que le permiten manipular datos utilizando períodos de tiempo, incluidos días, meses, trimestres y años, y luego crear y comparar cálculos durante esos períodos.
FunctionDescriptionCLOSINGBALANCEMONTH | Evaluates the expression at the last date of the month in the current context.
CLOSINGBALANCEQUARTER | Evaluates the expression at the last date of the quarter in the current context.
CLOSINGBALANCEYEAR | Evaluates the expression at the last date of the year in the current context.
DATEADD | Returns a table that contains a column of dates, shifted either forward or backward in time by the specified number of intervals from the dates in the current context.
DATESBETWEEN | Returns a table that contains a column of dates that begins with a specified start date and continues until a specified end date.
DATESINPERIOD | Returns a table that contains a column of dates that begins with a specified start date and continues for the specified number and type of date intervals.
DATESMTD | Returns a table that contains a column of the dates for the month to date, in the current context.
DATESQTD | Returns a table that contains a column of the dates for the quarter to date, in the current context.
DATESYTD | Returns a table that contains a column of the dates for the year to date, in the current context.
ENDOFMONTH | Returns the last date of the month in the current context for the specified column of dates.
ENDOFQUARTER | Returns the last date of the quarter in the current context for the specified column of dates.
ENDOFYEAR | Returns the last date of the year in the current context for the specified column of dates.
FIRSTDATE | Returns the first date in the current context for the specified column of dates.
FIRSTNONBLANK | Returns the first value in the column, column, filtered by the current context, where the expression is not blank
LASTDATE | Returns the last date in the current context for the specified column of dates.
LASTNONBLANK | Returns the last value in the column, column, filtered by the current context, where the expression is not blank.
NEXTDAY | Returns a table that contains a column of all dates from the next day, based on the first date specified in the dates column in the current context.
NEXTMONTH | Returns a table that contains a column of all dates from the next month, based on the first date in the dates column in the current context.
NEXTQUARTER | Returns a table that contains a column of all dates in the next quarter, based on the first date specified in the dates column, in the current context.
NEXTYEAR | Returns a table that contains a column of all dates in the next year, based on the first date in the dates column, in the current context.
OPENINGBALANCEMONTH | Evaluates the expression at the first date of the month in the current context.
OPENINGBALANCEQUARTER | Evaluates the expression at the first date of the quarter, in the current context.
OPENINGBALANCEYEAR | Evaluates the expression at the first date of the year in the current context.
PARALLELPERIOD | Returns a table that contains a column of dates that represents a period parallel to the dates in the specified dates column, in the current context, with the dates shifted a number of intervals either forward in time or back in time.
PREVIOUSDAY | Returns a table that contains a column of all dates representing the day that is previous to the first date in the dates column, in the current context.
PREVIOUSMONTH | Returns a table that contains a column of all dates from the previous month, based on the first date in the dates column, in the current context.
PREVIOUSQUARTER | Returns a table that contains a column of all dates from the previous quarter, based on the first date in the dates column, in the current context.
PREVIOUSYEAR | Returns a table that contains a column of all dates from the previous year, given the last date in the dates column, in the current context.
SAMEPERIODLASTYEAR | Returns a table that contains a column of dates shifted one year back in time from the dates in the specified dates column, in the current context.
STARTOFMONTH | Returns the first date of the month in the current context for the specified column of dates.
STARTOFQUARTER | Returns the first date of the quarter in the current context for the specified column of dates.
STARTOFYEAR | Returns the first date of the year in the current context for the specified column of dates.
TOTALMTD | Evaluates the value of the expression for the month to date, in the current context.
TOTALQTD | Evaluates the value of the expression for the dates in the quarter to date, in the current context.
TOTALYTD | Evaluates the year-to-date value of the expression in the current context.

# data[].attributes.headline
La función RELATED devuelve el valor relacionado con la fila siendo considerada de una columna de otra tabla (tabla remota), suponiendo que existe una relación entre la tabla en la que se esté trabajando (tabla actual) y la remota, que esta relación sea de tipo "varios-a-uno" o "uno-a-uno" y que la tabla remota sea la correspondiente al lado "uno" -es decir, que se trate de una tabla de dimensiones-.Dicho con otras palabras, esta función permite, a partir de una tabla, extraer el campo asociado a cada registro en una tabla de dimensiones relacionada. https://interactivechaos.com/es/dax/function/related

# data[].attributes.subject
La función RELATED devuelve el valor relacionado con la fila siendo considerada de una columna de otra tabla (tabla remota), suponiendo que existe una relación entre la tabla en la que se esté trabajando (tabla actual) y la remota, que esta relación sea de tipo "varios-a-uno" o "uno-a-uno" y que la tabla remota sea la correspondiente al lado "uno" -es decir, que se trate de una tabla de dimensiones-.Dicho con otras palabras, esta función permite, a partir de una tabla, extraer el campo asociado a cada registro en una tabla de dimensiones relacionada. https://interactivechaos.com/es/dax/function/related

# data[].attributes.attachment_link.readable_text
Supongamos ahora que en el campo Country de la tabla Geography tenemos el país en el que se encuentra el revendedor que ha realizado cada venta. Veamos, en primer lugar, las ventas por país. Para esto llevamos, simplemente, la medida que suma las ventas ( Sales) y el campo Country a una visualización tipo tabla:

La medida Sales está sumando el campo que contiene la cifra de ventas, SalesAmount:

Sales = SUM(Sales[SalesAmount])

Supongamos ahora que deseamos ser capaces de analizar las ventas en todos los países que no sean Estados Unidos. Una primera opción sería utilizar la función CALCULATE para revaluar la medida Sales:

Non USA sales = CALCULATE([Sales], Geography[Country] <> "United States")

Podemos llevar esta nueva medida a una visualización tipo tarjeta para ver el resultado:

La cifra es correcta, pero si llevamos esta medida a una tabla junto con el campo Country para mostrar las ventas fuera de los Estados Unidos segmentadas por país, el resultado es el siguiente:

Por supuesto, esto no es lo que deseábamos, pero la función CALCULATE está modificando el contexto para considerar siempre todos los países que no sean los Estados Unidos.

Lo que queremos es poder usar el campo SalesAmount que contiene la cifra de venta pero incluyendo solo aquellos registros de ventas que no se correspondan con revendedores situados en los Estados Unidos. Para empezar, podemos construir esta tabla que solo considere los países de interés usando la función FILTER. El pseudocódigo sería algo así como:

Tabla filtrada = FILTER(
Sales,
Países que no sean Estados Unidos
)

Si la tabla Sales incluyese un campo " Country", bastaría con añadir Country <> "United States" en lugar de " Países que no sean Estados Unidos", pero no lo incluye. Esta información relativa al país en el que se encuentra el revendedor está en otra tabla, la mencionada tabla de Geography, tabla que no es accesible directamente como argumento de la función FILTER. Es en esta situación en la que la función RELATED resulta de utilidad. Suponiendo que existe una relación (de tipo varios a uno, o uno a uno) entre la tabla de ventas y la de geografía, podemos acceder desde la primera a la columna Country de la segunda con la expresión:

RELATED(Geography[Country])

Ahora, el código de la tabla filtrada sería el siguiente:

Tabla filtrada = FILTER(
Sales,
RELATED(Geography[Country]) <> "United States"
)

Tal y como se ha comentado, la función RELATED requiere de un contexto de fila, lo que podemos conseguir usando una función de escaneo de tablas como SUMX, que es exactamente lo que buscamos para calcular el total de ventas:

Sales non USA =
SUMX(
FILTER(
Sales,
RELATED(Geography[Country]) <> "United States"
),
Sales[SalesAmount]
)

Lo que estamos haciendo es sumar el campo SalesAmount para cada una de las filas de la tabla filtrada, y ésta está compuesta por el conjunto de registros de ventas que no tienen asociado como país a los Estados Unidos, pero sin excluir otros posibles filtros que vengan dados por el contexto.

De esta forma, si llevamos esta medida a una tarjeta:

...comprobamos que el total es correcto. Y si la llevamos a una tabla junto con el campo Country de Geography:

...vemos que la medida se adapta correctamente al contexto, tal y como queríamos.

# data[].attributes.attachment_link.description
Supongamos ahora que en el campo Country de la tabla Geography tenemos el país en el que se encuentra el revendedor que ha realizado cada venta. Veamos, en primer lugar, las ventas por país.

# data[].attributes.body
Evalúa una expresión frente a una lista de valores y devuelve una de varias expresiones de resultado posibles.
= SWITCH([Month], 1, "January", 2, "February", 3, "March", 4, "April"
, 5, "May", 6, "June", 7, "July", 8, "August"
, 9, "September", 10, "October", 11, "November", 12, "December"
, "Unknown month number" )

# data[].attributes.headline
La función SWITCH evalúa una expresión y devuelve un resultado u otro en función del valor resultante de la evaluación, valor que se encontrará entre una lista de opciones. 

# data[].attributes.subject
La función SWITCH evalúa una expresión y devuelve un resultado u otro en función del valor resultante de la evaluación, valor que se encontrará entre una lista de opciones. 

# data[].attributes.attachment_link.readable_text
En el siguiente ejemplo se evalúa el país al que se asocia la venta para generar una columna personalizada que contenga el continente:

Los valores con los que se compara el resultado de la evaluación de la expresión y los valores devueltos no tienen por qué ser del mismo tipo. En el siguiente ejemplo se calcula el coste de transporte como un porcentaje del valor de venta, porcentaje que varía para cada país:

Para probar la función no ya con valores, sino con expresiones condicionales, supongamos que definimos la medida

Ventas = SUM(FactSales[SalesAmount])

...sumando las ventas en el contexto actual. Si llevamos el campo conteniendo la lista de subcategorías y esta medida a una tabla, el resultado es el siguiente:

Si quisiéramos clasificar cada categoría según la cifra total de ventas con una escala del 1 al 3 (indicándolo con símbolos "$", por ejemplo), podríamos hacerlo usando la función SWITCH de la siguiente manera:

Clasificación = SWITCH(
TRUE(),
[Ventas]>1000000000, "$$$",
[Ventas]>100000000, "$$",
[Ventas]>0, "$",
BLANK()
)

En esta medida, comparamos las ventas totales (en el contexto actual) con una cifra, y devolvemos un valor u otro en función de que la comparación se cumpla o no. El resultado es el siguiente:

Es de destacar que el resultado devuelto por la función es el primero para el que se cumpla la condición. Así, si la medida [Clasificación] se definiese de la siguiente forma (cambiando el orden de las comparaciones):

Clasificación = SWITCH(
TRUE(),
[Ventas]>0, "$",
[Ventas]>100000000, "$$",
[Ventas]>1000000000, "$$$",
BLANK()
)

...el resultado sería el siguiente:

Como vemos, al cumplirse la primera condición para todas las subcategorías mostradas ([Ventas]>0), la función SWITCH devuelve siempre el resultado "$", que no es lo que buscamos.

# data[].attributes.attachment_link.description
En el siguiente ejemplo se evalúa el país al que se asocia la venta para generar una columna personalizada que contenga el continente: Los valores con los que se compara el resultado de la evaluación de la expresión y los valores devueltos no tienen por qué ser del mismo tipo.

# data[].attributes.body
La función RELACIONADO requiere que exista una relación entre la tabla actual y la tabla con información relacionada. Usted especifica la columna que contiene los datos que desea y la función sigue una relación existente de varios a uno para obtener el valor de la columna especificada en la tabla relacionada. Si no existe una relación, debe crear una relación.

FILTER('InternetSales_USD'
, 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTerritoryKey]<>2 && 'InternetSales_USD'[SalesTerritoryKey]<>3 && 'InternetSales_USD'[SalesTerritoryKey]<>4 && 'InternetSales_USD'[SalesTerritoryKey]<>5)

# data[].attributes.body
RELATED

Returns a related value from another table.Syntax

DAX

Copy

RELATED(<column>)

Parameters

TermDefinitioncolumn | The column that contains the values you want to retrieve.Return value

A single value that is related to the current row.Remarks

The RELATED function requires that a relationship exists between the current table and the table with related information. You specify the column that contains the data that you want, and the function follows an existing many-to-one relationship to fetch the value from the specified column in the related table. If a relationship does not exist, you must create a relationship.

When the RELATED function performs a lookup, it examines all values in the specified table regardless of any filters that may have been applied.

The RELATED function needs a row context; therefore, it can only be used in calculated column expression, where the current row context is unambiguous, or as a nested function in an expression that uses a table scanning function. A table scanning function, such as SUMX, gets the value of the current row value and then scans another table for instances of that value.

The RELATED function cannot be used to fetch a column across a limited relationship.

Example

In the following example, the measure Non USA Internet Sales is created to produce a sales report that excludes sales in the United States. In order to create the measure, the InternetSales_USD table must be filtered to exclude all sales that belong to the United States in the SalesTerritory table. The United States, as a country, appears 5 times in the SalesTerritory table; once for each of the following regions: Northwest, Northeast, Central, Southwest, and Southeast.

The first approach to filter the Internet Sales, in order to create the measure, could be to add a filter expression like the following:

DAX

Copy

FILTER('InternetSales_USD'
, 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTerritoryK

# data[].attributes.body
La función SWITCH de Power BI DAX le ayuda a devolver múltiples opciones. Por ejemplo, la función Power BI DAX IF devuelve True o false. Sin embargo, puede utilizar este caso de cambio para obtener varios resultados.

SWITCH(Expression, Option 1, Result 1, Option 2, Result 2, ....., ElseResult)

# data[].attributes.body
SWITCH

Evaluates an expression against a list of values and returns one of multiple possible result expressions.Syntax

DAX

Copy

SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])

Parameters

TermDefinitionexpression | Any DAX expression that returns a single scalar value, where the expression is to be evaluated multiple times (for each row/context).
value | A constant value to be matched with the results of expression.
result | Any scalar expression to be evaluated if the results of expression match the corresponding value.
else | Any scalar expression to be evaluated if the result of expression doesn't match any of the value arguments.Return value

A scalar value coming from one of the result expressions, if there was a match with value, or from the else expression, if there was no match with any value.Remarks

All result expressions and the else expression must be of the same data type.Example

The following example creates a calculated column of month names.

DAX

Copy

= SWITCH([Month], 1, "January", 2, "February", 3, "March", 4, "April"
               , 5, "May", 6, "June", 7, "July", 8, "August"
               , 9, "September", 10, "October", 11, "November", 12, "December"
               , "Unknown month number" )

# data[].attributes.attachment_link.readable_text
Evalúa una expresión en una lista de valores y devuelve una de varias expresiones de resultado posibles.

Sintaxis

Parámetros

expression

Cualquier expresión DAX que devuelve un único valor escalar, donde la expresión se va a evaluar varias veces (para cada fila o contexto).

value

Valor constante con el que van a coincidir los resultados de expression.

resultado

Cualquier expresión escalar que se evaluará si los resultados de expression coinciden con el argumento value correspondiente.

else

Cualquier expresión escalar que se evaluará si el resultado de expression no coincide con ninguno de los argumentos value.

Valor devuelto

Un valor escalar procedente de una de las expresiones result, si se ha producido una coincidencia con value o desde la expresión else, si no hay ninguna coincidencia con value.

Observaciones

Todas las expresiones result y la expresión else deben ser del mismo tipo de datos.

Ejemplo

En este ejemplo se crea una columna calculada de nombres de meses.

= SWITCH([Month], 1, "January", 2, "February", 3, "March", 4, "April" , 5, "May", 6, "June", 7, "July", 8, "August" , 9, "September", 10, "October", 11, "November", 12, "December" , "Unknown month number" )

# data[].attributes.attachment_link.description
Evalúa una expresión en una lista de valores y devuelve una de varias expresiones de resultado posibles. expression Cualquier expresión DAX que devuelve un único valor escalar, donde la expresión se va a evaluar varias veces (para cada fila o contexto). value Valor constante con el que van a coincidir los resultados de expression.