The ultimate Microsoft Fabric, Power BI, Azure AI, and SQL learning event: Join us in Stockholm, September 24-27, 2024.
Save €200 with code MSCUST on top of early bird pricing!
Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started
Hola
¿Cuál sería la medida correcta para mostrar el Top 10 de clientes durante un período de tiempo? Gracias.
La clasificación resultante no se basa en el total general, sino en las ventas totales de un mes determinado (o período de columna).
En el siguiente ejemplo, si hay 500 clientes, la medida mostrará solo 16 clientes que se encuentran entre los 10 clientes principales para el período dado, que es de enero a mayo (mes a mes)
Hola
No estoy seguro de cómo se ve su modelo semántico, pero traté de crear un archivo pbix de muestra como el que se muestra a continuación.
En mi muestra, traté de lograr los 3 primeros, y espero que pueda volver a crear la medida en su muestra.
Por favor, compruebe la imagen de abajo y el archivo pbix adjunto.
Sales: =
SUM( sales[sales])
Función WINDOW (DAX) - DAX | Microsoft Learn
Sales top 3: =
VAR _selectedperiod =
ALLSELECTED ( 'calendar'[MOnth-Year sort] )
VAR _t =
ADDCOLUMNS (
CALCULATETABLE (
SUMMARIZE (
ALL ( sales ),
customer[customer],
'calendar'[MOnth-Year sort],
'calendar'[Month-Year]
),
'calendar'[MOnth-Year sort] IN _selectedperiod
),
"@sales", [Sales:]
)
VAR _group =
GROUPBY (
_t,
customer[customer],
"@allsales", SUMX ( CURRENTGROUP (), [@sales] )
)
VAR _toplist =
SUMMARIZE (
WINDOW ( 1, ABS, 3, ABS, _group, ORDERBY ( [@allsales], DESC ) ),
customer[customer]
)
RETURN
CALCULATE (
SUM ( sales[sales] ),
KEEPFILTERS ( customer[customer] IN _toplist )
)
Hola @Jihwan_Kim,
Muchas gracias por su rápida respuesta y por tomarse el tiempo de enviar un archivo pbix. Creo que está muy cerca del resultado previsto.
Una cosa que noté es que las 2 tablas no muestran los 3 primeros por mes.
(NO necesitamos los 3 primeros por total general)
(Necesitamos mostrar los 3 mejores clientes en un mes determinado. NO necesitamos mostrar a los clientes que nunca han estado en el top 3 en un mes determinado. los resaltados en rojo nunca han estado en el top 3 en ninguno de los meses dados).
Todos los clientes de amarillo han estado entre los 3 primeros en un mes determinado. Gracias de nuevo.
Hola
Gracias por su mensaje, y verifique la imagen a continuación y el archivo pbix adjunto si se adapta a sus necesidades.
Sales top 3 v2: =
CALCULATE (
SUM ( sales[sales] ),
KEEPFILTERS (
WINDOW (
1,
ABS,
3,
ABS,
CALCULATETABLE (
SUMMARIZE (
sales,
customer[customer],
'calendar'[MOnth-Year sort],
'calendar'[Month-Year]
),
REMOVEFILTERS ( customer[customer] )
),
ORDERBY ( CALCULATE ( SUM ( sales[sales] ) ), DESC )
)
)
)
Hola @Jihwan_Kim,
¡Creo que realmente lo lograste! ¿Cómo muestro el resto de los números de esta manera? Me gustaría mostrar los números no resaltados, junto con los números resaltados en amarillo. Gracias de nuevo.
Hola
Por favor, compruebe la imagen de abajo y el archivo pbix adjunto.
Sales top 3 v3: =
VAR _t =
ADDCOLUMNS (
SUMMARIZE (
ALLSELECTED ( sales ),
customer[customer],
'calendar'[MOnth-Year sort],
'calendar'[Month-Year]
),
"@result",
CALCULATE (
SUM ( sales[sales] ),
KEEPFILTERS (
WINDOW (
1,
ABS,
3,
ABS,
CALCULATETABLE (
SUMMARIZE (
sales,
customer[customer],
'calendar'[MOnth-Year sort],
'calendar'[Month-Year]
),
REMOVEFILTERS ( customer[customer] )
),
ORDERBY ( CALCULATE ( SUM ( sales[sales] ) ), DESC )
)
)
)
)
VAR _list =
SUMMARIZE ( FILTER ( _t, [@result] <> BLANK () ), customer[customer] )
RETURN
CALCULATE ( SUM ( sales[sales] ), KEEPFILTERS ( customer[customer] IN _list ) )
Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.
Check out the June 2024 Power BI update to learn about new features.