cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
ACPBSCi
Resolver I
Resolver I

Using a Variable in an If Statement

Upon creation of a record, I set a global variable called "varRecord". By using this and a ".________", I can utilize all the values in all the fields of the record. For example, varRecord.'Account Name' or varRecord.'Launch Date'

I want to hide a button if the program type equals "ABC Program", but I can't figure out the expression. This expression does not work:

If(equals(VarRecord.'ProgramType'("ABC Program"),true),false, true)

I feel like I'm close. What am I missing?

1 ACCEPTED SOLUTION

Accepted Solutions
StormEAnderson
Resolver I
Resolver I

It may be because 'Program Type' is a choice field, in which case you are not dealing with a string but a record. If that is the case you would need to use the "Value" property within that record. So try either of the following:

// If the field is a choice / lookup field
Not(VarRecord.'ProgramType'.Value = "ABC Program")
// --- evaluates to FALSE when programType is equal to "ABC Program"

// If the field is a text field
Not(VarRecord.'ProgramType' = "ABC Program")

 

View solution in original post

4 REPLIES 4
Pstork1
Dual Super User
Dual Super User

Try the following in the Visible property of the button.

If(equals(VarRecord.'ProgramType',"ABC Program"),false, true)

 



-------------------------------------------------------------------------
If I have answered your question, please mark your post as Solved.
If you like my response, please give it a Thumbs Up.

Join me at 365 and PWR EduCon in Chicago
EduCon Chicago 2022

No, that's not working either.

I wish the "get help for this error" feature was actually helpful. All it says is that the "If" has some invalid arguments. You think?

Your recommendation makes sense. The syntax makes sense. Is there something different I need to do because of the type of global variable I'm using and the way I'm using it (varRecord.'Program Type')? Am I not able to use it this way?

StormEAnderson
Resolver I
Resolver I

It may be because 'Program Type' is a choice field, in which case you are not dealing with a string but a record. If that is the case you would need to use the "Value" property within that record. So try either of the following:

// If the field is a choice / lookup field
Not(VarRecord.'ProgramType'.Value = "ABC Program")
// --- evaluates to FALSE when programType is equal to "ABC Program"

// If the field is a text field
Not(VarRecord.'ProgramType' = "ABC Program")

 

GOT IT!

Not(VarRecord.'Program Type' = "ABC Program")

There is a space in "Program Type". Gotta use those suggestions when they pop up. You can't trust that you know exactly how it appears.

Helpful resources

Announcements
Ignite 2022

WHAT’S NEXT AT MICROSOFT IGNITE 2022

Explore the latest innovations, learn from product experts and partners, level up your skillset, and create connections from around the world.

Power Apps Africa Challenge 2022

Power Apps Africa Challenge

Your chance to join an engaging competition of Power Platform enthusiasts.

Super User 2 - 2022 Congratulations

Welcome Super Users

The Super User program for 2022 - Season 2 has kicked off!

September Events 2022

Check out all of these events

Attend in person or online, there are incredible conferences and events happening all throughout the month of September.

Users online (3,077)