Compartir a través de


SAMEPERIODLASTYEAR

Se aplica a:columna Calculadatabla calculadaMedidacálculo visual

Nota:

No se recomienda usar esta función en cálculos visuales, ya que es probable que devuelva resultados sin sentido.

Para la entrada de columna de fecha, devuelve una tabla que contiene una columna de fechas desplazadas un año atrás a partir de las fechas de la columna especificada dates , en el contexto actual.

Para la entrada del calendario, devuelve una tabla que se desplaza un año atrás en el tiempo a partir de las fechas del contexto actual, en función del calendario. La tabla contiene todas las columnas etiquetadas principal y todas las columnas relacionadas con el tiempo.

Sintaxis

SAMEPERIODLASTYEAR(<dates> or <calendar>)

Parámetros

Término Definición
dates or calendar Columna que contiene fechas o una referencia de calendario

Valor devuelto

Para la entrada de columna de fecha, devuelva una tabla de una sola columna de valores de fecha.
Para la entrada del calendario, devuelve una tabla que contiene todas las columnas etiquetadas principal y todas las columnas relacionadas con el tiempo.

Notas

  • El argumento dates puede ser cualquiera de los siguientes:

    • Referencia a una columna de fecha y hora,
    • Expresión de tabla que devuelve una sola columna de valores de fecha y hora,
    • Expresión booleana que define una tabla de una sola columna de valores de fecha y hora.
  • Las restricciones de las expresiones booleanas se describen en el tema, CALCULATE.

  • Las fechas devueltas son las mismas que las que devuelve esta fórmula equivalente: DATEADD(dates, -1, year).

  • Esta función no se admite para su uso en el modo DirectQuery cuando se usa en columnas calculadas o reglas de seguridad de nivel de fila (RLS).

Ejemplo

La fórmula de ejemplo siguiente crea una medida que calcula las ventas del año anterior de Ventas de revendedores.

= CALCULATE(SUM(ResellerSales_USD[SalesAmount_USD]), SAMEPERIODLASTYEAR(DateTime[DateKey]))

Comportamiento especial

Cuando la selección incluya los últimos dos días del mes, SAMEPERIODLASTYEAR usará la semántica de "extensión" e incluirá los días hasta el final del mes. Por ejemplo, cuando el 27 y el 28 de febrero de 2009 se incluyen en la selección, SAMEPERIODLASTYEAR devolverá el 27 de febrero al 29 de 2008.

Este comportamiento solo se produce cuando se incluyen los últimos dos días del mes en la selección. Si solo se selecciona el 27 de febrero, irá al 27 de febrero.

= SAMEPERIODLASTYEAR(DateTime[DateKey])

Ejemplo de inteligencia de tiempo basada en calendarios

La fórmula de ejemplo siguiente crea una medida que calcula las ventas del año anterior de Ventas de revendedores.

= CALCULATE(SUM(ResellerSales_USD[SalesAmount_USD]), SAMEPERIODLASTYEAR(FiscalCalendar))

Diferencias en el comportamiento entre la inteligencia de tiempo clásica y de calendario

Algunos escenarios pueden producir resultados diferentes al comparar la inteligencia de tiempo clásica y del calendario. Por ejemplo, en un año lunar, SamePeriodLastYear producirá resultados diferentes en la granularidad de fecha. En la inteligencia de tiempo basada en el calendario, el cambio del 29 de febrero de 2008 a un año da como resultado el 1 de marzo de 2007, ya que se trata como el día 60 del año. En la inteligencia de tiempo clásica, el mismo turno devuelve el 28 de febrero de 2007. La solución alternativa es usar DATEADD(Calendario, -<número de un año>, mes). Por ejemplo, si un año tiene 13 meses en el calendario, use DATEADD(Calendario, -13, mes). Este enfoque cambiará por mes para que febrero de 2008 vaya a febrero de 2007.

funciones de inteligencia de tiempofunciones de fecha y hora PREVIOUSYEARPARALLELPERIOD