So this is a really strange Process Builder bug that seems unavoidable, wondering if I'm missing anything.
I have a process with criteria that references the name of a related object:
[User_Account__c].Service_Profile.Name = "Admin"
The idea is that when the name of this object (related by lookup field) is set to "Admin", a record update will fire. Simple, right? Not really. When the record is updated this message is received:
"The flow failed to access the value for myVariable_current.Service_Profile__c.Name because it hasn't been set or assigned."
So, it acts like it is running before update, and doesn't have a value to reference. That would seem odd enough, since basic workflow rules could do this, and yet it gets stranger. If I change the criteria to reference an even further removed object:
[User_Account__c].Service_Profile.Service.Name
..then it fires and updates just fine. So clearly it has a value that it can access.
Now, I change the criteria yet again, to this:
AND(
ISCHANGED([User_Account__c].Service_Profile__c),
[User_Account__c].Service_Profile__c.Name = "Admin")
THEN the update will also fire, but if delete the value from Service_Profile__c and save, then I get the same "The flow failed to access the value for myVariable_current.Service_Profile__c.Name because it hasn't been set or assigned." message again!
Any idea what is going on? Thanks!
my code
) to make them stand out. I did this for one of these so you can see how it is done