Matriz de Ventas del Año Anterior para Fechas No Contiguas

Un usuario Pregunto ✅

PANDAmonio

Hola a todos,

Estoy tratando de hacer una matriz del año anterior para fechas no contiguas. Esto va a una fórmula/matriz más grande que usa esto para establecer el formato condicional, pero lo he desglosado y esta es la última pieza que necesito resolver.

Aquí está el foro de mi medida para calcular las ventas del año anterior:

medida =
VAR AÑO = MAX(‘Tabla'[Date].[Year]) – 1
VAR PVAL = CALCULAR(SUMA(‘Tabla'[Value]), FILTRO(TODO SELECCIONADO(‘Tabla’), AÑO(‘Tabla'[Date]) = AÑO))
PVAL DE DEVOLUCIÓN
Incluí algunas capturas de pantalla en datos simulados. Como puede ver, esto funciona cuando está en una tabla solo por año, pero ahora, si quiero agregar un cliente a la combinación, no se reevaluará por cliente, sino que solo se mostrará la suma del año.
yo también he intentado

Período paralelo = CALCULAR (SUMA (‘Tabla'[Value]),PARALLELPERIOD(‘Tabla'[Date],-12 MESES))

Funciona bien cuando se evalúa contra el total, incluida la división por cliente, pero dentro de la tabla o matriz, cada fila del año muestra 0 o está en blanco (vea la segunda captura de pantalla)

Creo que mi cerebro es una papilla en este momento, por lo que cualquier ayuda es muy apreciada. ¡Gracias!

LYS.PNG

LYS2.PNG

jdbuchanan71

Hola @PANDAmonium

He visto un comportamiento extraño al usar funciones inteligentes de tiempo (PARALLELPERIOD) sin una tabla de fechas que se extienda desde el 1 de enero hasta el 31 de diciembre.

Puede agregar una tabla de fechas básica con el siguiente código DAX.

Dates = 
VAR DateRange = CALENDARAUTO()

RETURN
ADDCOLUMNS(
    DateRange,
    "Year",YEAR ( [Date] ),
    "Month", FORMAT ( [Date], "mmmm" ),
    "MonthNum", MONTH ( [Date] ),
    "Month Year", FORMAT ( [Date], "mmm-yyyy"),
    "MonthYearNum", YEAR ( [Date] ) * 100 + MONTH ( [Date] ),
    "Quarter Year", "Q" & FORMAT ( [Date], "q-yyyy" ),
    "QtrYearNum", YEAR ( [Date] ) * 100 + VALUE ( FORMAT ( [Date], "q" ) )
)

Luego vinculas las Fechas[Date] campo en ‘Tabla'[Date].

A continuación, en modelado, marque la tabla Fechas como una tabla de fechas.

Luego pruebe la medida de esta manera.

PY Value = CALCULATE ( SUM('Table'[Value]), SAMEPERIODLASTYEAR ( DATES[Date] ) )

jdbuchanan71

Hola @PANDAmonium

He visto un comportamiento extraño al usar funciones inteligentes de tiempo (PARALLELPERIOD) sin una tabla de fechas que se extienda desde el 1 de enero hasta el 31 de diciembre.

Puede agregar una tabla de fechas básica con el siguiente código DAX.

Dates = 
VAR DateRange = CALENDARAUTO()

RETURN
ADDCOLUMNS(
    DateRange,
    "Year",YEAR ( [Date] ),
    "Month", FORMAT ( [Date], "mmmm" ),
    "MonthNum", MONTH ( [Date] ),
    "Month Year", FORMAT ( [Date], "mmm-yyyy"),
    "MonthYearNum", YEAR ( [Date] ) * 100 + MONTH ( [Date] ),
    "Quarter Year", "Q" & FORMAT ( [Date], "q-yyyy" ),
    "QtrYearNum", YEAR ( [Date] ) * 100 + VALUE ( FORMAT ( [Date], "q" ) )
)

Luego vinculas las Fechas[Date] campo en ‘Tabla'[Date].

A continuación, en modelado, marque la tabla Fechas como una tabla de fechas.

Luego pruebe la medida de esta manera.

PY Value = CALCULATE ( SUM('Table'[Value]), SAMEPERIODLASTYEAR ( DATES[Date] ) )

PANDAmonio

En respuesta a jdbuchanan71

Impresionante, sí, eso funcionó. ¡Muchos gracias!

Se siente tan bien solo para finalmente parpadear, lol.

PANDAmonio

En respuesta a jdbuchanan71

En realidad… puede que necesite cambiarlo a *:1 con un filtro de una sola dirección. 1 minuto.

PANDAmonio

En respuesta a jdbuchanan71

Tan pronto como divido la tabla o matriz por cliente, arroja un error.

fruncir el ceño.PNG

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *