Expresiones de análisis de datos (DAX) tiene 35 funciones específicas para agregar y comparar datos a lo largo del tiempo. A diferencia de las funciones de fecha y hora de DAX, las funciones de inteligencia de tiempo no tienen nada similar en Excel. Esto se debe a que las funciones de inteligencia de tiempo funcionan con datos que cambian constantemente, según el contexto que seleccione en las tablas dinámicas y visualizaciones de Power View.
Para trabajar con funciones de inteligencia de tiempo, debe incluir una tabla de fecha en el modelo de datos. La tabla de fechas debe incluir una columna con una fila para cada día de cada año incluidas en los datos. Esta columna se considera la columna Fecha (aunque se puede denominar como quiera). Muchas funciones de inteligencia de tiempo requieren la columna de fecha para calcular según las fechas que seleccione como campos en un informe. Por ejemplo, si tiene una medida que calcula un saldo final del trimestre mediante la función CLOSINGBALANCEQTR, para que Power Pivot sepa cuándo es realmente el final del trimestre, debe hacer referencia a la columna de fecha de la tabla de fechas para saber cuándo comienza y termina el trimestre. Para obtener más información sobre las tablas de fechas, consulte Comprender y crear tablas de fechas en Power Pivot para Excel.
Funciones
Funciones que devuelven una sola fecha
Las funciones de esta categoría devuelven una única fecha. El resultado se puede usar como argumentos para otras funciones.
Las dos primeras funciones de esta categoría devuelven la primera o la última fecha del Date_Column en el contexto actual. Esto puede ser útil si desea buscar la primera o la última fecha en la que se re haya realizado una transacción de un tipo determinado. Estas funciones solo tienen un argumento, el nombre de la columna de fecha de la tabla de fechas.
-
PRIMERA FECHA (Date_Column)
-
ÚLTIMA FECHA (Date_Column)
Las dos funciones siguientes de esta categoría buscan la primera o la última fecha (o cualquier otro valor de columna) donde una expresión tiene un valor que no está en blanco. Esto se suele usar en situaciones como inventario, donde quieres obtener el último importe del inventario y no sabes cuándo se realizó el último inventario.
-
FIRSTNONBLANK (Date_Column, Expresión)
-
LASTNONBLANK (Date_Column, Expresión)
Seis funciones más que devuelven una sola fecha son las funciones que devuelven la primera o la última fecha de un mes, trimestre o año dentro del contexto actual del cálculo.
-
STARTOFMONTH (Date_Column)
-
STARTOFQUARTER (Date_Column)
-
STARTOFYEAR (Date_Column [,YE_Date])
-
ENDOFMONTH (Date_Column)
-
ENDOFQUARTER (Date_Column)
-
FIN DE AÑO (Date_Column [,YE_Date])
Funciones que devuelven una tabla de fechas
Hay dieciséis funciones de inteligencia de tiempo que devuelven una tabla de fechas. La mayoría de las veces, estas funciones se usarán como un argumento SetFilter para la función CALCULATE . Al igual que todas las funciones de inteligencia de tiempo en DAX, cada función toma una columna de fecha como uno de sus argumentos.
Las ocho primeras funciones de esta categoría comienzan con una columna de fecha en un contexto actual. Por ejemplo, si usa una medida en una tabla dinámica, puede haber un mes o año en las etiquetas de columna o las etiquetas de fila. El efecto neto es que la columna de fecha se filtra para incluir solo las fechas del contexto actual. A partir de ese contexto actual, estas ocho funciones calculan el día, mes, trimestre o año anterior (o siguiente) y devuelven esas fechas en forma de tabla de una sola columna. Las funciones "anteriores" funcionan hacia atrás desde la primera fecha en el contexto actual y las funciones "siguiente" avanzan hacia delante desde la última fecha en el contexto actual.
-
DÍA ANTERIOR (Date_Column)
-
ANTERIOR.MES (Date_Column)
-
PREVIOUSQUARTER (Date_Column)
-
AÑO ANTERIOR (Date_Column [,YE_Date])
-
NEXTDAY (Date_Column)
-
NEXTMONTH (Date_Column)
-
NEXTQUARTER (Date_Column)
-
AÑO SIGUIENTE (Date_Column [,YE_Date])
Las cuatro funciones siguientes de esta categoría son similares, pero en lugar de calcular un período anterior (o siguiente), calculan el conjunto de fechas en el período "mes a fecha" (o trimestre a fecha, año a fecha o en el mismo período del año anterior). Todas estas funciones realizan sus cálculos usando la última fecha del contexto actual. Tenga en cuenta que SAMEPERIODLASTYEAR requiere que el contexto actual contenga un conjunto de fechas contiguas. Si el contexto actual no es un conjunto de fechas contiguo, SAMEPERIODLASTYEAR devolverá un error.
-
DATESMTD (Date_Column)
-
DATESQTD (Date_Column)
-
DATESYTD (Date_Column [,YE_Date])
-
SAMEPERIODLASTYEAR (Date_Column)
Las cuatro últimas funciones de esta categoría son un poco más complejas y también un poco más potentes. Estas funciones se usan para pasar del conjunto de fechas que se encuentran en el contexto actual a un nuevo conjunto de fechas.
-
AGREGFECHA (Date_Column, Number_of_Intervals, Intervalo)
-
FECHAS.ENTRE (Date_Column, Start_Date End_Date)
-
DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, Intervalo)
-
PARALLELPERIOD (Date_Column, Number_of_Intervals, intervalo)
DATESBETWEEN calcula el conjunto de fechas entre la fecha de inicio y la fecha de finalización especificadas. Las tres funciones restantes desplazan cierto número de intervalos de tiempo del contexto actual. El intervalo puede ser día, mes, trimestre o año. Estas funciones hacen que sea más fácil cambiar el intervalo de tiempo para un cálculo mediante cualquiera de las siguientes opciones:
-
Volver dos años
-
Volver un mes
-
Avanzar tres trimestres
-
Volver 14 días
-
Avanzar 28 días
En cada caso, solo necesita especificar qué intervalo y cuántos de esos intervalos desea cambiar. Un intervalo positivo avanzará en el tiempo, mientras que un intervalo negativo se retrocederá en el tiempo. El intervalo en sí se especifica con una palabra clave DE DÍA, MES, TRIMESTRE o AÑO. Estas palabras clave no son cadenas, por lo que no deben estar entre comillas.
Funciones que evalúan expresiones durante un período de tiempo
Esta categoría de funciones evalúa una expresión durante un período de tiempo especificado. Puede lograr lo mismo con CALCULATE y otras funciones de inteligencia de tiempo. Por ejemplo,
= TOTALMTD (expresión, Date_Column [, SetFilter])
es exactamente lo mismo que:
= CALCULATE (Expresión, DATESMTD (Date_Column)[, SetFilter])
Sin embargo, es más fácil usar estas funciones de inteligencia de tiempo cuando son una buena opción para el problema que debe resolverse:
-
TOTALMTD (expresión, Date_Column [, SetFilter])
-
TOTALQTD (expresión, Date_Column [, SetFilter])
-
TOTALYTD (expresión, Date_Column [, SetFilter] [,YE_Date]) *
También en esta categoría hay un grupo de funciones que calculan los saldos de apertura y cierre. Hay algunos conceptos que debe entender con estas funciones concretas. En primer lugar, como puede resultar obvio, el saldo inicial de cualquier período es el mismo que el saldo de cierre del período anterior. El saldo de cierre incluye todos los datos hasta el final del período, mientras que el saldo inicial no incluye datos del período actual.
Estas funciones siempre devuelven el valor de una expresión evaluada para un punto específico en el tiempo. El punto en el tiempo que nos interesa es siempre el último valor de fecha posible en un período de calendario. El saldo inicial se basa en la última fecha del período anterior, mientras que el saldo de cierre se basa en la última fecha del período actual. El período actual siempre está determinado por la última fecha en el contexto de fecha actual.
-
OPENINGBALANCEMONTH (Expresión, Date_Column [,SetFilter])
-
OPENINGBALANCEQUARTER Trimestre (Expresión, Date_Column [,SetFilter])
-
OPENINGBALANCEYEAR (Expresión, Date_Column [,SetFilter] [,YE_Date])
-
CLOSINGBALANCEMONTH (Expresión, Date_Column [,SetFilter])
-
CLOSINGBALANCEQUARTER (Expresión, Date_Column [,SetFilter])
-
CLOSINGBALANCEYEAR (Expresión, Date_Column [,SetFilter] [,YE_Date])
Recursos adicionales
Artículos: Comprender y crear tablas de fechas en Power Pivot para Excel
Reference: Referencia de funciones DAXen Office.com
Ejemplos: Modelado y análisis de datos de pérdidas y ganancias con Microsoft PowerPivot en Excel