I see several posts in the community forum where people struggle to understand why their conditional actions wouldn’t work. I keep hearing this a lot
“I know there is a match but my flow always goes to the No branch”
The reason is that we often do not know how the condition is being evaluated internally. Here are some suggestions to solve this dilemma.
1) Use expressions while comparing
In the example above, the issue was that there was a trailing space at the end of the variable that caused the condition to fail.
A better way to handle this would have been to use the empty() function
2) When comparing date values, it is good to have them in the same format on either side of the condition.
3) Add a compose action on top of your condition so that you know what values are being compared.
Sometimes you could be comparing two entities and scratching your head why it doesn’t match when you know that there is a list item that matches the criteria.
You will be surprised that sometimes what you see is not what it really is. Here you have a response from a Microsoft Form with a matching value in a SharePoint list but the condition would always branch to No.
To resolve these issues, I usually add a compose action on top of my condition to see the values in real time.
As you can see that I am comparing an HTML tag to a text value when they look the same through the UI
People often ask me how did I get the compose action on top of the condition.
The trick is to add it after the condition and then pull the condition action down.