If-Then-Else Actions

How do people feel about creating and configuring If-Then-Else actions? Are there concepts or functional pieces that are particularly difficult to understand OR configure? This would be a great place to learn about the tips that people use when creating If-Then-Else actions.

In addition to the idea that you should take time to think through your logic before starting to build an If-Then-Else actions, here are some tips from the wiki:

  • Once you create an “if” condition, moving it up to the top level of your statement requires some extra steps.
  • Placing “ifs” at the correct level can sometimes be a challenge. Until you are familiar with the editor, we suggest checking the screen after each Add If to make sure it is in the correct order.
  • Conditions within an If-Then-Else action will not find changes made by earlier actions within the same If-Then-Else action. Changes made by an If-Then action are saved in memory and executed after all the ifs have been evaluated.
    • For example, suppose the first condition in an If-Then-Else container says “if the Status equals In Review, then set the Assigned Person to John Smith,” and a second condition says “if the Assigned Person equals John Smith, then email John Smith that he has been assigned.” When the rule runs, records with a In Review status would be assigned to John Smith. However, because the action evaluates all its conditions before making any changes, those records did not meet the qualifications of the second condition when they were evaluated. As such, he would not receive any emails for those records.

I find them easier to create, than to edit. I’ve had a lot of success with them doing what Noah suggests … thinking through the logic. The system makes it easy to create them by just clicking the appropriate button for the next step.

But when it comes to editing an If-Than_Else expression, or add a function to one, it’s often trial and error for me. Quite honestly, what I will often do is take a screen-shot of what I have, then build if from scratch with whatever change I want to make.