cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
AlanYC
Frequent Visitor

How to include the logical AND/OR operators in conditionals

I would like to know how to include the logical AND/OR operators in conditionals, previously on WinAutomation this could be achieved like this:

 

The AND "&&" operator can be used inside an "If" condition using the following format

 

First Operand: %TextVar_1 == "ABC" && TextVar_2 == "DEF"%

Operator: =

Second Operand: True

 

The OR "||" operator can be used in a similar way

 

First Operand: %TextVar_1 == "ABC" || TextVar_2 == "DEF"%

Operator: =

Second Operand: True

 

I have tried to express it in this way in Power Automate Desktop and it is not working.

 

In my case I am reading a single cell value from excel which is stored into the variable %ExcelData%, I would like to use an If conditional to review if the variable's value is either "Payer" or "Doc" I need it to do certain actions, but if it is blank I need it to go into a different set of actions.

 

I have already tried to express it in different ways but I haven't been able to achieve this logic, this is what I have tried so far:

 

First Operand: %ExcelData = "Payer" || ExcelData = "Doc"%

Operator: =

Second Operand: True

 

With the above conditional I get an Invalid Value message, you might have noticed I removed the double equal signs, I have tried with the double equal signs and it also says invalid value in this way.

 

First Operand: %ExcelData = 'payer'% || %ExcelData = 'doc'%

Operator: =

Second Operand: True

 

The above conditional is accepted by PAD but when I run it it doesn't seem to be working as intended as it is not realizing that the cell value is actually Payer.

 

 

 

 

 

 

 

 

15 REPLIES 15
adijain
Microsoft
Microsoft

Hello @AlanYC ,

 

Thank you for bringing this issue to us. We will investigate this further on our end and get back to you with the correct syntax for using AND/OR operators. For now, could you please instead use the workaround of using two if conditions to verify the ExcelData var for both 'Payer' and 'Doc' separately. 

 

Thanks for trying out Power Automate Desktop!

AlanYC
Frequent Visitor

Thank you, I will wait for your reply. I am currently using the workaround that you mentioned of creating two separate conditionals.

adijain
Microsoft
Microsoft

Hi @AlanYC,

 

Please find the syntax for the logical AND/OR operators in PAD conditionals below:

  • AND instead of && 
  • OR instead of ||
  • = instead of ==

Example:

temp.JPG

 

Please let us know if you have any further questions.

 

Thanks,

Aditya

Good afternoon @adijain , I'm Efrain from Panama. 

 

I'm Developer, but at the same I'm new in Power Automate. And I need to know the next info:

I was trying use this logic but I have question. Can I use the second operand as result? This question is because I need to do a comparison of two variables, but I need the result as TRUE or FALSE value.

 

I'm testing new apps to my company, and one these apps POD. 

 

Regards.

miketran13
Solution Specialist
Solution Specialist

Thanks a lot for this Adijain, it was thing I am looking for. It helps a lot and can reduce the complexity of my process.

 

Regards,

Mike

Use a Set variable to write the result of a boolean expression into something to use later.

HI @efrainC_Onq, thanks for the question, you would need to set the first operand as a variable, like what @Henrik_M  suggested and then that variable will have the result as True or False - as shown below:

adijain_0-1611747090334.png

In above, the %NewVar% will have either True or False value.  Hope it makes sense. 

vtse
Frequent Visitor

Hi,

try the following

 

set the two values payer and doc as variables var1 and var2

then use the if action as following 

First operand    %ExcelData== var1 || ExcelData== var2%

operator equals (=)

second operator TRUE

Hi,

 

this should be:

 

First Operand: %ExcelData = 'payer'% || %ExcelData = 'doc'%

Operator: =

Second Operand: %True%

ericcho
New Member

To expand on this topic....what is the proper notation for operators that are not straight up equals?

For example I want to quality something that contains "payer" or startswith "doc"

....something along the lines of:

 

%contains(ExcelData,'payer') OR startswith(ExcelData,'doc')%

 

Thanks in advance

Anonymous
Not applicable

Hello @ericcho 

 

We can use conditional functions such like Contains() or StartsWith() in [First operand] of If action.

 

For example:

%Contains(VAR, 'KEY', False) OR StartsWith(VAR, 'KEY', False)%

 

* The 3rd argument of each function means "Ignore case = False" thus "Case sensitive".

 

 

shindomo_0-1635588263115.png

 

shindomo_1-1635588272313.png

 

[List of available 8 functions]

  • Contains(VAR, 'KEY', False)
  • NotContains(VAR, 'KEY', False)
  • IsEmpty(VAR)
  • IsNotEmpty(VAR)
  • StartsWith(VAR, 'KEY', False)
  • NotStartsWith(VAR, 'KEY', False)
  • EndsWith(VAR, 'KEY', False)
  • NotEndsWith(VAR, 'KEY', False)

 

Thank you.

This is great!! How did you find out? 🤔

Anonymous
Not applicable

Hello @Henrik_M 

Thanks for your resonse.

Here is how did I find it out. 🙂

 

1) I have set up 8 different conditions for each of the empty IF actions.

 

shindomo_0-1635766448282.png

 

For example (Operator = "Contains"):

shindomo_1-1635766606568.png

 

2) Copy & Paste the code from Flow Designer to Notepad.

 

SET VAR TO $'''ABC'''
IF Contains(VAR, $'''KEY''', False) THEN
END
IF NotContains(VAR, $'''KEY''', False) THEN
END
IF IsEmpty(VAR) THEN
END
IF IsNotEmpty(VAR) THEN
END
IF StartsWith(VAR, $'''KEY''', False) THEN
END
IF NotStartsWith(VAR, $'''KEY''', False) THEN
END
IF EndsWith(VAR, $'''KEY''', False) THEN
END
IF NotEndsWith(VAR, $'''KEY''', False) THEN
END

 

3) I guessed that these conditional functions in Robin language could be used in the first operand of the IF action... Bingo!

businesstaken
Frequent Visitor

thanks a lot, very useful

StanAtFlumerics
New Member

If somebody has issues with power automate desktop's if conditions and Boolean comparisons / values:

I had to enclose the True/False value in % characters, like variables:

 

First Operand: %SomeVariable%

Operator: =

Second Operand: %True%

Helpful resources

Announcements
Power Platform Conf 2022 768x460.jpg

Join us for Microsoft Power Platform Conference

The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.

New Ideas Forum MPA.jpg

A new place to submit your Ideas for Power Automate

Announcing a new way to share your feedback with the Power Automate Team.

MPA Virtual Workshop Carousel 768x460.png

Register for a Free Workshop

Learn to digitize and optimize business processes and connect all your applications to share data in real time.

MPA Licensing.jpg

Ask your licensing questions at the Power Automate AMA!

Join Priya Kodukula and the licensing team, super users and MVPs to find answers to your questions on Power Automate licensing.

Top Solution Authors
Top Kudoed Authors
Users online (3,703)