[SalesForce] ISCHANGED(ISPICKVAL() formula

I have a process builder in place for when an opp is in Discovery stage and Type is not Rollover to send an alert and if it is a rollover in discovery to send a different alert. Every time the opp is saved while in Discovery stage, it is sending out the alert. I need the alert to only go out when it is first changed to discovery. I am trying to use the below formula, but I am getting syntax errors.

AND (
ISCHANGED(ISPICKVAL([Opportunity].StageName)),
ISPICKVAL([Opportunity].StageName = "Discovery"),
ISPICKVAL([Opportunity].Type<> "Rollover (Existing Client)"),
)

Best Answer

You don't need to use a formula; you can use the normal "conditions is met" mode. Set it to Stage equals Discovery and Type not equal to Rollover (Existing Client). Then, in the Advanced section (near the bottom, collapsed by default), check the "Yes" box. This will cause the rule to trigger only when the condition is initially met.


As for your formula, ISCHANGED works for all fields, so you don't need to use ISPICKVAL:

AND(
  ISCHANGED([Opportunity].StageName),
  ISPICKVAL([Opportunity].StageName = "Discovery"), 
  ISPICKVAL([Opportunity].Type<> "Rollover (Existing Client)")
)
Related Topic