Acceso a las fechas del contexto actual

Suponiendo que tengamos una tabla calendario ("Calendar") y un campo "Date" conteniendo las fechas, podemos acceder a las fechas involucradas en el contexto actual a través de dicho campo. Esto nos permite acceder al primer día, al último día, etc. del período involucrado en el contexto actual utilizando funciones DAX y simples operaciones aritméticas.

Así, por ejemplo, podemos acceder al primer día del contexto actual calculando el valor mínimo de la columna de fechas con la función MIN, de la siguiente forma:

Primer día = MIN('Calendar'[Date])

Para verlo en funcionamiento, llevemos nuestro campo Calendar[Date] a una matriz, naveguemos por la estructura jerárquica de la fecha hasta mostrar, por ejemplo, los meses, y añadamos la medida creada:

Primer día del contexto actual

Vemos que, efectivamente, la medida devuelve el primer día del período indicado en la cabecera de cada fila.

Podemos calcular el último día del contexto actual de forma semejante, utilizando la función MAX:

Último día = MAX('Calendar'[Date])

De hecho, podríamos acceder al siguiente día del contexto actual (o a cualquier otro día que pudiésemos referenciar al primer o último día del contexto actual) sumando 1 al valor máximo:

Siguiente día = MAX('Calendar'[Date]) + 1

Si llevamos estas medidas a nuestra matriz, obtendríamos el siguiente resultado:

Último día y día siguiente

Si llevásemos estas medidas a una matriz en la que no hemos incluido en filas el campo Calendar[Date], los valores mínimo y máximo coincidirían con la primera y última fecha del calendario (sin restricciones adicionales):

Primer día, último día y siguiente día del calendario

La imagen anterior es la correspondiente a un calendario que incluye todas las fechas entre el 1 de enero de 2013 y el 31 de diciembre de 2016. Obsérvese que el resultado devuelto por la medida Siguiente día (1 de enero de 2017) no está incluido en el calendario.

Funciones DAX involucradas
Dificultad
Baja
Enviado por admin el Mié, 26/06/2019 - 16:39