1

I am looking for assistance in how to best implement the following request. We need to update the Participating__c field on Object A any time that the values of 7 fields from 3 different objects meets the specified criteria (defined below). Based on these business requirements, the rule needs to be triggered any time that a record is created or edited on Object A, B, or C. Any suggestions would be very much appreciated!

Criteria for setting Object_A:

  • (Boolean) Participating__c = TRUE
  • (Picklist) Network__c contains "AZ"
  • (Boolean) Primary__c = TRUE
  • (Text) MailingName__c does not contain "Administration"
  • (Date) Provider_Term_Date__c = NULL

Object B:

  • (Date) Facility_Term_Date__c = NULL
  • (Picklist) Type <> "Hospital"

Object C:

  • (Multi-select Picklist) Suffix__c does not contain "OTH" or "MA"

Any time a record on Object A, B, or C is edited to no longer meet the criteria above, Object_A.Participating__c should be set to FALSE. My major hang-up at this time is determining how to limit the places where the LOGIC must reside, as this unfortunately changes more frequently than I'd like. So, I'd prefer to not have 3 different Process Flows that are each triggered by the edit of one of the objects mentioned above. Thanks!!

2
  • As David mentioned that would be how it works. 1 Flow triggered from each of the objects. One question is how are these all related? i.e. if object C is updated how is it related to B? Is the relation path up to A and then down to B? Just have to be sure you can start from any object and get to the other ones. I'm assuming Object B and C are children of A. In your 1 flow you'll have to be able to know where this is being started from. You can easily set that in your 3 workflows (ie process builders) then have your first Flow element be a decision.
    – Fifedog
    Commented Aug 12, 2015 at 20:17
  • The tables are Accounts (A above), Contacts (C above), and a junction object called Affiliations__c (B above) that have a Master-Detail lookup field to both Accounts and Contacts (allowing us to associate multiple Accounts to a single Contact record. Commented Aug 17, 2015 at 17:15

2 Answers 2

1

You could most definitely set this via a Flow (launched by a x3 Process Builders). The issues would be around protecting it from erroring if you're doing some sort of data imports.

Assuming you go Flow. You'd want to send the Flow from each 'Process Builder' in with the correct variables. From there, you'd want to then query for the other Object's variables. (so you'll need a decision to help you correctly do that in the right order). Now, you've queried all of those fields via a Lookup and you're ready to see in another Deicsion if all of the values meet your criteria! If so, then you can proceed with your record update on object A.

Now - thats essentially the same thing you'd do with a trigger... but keep in mind - only a trigger can work on deleted records. So if your end users might delete stuff that would change a record from meeting the criteria to not meeting it, you'd not have that updated.

0

Triggers is probably the best route, but regardless if it is Process builder, triggers or even workflow, since either A, B, or C can affect the value, you will need logic in 3 different places.

I assume A,B,C is related to each with somehow with some unique identifier?

Thx

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .