selpaqm
Hola a todos,
Tengo una tabla como la siguiente y una tabla de fechas que ya se han conectado entre sí.
Fecha | cliente | cantidad |
01/01/2021 | A | 2 |
01/01/2021 | B | 1 |
11/01/2020 | A | 1 |
01/02/2021 | A | 4 |
01/02/2021 | B | 3 |
10/01/2020 | B | 7 |
12/01/2020 | A | 5 |
12/01/2020 | B | 3 |
selimovd
En respuesta a selpaqm
Hola @selpaqm,
el archivo ayudó mucho.
La forma en que lo usa no necesita la función de filtro, simplemente puede anular el contexto del filtro para el cliente. Así obtienes el valor correcto para cada día.
Revisa esa fórmula:
3 month qty for A =
CALCULATE(
SUM( sales[qty] ),
sales[customer] = "A",
DATESINPERIOD( 'Date'[Date], MAX( 'Date'[Date] ), -3, MONTH )
)
selimovd
Hola @selpaqm,
Me pregunto si la medida funciona. Debería utilizar corchetes en la función de filtro «ventas[customer]»:
3 month qty for A =
CALCULATE(
SUM( sales[qty] ),
FILTER( sales, sales[customer] = "A" ),
DATESINPERIOD( 'Date'[Date], LASTDATE( 'Date'[Date] ), -3, MONTH )
)
Personalmente, preferiría la combinación DATESBETWEEN y DATEADD:
3 month qty for A =
VAR MaxDate = MAXX( ALLSELECTED( 'Date' ), 'Date'[Date] )
RETURN
CALCULATE(
SUM( sales[qty] ),
FILTER( sales, sales[customer] = "A" ),
DATESBETWEEN( 'Date'[Date], DATEADD( MaxDate, -3, MONTH ), MaxDate )
)
selpaqm
En respuesta a selimovd
@selimovd gracias por tu respuesta. perdón por mi error mientras cambiaba los nombres. He cambiado los corchetes por otros incorrectos. sin embargo, en mi original se usa correctamente.
en su segunda medida, da un error debido a que dateadd necesita una columna específica.
por cierto, he subido un ejemplo a la publicación original. Puede ayudar.
selimovd
En respuesta a selpaqm
Hola @selpaqm,
el archivo ayudó mucho.
La forma en que lo usa no necesita la función de filtro, simplemente puede anular el contexto del filtro para el cliente. Así obtienes el valor correcto para cada día.
Revisa esa fórmula:
3 month qty for A =
CALCULATE(
SUM( sales[qty] ),
sales[customer] = "A",
DATESINPERIOD( 'Date'[Date], MAX( 'Date'[Date] ), -3, MONTH )
)
selpaqm
En respuesta a selimovd
@selimovd agradece la respuesta. está funcionando a las mil maravillas.
Amitchandak
@selpaqm, prueba con un pequeño cambio y comprueba. Además, asegúrese de que la tabla de fechas esté marcada como tabla de fechas (haga clic con el botón derecho en la tabla para ver una opción).
Balanceo 3 = CALCULAR (SUMA (ventas[qty]), FILTER (ventas, ventas (cliente) = «A»), DATESINPERIOD (‘Fecha'[Date ], MAX (‘Fecha'[Date]),-3 MESES))
selpaqm
En respuesta a Amitchandak
@amitchandak gracias por una respuesta rápida. MAX no funciona para eso. dado el mismo resultado con LASTDATE. La tabla de fechas se convierte en la tabla de fechas como mencionaste.