Forum Discussion
Conditional formatting table based on a target set
- 3 years ago
I already added the link for a testing pbix file into my original post yesterday, but forgot to mention it in the previous post.
I use this formula that works for me now:MgCheck = VAR MgMinCheckVar = SUMX( Targets, CALCULATE( SUM(Targets[MgMin]), Samples[TargetID] = EARLIER(Targets[TargetID]) ) ) VAR MgMaxCheckVar = SUMX( Targets, CALCULATE( SUM(Targets[MgMax]), Samples[TargetID] = EARLIER(Targets[TargetID]) ) ) RETURN SWITCH( TRUE(), Results[Mg] > MgMaxCheckVar, 1, Results[Mg] < MgMinCheckVar, -1, 0 )It is probably not the simpliest either the most efficient formula, but does the job. Also most of the previous solutions work.
The reason why it kept giving me all those errors was because there is only one relationship with the Target tables which is the one with Samples table, but the Cross filter direction was set to Single. Once I switched that to Both, it works. I noticed that only because everything was working in the test model where Both was selected by default. I hope it will not cause any issues in the future with other visuals. But because even in my real model there is only one relationship to Target table, there is no ambiguity.
Thanks in advance for your reaction Theo. I hope you won't prove me wrong on this 🙂
Can you please create a PBIX file that has dummy data and matches your exact Relationship model and please ensure the Data Formats / Types are identical to that in your real model.
If you can do that, I'll be able to assist further.
Thanks mate.
Theo
I already added the link for a testing pbix file into my original post yesterday, but forgot to mention it in the previous post.
I use this formula that works for me now:
MgCheck =
VAR MgMinCheckVar =
SUMX(
Targets,
CALCULATE(
SUM(Targets[MgMin]),
Samples[TargetID] = EARLIER(Targets[TargetID])
)
)
VAR MgMaxCheckVar =
SUMX(
Targets,
CALCULATE(
SUM(Targets[MgMax]),
Samples[TargetID] = EARLIER(Targets[TargetID])
)
)
RETURN
SWITCH(
TRUE(),
Results[Mg] > MgMaxCheckVar, 1,
Results[Mg] < MgMinCheckVar, -1,
0
)
It is probably not the simpliest either the most efficient formula, but does the job. Also most of the previous solutions work.
The reason why it kept giving me all those errors was because there is only one relationship with the Target tables which is the one with Samples table, but the Cross filter direction was set to Single. Once I switched that to Both, it works. I noticed that only because everything was working in the test model where Both was selected by default. I hope it will not cause any issues in the future with other visuals. But because even in my real model there is only one relationship to Target table, there is no ambiguity.
Thanks in advance for your reaction Theo. I hope you won't prove me wrong on this 🙂
- JacobMotu3 years agoFrequent Visitor
Theo, thanks for the guidance and support. I am very aware people reply here in their free time without any obligations to anyone or anything. It's great knowing people from community help each other. Probably my first but not the last show up in here 🙂
Cheers mate. - TheoC3 years agoCommunity Champion
JacobMotu if you get it working the way you want, run with it big fella! The beautiful part of Power BI (which can also be its weakness), is that there are so many ways of achieving the same (or closely aligned) outcome.
Well done on going and finding the output you were after! It pleased me to see that you didn't hold back and just wait for answers. Instead, you went out looking for them until you got the right one. An exceptional attitude to have, mate!
Well done and keep doing great things!
Theo 🙂
- TheoC3 years agoCommunity Champion
JacobMotu I am glad to hear that, mate. Thank you for your kind comment and awareness for what the Community and its members are about. It certainly is what got me to fall in love with Power BI. Wishing you all the best mate and hope to see you on here now and again! 🙂