Forum Discussion
In a Matrix hierarchy, alter one node to a desired value
I have a matrix of sales in a hierarchy.
For the SubCategory x, I want to correct the value 16 to a more up-to-date 24. So I want to normalize that node and all its children by a factor 24/16. I think I'm able to do that part.
What I cannot figure out is adjusting the parent node and the total.
Any help would be highly appreciated.
- Anonymous2 years ago
Hi Petr_M ,
Use the All function to ignore any filters that might have been applied during calculatedenominator.
MeasureTotal =
VAR Denominator=CALCULATE([RWA Digit Actual],
FILTER(
ALL('digit_database'),
'digit_database'[NWU]= "B" && 'digit_database'[RWA_TYPE] = "X"
))
VAR Ratio = 24/Denominator
VAR TotalSales=SUMX(
SUMMARIZE(
digit_database,
digit_database[NWU],digit_database[RWA_TYPE],
"CalculatedValue",
IF(
SELECTEDVALUE(digit_database[NWU]) = "B",
SWITCH(digit_database[RWA_TYPE],"X",
SUMX(
FILTER(digit_database, digit_database[NWU] = "B" ),
[RWA Digit Actual] * Ratio
),[RWA Digit Actual]),
SUMX(
FILTER(digit_database, digit_database[NWU] <> "B"),
[RWA Digit Actual]
)
)
),
[CalculatedValue]
)
RETURN TotalSales
Another simple measure for your reference:
Measure =VAR Denominator = CALCULATE([RWA Digit Actual],FILTER(ALL('digit_database'),'digit_database'[NWU] = "B" && 'digit_database'[RWA_TYPE] = "X"))VAR Ratio = 24 / DenominatorRETURN SUMX(ADDCOLUMNS(digit_database,"CalculatedValue",IF([NWU] = "B" && [RWA_TYPE] = "X",[RWA Digit Actual] * Ratio,[RWA Digit Actual])),[CalculatedValue])
Result:
Best regards,Joyce
If this post helps, then please considerAccept it as the solution to help the other members find it more quickly.
10 Replies
- AnonymousNot applicable
Hi Petr_M,
For your requirements, please create a new calculated column as shown below:
Result = VAR XSub = CALCULATE( SUM('Table'[Sales]), FILTER( 'Table', 'Table'[SubCategory] = "X" ) ) VAR Divb = 24/XSub VAR TotalSales = IF( 'Table'[SubCategory]= "X", 'Table'[Sales] * Divb, 'Table'[Sales] ) RETURN TotalSalesResult:
Best regards,
Joyce
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
- Petr_MFrequent Visitor
Thank you Anonymous, this looks promising!
I only added the Category into identification of the node (as X may occur in other Categories as well) and it works perfectly.
However, my real life scenario works with a measure instead of Sales. I should have realized this was relevant to my question. I attempted to apply the proposed logic there but my calculated column returns nothing. So I assume it needs to be a measure as well which likely changes the context and would require a more complex solution :/.
- AnonymousNot applicable
Hi Petr_M ,
Thank you for your reply and if possible, please upload your pbix example file so we can better test it for you.