Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Principales gastos basados en los 3 meses anteriores

Hola a todos,

He estado trabajando en un dax desde hace una semana para producir el número de ocurrencias en las que un usuario se muestra como uno de los que más gastan en función de los últimos 3 meses.

Teniendo en cuenta que tengo un Year_Month Slicer y un Business Slicer, generé la siguiente medida de gasto superior como primer paso:

Arriba 3 Donante=
CALCULAR (
SUMA(Hoja3[Gastar]),
KEEPFILTERS (
VENTANA (
1,
ABS
3,
ABS
TODO (Hoja3[Nombre]),
ORDENAR ( CALCULAR( SUMA(Hoja3[Gastar]) ), DESC)
)
)
)

Example.PNG

También produje una medida de rango para ayudar en el resultado:

Rango = SI(ISBLANK([Los 3 que más gastan]),ESPACIO EN BLANCO(),RANKX(TODOS SELECCIONADOS(Hoja 3[Nombre]),[Los 3 que más gastan],,DESC))
Actualmente solo puedo mostrar repeticiones basadas en el mes anterior utilizando los dax realizados a continuación. Sin embargo, me interesa generar repeticiones basadas en los 3 meses anteriores y no lo estoy logrando ahora. Cualquiera tiene una mejor manera de modelar el resultado.
Rango Mes seleccionado = SI(ISBLANK([Los 3 que más gastan]),ESPACIO EN BLANCO(),RANKX(TODOS SELECCIONADOS('hoja'[Nombre]),[Los 3 que más gastan],,DESC))
Rango en Mes anterior = CALCULAR([Rango del mes seleccionado],ANTERIORMES(FechaCalendario[Fecha]))
Repeticiones = si(ISBLANK([Los 3 que más gastan]),ESPACIO EN BLANCO(),si([Rango del mes seleccionado]<=3&&[Clasificación en el mes anterior]<=3&&[Rango del mes seleccionado]>0&&[Clasificación en el mes anterior]>0,2,1))
Example 2.PNG

Estos son los datos que utilicé en mi archivo:

NombreGastarNegocioFecha
Bolsillo60Contabilidad12/23/2023
Hana80Contabilidad12/23/2023
Bolsillo50Contabilidad12/23/2023
Hana50Contabilidad12/23/2023
Bolsillo40Contabilidad12/23/2023
Hana200Contabilidad12/23/2023
Caleb35Contabilidad12/23/2023
Anthony100Contabilidad12/23/2023
Bolsillo20Contabilidad01/24/2024
Hana40Contabilidad01/24/2024
Bolsillo10Contabilidad01/24/2024
Sophia25Contabilidad01/24/2024
Bolsillo30Contabilidad12/23/2023
Bolsillo30Contabilidad12/23/2023
Bolsillo15Contabilidad12/23/2023
Caleb10Contabilidad12/23/2023
Caleb5Contabilidad12/23/2023
Anthony100Contabilidad01/24/2024
Sophia90Contabilidad01/24/2024
Anthony70Contabilidad01/24/2024
Caleb55Contabilidad01/24/2024
Sophia5Contabilidad01/24/2024
Sophia10Contabilidad01/01/2024
Bolsillo60Contabilidad02/23/2024
Hana80Contabilidad02/23/2024
Bolsillo50Contabilidad02/23/2024
Hana50Contabilidad02/23/2024
Bolsillo40Contabilidad02/23/2024
Hana200Contabilidad02/23/2024
Caleb35Contabilidad02/23/2024
Anthony100Contabilidad02/23/2024

Gracias de antemano

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

@v-binbinyu-msft Muchas gracias por lo anterior, pero esto no es lo que estoy buscando. Esto calcula los que más gastan en los últimos 3 meses. Lo que busco es buscar los 3 que más gastan mes a mes y luego generar el campo Ocurrencia que básicamente muestra en función del mes seleccionado con los 3 que más gastan si hubo una ocurrencia para estos nombres de los últimos 3 meses. qué significa, si Anthony se mostró como uno de los que más gastaron en febrero y fue uno de los que más gastaron en enero de ---> Ocurrencia = 2 Ver más abajo. Actualmente puedo hacer que se vea solo un mes antes y buscar una manera de que pueda hacer que verifique si Anthony mostró el mayor gastador en función de los últimos 3 meses.

Example 2.PNG

Syndicate_Admin
Administrator
Administrator

Hola @kalkhudary ,

Pruebe los siguientes pasos:

1. Calcula el gasto total de los últimos 3 meses

Total Spend Last 3 Months = 
CALCULATE(
    SUM(Sheet3[Spend]),
    DATESINPERIOD(Sheet3[Date], MAX(Sheet3[Date]), -3, MONTH)
)

2. Clasificación basada en 3 meses de gasto

Rank Last 3 Months = 
IF(
    ISBLANK([Total Spend Last 3 Months]),
    BLANK(),
    RANKX(
        ALLSELECTED(Sheet3[Name]),
        [Total Spend Last 3 Months],
        ,
        DESC
    )
)

3. Identificar a los 3 que más gastan

Top 3 Spenders Last 3 Months = 
IF(
    [Rank Last 3 Months] <= 3,
    "Top Spender",
    "Not Top Spender"
)

Saludos
Apoyo de la comunidad Team_Binbin Yu
Si esta publicación Ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.