Forum Discussion
Inflation accumulated
Hi, I'm trying to find a solution for accumulated inflation in Dax.
This is based on the following rule
| Period | Inflation | Accumulated | Rule |
| 1 | 5.7% | 5.7% | first row = Inflation |
| 2 | 3.1% | 9.0% | 2nd row = (previous month Accumulated + 1 ) * (1+inflation of the row) -1 |
| 3 | 4.5% | 13.9% | 3rd row = (previous month Accumulated + 1 ) * (1+inflation of the row) -1 |
| 4 | 5.9% | 20.6% | 4rd row = (previous month Accumulated + 1 ) * (1+inflation of the row) -1 |
| 5 | 4.3% | 25.8% | 5th row = (previous month Accumulated + 1 ) * (1+inflation of the row) -1 |
| 6 | 5.9% | 33.2% | 6th row = (previous month Accumulated + 1 ) * (1+inflation of the row) -1 |
6 Replies
- AnonymousNot applicable
I build a measure to achieve your goal.
Accumulated = VAR _FirstAcc = SUM ( 'Table'[Inflation] ) VAR _RestAcc = ( PRODUCTX ( FILTER ( ALL ( 'Table' ), 'Table'[Period] <= MAX ( 'Table'[Period] ) ), 'Table'[Inflation] + 1 ) ) - 1 RETURN IF ( MAX ( 'Table'[Period] ) = 1, _FirstAcc, _RestAcc )Result:
You can download the pbix file from this link: Inflation accumulated
Best Regards,
Rico Zhou
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
- Syndicate_AdminAdministrator
Good morning @RicoZhou , thank you very much for the contribution! I used it on my board and it works perfect!
I have a related query, how should the measure be to visualize the cumulative total of inflation on a card? Continuing with the previous example you would need to display on a card the value 33.2%.
Thank you so much for the help!
Frederick
- Syndicate_AdminAdministrator
I share the solution I found to make it look like in the image the inflation accumulated in the last 12 months in card format:
The measure for the card is:
Measure name = (PRODUCTX(FILTER(all(FACT_Inflacion); FACT_Inflacion[Date] >= MIN(FACT_Inflacion[Date]));FACT_Inflacion[IPC - Indec] + 1))-1
- AnonymousNot applicable
Se você puder calcular uma inflação em duas vezes, basta mudar "ALL", para "ALLSELECTED", e criar uma caixa de filtro!!
- amitchandakSuper User
leandroduarte , Try a formula
calculate(sum(Table[Inflation]), filter(allselected(Table), Table[Period] = max(Table[Period])))
- Syndicate_AdminAdministrator
Hello @v-rzhou-msft
Thank you very much for the input. Is there a way that the base period can be chosen by the user and that the function only starts accumulating from that period?