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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Joorge_C
Resolver II
Resolver II

¿Cómo optimizaría SUMX con Switch anidado o IF? ... su tomar alrededor de 25 segundos para correr

Hola chicos, gracias por la ayuda.

Necesito una medida para mirar el Trimestre y hacer la suma A + B para los últimos meses y C para el presente y el futuro.

¿Alguna idea de cómo puedo optimizar lo siguiente?

SUMX('Todos los datos',
SWITCH(TRUE() ,
Todos los datos'[MonthNum]>- Todays_month , CALCULATE(SUM('All Data'[A]))+CALCULATE(SUM('All Data'[B])),
'All Data'[MonthNum]< Todays_month , CALCULATE(SUM('All Data'[C]))
)
)
6 REPLIES 6
Joorge_C
Resolver II
Resolver II

Hola a todos

así que lo que terminé haciendo es una combinación de unas pocas sumas de cálculo, no utilié el Sumx ya que continuó tomando más de 10 segundos.

También agregué una condición de día a los criterios de filtrado.

Gracias a todos por las ideas.

Aquí está un fragmento de la medida:

var _todaysMonth - MONTH(TODAY())

var _todaysDay - DAY(TODAY())

devolución

CALCULATE(SUM('All Data'[A]),MONTH('All Data'[Date])<-_todaysMonth && _todaysDay <-7) +CALCULATE(SUM('Net[B]),MONTH('Net'[DateForMonth])<-_todaysMonth && _todaysDay<-7) +

CALCULATE(SUM('All Data'[A]),MONTH('All Data'[Date])-_todaysMonth && _todaysDay>7) + CALCULATE(SUM('Net'[B]),MONTH('Net'[DateForMonth])-_todaysMonth && _todaysDay>7)+

CALCULATE(SUM('All Data'[A]),MONTH('All Data'[Date])>_todaysMonth) + CALCULATE(SUM('Net'[B]),MONTH('Net'[DateForMonth])>_todaysMonth)+

CALCULATE(SUM('All Data'[C]),MONTH('All Data'[Date])<_todaysMonth && _todaysDay>7)

Joorge_C
Resolver II
Resolver II

Gracias a todos por las sugerencias y la ayuda. Voy a probar y ver cuál funciona mejor. Se actualizará más tarde.

¡Gracias de nuevo!

v-alq-msft
Community Support
Community Support

Hola, @Joorge_C

Me gustaría sugerirle que pruebe la siguiente medida para ver si ayuda.

Measure =
SUMX (
    'All Data',
    SWITCH (
        TRUE (),
        'All Data'[MonthNum] >= Todays_month, 'All Data'[A] + 'All Data'[B],
        'All Data'[MonthNum] < Todays_month, 'All Data'[C]
    )
)

Saludos

Allan

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

mahoneypat
Employee
Employee

Haría un par de cálculos más grandes en lugar de muchos pequeños, de la siguiente manera:

Suponiendo Todays_month es una variable en la misma expresión,

New measure =
VAR Todays_month =
    MONTH ( TODAY () ) //or whatever your current approach is
VAR __prevsales =
    SUMX ( FILTER ( 'All Data', 'All Data'[Month] < Todays_month ), 'All Data'[C] )
VAR __currentfuturesales =
    SUMX (
        FILTER ( 'All Data', 'All Data'[Month] >= Todays_month ),
        'All Data'[A] + 'All Data'[B]
    )
RETURN
    __prevsales + __currentfuturesales

Si esto funciona para usted, márquelo como la solución. Los elogios también son apreciados. Por favor, avísame si no.

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


parry2k
Super User
Super User

@Joorge_C lo que se todays_month, debe usar alguna agregación si va a agregar esto como medida

SUMX('All Data',
                    SWITCH(TRUE() ,
                            MAX('All Data'[MonthNum])>= Todays_month ,    CALCULATE(SUM('All Data'[A]))+CALCULATE(SUM('All Data'[B])),
                           MAX('All Data'[MonthNum])< Todays_month ,    CALCULATE(SUM('All Data'[C]))
                         )
)

suponiendo Todays_Month es una medida.

Me gustaría elogiossi mi solución ayudara.👉Si puedes pasar tiempo publicando la pregunta, también puedes hacer esfuerzos para dar a Kudos quien haya ayudado a resolver tu problema. ¡Es una muestra de agradecimiento!

Visítenos enhttps://perytus.com, su ventanilla única para proyectos/formación/consulta relacionadas con Power BI.



Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!

Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo

If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤


Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.

Gracias por la respuesta rápida

hoy mes su sólo un var para buscar el número de mes actual

var _todaysmonth á month(today())

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.