I have two processes, one updates a custom contact field on opportunity with the Primary Contact role contact details, the other sends a series of emails to this contact when certain criteria is met.
The contact one works fine, my problems come from the email process.
The opportunity can be added in 2 ways: Opportunity 1 - directly from the contact record, filling in all the fields at once so it meets the criteria straight away, and saving once. Opportunity 2 - from the account record, saving the opportunity then adding the primary contact, then populating the fields so that it meets the criteria.
I cannot get both scenarios to only send the emails once.
If the Recursion box on the Object node is ticked and 'Do you want to execute the actions only when specified changes are made to the record?' on the criteria is ticked, Opportunity 1 gets all emails twice. Opportunity 2 gets all emails once.
If the Recursion box on the Object node is not ticked and 'Do you want to execute the actions only when specified changes are made to the record?' on the criteria is ticked, Opportunity 1 gets all emails once. Opportunity 2 gets no emails.
If Recursion is ticked and 'Do you want to execute the actions only when specified changes are made to the record?' on the criteria is unticked, Opportunity 1 and 2 both get all emails once, UNLESS you make changes to the opportunity, in which case it fires email one each time you make a change.
These processes are going to be used to send different emails for different departments, some opportunities are on the system all ready and just need a field change to meet the criteria, others will be added in bulk. So both scenarios need to work, as some opportunities will be added in stages, while others will be added all in one go.
I also need to prevent the emails going out if at any time in the process the opportunity is closed. I'm not sure how to add this in either.
I really don't want to have to do this with Time Based Workflows, how do I get round it on Process Builder?