we are working extensively with custom objects and they are more and more becoming integral part of our CRM.
We are a B2B Saas company that offers subscriptions. One company can have multiple subscriptions or a subscription can have multiple companies. So it made sense to us to create a custom subscription object. I am quite happy how everything fits together, however one thing is really making my life difficult: when a record of, say, a company gets associated with a custom subscription record, I would like to react on that and execute some other workflows. I cannot in Hubspot, which makes me very sad. There is so much potential missed there...
I have found some indirect, hack-the-hubspot ways of doing it (involves custom code and a lot of copy property to other object stuff...its not a sight to behold), which kind of works, but it gives me headaches.
How do you handle this? Did you find an elegant solution for this? I am very interested to hear from y'all.
My go to when needing to run workflows on association changes is setting up a calculated property for example on a Company that is a count type, then chose the associatied object type, then for the property just do Record ID. What this means is then that this property just stores the number of a specific object type that is associated to the given object. I then use this and a "Is Known" trigger which goes off whenever a new object gets added. (It also goes off whenever one gets removed, but this can be fixed by copying its value whenever it is known to another property at the start of the workflow, then right before that copy action check which one of those two properties is larger)
Best,
✔️ Was I able to help answer your question? Help the community by marking it as a solution.
This workaround sounds great! I do have a customer though that would benefit tremendously from being able to enroll based on new record associations, so it would still be ideal if we could have this feature implemented. But thank you for providing that workaround though!
My go to when needing to run workflows on association changes is setting up a calculated property for example on a Company that is a count type, then chose the associatied object type, then for the property just do Record ID. What this means is then that this property just stores the number of a specific object type that is associated to the given object. I then use this and a "Is Known" trigger which goes off whenever a new object gets added. (It also goes off whenever one gets removed, but this can be fixed by copying its value whenever it is known to another property at the start of the workflow, then right before that copy action check which one of those two properties is larger)
Best,
✔️ Was I able to help answer your question? Help the community by marking it as a solution.
So the workflow is only triggered the first time the calculated field is changed, not every time it is changed. Am I misunderstanding your solution? Thanks!
Actually, I do need to ask a question regarding your solution.
Since we can't compare two properties as a workflow trigger, am I correct in assuming you have yet another property that is the result of the difference between the two, and you check on *that* value being negative or positive to act?
Hi @JBeatty this is a neat trick. I didn’t' know the "is known" trigger only goes off when the value changes. I was afraid I was setting up the workflow to run continuously, which sounded suboptimal.
I do have a question. I'm not sure I follow your solution to the removal of the association. Here's what I understand:
I have a CountAssociatedObjects calculated property AND a CountAssociatedObjects_Lagging
I have a Workflow that triggers when CountAssociatedObjects is known
At the beginning of the workflow, I check if CAO is larger thant CAO_Lagging, then execute the flow. If not
At the end of the worfklow CAO_Lagging <- CAO
Actually walking myself through the above explanation helped :=D
@JBeatty this is a great solution. I was not aware that the calculation property can be used in combination with other objects. You can even do that on association labels! This is way easier than calculating the associated records via API.