cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Syndicate_Admin
Administrator
Administrator

Calcular mensualmente en función del total acumulado

Hola

Tengo problemas con el informe de Power BI. El origen de datos es SQL Server, donde los datos se cargan como total acumulativo. Pero mi objetivo es alcular mensualmente en función del total acumulado.

Consulte la muestra de datos a continuación (la fecha de publicación es una columna calculada en PBI y está actualizada a la tabla Calendario).

Ejercicio fiscalContabilidadPeriodoEscenarioPeriodType (Tipo de período)ImporteFecha de publicación
20211ActualYTDUS$ 1001/31/2021
20212ActualYTDUS$ 2002/28/2021
20213ActualYTDUS$ 3003/31/2021

Su ayuda está muy apaciguada.

¡Gracias de antemano!

ISGirl

3 ACCEPTED SOLUTIONS

@ISGirl ¿Los montos en su tabla ya son montos acumulativos (es decir, no hay una columna que especifique la cantidad que cada mes tenía en su contra)? Si tiene una cantidad mensual, debería poder arrastrar el campo Cantidad a una imagen con el campo Período sin ninguna medida.

TheoC_0-1634681615564.png

¿Puedo estar malinterpretando lo que buscas? Disculpas por mi parte.

View solution in original post

¡Lamento mucho el malentendido! Ese es mi mal. Esto debería ayudar

Importe mensual = TOTALMTD ( SUMA ( 'Tabla'[Importe]) , 'Tabla'[Fecha publicada] ) - CALCULAR ( SUMA ( 'Tabla'[Importe]) , DATEADD ( 'Tabla'[Fecha de publicación] , -1 , MES ) , TODOS ( 'Tabla' ) )
TheoC_0-1634685026396.png

Lo anterior se puede desglosar utilizando las siguientes variables:

Monthly Amount = 

VAR _TotalMth = TOTALMTD ( SUM ( 'Table'[Amount] ) , 'Table'[Posted Date] )
VAR _TotalLstMth = CALCULATE( [Sum Amount] , DATEADD ( 'Table'[Posted Date] , -1 , MONTH ) , ALL ( 'Table' ) )

RETURN 

_TotalMth - _TotalLstMth

¡Espero que esto ayude y me disculpe de nuevo!

Según 🙂

View solution in original post

Syndicate_Admin
Administrator
Administrator

@ISGirl -

Es posible que necesite algunos ajustes más si tiene datos adicionales, pero el ejemplo podría servir como plantilla

Distributed Amount = 
DIVIDE(
    CALCULATE(
        MAX(TableName[Amount]),
        FILTER(
            ALL(TableName),
            TableName[FiscalYear]
        )
    ),
    CALCULATE(
        COUNTROWS(TableName),
        FILTER(
            ALL(TableName),
            TableName[FiscalYear]
        )
    )
)

image.png

View solution in original post

14 REPLIES 14
Syndicate_Admin
Administrator
Administrator

No @ISGirl,

¿Las sugerencias anteriores ayudaron con su escenario? si ese es el caso, puede considerar Kudo o aceptar las sugerencias útiles para ayudar a otros que enfrentaron requisitos similares.

Si esto tampoco ayuda, comparta información más detallada para ayudarnos a aclarar su escenario para probar.

Cómo obtener respuestas a su pregunta rápidamente

Saludos

Xiaoxin Sheng

Syndicate_Admin
Administrator
Administrator

@ISGirl -

Es posible que necesite algunos ajustes más si tiene datos adicionales, pero el ejemplo podría servir como plantilla

Distributed Amount = 
DIVIDE(
    CALCULATE(
        MAX(TableName[Amount]),
        FILTER(
            ALL(TableName),
            TableName[FiscalYear]
        )
    ),
    CALCULATE(
        COUNTROWS(TableName),
        FILTER(
            ALL(TableName),
            TableName[FiscalYear]
        )
    )
)

image.png

View solution in original post

Syndicate_Admin
Administrator
Administrator

Disponible realmente por mes = 

VAR _Cumulative = TOTALYTD ( SUMA ( 'Tabla'[Importe]) , 'Tabla'[Fecha de publicación] )

DEVOLUCIÓN

_Cumulative

Necesito un cálculo que devuelva el resultado de oppoiste 🙂

Ene =$100

Feb=$100

Mar=$100

@ISGirl mis disculpas, ¿debería poder arrastrar la columna Cantidad sin una medida si está justo después del total de la cantidad mensual?

Sigue mostrándose acumulativo. ¡Muchas gracias por su ayuda!

@ISGirl ¿Los montos en su tabla ya son montos acumulativos (es decir, no hay una columna que especifique la cantidad que cada mes tenía en su contra)? Si tiene una cantidad mensual, debería poder arrastrar el campo Cantidad a una imagen con el campo Período sin ninguna medida.

TheoC_0-1634681615564.png

¿Puedo estar malinterpretando lo que buscas? Disculpas por mi parte.

View solution in original post

No tengo cantidad mensual (solo para enero), el resto de meses son acumulativos. Por lo tanto, necesito una fórmula que calcule la cantidad mensual basada en el acumulado.

¡Lamento mucho el malentendido! Ese es mi mal. Esto debería ayudar

Importe mensual = TOTALMTD ( SUMA ( 'Tabla'[Importe]) , 'Tabla'[Fecha publicada] ) - CALCULAR ( SUMA ( 'Tabla'[Importe]) , DATEADD ( 'Tabla'[Fecha de publicación] , -1 , MES ) , TODOS ( 'Tabla' ) )
TheoC_0-1634685026396.png

Lo anterior se puede desglosar utilizando las siguientes variables:

Monthly Amount = 

VAR _TotalMth = TOTALMTD ( SUM ( 'Table'[Amount] ) , 'Table'[Posted Date] )
VAR _TotalLstMth = CALCULATE( [Sum Amount] , DATEADD ( 'Table'[Posted Date] , -1 , MONTH ) , ALL ( 'Table' ) )

RETURN 

_TotalMth - _TotalLstMth

¡Espero que esto ayude y me disculpe de nuevo!

Según 🙂

View solution in original post

@ISGirl puede aceptar amablemente la solución que presenté como "solución" para cerrar el tema? ¡Muchas gracias! Theo

¡Muchas gracias! Funciona perfectamente bien para 2021. Pero si tengo 2019 y 2020, ¿crees que funcionará?

Hola @ISGirl,absolutamente 🙂

MTD total = TOTALMTD ( SUMA ( 'Tabla'[Importe]) , 'Tabla'[Fecha de publicación] )

@ISGirl simplemente cambie el 🙂 "TOTALYTD" a "TOTALMTD"

¡Espero que ayude! 🙂

Syndicate_Admin
Administrator
Administrator

Hay @ISGirl

Hágame saber si esto ayuda:

Disponible realmente por mes =

VAR _SumAmount = SUMA ( 'Tabla'[Importe] )
VAR _Cumulative = TOTALYTD ( _SumAmount , 'Tabla'[Fecha de publicación] )

DEVOLUCIÓN

_Cumulative

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

November Power BI Update 768x460.png

Check it Out!

Click here to read more about the November 2021 Updates!

M365 768x460.jpg

Microsoft 365 Collaboration Conference | December 7–9, 2021

Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.