If you’ve ever wanted to fire a workflow on an object based on a trigger condition in a separate related object, you’ll know it’s not always possible. If the objects are in a master-detail relationship and you need to update the parent object, no problem, a workflow can handle this. But what about updating the child records when a parent value changes? Or what if the relationship is a lookup? Most often you’d need to turn to code.
Recently, a colleague of mine faced this issue. He had some fields on the Opportunity Product object which took some values the parent Opportunity and calculated some financials. The financials couldn’t be displayed using a formula field since management sometimes needed to override the values, and a regular workflow couldn’t cut it since the change in value which triggered the rule was on the Opportunity object, which doesn’t fire any workflow rules on the Opportunity Product object.
Bummer – we needed to write some code. That would take time to develop, test and deploy, and any subsequent maintenance tasks could be cumbersome and time-consuming.
But then we found a free app on the AppExchange called Aspira XObject. It can fire workflows on target objects when data values on related ‘watched’ objects are changed. Just set up a ‘relation’ to tell the app what object to watch and then any changes to field values on that object will cascade down to your related target object, causing the relevant child object workflow rules to fire.
And while my colleague’s use-case is a good one, it’s not difficult to think of a number of other scenarios in which this app could help you out.
How about this?: Every time an account has its Trading Status value updated to ‘Dormant/Ceased Trading’, fire off a field update on all of that account’s related contacts to update the Email Opt Out field to ‘true’. That way, your marketing automation platform or manual processes won’t be sending messages out to contacts who won’t have a use for them or wouldn’t even receive them anyway.
With Aspira XObject, it’s easy to do. Without it, you’d be faced with the headache of having to write, test, promote and maintain an Apex trigger. Problem solved; headache gone.